shipscreens 0.1.6 → 0.1.7

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 (531) hide show
  1. package/README.md +14 -4
  2. package/bin/shipscreens.js +352 -18
  3. package/cli/commands/captureScreenshots.js +409 -0
  4. package/cli/commands/importScreenshots.js +377 -0
  5. package/cli/commands/inspectReleaseContext.js +607 -0
  6. package/cli/commands/planRelease.js +324 -0
  7. package/cli/commands/writeStarterConfig.js +233 -0
  8. package/cli/mcpServer.js +172 -3
  9. package/dist/.well-known/ai-agents.json +58 -11
  10. package/dist/.well-known/llms-full.txt +80 -17
  11. package/dist/.well-known/llms.txt +38 -12
  12. package/dist/.well-known/mcp-server.json +4 -4
  13. package/dist/ai-agents.json +58 -11
  14. package/dist/app/assets/AgentCli-nIqgOG-i.js +17 -0
  15. package/dist/app/assets/AgentCli-nIqgOG-i.js.map +1 -0
  16. package/dist/app/assets/AgentHandoffPanel-Bf_AJepG.js +2 -0
  17. package/dist/app/assets/AgentHandoffPanel-Bf_AJepG.js.map +1 -0
  18. package/dist/app/assets/AgentStarterWorkflowFigure-DW4SMMy7.js +2 -0
  19. package/dist/app/assets/AgentStarterWorkflowFigure-DW4SMMy7.js.map +1 -0
  20. package/dist/app/assets/App-BRKxkubQ.css +1 -0
  21. package/dist/app/assets/App-CZiyX8-L.js +14 -0
  22. package/dist/app/assets/App-CZiyX8-L.js.map +1 -0
  23. package/dist/app/assets/AppReviewAso-DYOCuqgV.js +4 -0
  24. package/dist/app/assets/AppReviewAso-DYOCuqgV.js.map +1 -0
  25. package/dist/app/assets/Cancelled-CP6V6uDb.js +2 -0
  26. package/dist/app/assets/Cancelled-CP6V6uDb.js.map +1 -0
  27. package/dist/app/assets/CopyButton-BFCx6EPg.js +2 -0
  28. package/dist/app/assets/CopyButton-BFCx6EPg.js.map +1 -0
  29. package/dist/app/assets/DesignPartner-B4J7f0Bx.js +4 -0
  30. package/dist/app/assets/DesignPartner-B4J7f0Bx.js.map +1 -0
  31. package/dist/app/assets/FastlaneScreenshots-cdZE6cGY.js +90 -0
  32. package/dist/app/assets/FastlaneScreenshots-cdZE6cGY.js.map +1 -0
  33. package/dist/app/assets/FirstExport-qfY7uE8r.js +6 -0
  34. package/dist/app/assets/FirstExport-qfY7uE8r.js.map +1 -0
  35. package/dist/app/assets/FitPanel-B1J0V1jK.js +2 -0
  36. package/dist/app/assets/FitPanel-B1J0V1jK.js.map +1 -0
  37. package/dist/app/assets/FivePanelFramework-C4yq58kM.js +62 -0
  38. package/dist/app/assets/FivePanelFramework-C4yq58kM.js.map +1 -0
  39. package/dist/app/assets/ForgotPassword-KF_HFGyb.js +2 -0
  40. package/dist/app/assets/ForgotPassword-KF_HFGyb.js.map +1 -0
  41. package/dist/app/assets/Landing-B_CvZDXJ.js +2 -0
  42. package/dist/app/assets/Landing-B_CvZDXJ.js.map +1 -0
  43. package/dist/app/assets/LanguageSwitcher-hFv9zl1u.js +2 -0
  44. package/dist/app/assets/LanguageSwitcher-hFv9zl1u.js.map +1 -0
  45. package/dist/app/assets/Legal-BwGbEjDk.js +2 -0
  46. package/dist/app/assets/Legal-BwGbEjDk.js.map +1 -0
  47. package/dist/app/assets/NotFound-Ba1Bw7uu.js +2 -0
  48. package/dist/app/assets/NotFound-Ba1Bw7uu.js.map +1 -0
  49. package/dist/app/assets/Pricing-Dt-V4Gqc.js +20 -0
  50. package/dist/app/assets/Pricing-Dt-V4Gqc.js.map +1 -0
  51. package/dist/app/assets/Privacy-C6MrXYPO.js +2 -0
  52. package/dist/app/assets/Privacy-C6MrXYPO.js.map +1 -0
  53. package/dist/app/assets/Proof-C3DDFAhm.js +20 -0
  54. package/dist/app/assets/Proof-C3DDFAhm.js.map +1 -0
  55. package/dist/app/assets/ReleaseFitIntake-DBeb9AFJ.js +27 -0
  56. package/dist/app/assets/ReleaseFitIntake-DBeb9AFJ.js.map +1 -0
  57. package/dist/app/assets/SalesEntryQuickRequestCard-Bfa93AYu.js +2 -0
  58. package/dist/app/assets/SalesEntryQuickRequestCard-Bfa93AYu.js.map +1 -0
  59. package/dist/app/assets/Security-C1OmAgom.js +2 -0
  60. package/dist/app/assets/Security-C1OmAgom.js.map +1 -0
  61. package/dist/app/assets/SignIn-C_wwnmvu.js +2 -0
  62. package/dist/app/assets/SignIn-C_wwnmvu.js.map +1 -0
  63. package/dist/app/assets/SignUp-Dm5HalC6.js +2 -0
  64. package/dist/app/assets/SignUp-Dm5HalC6.js.map +1 -0
  65. package/dist/app/assets/SiteHeader-CJqQ0pL3.js +2 -0
  66. package/dist/app/assets/SiteHeader-CJqQ0pL3.js.map +1 -0
  67. package/dist/app/assets/StickyMobileCta-REC3DROG.js +2 -0
  68. package/dist/app/assets/StickyMobileCta-REC3DROG.js.map +1 -0
  69. package/dist/app/assets/StoreAssetsPipeline-DNnnBp0D.js +6 -0
  70. package/dist/app/assets/StoreAssetsPipeline-DNnnBp0D.js.map +1 -0
  71. package/dist/app/assets/Success-D6b4wLPD.js +2 -0
  72. package/dist/app/assets/Success-D6b4wLPD.js.map +1 -0
  73. package/dist/app/assets/Terms-BMt39FQK.js +2 -0
  74. package/dist/app/assets/Terms-BMt39FQK.js.map +1 -0
  75. package/dist/app/assets/ToolGuardrailsPanel-Cclxwdrb.js +2 -0
  76. package/dist/app/assets/ToolGuardrailsPanel-Cclxwdrb.js.map +1 -0
  77. package/dist/app/assets/ToolsIndex-d1szo5bn.js +6 -0
  78. package/dist/app/assets/ToolsIndex-d1szo5bn.js.map +1 -0
  79. package/dist/app/assets/TrustSalesEntryPanel-DuncpgMs.js +2 -0
  80. package/dist/app/assets/TrustSalesEntryPanel-DuncpgMs.js.map +1 -0
  81. package/dist/app/assets/WorkloadCalculator-BbFWF2Ls.js +5 -0
  82. package/dist/app/assets/WorkloadCalculator-BbFWF2Ls.js.map +1 -0
  83. package/dist/app/assets/agentHandoff-BGmHqDwv.js +2 -0
  84. package/dist/app/assets/agentHandoff-BGmHqDwv.js.map +1 -0
  85. package/dist/app/assets/apiClient-3WVm94VW.js +2 -0
  86. package/dist/app/assets/apiClient-3WVm94VW.js.map +1 -0
  87. package/dist/app/assets/calculator-CofuwQa8.js +2 -0
  88. package/dist/app/assets/calculator-CofuwQa8.js.map +1 -0
  89. package/dist/app/assets/check-Fm2iQO64.js +2 -0
  90. package/dist/app/assets/check-Fm2iQO64.js.map +1 -0
  91. package/dist/app/assets/chevron-down-BIXHKpnf.js +2 -0
  92. package/dist/app/assets/chevron-down-BIXHKpnf.js.map +1 -0
  93. package/dist/app/assets/chunk-BHe-jwch.js +1 -0
  94. package/dist/app/assets/circle-check-X08qqy40.js +2 -0
  95. package/dist/app/assets/circle-check-X08qqy40.js.map +1 -0
  96. package/dist/app/assets/copy-KD-LYJ0z.js +2 -0
  97. package/dist/app/assets/copy-KD-LYJ0z.js.map +1 -0
  98. package/dist/app/assets/crop-K1LOmRty.js +2 -0
  99. package/dist/app/assets/crop-K1LOmRty.js.map +1 -0
  100. package/dist/app/assets/designPartnerRequest-DYqMElJd.js +2 -0
  101. package/dist/app/assets/designPartnerRequest-DYqMElJd.js.map +1 -0
  102. package/dist/app/assets/designPartnerSalesEntry-BpRINg3I.js +2 -0
  103. package/dist/app/assets/designPartnerSalesEntry-BpRINg3I.js.map +1 -0
  104. package/dist/app/assets/download-BXzoc-Y3.js +2 -0
  105. package/dist/app/assets/download-BXzoc-Y3.js.map +1 -0
  106. package/dist/app/assets/eye-CHvLhG2r.js +2 -0
  107. package/dist/app/assets/eye-CHvLhG2r.js.map +1 -0
  108. package/dist/app/assets/file-text-CU-ETLz1.js +2 -0
  109. package/dist/app/assets/file-text-CU-ETLz1.js.map +1 -0
  110. package/dist/app/assets/folder-tree-raVH0Y5V.js +2 -0
  111. package/dist/app/assets/folder-tree-raVH0Y5V.js.map +1 -0
  112. package/dist/app/assets/grid-3x3-cWuhGQfz.js +2 -0
  113. package/dist/app/assets/grid-3x3-cWuhGQfz.js.map +1 -0
  114. package/dist/app/assets/hardeningOffer-tkjlPDU-.js +2 -0
  115. package/dist/app/assets/hardeningOffer-tkjlPDU-.js.map +1 -0
  116. package/dist/app/assets/hero/agent-starter-workflow.png +0 -0
  117. package/dist/app/assets/hero/agent-starter-workflow.webp +0 -0
  118. package/dist/app/assets/html2canvas-pro.esm-OQkwCdu_.js +6 -0
  119. package/dist/app/assets/html2canvas-pro.esm-OQkwCdu_.js.map +1 -0
  120. package/dist/app/assets/index-BW_YmKvl.css +2 -0
  121. package/dist/app/assets/index-D7D6ZRCW.js +212 -0
  122. package/dist/app/assets/index-D7D6ZRCW.js.map +1 -0
  123. package/dist/app/assets/jszip.min-XyfP2hUJ.js +3 -0
  124. package/dist/app/assets/jszip.min-XyfP2hUJ.js.map +1 -0
  125. package/dist/app/assets/layout-grid-Cq_e979G.js +2 -0
  126. package/dist/app/assets/layout-grid-Cq_e979G.js.map +1 -0
  127. package/dist/app/assets/lock-Di7P18Ts.js +2 -0
  128. package/dist/app/assets/lock-Di7P18Ts.js.map +1 -0
  129. package/dist/app/assets/rocket-DHdrCHKD.js +2 -0
  130. package/dist/app/assets/rocket-DHdrCHKD.js.map +1 -0
  131. package/dist/app/assets/shield-check-CxpHNdp0.js +2 -0
  132. package/dist/app/assets/shield-check-CxpHNdp0.js.map +1 -0
  133. package/dist/app/assets/smartphone-DXKiqu57.js +2 -0
  134. package/dist/app/assets/smartphone-DXKiqu57.js.map +1 -0
  135. package/dist/app/assets/stripeClient-CuZgvzca.js +2 -0
  136. package/dist/app/assets/stripeClient-CuZgvzca.js.map +1 -0
  137. package/dist/app/assets/terminal-J0iyJTv2.js +2 -0
  138. package/dist/app/assets/terminal-J0iyJTv2.js.map +1 -0
  139. package/dist/app/assets/triangle-alert-BA0HP6zD.js +2 -0
  140. package/dist/app/assets/triangle-alert-BA0HP6zD.js.map +1 -0
  141. package/dist/app/assets/useAuth-CoS4r8yi.js +22 -0
  142. package/dist/app/assets/useAuth-CoS4r8yi.js.map +1 -0
  143. package/dist/app/assets/users-C-fz7pbn.js +2 -0
  144. package/dist/app/assets/users-C-fz7pbn.js.map +1 -0
  145. package/dist/app/index.html +9 -8
  146. package/dist/assets/AgentCli-nIqgOG-i.js +17 -0
  147. package/dist/assets/AgentCli-nIqgOG-i.js.map +1 -0
  148. package/dist/assets/AgentHandoffPanel-Bf_AJepG.js +2 -0
  149. package/dist/assets/AgentHandoffPanel-Bf_AJepG.js.map +1 -0
  150. package/dist/assets/AgentStarterWorkflowFigure-DW4SMMy7.js +2 -0
  151. package/dist/assets/AgentStarterWorkflowFigure-DW4SMMy7.js.map +1 -0
  152. package/dist/assets/App-BRKxkubQ.css +1 -0
  153. package/dist/assets/App-CZiyX8-L.js +14 -0
  154. package/dist/assets/App-CZiyX8-L.js.map +1 -0
  155. package/dist/assets/AppReviewAso-DYOCuqgV.js +4 -0
  156. package/dist/assets/AppReviewAso-DYOCuqgV.js.map +1 -0
  157. package/dist/assets/Cancelled-CP6V6uDb.js +2 -0
  158. package/dist/assets/Cancelled-CP6V6uDb.js.map +1 -0
  159. package/dist/assets/CopyButton-BFCx6EPg.js +2 -0
  160. package/dist/assets/CopyButton-BFCx6EPg.js.map +1 -0
  161. package/dist/assets/DesignPartner-B4J7f0Bx.js +4 -0
  162. package/dist/assets/DesignPartner-B4J7f0Bx.js.map +1 -0
  163. package/dist/assets/FastlaneScreenshots-cdZE6cGY.js +90 -0
  164. package/dist/assets/FastlaneScreenshots-cdZE6cGY.js.map +1 -0
  165. package/dist/assets/FirstExport-qfY7uE8r.js +6 -0
  166. package/dist/assets/FirstExport-qfY7uE8r.js.map +1 -0
  167. package/dist/assets/FitPanel-B1J0V1jK.js +2 -0
  168. package/dist/assets/FitPanel-B1J0V1jK.js.map +1 -0
  169. package/dist/assets/FivePanelFramework-C4yq58kM.js +62 -0
  170. package/dist/assets/FivePanelFramework-C4yq58kM.js.map +1 -0
  171. package/dist/assets/ForgotPassword-KF_HFGyb.js +2 -0
  172. package/dist/assets/ForgotPassword-KF_HFGyb.js.map +1 -0
  173. package/dist/assets/Landing-B_CvZDXJ.js +2 -0
  174. package/dist/assets/Landing-B_CvZDXJ.js.map +1 -0
  175. package/dist/assets/LanguageSwitcher-hFv9zl1u.js +2 -0
  176. package/dist/assets/LanguageSwitcher-hFv9zl1u.js.map +1 -0
  177. package/dist/assets/Legal-BwGbEjDk.js +2 -0
  178. package/dist/assets/Legal-BwGbEjDk.js.map +1 -0
  179. package/dist/assets/NotFound-Ba1Bw7uu.js +2 -0
  180. package/dist/assets/NotFound-Ba1Bw7uu.js.map +1 -0
  181. package/dist/assets/Pricing-Dt-V4Gqc.js +20 -0
  182. package/dist/assets/Pricing-Dt-V4Gqc.js.map +1 -0
  183. package/dist/assets/Privacy-C6MrXYPO.js +2 -0
  184. package/dist/assets/Privacy-C6MrXYPO.js.map +1 -0
  185. package/dist/assets/Proof-C3DDFAhm.js +20 -0
  186. package/dist/assets/Proof-C3DDFAhm.js.map +1 -0
  187. package/dist/assets/ReleaseFitIntake-DBeb9AFJ.js +27 -0
  188. package/dist/assets/ReleaseFitIntake-DBeb9AFJ.js.map +1 -0
  189. package/dist/assets/SalesEntryQuickRequestCard-Bfa93AYu.js +2 -0
  190. package/dist/assets/SalesEntryQuickRequestCard-Bfa93AYu.js.map +1 -0
  191. package/dist/assets/Security-C1OmAgom.js +2 -0
  192. package/dist/assets/Security-C1OmAgom.js.map +1 -0
  193. package/dist/assets/SignIn-C_wwnmvu.js +2 -0
  194. package/dist/assets/SignIn-C_wwnmvu.js.map +1 -0
  195. package/dist/assets/SignUp-Dm5HalC6.js +2 -0
  196. package/dist/assets/SignUp-Dm5HalC6.js.map +1 -0
  197. package/dist/assets/SiteHeader-CJqQ0pL3.js +2 -0
  198. package/dist/assets/SiteHeader-CJqQ0pL3.js.map +1 -0
  199. package/dist/assets/StickyMobileCta-REC3DROG.js +2 -0
  200. package/dist/assets/StickyMobileCta-REC3DROG.js.map +1 -0
  201. package/dist/assets/StoreAssetsPipeline-DNnnBp0D.js +6 -0
  202. package/dist/assets/StoreAssetsPipeline-DNnnBp0D.js.map +1 -0
  203. package/dist/assets/Success-D6b4wLPD.js +2 -0
  204. package/dist/assets/Success-D6b4wLPD.js.map +1 -0
  205. package/dist/assets/Terms-BMt39FQK.js +2 -0
  206. package/dist/assets/Terms-BMt39FQK.js.map +1 -0
  207. package/dist/assets/ToolGuardrailsPanel-Cclxwdrb.js +2 -0
  208. package/dist/assets/ToolGuardrailsPanel-Cclxwdrb.js.map +1 -0
  209. package/dist/assets/ToolsIndex-d1szo5bn.js +6 -0
  210. package/dist/assets/ToolsIndex-d1szo5bn.js.map +1 -0
  211. package/dist/assets/TrustSalesEntryPanel-DuncpgMs.js +2 -0
  212. package/dist/assets/TrustSalesEntryPanel-DuncpgMs.js.map +1 -0
  213. package/dist/assets/WorkloadCalculator-BbFWF2Ls.js +5 -0
  214. package/dist/assets/WorkloadCalculator-BbFWF2Ls.js.map +1 -0
  215. package/dist/assets/agentHandoff-BGmHqDwv.js +2 -0
  216. package/dist/assets/agentHandoff-BGmHqDwv.js.map +1 -0
  217. package/dist/assets/apiClient-3WVm94VW.js +2 -0
  218. package/dist/assets/apiClient-3WVm94VW.js.map +1 -0
  219. package/dist/assets/calculator-CofuwQa8.js +2 -0
  220. package/dist/assets/calculator-CofuwQa8.js.map +1 -0
  221. package/dist/assets/check-Fm2iQO64.js +2 -0
  222. package/dist/assets/check-Fm2iQO64.js.map +1 -0
  223. package/dist/assets/chevron-down-BIXHKpnf.js +2 -0
  224. package/dist/assets/chevron-down-BIXHKpnf.js.map +1 -0
  225. package/dist/assets/chunk-BHe-jwch.js +1 -0
  226. package/dist/assets/circle-check-X08qqy40.js +2 -0
  227. package/dist/assets/circle-check-X08qqy40.js.map +1 -0
  228. package/dist/assets/copy-KD-LYJ0z.js +2 -0
  229. package/dist/assets/copy-KD-LYJ0z.js.map +1 -0
  230. package/dist/assets/crop-K1LOmRty.js +2 -0
  231. package/dist/assets/crop-K1LOmRty.js.map +1 -0
  232. package/dist/assets/designPartnerRequest-DYqMElJd.js +2 -0
  233. package/dist/assets/designPartnerRequest-DYqMElJd.js.map +1 -0
  234. package/dist/assets/designPartnerSalesEntry-BpRINg3I.js +2 -0
  235. package/dist/assets/designPartnerSalesEntry-BpRINg3I.js.map +1 -0
  236. package/dist/assets/download-BXzoc-Y3.js +2 -0
  237. package/dist/assets/download-BXzoc-Y3.js.map +1 -0
  238. package/dist/assets/eye-CHvLhG2r.js +2 -0
  239. package/dist/assets/eye-CHvLhG2r.js.map +1 -0
  240. package/dist/assets/file-text-CU-ETLz1.js +2 -0
  241. package/dist/assets/file-text-CU-ETLz1.js.map +1 -0
  242. package/dist/assets/folder-tree-raVH0Y5V.js +2 -0
  243. package/dist/assets/folder-tree-raVH0Y5V.js.map +1 -0
  244. package/dist/assets/grid-3x3-cWuhGQfz.js +2 -0
  245. package/dist/assets/grid-3x3-cWuhGQfz.js.map +1 -0
  246. package/dist/assets/hardeningOffer-tkjlPDU-.js +2 -0
  247. package/dist/assets/hardeningOffer-tkjlPDU-.js.map +1 -0
  248. package/dist/assets/hero/agent-starter-workflow.png +0 -0
  249. package/dist/assets/hero/agent-starter-workflow.webp +0 -0
  250. package/dist/assets/html2canvas-pro.esm-OQkwCdu_.js +6 -0
  251. package/dist/assets/html2canvas-pro.esm-OQkwCdu_.js.map +1 -0
  252. package/dist/assets/index-BW_YmKvl.css +2 -0
  253. package/dist/assets/index-D7D6ZRCW.js +212 -0
  254. package/dist/assets/index-D7D6ZRCW.js.map +1 -0
  255. package/dist/assets/jszip.min-XyfP2hUJ.js +3 -0
  256. package/dist/assets/jszip.min-XyfP2hUJ.js.map +1 -0
  257. package/dist/assets/layout-grid-Cq_e979G.js +2 -0
  258. package/dist/assets/layout-grid-Cq_e979G.js.map +1 -0
  259. package/dist/assets/lock-Di7P18Ts.js +2 -0
  260. package/dist/assets/lock-Di7P18Ts.js.map +1 -0
  261. package/dist/assets/rocket-DHdrCHKD.js +2 -0
  262. package/dist/assets/rocket-DHdrCHKD.js.map +1 -0
  263. package/dist/assets/shield-check-CxpHNdp0.js +2 -0
  264. package/dist/assets/shield-check-CxpHNdp0.js.map +1 -0
  265. package/dist/assets/smartphone-DXKiqu57.js +2 -0
  266. package/dist/assets/smartphone-DXKiqu57.js.map +1 -0
  267. package/dist/assets/stripeClient-CuZgvzca.js +2 -0
  268. package/dist/assets/stripeClient-CuZgvzca.js.map +1 -0
  269. package/dist/assets/terminal-J0iyJTv2.js +2 -0
  270. package/dist/assets/terminal-J0iyJTv2.js.map +1 -0
  271. package/dist/assets/triangle-alert-BA0HP6zD.js +2 -0
  272. package/dist/assets/triangle-alert-BA0HP6zD.js.map +1 -0
  273. package/dist/assets/useAuth-CoS4r8yi.js +22 -0
  274. package/dist/assets/useAuth-CoS4r8yi.js.map +1 -0
  275. package/dist/assets/users-C-fz7pbn.js +2 -0
  276. package/dist/assets/users-C-fz7pbn.js.map +1 -0
  277. package/dist/cancelled/index.html +3 -2
  278. package/dist/design-partner/index.html +6 -5
  279. package/dist/downloads/shipscreens-github-actions-template.yml +1 -1
  280. package/dist/forgot-password/index.html +3 -2
  281. package/dist/index.html +9 -8
  282. package/dist/legal/index.html +3 -2
  283. package/dist/llms-full.txt +80 -17
  284. package/dist/llms.txt +38 -12
  285. package/dist/mcp-server.json +4 -4
  286. package/dist/pricing/index.html +6 -5
  287. package/dist/privacy/index.html +3 -2
  288. package/dist/proof/index.html +6 -5
  289. package/dist/security/index.html +3 -2
  290. package/dist/signin/index.html +3 -2
  291. package/dist/signup/index.html +3 -2
  292. package/dist/success/index.html +3 -2
  293. package/dist/terms/index.html +3 -2
  294. package/dist/tools/5-panel-screenshot-framework/index.html +6 -5
  295. package/dist/tools/agent-cli/index.html +8 -7
  296. package/dist/tools/app-review-aso/index.html +6 -5
  297. package/dist/tools/app-store-localization-screenshot-automation/index.html +8 -7
  298. package/dist/tools/app-store-screenshot-automation/index.html +8 -7
  299. package/dist/tools/app-store-screenshot-requirements-checklist/index.html +8 -7
  300. package/dist/tools/claude-code-mcp-screenshot-automation/index.html +8 -7
  301. package/dist/tools/cursor-mcp-screenshot-automation/index.html +8 -7
  302. package/dist/tools/deterministic-screenshot-reruns/index.html +8 -7
  303. package/dist/tools/device-locale-screenshot-matrix/index.html +8 -7
  304. package/dist/tools/fastlane-screenshot-folder-structure/index.html +8 -7
  305. package/dist/tools/fastlane-screenshot-pipeline/index.html +8 -7
  306. package/dist/tools/fastlane-screenshots/index.html +6 -5
  307. package/dist/tools/first-export/index.html +6 -5
  308. package/dist/tools/gemini-cli-mcp-screenshot-automation/index.html +8 -7
  309. package/dist/tools/google-play-screenshot-automation/index.html +8 -7
  310. package/dist/tools/google-play-screenshot-requirements-checklist/index.html +8 -7
  311. package/dist/tools/index.html +6 -5
  312. package/dist/tools/ipad-screenshot-review-requirements/index.html +8 -7
  313. package/dist/tools/openai-responses-tool-screenshot-automation/index.html +8 -7
  314. package/dist/tools/screenshot-ci-pipeline/index.html +8 -7
  315. package/dist/tools/screenshot-naming-order-drift/index.html +8 -7
  316. package/dist/tools/screenshot-workload-calculator/index.html +6 -5
  317. package/dist/tools/store-assets-pipeline/index.html +3 -2
  318. package/dist/tools/vscode-copilot-mcp-screenshot-automation/index.html +8 -7
  319. package/package.json +7 -7
  320. package/dist/app/assets/AgentCli-xKYtzL3B.js +0 -17
  321. package/dist/app/assets/AgentCli-xKYtzL3B.js.map +0 -1
  322. package/dist/app/assets/App-C1cNw_fn.js +0 -13
  323. package/dist/app/assets/App-C1cNw_fn.js.map +0 -1
  324. package/dist/app/assets/App-oQfE_p3A.css +0 -1
  325. package/dist/app/assets/AppReviewAso-CaIT-L7Z.js +0 -4
  326. package/dist/app/assets/AppReviewAso-CaIT-L7Z.js.map +0 -1
  327. package/dist/app/assets/Cancelled-Dmw7PTD-.js +0 -2
  328. package/dist/app/assets/Cancelled-Dmw7PTD-.js.map +0 -1
  329. package/dist/app/assets/CopyButton-CPRHmu8l.js +0 -2
  330. package/dist/app/assets/CopyButton-CPRHmu8l.js.map +0 -1
  331. package/dist/app/assets/DesignPartner-Ckp1GhNv.js +0 -4
  332. package/dist/app/assets/DesignPartner-Ckp1GhNv.js.map +0 -1
  333. package/dist/app/assets/FastlaneScreenshots-CB-zv5Us.js +0 -100
  334. package/dist/app/assets/FastlaneScreenshots-CB-zv5Us.js.map +0 -1
  335. package/dist/app/assets/FirstExport-RXbvVQdK.js +0 -6
  336. package/dist/app/assets/FirstExport-RXbvVQdK.js.map +0 -1
  337. package/dist/app/assets/FitPanel-ic91y-49.js +0 -2
  338. package/dist/app/assets/FitPanel-ic91y-49.js.map +0 -1
  339. package/dist/app/assets/FivePanelFramework-BZKNcycb.js +0 -62
  340. package/dist/app/assets/FivePanelFramework-BZKNcycb.js.map +0 -1
  341. package/dist/app/assets/ForgotPassword-CKOfAvWk.js +0 -2
  342. package/dist/app/assets/ForgotPassword-CKOfAvWk.js.map +0 -1
  343. package/dist/app/assets/Landing-D0cuDDUk.js +0 -2
  344. package/dist/app/assets/Landing-D0cuDDUk.js.map +0 -1
  345. package/dist/app/assets/LanguageSwitcher-BrToLEgF.js +0 -2
  346. package/dist/app/assets/LanguageSwitcher-BrToLEgF.js.map +0 -1
  347. package/dist/app/assets/Legal-Cm-hVzjY.js +0 -2
  348. package/dist/app/assets/Legal-Cm-hVzjY.js.map +0 -1
  349. package/dist/app/assets/NotFound-B0I6I440.js +0 -2
  350. package/dist/app/assets/NotFound-B0I6I440.js.map +0 -1
  351. package/dist/app/assets/Pricing-p-NIjjtK.js +0 -29
  352. package/dist/app/assets/Pricing-p-NIjjtK.js.map +0 -1
  353. package/dist/app/assets/Privacy-BhfPkK0y.js +0 -2
  354. package/dist/app/assets/Privacy-BhfPkK0y.js.map +0 -1
  355. package/dist/app/assets/Proof-D-7QbTGX.js +0 -20
  356. package/dist/app/assets/Proof-D-7QbTGX.js.map +0 -1
  357. package/dist/app/assets/Security-DFafJQIT.js +0 -2
  358. package/dist/app/assets/Security-DFafJQIT.js.map +0 -1
  359. package/dist/app/assets/SignIn--6nNsUCm.js +0 -2
  360. package/dist/app/assets/SignIn--6nNsUCm.js.map +0 -1
  361. package/dist/app/assets/SignUp-yh5ydmFf.js +0 -2
  362. package/dist/app/assets/SignUp-yh5ydmFf.js.map +0 -1
  363. package/dist/app/assets/SiteHeader-NTK-cM9O.js +0 -2
  364. package/dist/app/assets/SiteHeader-NTK-cM9O.js.map +0 -1
  365. package/dist/app/assets/StickyMobileCta-DVXAyhaH.js +0 -2
  366. package/dist/app/assets/StickyMobileCta-DVXAyhaH.js.map +0 -1
  367. package/dist/app/assets/StoreAssetsPipeline-Cbs1bNK5.js +0 -6
  368. package/dist/app/assets/StoreAssetsPipeline-Cbs1bNK5.js.map +0 -1
  369. package/dist/app/assets/Success-C3n0m1XU.js +0 -2
  370. package/dist/app/assets/Success-C3n0m1XU.js.map +0 -1
  371. package/dist/app/assets/Terms-C72ybAwA.js +0 -2
  372. package/dist/app/assets/Terms-C72ybAwA.js.map +0 -1
  373. package/dist/app/assets/ToolGuardrailsPanel-meKxUeSB.js +0 -2
  374. package/dist/app/assets/ToolGuardrailsPanel-meKxUeSB.js.map +0 -1
  375. package/dist/app/assets/ToolsIndex-CnvNTvyW.js +0 -6
  376. package/dist/app/assets/ToolsIndex-CnvNTvyW.js.map +0 -1
  377. package/dist/app/assets/WorkloadCalculator-CK4qVUcQ.js +0 -5
  378. package/dist/app/assets/WorkloadCalculator-CK4qVUcQ.js.map +0 -1
  379. package/dist/app/assets/arrow-right-Dglia5EE.js +0 -2
  380. package/dist/app/assets/arrow-right-Dglia5EE.js.map +0 -1
  381. package/dist/app/assets/calculator-CAgtsVuH.js +0 -2
  382. package/dist/app/assets/calculator-CAgtsVuH.js.map +0 -1
  383. package/dist/app/assets/check-B5h9hATV.js +0 -2
  384. package/dist/app/assets/check-B5h9hATV.js.map +0 -1
  385. package/dist/app/assets/chevron-down-By2Ts8dG.js +0 -2
  386. package/dist/app/assets/chevron-down-By2Ts8dG.js.map +0 -1
  387. package/dist/app/assets/circle-check-DaJ6APMi.js +0 -2
  388. package/dist/app/assets/circle-check-DaJ6APMi.js.map +0 -1
  389. package/dist/app/assets/clipboard-copy-IDfWU9SE.js +0 -2
  390. package/dist/app/assets/clipboard-copy-IDfWU9SE.js.map +0 -1
  391. package/dist/app/assets/copy-KSn4Rc2b.js +0 -2
  392. package/dist/app/assets/copy-KSn4Rc2b.js.map +0 -1
  393. package/dist/app/assets/crop-C9hwiw0i.js +0 -2
  394. package/dist/app/assets/crop-C9hwiw0i.js.map +0 -1
  395. package/dist/app/assets/download-eqwxO8bs.js +0 -2
  396. package/dist/app/assets/download-eqwxO8bs.js.map +0 -1
  397. package/dist/app/assets/eye-Dg61f0nU.js +0 -2
  398. package/dist/app/assets/eye-Dg61f0nU.js.map +0 -1
  399. package/dist/app/assets/file-text-BQPKCil3.js +0 -2
  400. package/dist/app/assets/file-text-BQPKCil3.js.map +0 -1
  401. package/dist/app/assets/folder-tree-9hq6oigy.js +0 -2
  402. package/dist/app/assets/folder-tree-9hq6oigy.js.map +0 -1
  403. package/dist/app/assets/grid-3x3-BHXRyOIx.js +0 -2
  404. package/dist/app/assets/grid-3x3-BHXRyOIx.js.map +0 -1
  405. package/dist/app/assets/index-my6BmN7T.js +0 -204
  406. package/dist/app/assets/index-my6BmN7T.js.map +0 -1
  407. package/dist/app/assets/index-rv91vbLH.css +0 -1
  408. package/dist/app/assets/layout-grid-DDQvnEgx.js +0 -2
  409. package/dist/app/assets/layout-grid-DDQvnEgx.js.map +0 -1
  410. package/dist/app/assets/rocket-0KMviRpJ.js +0 -2
  411. package/dist/app/assets/rocket-0KMviRpJ.js.map +0 -1
  412. package/dist/app/assets/shield-check-BvKEQ2hc.js +0 -2
  413. package/dist/app/assets/shield-check-BvKEQ2hc.js.map +0 -1
  414. package/dist/app/assets/signIn-Ckla1_0O.js +0 -2
  415. package/dist/app/assets/signIn-Ckla1_0O.js.map +0 -1
  416. package/dist/app/assets/smartphone-I0w1b2DV.js +0 -2
  417. package/dist/app/assets/smartphone-I0w1b2DV.js.map +0 -1
  418. package/dist/app/assets/terminal-CLpUSQqd.js +0 -2
  419. package/dist/app/assets/terminal-CLpUSQqd.js.map +0 -1
  420. package/dist/app/assets/triangle-alert-w7TZ0yy2.js +0 -2
  421. package/dist/app/assets/triangle-alert-w7TZ0yy2.js.map +0 -1
  422. package/dist/app/assets/useAuth-N3hsUaDj.js +0 -4
  423. package/dist/app/assets/useAuth-N3hsUaDj.js.map +0 -1
  424. package/dist/app/assets/users-DsQdkuR3.js +0 -2
  425. package/dist/app/assets/users-DsQdkuR3.js.map +0 -1
  426. package/dist/assets/AgentCli-xKYtzL3B.js +0 -17
  427. package/dist/assets/AgentCli-xKYtzL3B.js.map +0 -1
  428. package/dist/assets/App-C1cNw_fn.js +0 -13
  429. package/dist/assets/App-C1cNw_fn.js.map +0 -1
  430. package/dist/assets/App-oQfE_p3A.css +0 -1
  431. package/dist/assets/AppReviewAso-CaIT-L7Z.js +0 -4
  432. package/dist/assets/AppReviewAso-CaIT-L7Z.js.map +0 -1
  433. package/dist/assets/Cancelled-Dmw7PTD-.js +0 -2
  434. package/dist/assets/Cancelled-Dmw7PTD-.js.map +0 -1
  435. package/dist/assets/CopyButton-CPRHmu8l.js +0 -2
  436. package/dist/assets/CopyButton-CPRHmu8l.js.map +0 -1
  437. package/dist/assets/DesignPartner-Ckp1GhNv.js +0 -4
  438. package/dist/assets/DesignPartner-Ckp1GhNv.js.map +0 -1
  439. package/dist/assets/FastlaneScreenshots-CB-zv5Us.js +0 -100
  440. package/dist/assets/FastlaneScreenshots-CB-zv5Us.js.map +0 -1
  441. package/dist/assets/FirstExport-RXbvVQdK.js +0 -6
  442. package/dist/assets/FirstExport-RXbvVQdK.js.map +0 -1
  443. package/dist/assets/FitPanel-ic91y-49.js +0 -2
  444. package/dist/assets/FitPanel-ic91y-49.js.map +0 -1
  445. package/dist/assets/FivePanelFramework-BZKNcycb.js +0 -62
  446. package/dist/assets/FivePanelFramework-BZKNcycb.js.map +0 -1
  447. package/dist/assets/ForgotPassword-CKOfAvWk.js +0 -2
  448. package/dist/assets/ForgotPassword-CKOfAvWk.js.map +0 -1
  449. package/dist/assets/Landing-D0cuDDUk.js +0 -2
  450. package/dist/assets/Landing-D0cuDDUk.js.map +0 -1
  451. package/dist/assets/LanguageSwitcher-BrToLEgF.js +0 -2
  452. package/dist/assets/LanguageSwitcher-BrToLEgF.js.map +0 -1
  453. package/dist/assets/Legal-Cm-hVzjY.js +0 -2
  454. package/dist/assets/Legal-Cm-hVzjY.js.map +0 -1
  455. package/dist/assets/NotFound-B0I6I440.js +0 -2
  456. package/dist/assets/NotFound-B0I6I440.js.map +0 -1
  457. package/dist/assets/Pricing-p-NIjjtK.js +0 -29
  458. package/dist/assets/Pricing-p-NIjjtK.js.map +0 -1
  459. package/dist/assets/Privacy-BhfPkK0y.js +0 -2
  460. package/dist/assets/Privacy-BhfPkK0y.js.map +0 -1
  461. package/dist/assets/Proof-D-7QbTGX.js +0 -20
  462. package/dist/assets/Proof-D-7QbTGX.js.map +0 -1
  463. package/dist/assets/Security-DFafJQIT.js +0 -2
  464. package/dist/assets/Security-DFafJQIT.js.map +0 -1
  465. package/dist/assets/SignIn--6nNsUCm.js +0 -2
  466. package/dist/assets/SignIn--6nNsUCm.js.map +0 -1
  467. package/dist/assets/SignUp-yh5ydmFf.js +0 -2
  468. package/dist/assets/SignUp-yh5ydmFf.js.map +0 -1
  469. package/dist/assets/SiteHeader-NTK-cM9O.js +0 -2
  470. package/dist/assets/SiteHeader-NTK-cM9O.js.map +0 -1
  471. package/dist/assets/StickyMobileCta-DVXAyhaH.js +0 -2
  472. package/dist/assets/StickyMobileCta-DVXAyhaH.js.map +0 -1
  473. package/dist/assets/StoreAssetsPipeline-Cbs1bNK5.js +0 -6
  474. package/dist/assets/StoreAssetsPipeline-Cbs1bNK5.js.map +0 -1
  475. package/dist/assets/Success-C3n0m1XU.js +0 -2
  476. package/dist/assets/Success-C3n0m1XU.js.map +0 -1
  477. package/dist/assets/Terms-C72ybAwA.js +0 -2
  478. package/dist/assets/Terms-C72ybAwA.js.map +0 -1
  479. package/dist/assets/ToolGuardrailsPanel-meKxUeSB.js +0 -2
  480. package/dist/assets/ToolGuardrailsPanel-meKxUeSB.js.map +0 -1
  481. package/dist/assets/ToolsIndex-CnvNTvyW.js +0 -6
  482. package/dist/assets/ToolsIndex-CnvNTvyW.js.map +0 -1
  483. package/dist/assets/WorkloadCalculator-CK4qVUcQ.js +0 -5
  484. package/dist/assets/WorkloadCalculator-CK4qVUcQ.js.map +0 -1
  485. package/dist/assets/arrow-right-Dglia5EE.js +0 -2
  486. package/dist/assets/arrow-right-Dglia5EE.js.map +0 -1
  487. package/dist/assets/calculator-CAgtsVuH.js +0 -2
  488. package/dist/assets/calculator-CAgtsVuH.js.map +0 -1
  489. package/dist/assets/check-B5h9hATV.js +0 -2
  490. package/dist/assets/check-B5h9hATV.js.map +0 -1
  491. package/dist/assets/chevron-down-By2Ts8dG.js +0 -2
  492. package/dist/assets/chevron-down-By2Ts8dG.js.map +0 -1
  493. package/dist/assets/circle-check-DaJ6APMi.js +0 -2
  494. package/dist/assets/circle-check-DaJ6APMi.js.map +0 -1
  495. package/dist/assets/clipboard-copy-IDfWU9SE.js +0 -2
  496. package/dist/assets/clipboard-copy-IDfWU9SE.js.map +0 -1
  497. package/dist/assets/copy-KSn4Rc2b.js +0 -2
  498. package/dist/assets/copy-KSn4Rc2b.js.map +0 -1
  499. package/dist/assets/crop-C9hwiw0i.js +0 -2
  500. package/dist/assets/crop-C9hwiw0i.js.map +0 -1
  501. package/dist/assets/download-eqwxO8bs.js +0 -2
  502. package/dist/assets/download-eqwxO8bs.js.map +0 -1
  503. package/dist/assets/eye-Dg61f0nU.js +0 -2
  504. package/dist/assets/eye-Dg61f0nU.js.map +0 -1
  505. package/dist/assets/file-text-BQPKCil3.js +0 -2
  506. package/dist/assets/file-text-BQPKCil3.js.map +0 -1
  507. package/dist/assets/folder-tree-9hq6oigy.js +0 -2
  508. package/dist/assets/folder-tree-9hq6oigy.js.map +0 -1
  509. package/dist/assets/grid-3x3-BHXRyOIx.js +0 -2
  510. package/dist/assets/grid-3x3-BHXRyOIx.js.map +0 -1
  511. package/dist/assets/index-my6BmN7T.js +0 -204
  512. package/dist/assets/index-my6BmN7T.js.map +0 -1
  513. package/dist/assets/index-rv91vbLH.css +0 -1
  514. package/dist/assets/layout-grid-DDQvnEgx.js +0 -2
  515. package/dist/assets/layout-grid-DDQvnEgx.js.map +0 -1
  516. package/dist/assets/rocket-0KMviRpJ.js +0 -2
  517. package/dist/assets/rocket-0KMviRpJ.js.map +0 -1
  518. package/dist/assets/shield-check-BvKEQ2hc.js +0 -2
  519. package/dist/assets/shield-check-BvKEQ2hc.js.map +0 -1
  520. package/dist/assets/signIn-Ckla1_0O.js +0 -2
  521. package/dist/assets/signIn-Ckla1_0O.js.map +0 -1
  522. package/dist/assets/smartphone-I0w1b2DV.js +0 -2
  523. package/dist/assets/smartphone-I0w1b2DV.js.map +0 -1
  524. package/dist/assets/terminal-CLpUSQqd.js +0 -2
  525. package/dist/assets/terminal-CLpUSQqd.js.map +0 -1
  526. package/dist/assets/triangle-alert-w7TZ0yy2.js +0 -2
  527. package/dist/assets/triangle-alert-w7TZ0yy2.js.map +0 -1
  528. package/dist/assets/useAuth-N3hsUaDj.js +0 -4
  529. package/dist/assets/useAuth-N3hsUaDj.js.map +0 -1
  530. package/dist/assets/users-DsQdkuR3.js +0 -2
  531. package/dist/assets/users-DsQdkuR3.js.map +0 -1
@@ -0,0 +1,212 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/App-CZiyX8-L.js","assets/chunk-BHe-jwch.js","assets/useAuth-CoS4r8yi.js","assets/stripeClient-CuZgvzca.js","assets/apiClient-3WVm94VW.js","assets/LanguageSwitcher-hFv9zl1u.js","assets/circle-check-X08qqy40.js","assets/check-Fm2iQO64.js","assets/chevron-down-BIXHKpnf.js","assets/CopyButton-BFCx6EPg.js","assets/copy-KD-LYJ0z.js","assets/lock-Di7P18Ts.js","assets/download-BXzoc-Y3.js","assets/file-text-CU-ETLz1.js","assets/grid-3x3-cWuhGQfz.js","assets/smartphone-DXKiqu57.js","assets/terminal-J0iyJTv2.js","assets/triangle-alert-BA0HP6zD.js","assets/users-C-fz7pbn.js","assets/App-BRKxkubQ.css","assets/Landing-B_CvZDXJ.js","assets/SiteHeader-CJqQ0pL3.js","assets/ReleaseFitIntake-DBeb9AFJ.js","assets/folder-tree-raVH0Y5V.js","assets/shield-check-CxpHNdp0.js","assets/AgentHandoffPanel-Bf_AJepG.js","assets/agentHandoff-BGmHqDwv.js","assets/SalesEntryQuickRequestCard-Bfa93AYu.js","assets/designPartnerRequest-DYqMElJd.js","assets/designPartnerSalesEntry-BpRINg3I.js","assets/Terms-BMt39FQK.js","assets/TrustSalesEntryPanel-DuncpgMs.js","assets/Privacy-C6MrXYPO.js","assets/Legal-BwGbEjDk.js","assets/Security-C1OmAgom.js","assets/Proof-C3DDFAhm.js","assets/DesignPartner-B4J7f0Bx.js","assets/hardeningOffer-tkjlPDU-.js","assets/NotFound-Ba1Bw7uu.js","assets/Success-D6b4wLPD.js","assets/Cancelled-CP6V6uDb.js","assets/ToolsIndex-d1szo5bn.js","assets/calculator-CofuwQa8.js","assets/layout-grid-Cq_e979G.js","assets/rocket-DHdrCHKD.js","assets/StickyMobileCta-REC3DROG.js","assets/FitPanel-B1J0V1jK.js","assets/ToolGuardrailsPanel-Cclxwdrb.js","assets/FirstExport-qfY7uE8r.js","assets/WorkloadCalculator-BbFWF2Ls.js","assets/FivePanelFramework-C4yq58kM.js","assets/StoreAssetsPipeline-DNnnBp0D.js","assets/crop-K1LOmRty.js","assets/FastlaneScreenshots-cdZE6cGY.js","assets/AppReviewAso-DYOCuqgV.js","assets/AgentCli-nIqgOG-i.js","assets/AgentStarterWorkflowFigure-DW4SMMy7.js","assets/Pricing-Dt-V4Gqc.js","assets/SignIn-C_wwnmvu.js","assets/eye-CHvLhG2r.js","assets/SignUp-Dm5HalC6.js","assets/ForgotPassword-KF_HFGyb.js"])))=>i.map(i=>d[i]);
2
+ import{r as e,t}from"./chunk-BHe-jwch.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var n=t((e=>{var t=Symbol.for(`react.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.provider`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.iterator;function p(e){return typeof e!=`object`||!e?null:(e=f&&e[f]||e[`@@iterator`],typeof e==`function`?e:null)}var m={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},h=Object.assign,g={};function _(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}_.prototype.isReactComponent={},_.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`setState(...): takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},_.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function v(){}v.prototype=_.prototype;function y(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}var b=y.prototype=new v;b.constructor=y,h(b,_.prototype),b.isPureReactComponent=!0;var x=Array.isArray,S=Object.prototype.hasOwnProperty,C={current:null},w={key:!0,ref:!0,__self:!0,__source:!0};function ee(e,n,r){var i,a={},o=null,s=null;if(n!=null)for(i in n.ref!==void 0&&(s=n.ref),n.key!==void 0&&(o=``+n.key),n)S.call(n,i)&&!w.hasOwnProperty(i)&&(a[i]=n[i]);var c=arguments.length-2;if(c===1)a.children=r;else if(1<c){for(var l=Array(c),u=0;u<c;u++)l[u]=arguments[u+2];a.children=l}if(e&&e.defaultProps)for(i in c=e.defaultProps,c)a[i]===void 0&&(a[i]=c[i]);return{$$typeof:t,type:e,key:o,ref:s,props:a,_owner:C.current}}function T(e,n){return{$$typeof:t,type:e.type,key:n,ref:e.ref,props:e.props,_owner:e._owner}}function E(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function te(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var ne=/\/+/g;function re(e,t){return typeof e==`object`&&e&&e.key!=null?te(``+e.key):t.toString(36)}function ie(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0}}if(c)return c=e,o=o(c),e=a===``?`.`+re(c,0):a,x(o)?(i=``,e!=null&&(i=e.replace(ne,`$&/`)+`/`),ie(o,r,i,``,function(e){return e})):o!=null&&(E(o)&&(o=T(o,i+(!o.key||c&&c.key===o.key?``:(``+o.key).replace(ne,`$&/`)+`/`)+e)),r.push(o)),1;if(c=0,a=a===``?`.`:a+`:`,x(e))for(var l=0;l<e.length;l++){s=e[l];var u=a+re(s,l);c+=ie(s,r,i,u,o)}else if(u=p(e),typeof u==`function`)for(e=u.call(e),l=0;!(s=e.next()).done;)s=s.value,u=a+re(s,l++),c+=ie(s,r,i,u,o);else if(s===`object`)throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`);return c}function ae(e,t,n){if(e==null)return e;var r=[],i=0;return ie(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function oe(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var D={current:null},se={transition:null},ce={ReactCurrentDispatcher:D,ReactCurrentBatchConfig:se,ReactCurrentOwner:C};function le(){throw Error(`act(...) is not supported in production builds of React.`)}e.Children={map:ae,forEach:function(e,t,n){ae(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return ae(e,function(){t++}),t},toArray:function(e){return ae(e,function(e){return e})||[]},only:function(e){if(!E(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}},e.Component=_,e.Fragment=r,e.Profiler=a,e.PureComponent=y,e.StrictMode=i,e.Suspense=l,e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=ce,e.act=le,e.cloneElement=function(e,n,r){if(e==null)throw Error(`React.cloneElement(...): The argument must be a React element, but you passed `+e+`.`);var i=h({},e.props),a=e.key,o=e.ref,s=e._owner;if(n!=null){if(n.ref!==void 0&&(o=n.ref,s=C.current),n.key!==void 0&&(a=``+n.key),e.type&&e.type.defaultProps)var c=e.type.defaultProps;for(l in n)S.call(n,l)&&!w.hasOwnProperty(l)&&(i[l]=n[l]===void 0&&c!==void 0?c[l]:n[l])}var l=arguments.length-2;if(l===1)i.children=r;else if(1<l){c=Array(l);for(var u=0;u<l;u++)c[u]=arguments[u+2];i.children=c}return{$$typeof:t,type:e.type,key:a,ref:o,props:i,_owner:s}},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:o,_context:e},e.Consumer=e},e.createElement=ee,e.createFactory=function(e){var t=ee.bind(null,e);return t.type=e,t},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=E,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:oe}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=se.transition;se.transition={};try{e()}finally{se.transition=t}},e.unstable_act=le,e.useCallback=function(e,t){return D.current.useCallback(e,t)},e.useContext=function(e){return D.current.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e){return D.current.useDeferredValue(e)},e.useEffect=function(e,t){return D.current.useEffect(e,t)},e.useId=function(){return D.current.useId()},e.useImperativeHandle=function(e,t,n){return D.current.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return D.current.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return D.current.useLayoutEffect(e,t)},e.useMemo=function(e,t){return D.current.useMemo(e,t)},e.useReducer=function(e,t,n){return D.current.useReducer(e,t,n)},e.useRef=function(e){return D.current.useRef(e)},e.useState=function(e){return D.current.useState(e)},e.useSyncExternalStore=function(e,t,n){return D.current.useSyncExternalStore(e,t,n)},e.useTransition=function(){return D.current.useTransition()},e.version=`18.3.1`})),r=t(((e,t)=>{t.exports=n()})),i=t((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=typeof setTimeout==`function`?setTimeout:null,_=typeof clearTimeout==`function`?clearTimeout:null,v=typeof setImmediate<`u`?setImmediate:null;typeof navigator<`u`&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function y(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function b(e){if(h=!1,y(e),!m)if(n(c)!==null)m=!0,ae(x);else{var t=n(l);t!==null&&oe(b,t.startTime-e)}}function x(t,i){m=!1,h&&(h=!1,_(w),w=-1),p=!0;var a=f;try{for(y(i),d=n(c);d!==null&&(!(d.expirationTime>i)||t&&!E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=i);i=e.unstable_now(),typeof s==`function`?d.callback=s:d===n(c)&&r(c),y(i)}else r(c);d=n(c)}if(d!==null)var u=!0;else{var g=n(l);g!==null&&oe(b,g.startTime-i),u=!1}return u}finally{d=null,f=a,p=!1}}var S=!1,C=null,w=-1,ee=5,T=-1;function E(){return!(e.unstable_now()-T<ee)}function te(){if(C!==null){var t=e.unstable_now();T=t;var n=!0;try{n=C(!0,t)}finally{n?ne():(S=!1,C=null)}}else S=!1}var ne;if(typeof v==`function`)ne=function(){v(te)};else if(typeof MessageChannel<`u`){var re=new MessageChannel,ie=re.port2;re.port1.onmessage=te,ne=function(){ie.postMessage(null)}}else ne=function(){g(te,0)};function ae(e){C=e,S||(S=!0,ne())}function oe(t,n){w=g(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_continueExecution=function(){m||p||(m=!0,ae(x))},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):ee=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_getFirstCallbackNode=function(){return n(c)},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(_(w),w=-1):h=!0,oe(b,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,ae(x))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),a=t(((e,t)=>{t.exports=i()})),o=t((e=>{var t=r(),n=a();function i(e){for(var t=`https://reactjs.org/docs/error-decoder.html?invariant=`+e,n=1;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n]);return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}var o=new Set,s={};function c(e,t){l(e,t),l(e+`Capture`,t)}function l(e,t){for(s[e]=t,e=0;e<t.length;e++)o.add(t[e])}var u=!(typeof window>`u`||window.document===void 0||window.document.createElement===void 0),d=Object.prototype.hasOwnProperty,f=/^[: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]*$/,p={},m={};function h(e){return d.call(m,e)?!0:d.call(p,e)?!1:f.test(e)?m[e]=!0:(p[e]=!0,!1)}function g(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case`function`:case`symbol`:return!0;case`boolean`:return r?!1:n===null?(e=e.toLowerCase().slice(0,5),e!==`data-`&&e!==`aria-`):!n.acceptsBooleans;default:return!1}}function _(e,t,n,r){if(t==null||g(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function v(e,t,n,r,i,a,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=o}var y={};`children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style`.split(` `).forEach(function(e){y[e]=new v(e,0,!1,e,null,!1,!1)}),[[`acceptCharset`,`accept-charset`],[`className`,`class`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`]].forEach(function(e){var t=e[0];y[t]=new v(t,1,!1,e[1],null,!1,!1)}),[`contentEditable`,`draggable`,`spellCheck`,`value`].forEach(function(e){y[e]=new v(e,2,!1,e.toLowerCase(),null,!1,!1)}),[`autoReverse`,`externalResourcesRequired`,`focusable`,`preserveAlpha`].forEach(function(e){y[e]=new v(e,2,!1,e,null,!1,!1)}),`allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope`.split(` `).forEach(function(e){y[e]=new v(e,3,!1,e.toLowerCase(),null,!1,!1)}),[`checked`,`multiple`,`muted`,`selected`].forEach(function(e){y[e]=new v(e,3,!0,e,null,!1,!1)}),[`capture`,`download`].forEach(function(e){y[e]=new v(e,4,!1,e,null,!1,!1)}),[`cols`,`rows`,`size`,`span`].forEach(function(e){y[e]=new v(e,6,!1,e,null,!1,!1)}),[`rowSpan`,`start`].forEach(function(e){y[e]=new v(e,5,!1,e.toLowerCase(),null,!1,!1)});var b=/[\-:]([a-z])/g;function x(e){return e[1].toUpperCase()}`accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height`.split(` `).forEach(function(e){var t=e.replace(b,x);y[t]=new v(t,1,!1,e,null,!1,!1)}),`xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type`.split(` `).forEach(function(e){var t=e.replace(b,x);y[t]=new v(t,1,!1,e,`http://www.w3.org/1999/xlink`,!1,!1)}),[`xml:base`,`xml:lang`,`xml:space`].forEach(function(e){var t=e.replace(b,x);y[t]=new v(t,1,!1,e,`http://www.w3.org/XML/1998/namespace`,!1,!1)}),[`tabIndex`,`crossOrigin`].forEach(function(e){y[e]=new v(e,1,!1,e.toLowerCase(),null,!1,!1)}),y.xlinkHref=new v(`xlinkHref`,1,!1,`xlink:href`,`http://www.w3.org/1999/xlink`,!0,!1),[`src`,`href`,`action`,`formAction`].forEach(function(e){y[e]=new v(e,1,!1,e.toLowerCase(),null,!0,!0)});function S(e,t,n,r){var i=y.hasOwnProperty(t)?y[t]:null;(i===null?r||!(2<t.length)||t[0]!==`o`&&t[0]!==`O`||t[1]!==`n`&&t[1]!==`N`:i.type!==0)&&(_(t,n,i,r)&&(n=null),r||i===null?h(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,``+n)):i.mustUseProperty?e[i.propertyName]=n===null?i.type===3?!1:``:n:(t=i.attributeName,r=i.attributeNamespace,n===null?e.removeAttribute(t):(i=i.type,n=i===3||i===4&&!0===n?``:``+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var C=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,w=Symbol.for(`react.element`),ee=Symbol.for(`react.portal`),T=Symbol.for(`react.fragment`),E=Symbol.for(`react.strict_mode`),te=Symbol.for(`react.profiler`),ne=Symbol.for(`react.provider`),re=Symbol.for(`react.context`),ie=Symbol.for(`react.forward_ref`),ae=Symbol.for(`react.suspense`),oe=Symbol.for(`react.suspense_list`),D=Symbol.for(`react.memo`),se=Symbol.for(`react.lazy`),ce=Symbol.for(`react.offscreen`),le=Symbol.iterator;function ue(e){return typeof e!=`object`||!e?null:(e=le&&e[le]||e[`@@iterator`],typeof e==`function`?e:null)}var O=Object.assign,de;function fe(e){if(de===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);de=t&&t[1]||``}return`
3
+ `+de+e}var pe=!1;function me(e,t){if(!e||pe)return``;pe=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(t,[])}catch(e){var r=e}Reflect.construct(e,[],t)}else{try{t.call()}catch(e){r=e}e.call(t.prototype)}else{try{throw Error()}catch(e){r=e}e()}}catch(t){if(t&&r&&typeof t.stack==`string`){for(var i=t.stack.split(`
4
+ `),a=r.stack.split(`
5
+ `),o=i.length-1,s=a.length-1;1<=o&&0<=s&&i[o]!==a[s];)s--;for(;1<=o&&0<=s;o--,s--)if(i[o]!==a[s]){if(o!==1||s!==1)do if(o--,s--,0>s||i[o]!==a[s]){var c=`
6
+ `+i[o].replace(` at new `,` at `);return e.displayName&&c.includes(`<anonymous>`)&&(c=c.replace(`<anonymous>`,e.displayName)),c}while(1<=o&&0<=s);break}}}finally{pe=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:``)?fe(e):``}function he(e){switch(e.tag){case 5:return fe(e.type);case 16:return fe(`Lazy`);case 13:return fe(`Suspense`);case 19:return fe(`SuspenseList`);case 0:case 2:case 15:return e=me(e.type,!1),e;case 11:return e=me(e.type.render,!1),e;case 1:return e=me(e.type,!0),e;default:return``}}function ge(e){if(e==null)return null;if(typeof e==`function`)return e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case T:return`Fragment`;case ee:return`Portal`;case te:return`Profiler`;case E:return`StrictMode`;case ae:return`Suspense`;case oe:return`SuspenseList`}if(typeof e==`object`)switch(e.$$typeof){case re:return(e.displayName||`Context`)+`.Consumer`;case ne:return(e._context.displayName||`Context`)+`.Provider`;case ie:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case D:return t=e.displayName||null,t===null?ge(e.type)||`Memo`:t;case se:t=e._payload,e=e._init;try{return ge(e(t))}catch{}}return null}function _e(e){var t=e.type;switch(e.tag){case 24:return`Cache`;case 9:return(t.displayName||`Context`)+`.Consumer`;case 10:return(t._context.displayName||`Context`)+`.Provider`;case 18:return`DehydratedFragment`;case 11:return e=t.render,e=e.displayName||e.name||``,t.displayName||(e===``?`ForwardRef`:`ForwardRef(`+e+`)`);case 7:return`Fragment`;case 5:return t;case 4:return`Portal`;case 3:return`Root`;case 6:return`Text`;case 16:return ge(t);case 8:return t===E?`StrictMode`:`Mode`;case 22:return`Offscreen`;case 12:return`Profiler`;case 21:return`Scope`;case 13:return`Suspense`;case 19:return`SuspenseList`;case 25:return`TracingMarker`;case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t==`function`)return t.displayName||t.name||null;if(typeof t==`string`)return t}return null}function ve(e){switch(typeof e){case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function ye(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function be(e){var t=ye(e)?`checked`:`value`,n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=``+e[t];if(!e.hasOwnProperty(t)&&n!==void 0&&typeof n.get==`function`&&typeof n.set==`function`){var i=n.get,a=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){r=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function xe(e){e._valueTracker||=be(e)}function Se(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=ye(e)?e.checked?`true`:`false`:e.value),e=r,e===n?!1:(t.setValue(e),!0)}function Ce(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}function we(e,t){var n=t.checked;return O({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Te(e,t){var n=t.defaultValue==null?``:t.defaultValue,r=t.checked==null?t.defaultChecked:t.checked;n=ve(t.value==null?n:t.value),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type===`checkbox`||t.type===`radio`?t.checked!=null:t.value!=null}}function Ee(e,t){t=t.checked,t!=null&&S(e,`checked`,t,!1)}function De(e,t){Ee(e,t);var n=ve(t.value),r=t.type;if(n!=null)r===`number`?(n===0&&e.value===``||e.value!=n)&&(e.value=``+n):e.value!==``+n&&(e.value=``+n);else if(r===`submit`||r===`reset`){e.removeAttribute(`value`);return}t.hasOwnProperty(`value`)?ke(e,t.type,n):t.hasOwnProperty(`defaultValue`)&&ke(e,t.type,ve(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Oe(e,t,n){if(t.hasOwnProperty(`value`)||t.hasOwnProperty(`defaultValue`)){var r=t.type;if(!(r!==`submit`&&r!==`reset`||t.value!==void 0&&t.value!==null))return;t=``+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==``&&(e.name=``),e.defaultChecked=!!e._wrapperState.initialChecked,n!==``&&(e.name=n)}function ke(e,t,n){(t!==`number`||Ce(e.ownerDocument)!==e)&&(n==null?e.defaultValue=``+e._wrapperState.initialValue:e.defaultValue!==``+n&&(e.defaultValue=``+n))}var Ae=Array.isArray;function k(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t[`$`+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty(`$`+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=``+ve(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function je(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(i(91));return O({},t,{value:void 0,defaultValue:void 0,children:``+e._wrapperState.initialValue})}function Me(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(i(92));if(Ae(n)){if(1<n.length)throw Error(i(93));n=n[0]}t=n}t??=``,n=t}e._wrapperState={initialValue:ve(n)}}function Ne(e,t){var n=ve(t.value),r=ve(t.defaultValue);n!=null&&(n=``+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=``+r)}function Pe(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==``&&t!==null&&(e.value=t)}function Fe(e){switch(e){case`svg`:return`http://www.w3.org/2000/svg`;case`math`:return`http://www.w3.org/1998/Math/MathML`;default:return`http://www.w3.org/1999/xhtml`}}function Ie(e,t){return e==null||e===`http://www.w3.org/1999/xhtml`?Fe(t):e===`http://www.w3.org/2000/svg`&&t===`foreignObject`?`http://www.w3.org/1999/xhtml`:e}var Le,Re=function(e){return typeof MSApp<`u`&&MSApp.execUnsafeLocalFunction?function(t,n,r,i){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,i)})}:e}(function(e,t){if(e.namespaceURI!==`http://www.w3.org/2000/svg`||`innerHTML`in e)e.innerHTML=t;else{for(Le||=document.createElement(`div`),Le.innerHTML=`<svg>`+t.valueOf().toString()+`</svg>`,t=Le.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function ze(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Be={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Ve=[`Webkit`,`ms`,`Moz`,`O`];Object.keys(Be).forEach(function(e){Ve.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Be[t]=Be[e]})});function He(e,t,n){return t==null||typeof t==`boolean`||t===``?``:n||typeof t!=`number`||t===0||Be.hasOwnProperty(e)&&Be[e]?(``+t).trim():t+`px`}function Ue(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=n.indexOf(`--`)===0,i=He(n,t[n],r);n===`float`&&(n=`cssFloat`),r?e.setProperty(n,i):e[n]=i}}var We=O({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Ge(e,t){if(t){if(We[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(i(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(i(60));if(typeof t.dangerouslySetInnerHTML!=`object`||!(`__html`in t.dangerouslySetInnerHTML))throw Error(i(61))}if(t.style!=null&&typeof t.style!=`object`)throw Error(i(62))}}function Ke(e,t){if(e.indexOf(`-`)===-1)return typeof t.is==`string`;switch(e){case`annotation-xml`:case`color-profile`:case`font-face`:case`font-face-src`:case`font-face-uri`:case`font-face-format`:case`font-face-name`:case`missing-glyph`:return!1;default:return!0}}var qe=null;function Je(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Ye=null,Xe=null,Ze=null;function Qe(e){if(e=qi(e)){if(typeof Ye!=`function`)throw Error(i(280));var t=e.stateNode;t&&(t=Yi(t),Ye(e.stateNode,e.type,t))}}function $e(e){Xe?Ze?Ze.push(e):Ze=[e]:Xe=e}function et(){if(Xe){var e=Xe,t=Ze;if(Ze=Xe=null,Qe(e),t)for(e=0;e<t.length;e++)Qe(t[e])}}function tt(e,t){return e(t)}function nt(){}var rt=!1;function it(e,t,n){if(rt)return e(t,n);rt=!0;try{return tt(e,t,n)}finally{rt=!1,(Xe!==null||Ze!==null)&&(nt(),et())}}function at(e,t){var n=e.stateNode;if(n===null)return null;var r=Yi(n);if(r===null)return null;n=r[t];a:switch(t){case`onClick`:case`onClickCapture`:case`onDoubleClick`:case`onDoubleClickCapture`:case`onMouseDown`:case`onMouseDownCapture`:case`onMouseMove`:case`onMouseMoveCapture`:case`onMouseUp`:case`onMouseUpCapture`:case`onMouseEnter`:(r=!r.disabled)||(e=e.type,r=!(e===`button`||e===`input`||e===`select`||e===`textarea`)),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(i(231,t,typeof n));return n}var A=!1;if(u)try{var ot={};Object.defineProperty(ot,"passive",{get:function(){A=!0}}),window.addEventListener(`test`,ot,ot),window.removeEventListener(`test`,ot,ot)}catch{A=!1}function st(e,t,n,r,i,a,o,s,c){var l=Array.prototype.slice.call(arguments,3);try{t.apply(n,l)}catch(e){this.onError(e)}}var ct=!1,lt=null,ut=!1,dt=null,j={onError:function(e){ct=!0,lt=e}};function ft(e,t,n,r,i,a,o,s,c){ct=!1,lt=null,st.apply(j,arguments)}function pt(e,t,n,r,a,o,s,c,l){if(ft.apply(this,arguments),ct){if(ct){var u=lt;ct=!1,lt=null}else throw Error(i(198));ut||(ut=!0,dt=u)}}function mt(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function ht(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function gt(e){if(mt(e)!==e)throw Error(i(188))}function _t(e){var t=e.alternate;if(!t){if(t=mt(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var o=a.alternate;if(o===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===o.child){for(o=a.child;o;){if(o===n)return gt(a),e;if(o===r)return gt(a),t;o=o.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=o;else{for(var s=!1,c=a.child;c;){if(c===n){s=!0,n=a,r=o;break}if(c===r){s=!0,r=a,n=o;break}c=c.sibling}if(!s){for(c=o.child;c;){if(c===n){s=!0,n=o,r=a;break}if(c===r){s=!0,r=o,n=a;break}c=c.sibling}if(!s)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function vt(e){return e=_t(e),e===null?null:yt(e)}function yt(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=yt(e);if(t!==null)return t;e=e.sibling}return null}var bt=n.unstable_scheduleCallback,xt=n.unstable_cancelCallback,St=n.unstable_shouldYield,Ct=n.unstable_requestPaint,M=n.unstable_now,wt=n.unstable_getCurrentPriorityLevel,Tt=n.unstable_ImmediatePriority,Et=n.unstable_UserBlockingPriority,Dt=n.unstable_NormalPriority,Ot=n.unstable_LowPriority,kt=n.unstable_IdlePriority,At=null,jt=null;function Mt(e){if(jt&&typeof jt.onCommitFiberRoot==`function`)try{jt.onCommitFiberRoot(At,e,void 0,(e.current.flags&128)==128)}catch{}}var Nt=Math.clz32?Math.clz32:It,Pt=Math.log,Ft=Math.LN2;function It(e){return e>>>=0,e===0?32:31-(Pt(e)/Ft|0)|0}var Lt=64,Rt=4194304;function zt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Bt(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,a=e.pingedLanes,o=n&268435455;if(o!==0){var s=o&~i;s===0?(a&=o,a!==0&&(r=zt(a))):r=zt(s)}else o=n&~i,o===0?a!==0&&(r=zt(a)):r=zt(o);if(r===0)return 0;if(t!==0&&t!==r&&(t&i)===0&&(i=r&-r,a=t&-t,i>=a||i===16&&a&4194240))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-Nt(t),i=1<<n,r|=e[n],t&=~i;return r}function Vt(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ht(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes;0<a;){var o=31-Nt(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=Vt(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}}function Ut(e){return e=e.pendingLanes&-1073741825,e===0?e&1073741824?1073741824:0:e}function Wt(){var e=Lt;return Lt<<=1,!(Lt&4194240)&&(Lt=64),e}function Gt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Kt(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Nt(t),e[t]=n}function qt(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var i=31-Nt(n),a=1<<i;t[i]=0,r[i]=-1,e[i]=-1,n&=~a}}function Jt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Nt(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}var N=0;function Yt(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var P,Xt,Zt,Qt,$t,en=!1,tn=[],nn=null,rn=null,an=null,on=new Map,sn=new Map,cn=[],ln=`mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit`.split(` `);function un(e,t){switch(e){case`focusin`:case`focusout`:nn=null;break;case`dragenter`:case`dragleave`:rn=null;break;case`mouseover`:case`mouseout`:an=null;break;case`pointerover`:case`pointerout`:on.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:sn.delete(t.pointerId)}}function dn(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=qi(t),t!==null&&Xt(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function fn(e,t,n,r,i){switch(t){case`focusin`:return nn=dn(nn,e,t,n,r,i),!0;case`dragenter`:return rn=dn(rn,e,t,n,r,i),!0;case`mouseover`:return an=dn(an,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return on.set(a,dn(on.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,sn.set(a,dn(sn.get(a)||null,e,t,n,r,i)),!0}return!1}function pn(e){var t=Ki(e.target);if(t!==null){var n=mt(t);if(n!==null){if(t=n.tag,t===13){if(t=ht(n),t!==null){e.blockedOn=t,$t(e.priority,function(){Zt(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function mn(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Tn(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);qe=r,n.target.dispatchEvent(r),qe=null}else return t=qi(n),t!==null&&Xt(t),e.blockedOn=n,!1;t.shift()}return!0}function hn(e,t,n){mn(e)&&n.delete(t)}function gn(){en=!1,nn!==null&&mn(nn)&&(nn=null),rn!==null&&mn(rn)&&(rn=null),an!==null&&mn(an)&&(an=null),on.forEach(hn),sn.forEach(hn)}function _n(e,t){e.blockedOn===t&&(e.blockedOn=null,en||(en=!0,n.unstable_scheduleCallback(n.unstable_NormalPriority,gn)))}function vn(e){function t(t){return _n(t,e)}if(0<tn.length){_n(tn[0],e);for(var n=1;n<tn.length;n++){var r=tn[n];r.blockedOn===e&&(r.blockedOn=null)}}for(nn!==null&&_n(nn,e),rn!==null&&_n(rn,e),an!==null&&_n(an,e),on.forEach(t),sn.forEach(t),n=0;n<cn.length;n++)r=cn[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<cn.length&&(n=cn[0],n.blockedOn===null);)pn(n),n.blockedOn===null&&cn.shift()}var yn=C.ReactCurrentBatchConfig,bn=!0;function xn(e,t,n,r){var i=N,a=yn.transition;yn.transition=null;try{N=1,Cn(e,t,n,r)}finally{N=i,yn.transition=a}}function Sn(e,t,n,r){var i=N,a=yn.transition;yn.transition=null;try{N=4,Cn(e,t,n,r)}finally{N=i,yn.transition=a}}function Cn(e,t,n,r){if(bn){var i=Tn(e,t,n,r);if(i===null)vi(e,t,r,wn,n),un(e,r);else if(fn(i,e,t,n,r))r.stopPropagation();else if(un(e,r),t&4&&-1<ln.indexOf(e)){for(;i!==null;){var a=qi(i);if(a!==null&&P(a),a=Tn(e,t,n,r),a===null&&vi(e,t,r,wn,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else vi(e,t,r,null,n)}}var wn=null;function Tn(e,t,n,r){if(wn=null,e=Je(r),e=Ki(e),e!==null)if(t=mt(e),t===null)e=null;else if(n=t.tag,n===13){if(e=ht(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return wn=e,null}function En(e){switch(e){case`cancel`:case`click`:case`close`:case`contextmenu`:case`copy`:case`cut`:case`auxclick`:case`dblclick`:case`dragend`:case`dragstart`:case`drop`:case`focusin`:case`focusout`:case`input`:case`invalid`:case`keydown`:case`keypress`:case`keyup`:case`mousedown`:case`mouseup`:case`paste`:case`pause`:case`play`:case`pointercancel`:case`pointerdown`:case`pointerup`:case`ratechange`:case`reset`:case`resize`:case`seeked`:case`submit`:case`touchcancel`:case`touchend`:case`touchstart`:case`volumechange`:case`change`:case`selectionchange`:case`textInput`:case`compositionstart`:case`compositionend`:case`compositionupdate`:case`beforeblur`:case`afterblur`:case`beforeinput`:case`blur`:case`fullscreenchange`:case`focus`:case`hashchange`:case`popstate`:case`select`:case`selectstart`:return 1;case`drag`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`mousemove`:case`mouseout`:case`mouseover`:case`pointermove`:case`pointerout`:case`pointerover`:case`scroll`:case`toggle`:case`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 4;case`message`:switch(wt()){case Tt:return 1;case Et:return 4;case Dt:case Ot:return 16;case kt:return 536870912;default:return 16}default:return 16}}var Dn=null,On=null,kn=null;function An(){if(kn)return kn;var e,t=On,n=t.length,r,i=`value`in Dn?Dn.value:Dn.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return kn=i.slice(e,1<r?1-r:void 0)}function jn(e){var t=e.keyCode;return`charCode`in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function Mn(){return!0}function Nn(){return!1}function Pn(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?Mn:Nn,this.isPropagationStopped=Nn,this}return O(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=Mn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=Mn)},persist:function(){},isPersistent:Mn}),t}var Fn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},In=Pn(Fn),Ln=O({},Fn,{view:0,detail:0}),Rn=Pn(Ln),zn,Bn,Vn,Hn=O({},Ln,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:$n,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==Vn&&(Vn&&e.type===`mousemove`?(zn=e.screenX-Vn.screenX,Bn=e.screenY-Vn.screenY):Bn=zn=0,Vn=e),zn)},movementY:function(e){return`movementY`in e?e.movementY:Bn}}),Un=Pn(Hn),Wn=Pn(O({},Hn,{dataTransfer:0})),Gn=Pn(O({},Ln,{relatedTarget:0})),Kn=Pn(O({},Fn,{animationName:0,elapsedTime:0,pseudoElement:0})),qn=Pn(O({},Fn,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),Jn=Pn(O({},Fn,{data:0})),Yn={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},Xn={8:`Backspace`,9:`Tab`,12:`Clear`,13:`Enter`,16:`Shift`,17:`Control`,18:`Alt`,19:`Pause`,20:`CapsLock`,27:`Escape`,32:` `,33:`PageUp`,34:`PageDown`,35:`End`,36:`Home`,37:`ArrowLeft`,38:`ArrowUp`,39:`ArrowRight`,40:`ArrowDown`,45:`Insert`,46:`Delete`,112:`F1`,113:`F2`,114:`F3`,115:`F4`,116:`F5`,117:`F6`,118:`F7`,119:`F8`,120:`F9`,121:`F10`,122:`F11`,123:`F12`,144:`NumLock`,145:`ScrollLock`,224:`Meta`},Zn={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function Qn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Zn[e])?!!t[e]:!1}function $n(){return Qn}var er=Pn(O({},Ln,{key:function(e){if(e.key){var t=Yn[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=jn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?Xn[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:$n,charCode:function(e){return e.type===`keypress`?jn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?jn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),tr=Pn(O({},Hn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),nr=Pn(O({},Ln,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:$n})),rr=Pn(O({},Fn,{propertyName:0,elapsedTime:0,pseudoElement:0})),ir=Pn(O({},Hn,{deltaX:function(e){return`deltaX`in e?e.deltaX:`wheelDeltaX`in e?-e.wheelDeltaX:0},deltaY:function(e){return`deltaY`in e?e.deltaY:`wheelDeltaY`in e?-e.wheelDeltaY:`wheelDelta`in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),ar=[9,13,27,32],or=u&&`CompositionEvent`in window,sr=null;u&&`documentMode`in document&&(sr=document.documentMode);var cr=u&&`TextEvent`in window&&!sr,lr=u&&(!or||sr&&8<sr&&11>=sr),ur=` `,dr=!1;function fr(e,t){switch(e){case`keyup`:return ar.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function pr(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var mr=!1;function hr(e,t){switch(e){case`compositionend`:return pr(t);case`keypress`:return t.which===32?(dr=!0,ur):null;case`textInput`:return e=t.data,e===ur&&dr?null:e;default:return null}}function gr(e,t){if(mr)return e===`compositionend`||!or&&fr(e,t)?(e=An(),kn=On=Dn=null,mr=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case`compositionend`:return lr&&t.locale!==`ko`?null:t.data;default:return null}}var _r={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function vr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!_r[e.type]:t===`textarea`}function yr(e,t,n,r){$e(r),t=bi(t,`onChange`),0<t.length&&(n=new In(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var br=null,xr=null;function Sr(e){pi(e,0)}function Cr(e){if(Se(Ji(e)))return e}function wr(e,t){if(e===`change`)return t}var Tr=!1;if(u){var Er;if(u){var Dr=`oninput`in document;if(!Dr){var Or=document.createElement(`div`);Or.setAttribute(`oninput`,`return;`),Dr=typeof Or.oninput==`function`}Er=Dr}else Er=!1;Tr=Er&&(!document.documentMode||9<document.documentMode)}function kr(){br&&(br.detachEvent(`onpropertychange`,Ar),xr=br=null)}function Ar(e){if(e.propertyName===`value`&&Cr(xr)){var t=[];yr(t,xr,e,Je(e)),it(Sr,t)}}function jr(e,t,n){e===`focusin`?(kr(),br=t,xr=n,br.attachEvent(`onpropertychange`,Ar)):e===`focusout`&&kr()}function Mr(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return Cr(xr)}function Nr(e,t){if(e===`click`)return Cr(t)}function Pr(e,t){if(e===`input`||e===`change`)return Cr(t)}function Fr(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var Ir=typeof Object.is==`function`?Object.is:Fr;function Lr(e,t){if(Ir(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!d.call(t,i)||!Ir(e[i],t[i]))return!1}return!0}function Rr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function zr(e,t){var n=Rr(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Rr(n)}}function Br(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Br(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Vr(){for(var e=window,t=Ce();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Ce(e.document)}return t}function Hr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}function Ur(e){var t=Vr(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Br(n.ownerDocument.documentElement,n)){if(r!==null&&Hr(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),`selectionStart`in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=n.textContent.length,a=Math.min(r.start,i);r=r.end===void 0?a:Math.min(r.end,i),!e.extend&&a>r&&(i=r,r=a,a=i),i=zr(n,a);var o=zr(n,r);i&&o&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),a>r?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus==`function`&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var Wr=u&&`documentMode`in document&&11>=document.documentMode,Gr=null,Kr=null,qr=null,Jr=!1;function Yr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Jr||Gr==null||Gr!==Ce(r)||(r=Gr,`selectionStart`in r&&Hr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),qr&&Lr(qr,r)||(qr=r,r=bi(Kr,`onSelect`),0<r.length&&(t=new In(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=Gr)))}function Xr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var Zr={animationend:Xr(`Animation`,`AnimationEnd`),animationiteration:Xr(`Animation`,`AnimationIteration`),animationstart:Xr(`Animation`,`AnimationStart`),transitionend:Xr(`Transition`,`TransitionEnd`)},Qr={},$r={};u&&($r=document.createElement(`div`).style,`AnimationEvent`in window||(delete Zr.animationend.animation,delete Zr.animationiteration.animation,delete Zr.animationstart.animation),`TransitionEvent`in window||delete Zr.transitionend.transition);function ei(e){if(Qr[e])return Qr[e];if(!Zr[e])return e;var t=Zr[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in $r)return Qr[e]=t[n];return e}var ti=ei(`animationend`),ni=ei(`animationiteration`),ri=ei(`animationstart`),ii=ei(`transitionend`),ai=new Map,oi=`abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel`.split(` `);function si(e,t){ai.set(e,t),c(t,[e])}for(var ci=0;ci<oi.length;ci++){var li=oi[ci];si(li.toLowerCase(),`on`+(li[0].toUpperCase()+li.slice(1)))}si(ti,`onAnimationEnd`),si(ni,`onAnimationIteration`),si(ri,`onAnimationStart`),si(`dblclick`,`onDoubleClick`),si(`focusin`,`onFocus`),si(`focusout`,`onBlur`),si(ii,`onTransitionEnd`),l(`onMouseEnter`,[`mouseout`,`mouseover`]),l(`onMouseLeave`,[`mouseout`,`mouseover`]),l(`onPointerEnter`,[`pointerout`,`pointerover`]),l(`onPointerLeave`,[`pointerout`,`pointerover`]),c(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),c(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),c(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),c(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),c(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),c(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var ui=`abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting`.split(` `),di=new Set(`cancel close invalid load scroll toggle`.split(` `).concat(ui));function fi(e,t,n){var r=e.type||`unknown-event`;e.currentTarget=n,pt(r,t,void 0,e),e.currentTarget=null}function pi(e,t){t=(t&4)!=0;for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;fi(i,s,l),a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;fi(i,s,l),a=c}}}if(ut)throw e=dt,ut=!1,dt=null,e}function F(e,t){var n=t[Ui];n===void 0&&(n=t[Ui]=new Set);var r=e+`__bubble`;n.has(r)||(_i(t,e,2,!1),n.add(r))}function mi(e,t,n){var r=0;t&&(r|=4),_i(n,e,r,t)}var hi=`_reactListening`+Math.random().toString(36).slice(2);function gi(e){if(!e[hi]){e[hi]=!0,o.forEach(function(t){t!==`selectionchange`&&(di.has(t)||mi(t,!1,e),mi(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[hi]||(t[hi]=!0,mi(`selectionchange`,!1,t))}}function _i(e,t,n,r){switch(En(t)){case 1:var i=xn;break;case 4:i=Sn;break;default:i=Cn}n=i.bind(null,t,n,e),i=void 0,!A||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function vi(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var s=r.stateNode.containerInfo;if(s===i||s.nodeType===8&&s.parentNode===i)break;if(o===4)for(o=r.return;o!==null;){var c=o.tag;if((c===3||c===4)&&(c=o.stateNode.containerInfo,c===i||c.nodeType===8&&c.parentNode===i))return;o=o.return}for(;s!==null;){if(o=Ki(s),o===null)return;if(c=o.tag,c===5||c===6){r=a=o;continue a}s=s.parentNode}}r=r.return}it(function(){var r=a,i=Je(n),o=[];a:{var s=ai.get(e);if(s!==void 0){var c=In,l=e;switch(e){case`keypress`:if(jn(n)===0)break a;case`keydown`:case`keyup`:c=er;break;case`focusin`:l=`focus`,c=Gn;break;case`focusout`:l=`blur`,c=Gn;break;case`beforeblur`:case`afterblur`:c=Gn;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:c=Un;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:c=Wn;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:c=nr;break;case ti:case ni:case ri:c=Kn;break;case ii:c=rr;break;case`scroll`:c=Rn;break;case`wheel`:c=ir;break;case`copy`:case`cut`:case`paste`:c=qn;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:c=tr}var u=(t&4)!=0,d=!u&&e===`scroll`,f=u?s===null?null:s+`Capture`:s;u=[];for(var p=r,m;p!==null;){m=p;var h=m.stateNode;if(m.tag===5&&h!==null&&(m=h,f!==null&&(h=at(p,f),h!=null&&u.push(yi(p,h,m)))),d)break;p=p.return}0<u.length&&(s=new c(s,l,null,n,i),o.push({event:s,listeners:u}))}}if(!(t&7)){a:{if(s=e===`mouseover`||e===`pointerover`,c=e===`mouseout`||e===`pointerout`,s&&n!==qe&&(l=n.relatedTarget||n.fromElement)&&(Ki(l)||l[Hi]))break a;if((c||s)&&(s=i.window===i?i:(s=i.ownerDocument)?s.defaultView||s.parentWindow:window,c?(l=n.relatedTarget||n.toElement,c=r,l=l?Ki(l):null,l!==null&&(d=mt(l),l!==d||l.tag!==5&&l.tag!==6)&&(l=null)):(c=null,l=r),c!==l)){if(u=Un,h=`onMouseLeave`,f=`onMouseEnter`,p=`mouse`,(e===`pointerout`||e===`pointerover`)&&(u=tr,h=`onPointerLeave`,f=`onPointerEnter`,p=`pointer`),d=c==null?s:Ji(c),m=l==null?s:Ji(l),s=new u(h,p+`leave`,c,n,i),s.target=d,s.relatedTarget=m,h=null,Ki(i)===r&&(u=new u(f,p+`enter`,l,n,i),u.target=m,u.relatedTarget=d,h=u),d=h,c&&l)b:{for(u=c,f=l,p=0,m=u;m;m=xi(m))p++;for(m=0,h=f;h;h=xi(h))m++;for(;0<p-m;)u=xi(u),p--;for(;0<m-p;)f=xi(f),m--;for(;p--;){if(u===f||f!==null&&u===f.alternate)break b;u=xi(u),f=xi(f)}u=null}else u=null;c!==null&&Si(o,s,c,u,!1),l!==null&&d!==null&&Si(o,d,l,u,!0)}}a:{if(s=r?Ji(r):window,c=s.nodeName&&s.nodeName.toLowerCase(),c===`select`||c===`input`&&s.type===`file`)var g=wr;else if(vr(s))if(Tr)g=Pr;else{g=Mr;var _=jr}else (c=s.nodeName)&&c.toLowerCase()===`input`&&(s.type===`checkbox`||s.type===`radio`)&&(g=Nr);if(g&&=g(e,r)){yr(o,g,n,i);break a}_&&_(e,s,r),e===`focusout`&&(_=s._wrapperState)&&_.controlled&&s.type===`number`&&ke(s,`number`,s.value)}switch(_=r?Ji(r):window,e){case`focusin`:(vr(_)||_.contentEditable===`true`)&&(Gr=_,Kr=r,qr=null);break;case`focusout`:qr=Kr=Gr=null;break;case`mousedown`:Jr=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:Jr=!1,Yr(o,n,i);break;case`selectionchange`:if(Wr)break;case`keydown`:case`keyup`:Yr(o,n,i)}var v;if(or)b:{switch(e){case`compositionstart`:var y=`onCompositionStart`;break b;case`compositionend`:y=`onCompositionEnd`;break b;case`compositionupdate`:y=`onCompositionUpdate`;break b}y=void 0}else mr?fr(e,n)&&(y=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(y=`onCompositionStart`);y&&(lr&&n.locale!==`ko`&&(mr||y!==`onCompositionStart`?y===`onCompositionEnd`&&mr&&(v=An()):(Dn=i,On=`value`in Dn?Dn.value:Dn.textContent,mr=!0)),_=bi(r,y),0<_.length&&(y=new Jn(y,e,null,n,i),o.push({event:y,listeners:_}),v?y.data=v:(v=pr(n),v!==null&&(y.data=v)))),(v=cr?hr(e,n):gr(e,n))&&(r=bi(r,`onBeforeInput`),0<r.length&&(i=new Jn(`onBeforeInput`,`beforeinput`,null,n,i),o.push({event:i,listeners:r}),i.data=v))}pi(o,t)})}function yi(e,t,n){return{instance:e,listener:t,currentTarget:n}}function bi(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;i.tag===5&&a!==null&&(i=a,a=at(e,n),a!=null&&r.unshift(yi(e,a,i)),a=at(e,t),a!=null&&r.push(yi(e,a,i))),e=e.return}return r}function xi(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function Si(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(c!==null&&c===r)break;s.tag===5&&l!==null&&(s=l,i?(c=at(n,a),c!=null&&o.unshift(yi(n,c,s))):i||(c=at(n,a),c!=null&&o.push(yi(n,c,s)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var Ci=/\r\n?/g,wi=/\u0000|\uFFFD/g;function Ti(e){return(typeof e==`string`?e:``+e).replace(Ci,`
7
+ `).replace(wi,``)}function Ei(e,t,n){if(t=Ti(t),Ti(e)!==t&&n)throw Error(i(425))}function Di(){}var Oi=null,ki=null;function Ai(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var ji=typeof setTimeout==`function`?setTimeout:void 0,Mi=typeof clearTimeout==`function`?clearTimeout:void 0,Ni=typeof Promise==`function`?Promise:void 0,Pi=typeof queueMicrotask==`function`?queueMicrotask:Ni===void 0?ji:function(e){return Ni.resolve(null).then(e).catch(Fi)};function Fi(e){setTimeout(function(){throw e})}function Ii(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n===`/$`){if(r===0){e.removeChild(i),vn(t);return}r--}else n!==`$`&&n!==`$?`&&n!==`$!`||r++;n=i}while(n);vn(t)}function Li(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`)break;if(t===`/$`)return null}}return e}function Ri(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`){if(t===0)return e;t--}else n===`/$`&&t++}e=e.previousSibling}return null}var zi=Math.random().toString(36).slice(2),Bi=`__reactFiber$`+zi,Vi=`__reactProps$`+zi,Hi=`__reactContainer$`+zi,Ui=`__reactEvents$`+zi,Wi=`__reactListeners$`+zi,Gi=`__reactHandles$`+zi;function Ki(e){var t=e[Bi];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Hi]||n[Bi]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=Ri(e);e!==null;){if(n=e[Bi])return n;e=Ri(e)}return t}e=n,n=e.parentNode}return null}function qi(e){return e=e[Bi]||e[Hi],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Ji(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(i(33))}function Yi(e){return e[Vi]||null}var Xi=[],Zi=-1;function Qi(e){return{current:e}}function I(e){0>Zi||(e.current=Xi[Zi],Xi[Zi]=null,Zi--)}function L(e,t){Zi++,Xi[Zi]=e.current,e.current=t}var $i={},ea=Qi($i),ta=Qi(!1),na=$i;function ra(e,t){var n=e.type.contextTypes;if(!n)return $i;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},a;for(a in n)i[a]=t[a];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function ia(e){return e=e.childContextTypes,e!=null}function aa(){I(ta),I(ea)}function oa(e,t,n){if(ea.current!==$i)throw Error(i(168));L(ea,t),L(ta,n)}function sa(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!=`function`)return n;for(var a in r=r.getChildContext(),r)if(!(a in t))throw Error(i(108,_e(e)||`Unknown`,a));return O({},n,r)}function ca(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||$i,na=ea.current,L(ea,e),L(ta,ta.current),!0}function la(e,t,n){var r=e.stateNode;if(!r)throw Error(i(169));n?(e=sa(e,t,na),r.__reactInternalMemoizedMergedChildContext=e,I(ta),I(ea),L(ea,e)):I(ta),L(ta,n)}var ua=null,da=!1,fa=!1;function pa(e){ua===null?ua=[e]:ua.push(e)}function ma(e){da=!0,pa(e)}function ha(){if(!fa&&ua!==null){fa=!0;var e=0,t=N;try{var n=ua;for(N=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}ua=null,da=!1}catch(t){throw ua!==null&&(ua=ua.slice(e+1)),bt(Tt,ha),t}finally{N=t,fa=!1}}return null}var ga=[],_a=0,va=null,ya=0,ba=[],xa=0,Sa=null,Ca=1,wa=``;function Ta(e,t){ga[_a++]=ya,ga[_a++]=va,va=e,ya=t}function Ea(e,t,n){ba[xa++]=Ca,ba[xa++]=wa,ba[xa++]=Sa,Sa=e;var r=Ca;e=wa;var i=32-Nt(r)-1;r&=~(1<<i),n+=1;var a=32-Nt(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,Ca=1<<32-Nt(t)+i|n<<i|r,wa=a+e}else Ca=1<<a|n<<i|r,wa=e}function Da(e){e.return!==null&&(Ta(e,1),Ea(e,1,0))}function Oa(e){for(;e===va;)va=ga[--_a],ga[_a]=null,ya=ga[--_a],ga[_a]=null;for(;e===Sa;)Sa=ba[--xa],ba[xa]=null,wa=ba[--xa],ba[xa]=null,Ca=ba[--xa],ba[xa]=null}var ka=null,Aa=null,R=!1,ja=null;function Ma(e,t){var n=Kl(5,null,null,0);n.elementType=`DELETED`,n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function Na(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t===null?!1:(e.stateNode=t,ka=e,Aa=Li(t.firstChild),!0);case 6:return t=e.pendingProps===``||t.nodeType!==3?null:t,t===null?!1:(e.stateNode=t,ka=e,Aa=null,!0);case 13:return t=t.nodeType===8?t:null,t===null?!1:(n=Sa===null?null:{id:Ca,overflow:wa},e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=Kl(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,ka=e,Aa=null,!0);default:return!1}}function Pa(e){return(e.mode&1)!=0&&(e.flags&128)==0}function Fa(e){if(R){var t=Aa;if(t){var n=t;if(!Na(e,t)){if(Pa(e))throw Error(i(418));t=Li(n.nextSibling);var r=ka;t&&Na(e,t)?Ma(r,n):(e.flags=e.flags&-4097|2,R=!1,ka=e)}}else{if(Pa(e))throw Error(i(418));e.flags=e.flags&-4097|2,R=!1,ka=e}}}function Ia(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;ka=e}function La(e){if(e!==ka)return!1;if(!R)return Ia(e),R=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!==`head`&&t!==`body`&&!Ai(e.type,e.memoizedProps)),t&&=Aa){if(Pa(e))throw Ra(),Error(i(418));for(;t;)Ma(e,t),t=Li(t.nextSibling)}if(Ia(e),e.tag===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));a:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`){if(t===0){Aa=Li(e.nextSibling);break a}t--}else n!==`$`&&n!==`$!`&&n!==`$?`||t++}e=e.nextSibling}Aa=null}}else Aa=ka?Li(e.stateNode.nextSibling):null;return!0}function Ra(){for(var e=Aa;e;)e=Li(e.nextSibling)}function za(){Aa=ka=null,R=!1}function Ba(e){ja===null?ja=[e]:ja.push(e)}var Va=C.ReactCurrentBatchConfig;function Ha(e,t,n){if(e=n.ref,e!==null&&typeof e!=`function`&&typeof e!=`object`){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(i(309));var r=n.stateNode}if(!r)throw Error(i(147,e));var a=r,o=``+e;return t!==null&&t.ref!==null&&typeof t.ref==`function`&&t.ref._stringRef===o?t.ref:(t=function(e){var t=a.refs;e===null?delete t[o]:t[o]=e},t._stringRef=o,t)}if(typeof e!=`string`)throw Error(i(284));if(!n._owner)throw Error(i(290,e))}return e}function Ua(e,t){throw e=Object.prototype.toString.call(t),Error(i(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e))}function Wa(e){var t=e._init;return t(e._payload)}function Ga(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;t!==null;)t.key===null?e.set(t.index,t):e.set(t.key,t),t=t.sibling;return e}function a(e,t){return e=Yl(e,t),e.index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=2,n):(r=r.index,r<n?(t.flags|=2,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=2),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=$l(n,e.mode,r),t.return=e,t):(t=a(t,n),t.return=e,t)}function l(e,t,n,r){var i=n.type;return i===T?d(e,t,n.props.children,r,n.key):t!==null&&(t.elementType===i||typeof i==`object`&&i&&i.$$typeof===se&&Wa(i)===t.type)?(r=a(t,n.props),r.ref=Ha(e,t,n),r.return=e,r):(r=Xl(n.type,n.key,n.props,null,e.mode,r),r.ref=Ha(e,t,n),r.return=e,r)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=eu(n,e.mode,r),t.return=e,t):(t=a(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,i){return t===null||t.tag!==7?(t=Zl(n,e.mode,r,i),t.return=e,t):(t=a(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`)return t=$l(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case w:return n=Xl(t.type,t.key,t.props,null,e.mode,n),n.ref=Ha(e,null,t),n.return=e,n;case ee:return t=eu(t,e.mode,n),t.return=e,t;case se:var r=t._init;return f(e,r(t._payload),n)}if(Ae(t)||ue(t))return t=Zl(t,e.mode,n,null),t.return=e,t;Ua(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case w:return n.key===i?l(e,t,n,r):null;case ee:return n.key===i?u(e,t,n,r):null;case se:return i=n._init,p(e,t,i(n._payload),r)}if(Ae(n)||ue(n))return i===null?d(e,t,n,r,null):null;Ua(e,n)}return null}function m(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case w:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case ee:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case se:var a=r._init;return m(e,t,n,a(r._payload),i)}if(Ae(r)||ue(r))return e=e.get(n)||null,d(t,e,r,i,null);Ua(t,r)}return null}function h(i,a,s,c){for(var l=null,u=null,d=a,h=a=0,g=null;d!==null&&h<s.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),R&&Ta(i,h),l;if(d===null){for(;h<s.length;h++)d=f(i,s[h],c),d!==null&&(a=o(d,a,h),u===null?l=d:u.sibling=d,u=d);return R&&Ta(i,h),l}for(d=r(i,d);h<s.length;h++)g=m(d,i,h,s[h],c),g!==null&&(e&&g.alternate!==null&&d.delete(g.key===null?h:g.key),a=o(g,a,h),u===null?l=g:u.sibling=g,u=g);return e&&d.forEach(function(e){return t(i,e)}),R&&Ta(i,h),l}function g(a,s,c,l){var u=ue(c);if(typeof u!=`function`)throw Error(i(150));if(c=u.call(c),c==null)throw Error(i(151));for(var d=u=null,h=s,g=s=0,_=null,v=c.next();h!==null&&!v.done;g++,v=c.next()){h.index>g?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),R&&Ta(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return R&&Ta(a,g),u}for(h=r(a,h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),R&&Ta(a,g),u}function _(e,r,i,o){if(typeof i==`object`&&i&&i.type===T&&i.key===null&&(i=i.props.children),typeof i==`object`&&i){switch(i.$$typeof){case w:a:{for(var c=i.key,l=r;l!==null;){if(l.key===c){if(c=i.type,c===T){if(l.tag===7){n(e,l.sibling),r=a(l,i.props.children),r.return=e,e=r;break a}}else if(l.elementType===c||typeof c==`object`&&c&&c.$$typeof===se&&Wa(c)===l.type){n(e,l.sibling),r=a(l,i.props),r.ref=Ha(e,l,i),r.return=e,e=r;break a}n(e,l);break}else t(e,l);l=l.sibling}i.type===T?(r=Zl(i.props.children,e.mode,o,i.key),r.return=e,e=r):(o=Xl(i.type,i.key,i.props,null,e.mode,o),o.ref=Ha(e,r,i),o.return=e,e=o)}return s(e);case ee:a:{for(l=i.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===i.containerInfo&&r.stateNode.implementation===i.implementation){n(e,r.sibling),r=a(r,i.children||[]),r.return=e,e=r;break a}else{n(e,r);break}else t(e,r);r=r.sibling}r=eu(i,e.mode,o),r.return=e,e=r}return s(e);case se:return l=i._init,_(e,r,l(i._payload),o)}if(Ae(i))return h(e,r,i,o);if(ue(i))return g(e,r,i,o);Ua(e,i)}return typeof i==`string`&&i!==``||typeof i==`number`?(i=``+i,r!==null&&r.tag===6?(n(e,r.sibling),r=a(r,i),r.return=e,e=r):(n(e,r),r=$l(i,e.mode,o),r.return=e,e=r),s(e)):n(e,r)}return _}var Ka=Ga(!0),qa=Ga(!1),Ja=Qi(null),Ya=null,Xa=null,Za=null;function Qa(){Za=Xa=Ya=null}function $a(e){var t=Ja.current;I(Ja),e._currentValue=t}function eo(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function to(e,t){Ya=e,Za=Xa=null,e=e.dependencies,e!==null&&e.firstContext!==null&&((e.lanes&t)!==0&&(Bs=!0),e.firstContext=null)}function no(e){var t=e._currentValue;if(Za!==e)if(e={context:e,memoizedValue:t,next:null},Xa===null){if(Ya===null)throw Error(i(308));Xa=e,Ya.dependencies={lanes:0,firstContext:e}}else Xa=Xa.next=e;return t}var ro=null;function io(e){ro===null?ro=[e]:ro.push(e)}function ao(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,io(t)):(n.next=i.next,i.next=n),t.interleaved=n,oo(e,r)}function oo(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var so=!1;function co(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function lo(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function uo(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function fo(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,J&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,oo(e,n)}return i=r.interleaved,i===null?(t.next=t,io(r)):(t.next=i.next,i.next=t),r.interleaved=t,oo(e,n)}function po(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194240)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Jt(e,n)}}function mo(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function ho(e,t,n,r){var i=e.updateQueue;so=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane,p=s.eventTime;if((r&f)===f){u!==null&&(u=u.next={eventTime:p,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});a:{var m=e,h=s;switch(f=t,p=n,h.tag){case 1:if(m=h.payload,typeof m==`function`){d=m.call(p,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=h.payload,f=typeof m==`function`?m.call(p,d,f):m,f==null)break a;d=O({},d,f);break a;case 2:so=!0}}s.callback!==null&&s.lane!==0&&(e.flags|=64,f=i.effects,f===null?i.effects=[s]:f.push(s))}else p={eventTime:p,lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;f=s,s=f.next,f.next=null,i.lastBaseUpdate=f,i.shared.pending=null}}while(1);if(u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,t=i.shared.interleaved,t!==null){i=t;do o|=i.lane,i=i.next;while(i!==t)}else a===null&&(i.shared.lanes=0);Yc|=o,e.lanes=o,e.memoizedState=d}}function go(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],a=r.callback;if(a!==null){if(r.callback=null,r=n,typeof a!=`function`)throw Error(i(191,a));a.call(r)}}}var _o={},vo=Qi(_o),yo=Qi(_o),bo=Qi(_o);function xo(e){if(e===_o)throw Error(i(174));return e}function So(e,t){switch(L(bo,t),L(yo,e),L(vo,_o),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:Ie(null,``);break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=Ie(t,e)}I(vo),L(vo,t)}function Co(){I(vo),I(yo),I(bo)}function wo(e){xo(bo.current);var t=xo(vo.current),n=Ie(t,e.type);t!==n&&(L(yo,e),L(vo,n))}function To(e){yo.current===e&&(I(vo),I(yo))}var z=Qi(0);function Eo(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data===`$?`||n.data===`$!`))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Do=[];function Oo(){for(var e=0;e<Do.length;e++)Do[e]._workInProgressVersionPrimary=null;Do.length=0}var ko=C.ReactCurrentDispatcher,Ao=C.ReactCurrentBatchConfig,jo=0,B=null,V=null,H=null,Mo=!1,No=!1,Po=0,Fo=0;function U(){throw Error(i(321))}function Io(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!Ir(e[n],t[n]))return!1;return!0}function Lo(e,t,n,r,a,o){if(jo=o,B=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,ko.current=e===null||e.memoizedState===null?bs:xs,e=n(r,a),No){o=0;do{if(No=!1,Po=0,25<=o)throw Error(i(301));o+=1,H=V=null,t.updateQueue=null,ko.current=Ss,e=n(r,a)}while(No)}if(ko.current=ys,t=V!==null&&V.next!==null,jo=0,H=V=B=null,Mo=!1,t)throw Error(i(300));return e}function Ro(){var e=Po!==0;return Po=0,e}function zo(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return H===null?B.memoizedState=H=e:H=H.next=e,H}function Bo(){if(V===null){var e=B.alternate;e=e===null?null:e.memoizedState}else e=V.next;var t=H===null?B.memoizedState:H.next;if(t!==null)H=t,V=e;else{if(e===null)throw Error(i(310));V=e,e={memoizedState:V.memoizedState,baseState:V.baseState,baseQueue:V.baseQueue,queue:V.queue,next:null},H===null?B.memoizedState=H=e:H=H.next=e}return H}function Vo(e,t){return typeof t==`function`?t(e):t}function Ho(e){var t=Bo(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=V,a=r.baseQueue,o=n.pending;if(o!==null){if(a!==null){var s=a.next;a.next=o.next,o.next=s}r.baseQueue=a=o,n.pending=null}if(a!==null){o=a.next,r=r.baseState;var c=s=null,l=null,u=o;do{var d=u.lane;if((jo&d)===d)l!==null&&(l=l.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),r=u.hasEagerState?u.eagerState:e(r,u.action);else{var f={lane:d,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};l===null?(c=l=f,s=r):l=l.next=f,B.lanes|=d,Yc|=d}u=u.next}while(u!==null&&u!==o);l===null?s=r:l.next=c,Ir(r,t.memoizedState)||(Bs=!0),t.memoizedState=r,t.baseState=s,t.baseQueue=l,n.lastRenderedState=r}if(e=n.interleaved,e!==null){a=e;do o=a.lane,B.lanes|=o,Yc|=o,a=a.next;while(a!==e)}else a===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Uo(e){var t=Bo(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(a!==null){n.pending=null;var s=a=a.next;do o=e(o,s.action),s=s.next;while(s!==a);Ir(o,t.memoizedState)||(Bs=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function Wo(){}function Go(e,t){var n=B,r=Bo(),a=t(),o=!Ir(r.memoizedState,a);if(o&&(r.memoizedState=a,Bs=!0),r=r.queue,rs(Jo.bind(null,n,r,e),[e]),r.getSnapshot!==t||o||H!==null&&H.memoizedState.tag&1){if(n.flags|=2048,Qo(9,qo.bind(null,n,r,a,t),void 0,null),Y===null)throw Error(i(349));jo&30||Ko(n,t,a)}return a}function Ko(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=B.updateQueue,t===null?(t={lastEffect:null,stores:null},B.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function qo(e,t,n,r){t.value=n,t.getSnapshot=r,Yo(t)&&Xo(e)}function Jo(e,t,n){return n(function(){Yo(t)&&Xo(e)})}function Yo(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Ir(e,n)}catch{return!0}}function Xo(e){var t=oo(e,1);t!==null&&hl(t,e,1,-1)}function Zo(e){var t=zo();return typeof e==`function`&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Vo,lastRenderedState:e},t.queue=e,e=e.dispatch=hs.bind(null,B,e),[t.memoizedState,e]}function Qo(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=B.updateQueue,t===null?(t={lastEffect:null,stores:null},B.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function $o(){return Bo().memoizedState}function es(e,t,n,r){var i=zo();B.flags|=e,i.memoizedState=Qo(1|t,n,void 0,r===void 0?null:r)}function ts(e,t,n,r){var i=Bo();r=r===void 0?null:r;var a=void 0;if(V!==null){var o=V.memoizedState;if(a=o.destroy,r!==null&&Io(r,o.deps)){i.memoizedState=Qo(t,n,a,r);return}}B.flags|=e,i.memoizedState=Qo(1|t,n,a,r)}function ns(e,t){return es(8390656,8,e,t)}function rs(e,t){return ts(2048,8,e,t)}function is(e,t){return ts(4,2,e,t)}function as(e,t){return ts(4,4,e,t)}function os(e,t){if(typeof t==`function`)return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function ss(e,t,n){return n=n==null?null:n.concat([e]),ts(4,4,os.bind(null,t,e),n)}function cs(){}function ls(e,t){var n=Bo();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&Io(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function us(e,t){var n=Bo();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&Io(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function ds(e,t,n){return jo&21?(Ir(n,t)||(n=Wt(),B.lanes|=n,Yc|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,Bs=!0),e.memoizedState=n)}function fs(e,t){var n=N;N=n!==0&&4>n?n:4,e(!0);var r=Ao.transition;Ao.transition={};try{e(!1),t()}finally{N=n,Ao.transition=r}}function ps(){return Bo().memoizedState}function ms(e,t,n){var r=ml(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},gs(e))_s(t,n);else if(n=ao(e,t,n,r),n!==null){var i=pl();hl(n,e,r,i),vs(n,t,r)}}function hs(e,t,n){var r=ml(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(gs(e))_s(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,Ir(s,o)){var c=t.interleaved;c===null?(i.next=i,io(t)):(i.next=c.next,c.next=i),t.interleaved=i;return}}catch{}n=ao(e,t,i,r),n!==null&&(i=pl(),hl(n,e,r,i),vs(n,t,r))}}function gs(e){var t=e.alternate;return e===B||t!==null&&t===B}function _s(e,t){No=Mo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function vs(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Jt(e,n)}}var ys={readContext:no,useCallback:U,useContext:U,useEffect:U,useImperativeHandle:U,useInsertionEffect:U,useLayoutEffect:U,useMemo:U,useReducer:U,useRef:U,useState:U,useDebugValue:U,useDeferredValue:U,useTransition:U,useMutableSource:U,useSyncExternalStore:U,useId:U,unstable_isNewReconciler:!1},bs={readContext:no,useCallback:function(e,t){return zo().memoizedState=[e,t===void 0?null:t],e},useContext:no,useEffect:ns,useImperativeHandle:function(e,t,n){return n=n==null?null:n.concat([e]),es(4194308,4,os.bind(null,t,e),n)},useLayoutEffect:function(e,t){return es(4194308,4,e,t)},useInsertionEffect:function(e,t){return es(4,2,e,t)},useMemo:function(e,t){var n=zo();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=zo();return t=n===void 0?t:n(t),r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=ms.bind(null,B,e),[r.memoizedState,e]},useRef:function(e){var t=zo();return e={current:e},t.memoizedState=e},useState:Zo,useDebugValue:cs,useDeferredValue:function(e){return zo().memoizedState=e},useTransition:function(){var e=Zo(!1),t=e[0];return e=fs.bind(null,e[1]),zo().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=B,a=zo();if(R){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),Y===null)throw Error(i(349));jo&30||Ko(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,ns(Jo.bind(null,r,o,e),[e]),r.flags|=2048,Qo(9,qo.bind(null,r,o,n,t),void 0,null),n},useId:function(){var e=zo(),t=Y.identifierPrefix;if(R){var n=wa,r=Ca;n=(r&~(1<<32-Nt(r)-1)).toString(32)+n,t=`:`+t+`R`+n,n=Po++,0<n&&(t+=`H`+n.toString(32)),t+=`:`}else n=Fo++,t=`:`+t+`r`+n.toString(32)+`:`;return e.memoizedState=t},unstable_isNewReconciler:!1},xs={readContext:no,useCallback:ls,useContext:no,useEffect:rs,useImperativeHandle:ss,useInsertionEffect:is,useLayoutEffect:as,useMemo:us,useReducer:Ho,useRef:$o,useState:function(){return Ho(Vo)},useDebugValue:cs,useDeferredValue:function(e){return ds(Bo(),V.memoizedState,e)},useTransition:function(){return[Ho(Vo)[0],Bo().memoizedState]},useMutableSource:Wo,useSyncExternalStore:Go,useId:ps,unstable_isNewReconciler:!1},Ss={readContext:no,useCallback:ls,useContext:no,useEffect:rs,useImperativeHandle:ss,useInsertionEffect:is,useLayoutEffect:as,useMemo:us,useReducer:Uo,useRef:$o,useState:function(){return Uo(Vo)},useDebugValue:cs,useDeferredValue:function(e){var t=Bo();return V===null?t.memoizedState=e:ds(t,V.memoizedState,e)},useTransition:function(){return[Uo(Vo)[0],Bo().memoizedState]},useMutableSource:Wo,useSyncExternalStore:Go,useId:ps,unstable_isNewReconciler:!1};function Cs(e,t){if(e&&e.defaultProps){for(var n in t=O({},t),e=e.defaultProps,e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function ws(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:O({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Ts={isMounted:function(e){return(e=e._reactInternals)?mt(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=pl(),i=ml(e),a=uo(r,i);a.payload=t,n!=null&&(a.callback=n),t=fo(e,a,i),t!==null&&(hl(t,e,i,r),po(t,e,i))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=pl(),i=ml(e),a=uo(r,i);a.tag=1,a.payload=t,n!=null&&(a.callback=n),t=fo(e,a,i),t!==null&&(hl(t,e,i,r),po(t,e,i))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=pl(),r=ml(e),i=uo(n,r);i.tag=2,t!=null&&(i.callback=t),t=fo(e,i,r),t!==null&&(hl(t,e,r,n),po(t,e,r))}};function Es(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!Lr(n,r)||!Lr(i,a):!0}function Ds(e,t,n){var r=!1,i=$i,a=t.contextType;return typeof a==`object`&&a?a=no(a):(i=ia(t)?na:ea.current,r=t.contextTypes,a=(r=r!=null)?ra(e,i):$i),t=new t(n,a),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=Ts,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=i,e.__reactInternalMemoizedMaskedChildContext=a),t}function Os(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Ts.enqueueReplaceState(t,t.state,null)}function ks(e,t,n,r){var i=e.stateNode;i.props=n,i.state=e.memoizedState,i.refs={},co(e);var a=t.contextType;typeof a==`object`&&a?i.context=no(a):(a=ia(t)?na:ea.current,i.context=ra(e,a)),i.state=e.memoizedState,a=t.getDerivedStateFromProps,typeof a==`function`&&(ws(e,t,a,n),i.state=e.memoizedState),typeof t.getDerivedStateFromProps==`function`||typeof i.getSnapshotBeforeUpdate==`function`||typeof i.UNSAFE_componentWillMount!=`function`&&typeof i.componentWillMount!=`function`||(t=i.state,typeof i.componentWillMount==`function`&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount==`function`&&i.UNSAFE_componentWillMount(),t!==i.state&&Ts.enqueueReplaceState(i,i.state,null),ho(e,n,i,r),i.state=e.memoizedState),typeof i.componentDidMount==`function`&&(e.flags|=4194308)}function As(e,t){try{var n=``,r=t;do n+=he(r),r=r.return;while(r);var i=n}catch(e){i=`
8
+ Error generating stack: `+e.message+`
9
+ `+e.stack}return{value:e,source:t,stack:i,digest:null}}function js(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function Ms(e,t){try{console.error(t.value)}catch(e){setTimeout(function(){throw e})}}var Ns=typeof WeakMap==`function`?WeakMap:Map;function Ps(e,t,n){n=uo(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){rl||(rl=!0,il=r),Ms(e,t)},n}function Fs(e,t,n){n=uo(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r==`function`){var i=t.value;n.payload=function(){return r(i)},n.callback=function(){Ms(e,t)}}var a=e.stateNode;return a!==null&&typeof a.componentDidCatch==`function`&&(n.callback=function(){Ms(e,t),typeof r!=`function`&&(al===null?al=new Set([this]):al.add(this));var n=t.stack;this.componentDidCatch(t.value,{componentStack:n===null?``:n})}),n}function Is(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Ns;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(i.add(n),e=zl.bind(null,e,t,n),t.then(e,e))}function Ls(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t===null?!0:t.dehydrated!==null),t)return e;e=e.return}while(e!==null);return null}function Rs(e,t,n,r,i){return e.mode&1?(e.flags|=65536,e.lanes=i,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=uo(-1,1),t.tag=2,fo(n,t,1))),n.lanes|=1),e)}var zs=C.ReactCurrentOwner,Bs=!1;function Vs(e,t,n,r){t.child=e===null?qa(t,null,n,r):Ka(t,e.child,n,r)}function Hs(e,t,n,r,i){n=n.render;var a=t.ref;return to(t,i),r=Lo(e,t,n,r,a,i),n=Ro(),e!==null&&!Bs?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,cc(e,t,i)):(R&&n&&Da(t),t.flags|=1,Vs(e,t,r,i),t.child)}function Us(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!ql(a)&&a.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=a,Ws(e,t,a,r,i)):(e=Xl(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,(e.lanes&i)===0){var o=a.memoizedProps;if(n=n.compare,n=n===null?Lr:n,n(o,r)&&e.ref===t.ref)return cc(e,t,i)}return t.flags|=1,e=Yl(a,r),e.ref=t.ref,e.return=t,t.child=e}function Ws(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(Lr(a,r)&&e.ref===t.ref)if(Bs=!1,t.pendingProps=r=a,(e.lanes&i)!==0)e.flags&131072&&(Bs=!0);else return t.lanes=e.lanes,cc(e,t,i)}return qs(e,t,n,r,i)}function Gs(e,t,n){var r=t.pendingProps,i=r.children,a=e===null?null:e.memoizedState;if(r.mode===`hidden`)if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},L(qc,Kc),Kc|=n;else{if(!(n&1073741824))return e=a===null?n:a.baseLanes|n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,L(qc,Kc),Kc|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=a===null?n:a.baseLanes,L(qc,Kc),Kc|=r}else a===null?r=n:(r=a.baseLanes|n,t.memoizedState=null),L(qc,Kc),Kc|=r;return Vs(e,t,i,n),t.child}function Ks(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function qs(e,t,n,r,i){var a=ia(n)?na:ea.current;return a=ra(t,a),to(t,i),n=Lo(e,t,n,r,a,i),r=Ro(),e!==null&&!Bs?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,cc(e,t,i)):(R&&r&&Da(t),t.flags|=1,Vs(e,t,n,i),t.child)}function Js(e,t,n,r,i){if(ia(n)){var a=!0;ca(t)}else a=!1;if(to(t,i),t.stateNode===null)sc(e,t),Ds(t,n,r),ks(t,n,r,i),r=!0;else if(e===null){var o=t.stateNode,s=t.memoizedProps;o.props=s;var c=o.context,l=n.contextType;typeof l==`object`&&l?l=no(l):(l=ia(n)?na:ea.current,l=ra(t,l));var u=n.getDerivedStateFromProps,d=typeof u==`function`||typeof o.getSnapshotBeforeUpdate==`function`;d||typeof o.UNSAFE_componentWillReceiveProps!=`function`&&typeof o.componentWillReceiveProps!=`function`||(s!==r||c!==l)&&Os(t,o,r,l),so=!1;var f=t.memoizedState;o.state=f,ho(t,r,o,i),c=t.memoizedState,s!==r||f!==c||ta.current||so?(typeof u==`function`&&(ws(t,n,u,r),c=t.memoizedState),(s=so||Es(t,n,s,r,f,c,l))?(d||typeof o.UNSAFE_componentWillMount!=`function`&&typeof o.componentWillMount!=`function`||(typeof o.componentWillMount==`function`&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount==`function`&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount==`function`&&(t.flags|=4194308)):(typeof o.componentDidMount==`function`&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=c),o.props=r,o.state=c,o.context=l,r=s):(typeof o.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{o=t.stateNode,lo(e,t),s=t.memoizedProps,l=t.type===t.elementType?s:Cs(t.type,s),o.props=l,d=t.pendingProps,f=o.context,c=n.contextType,typeof c==`object`&&c?c=no(c):(c=ia(n)?na:ea.current,c=ra(t,c));var p=n.getDerivedStateFromProps;(u=typeof p==`function`||typeof o.getSnapshotBeforeUpdate==`function`)||typeof o.UNSAFE_componentWillReceiveProps!=`function`&&typeof o.componentWillReceiveProps!=`function`||(s!==d||f!==c)&&Os(t,o,r,c),so=!1,f=t.memoizedState,o.state=f,ho(t,r,o,i);var m=t.memoizedState;s!==d||f!==m||ta.current||so?(typeof p==`function`&&(ws(t,n,p,r),m=t.memoizedState),(l=so||Es(t,n,l,r,f,m,c)||!1)?(u||typeof o.UNSAFE_componentWillUpdate!=`function`&&typeof o.componentWillUpdate!=`function`||(typeof o.componentWillUpdate==`function`&&o.componentWillUpdate(r,m,c),typeof o.UNSAFE_componentWillUpdate==`function`&&o.UNSAFE_componentWillUpdate(r,m,c)),typeof o.componentDidUpdate==`function`&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof o.componentDidUpdate!=`function`||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!=`function`||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=m),o.props=r,o.state=m,o.context=c,r=l):(typeof o.componentDidUpdate!=`function`||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!=`function`||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return Ys(e,t,n,r,a,i)}function Ys(e,t,n,r,i,a){Ks(e,t);var o=(t.flags&128)!=0;if(!r&&!o)return i&&la(t,n,!1),cc(e,t,a);r=t.stateNode,zs.current=t;var s=o&&typeof n.getDerivedStateFromError!=`function`?null:r.render();return t.flags|=1,e!==null&&o?(t.child=Ka(t,e.child,null,a),t.child=Ka(t,null,s,a)):Vs(e,t,s,a),t.memoizedState=r.state,i&&la(t,n,!0),t.child}function Xs(e){var t=e.stateNode;t.pendingContext?oa(e,t.pendingContext,t.pendingContext!==t.context):t.context&&oa(e,t.context,!1),So(e,t.containerInfo)}function Zs(e,t,n,r,i){return za(),Ba(i),t.flags|=256,Vs(e,t,n,r),t.child}var Qs={dehydrated:null,treeContext:null,retryLane:0};function $s(e){return{baseLanes:e,cachePool:null,transitions:null}}function ec(e,t,n){var r=t.pendingProps,i=z.current,a=!1,o=(t.flags&128)!=0,s;if((s=o)||(s=e!==null&&e.memoizedState===null?!1:(i&2)!=0),s?(a=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(i|=1),L(z,i&1),e===null)return Fa(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data===`$!`?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(o=r.children,e=r.fallback,a?(r=t.mode,a=t.child,o={mode:`hidden`,children:o},!(r&1)&&a!==null?(a.childLanes=0,a.pendingProps=o):a=Ql(o,r,0,null),e=Zl(e,r,n,null),a.return=t,e.return=t,a.sibling=e,t.child=a,t.child.memoizedState=$s(n),t.memoizedState=Qs,e):tc(t,o));if(i=e.memoizedState,i!==null&&(s=i.dehydrated,s!==null))return rc(e,t,o,r,s,i,n);if(a){a=r.fallback,o=t.mode,i=e.child,s=i.sibling;var c={mode:`hidden`,children:r.children};return!(o&1)&&t.child!==i?(r=t.child,r.childLanes=0,r.pendingProps=c,t.deletions=null):(r=Yl(i,c),r.subtreeFlags=i.subtreeFlags&14680064),s===null?(a=Zl(a,o,n,null),a.flags|=2):a=Yl(s,a),a.return=t,r.return=t,r.sibling=a,t.child=r,r=a,a=t.child,o=e.child.memoizedState,o=o===null?$s(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},a.memoizedState=o,a.childLanes=e.childLanes&~n,t.memoizedState=Qs,r}return a=e.child,e=a.sibling,r=Yl(a,{mode:`visible`,children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function tc(e,t){return t=Ql({mode:`visible`,children:t},e.mode,0,null),t.return=e,e.child=t}function nc(e,t,n,r){return r!==null&&Ba(r),Ka(t,e.child,null,n),e=tc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function rc(e,t,n,r,a,o,s){if(n)return t.flags&256?(t.flags&=-257,r=js(Error(i(422))),nc(e,t,s,r)):t.memoizedState===null?(o=r.fallback,a=t.mode,r=Ql({mode:`visible`,children:r.children},a,0,null),o=Zl(o,a,s,null),o.flags|=2,r.return=t,o.return=t,r.sibling=o,t.child=r,t.mode&1&&Ka(t,e.child,null,s),t.child.memoizedState=$s(s),t.memoizedState=Qs,o):(t.child=e.child,t.flags|=128,null);if(!(t.mode&1))return nc(e,t,s,null);if(a.data===`$!`){if(r=a.nextSibling&&a.nextSibling.dataset,r)var c=r.dgst;return r=c,o=Error(i(419)),r=js(o,r,void 0),nc(e,t,s,r)}if(c=(s&e.childLanes)!==0,Bs||c){if(r=Y,r!==null){switch(s&-s){case 4:a=2;break;case 16:a=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:a=32;break;case 536870912:a=268435456;break;default:a=0}a=(a&(r.suspendedLanes|s))===0?a:0,a!==0&&a!==o.retryLane&&(o.retryLane=a,oo(e,a),hl(r,e,a,-1))}return kl(),r=js(Error(i(421))),nc(e,t,s,r)}return a.data===`$?`?(t.flags|=128,t.child=e.child,t=Vl.bind(null,e),a._reactRetry=t,null):(e=o.treeContext,Aa=Li(a.nextSibling),ka=t,R=!0,ja=null,e!==null&&(ba[xa++]=Ca,ba[xa++]=wa,ba[xa++]=Sa,Ca=e.id,wa=e.overflow,Sa=t),t=tc(t,r.children),t.flags|=4096,t)}function ic(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),eo(e.return,t,n)}function ac(e,t,n,r,i){var a=e.memoizedState;a===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i}:(a.isBackwards=t,a.rendering=null,a.renderingStartTime=0,a.last=r,a.tail=n,a.tailMode=i)}function oc(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;if(Vs(e,t,r.children,n),r=z.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&ic(e,n,t);else if(e.tag===19)ic(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(L(z,r),!(t.mode&1))t.memoizedState=null;else switch(i){case`forwards`:for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&Eo(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),ac(t,!1,i,n,a);break;case`backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Eo(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}ac(t,!0,n,null,a);break;case`together`:ac(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function sc(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function cc(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Yc|=t.lanes,(n&t.childLanes)===0)return null;if(e!==null&&t.child!==e.child)throw Error(i(153));if(t.child!==null){for(e=t.child,n=Yl(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Yl(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function lc(e,t,n){switch(t.tag){case 3:Xs(t),za();break;case 5:wo(t);break;case 1:ia(t.type)&&ca(t);break;case 4:So(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,i=t.memoizedProps.value;L(Ja,r._currentValue),r._currentValue=i;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(L(z,z.current&1),e=cc(e,t,n),e===null?null:e.sibling):ec(e,t,n):(L(z,z.current&1),t.flags|=128,null);L(z,z.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return oc(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),L(z,z.current),r)break;return null;case 22:case 23:return t.lanes=0,Gs(e,t,n)}return cc(e,t,n)}var uc=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},dc=function(e,t,n,r){var i=e.memoizedProps;if(i!==r){e=t.stateNode,xo(vo.current);var a=null;switch(n){case`input`:i=we(e,i),r=we(e,r),a=[];break;case`select`:i=O({},i,{value:void 0}),r=O({},r,{value:void 0}),a=[];break;case`textarea`:i=je(e,i),r=je(e,r),a=[];break;default:typeof i.onClick!=`function`&&typeof r.onClick==`function`&&(e.onclick=Di)}Ge(n,r);var o;for(u in n=null,i)if(!r.hasOwnProperty(u)&&i.hasOwnProperty(u)&&i[u]!=null)if(u===`style`){var c=i[u];for(o in c)c.hasOwnProperty(o)&&(n||={},n[o]=``)}else u!==`dangerouslySetInnerHTML`&&u!==`children`&&u!==`suppressContentEditableWarning`&&u!==`suppressHydrationWarning`&&u!==`autoFocus`&&(s.hasOwnProperty(u)?a||=[]:(a||=[]).push(u,null));for(u in r){var l=r[u];if(c=i?.[u],r.hasOwnProperty(u)&&l!==c&&(l!=null||c!=null))if(u===`style`)if(c){for(o in c)!c.hasOwnProperty(o)||l&&l.hasOwnProperty(o)||(n||={},n[o]=``);for(o in l)l.hasOwnProperty(o)&&c[o]!==l[o]&&(n||={},n[o]=l[o])}else n||(a||=[],a.push(u,n)),n=l;else u===`dangerouslySetInnerHTML`?(l=l?l.__html:void 0,c=c?c.__html:void 0,l!=null&&c!==l&&(a||=[]).push(u,l)):u===`children`?typeof l!=`string`&&typeof l!=`number`||(a||=[]).push(u,``+l):u!==`suppressContentEditableWarning`&&u!==`suppressHydrationWarning`&&(s.hasOwnProperty(u)?(l!=null&&u===`onScroll`&&F(`scroll`,e),a||c===l||(a=[])):(a||=[]).push(u,l))}n&&(a||=[]).push(`style`,n);var u=a;(t.updateQueue=u)&&(t.flags|=4)}},fc=function(e,t,n,r){n!==r&&(t.flags|=4)};function pc(e,t){if(!R)switch(e.tailMode){case`hidden`:t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case`collapsed`:n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function W(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&14680064,r|=i.flags&14680064,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function mc(e,t,n){var r=t.pendingProps;switch(Oa(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return W(t),null;case 1:return ia(t.type)&&aa(),W(t),null;case 3:return r=t.stateNode,Co(),I(ta),I(ea),Oo(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(La(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,ja!==null&&(yl(ja),ja=null))),W(t),null;case 5:To(t);var a=xo(bo.current);if(n=t.type,e!==null&&t.stateNode!=null)dc(e,t,n,r,a),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(i(166));return W(t),null}if(e=xo(vo.current),La(t)){r=t.stateNode,n=t.type;var o=t.memoizedProps;switch(r[Bi]=t,r[Vi]=o,e=(t.mode&1)!=0,n){case`dialog`:F(`cancel`,r),F(`close`,r);break;case`iframe`:case`object`:case`embed`:F(`load`,r);break;case`video`:case`audio`:for(a=0;a<ui.length;a++)F(ui[a],r);break;case`source`:F(`error`,r);break;case`img`:case`image`:case`link`:F(`error`,r),F(`load`,r);break;case`details`:F(`toggle`,r);break;case`input`:Te(r,o),F(`invalid`,r);break;case`select`:r._wrapperState={wasMultiple:!!o.multiple},F(`invalid`,r);break;case`textarea`:Me(r,o),F(`invalid`,r)}for(var c in Ge(n,o),a=null,o)if(o.hasOwnProperty(c)){var l=o[c];c===`children`?typeof l==`string`?r.textContent!==l&&(!0!==o.suppressHydrationWarning&&Ei(r.textContent,l,e),a=[`children`,l]):typeof l==`number`&&r.textContent!==``+l&&(!0!==o.suppressHydrationWarning&&Ei(r.textContent,l,e),a=[`children`,``+l]):s.hasOwnProperty(c)&&l!=null&&c===`onScroll`&&F(`scroll`,r)}switch(n){case`input`:xe(r),Oe(r,o,!0);break;case`textarea`:xe(r),Pe(r);break;case`select`:case`option`:break;default:typeof o.onClick==`function`&&(r.onclick=Di)}r=a,t.updateQueue=r,r!==null&&(t.flags|=4)}else{c=a.nodeType===9?a:a.ownerDocument,e===`http://www.w3.org/1999/xhtml`&&(e=Fe(n)),e===`http://www.w3.org/1999/xhtml`?n===`script`?(e=c.createElement(`div`),e.innerHTML=`<script><\/script>`,e=e.removeChild(e.firstChild)):typeof r.is==`string`?e=c.createElement(n,{is:r.is}):(e=c.createElement(n),n===`select`&&(c=e,r.multiple?c.multiple=!0:r.size&&(c.size=r.size))):e=c.createElementNS(e,n),e[Bi]=t,e[Vi]=r,uc(e,t,!1,!1),t.stateNode=e;a:{switch(c=Ke(n,r),n){case`dialog`:F(`cancel`,e),F(`close`,e),a=r;break;case`iframe`:case`object`:case`embed`:F(`load`,e),a=r;break;case`video`:case`audio`:for(a=0;a<ui.length;a++)F(ui[a],e);a=r;break;case`source`:F(`error`,e),a=r;break;case`img`:case`image`:case`link`:F(`error`,e),F(`load`,e),a=r;break;case`details`:F(`toggle`,e),a=r;break;case`input`:Te(e,r),a=we(e,r),F(`invalid`,e);break;case`option`:a=r;break;case`select`:e._wrapperState={wasMultiple:!!r.multiple},a=O({},r,{value:void 0}),F(`invalid`,e);break;case`textarea`:Me(e,r),a=je(e,r),F(`invalid`,e);break;default:a=r}for(o in Ge(n,a),l=a,l)if(l.hasOwnProperty(o)){var u=l[o];o===`style`?Ue(e,u):o===`dangerouslySetInnerHTML`?(u=u?u.__html:void 0,u!=null&&Re(e,u)):o===`children`?typeof u==`string`?(n!==`textarea`||u!==``)&&ze(e,u):typeof u==`number`&&ze(e,``+u):o!==`suppressContentEditableWarning`&&o!==`suppressHydrationWarning`&&o!==`autoFocus`&&(s.hasOwnProperty(o)?u!=null&&o===`onScroll`&&F(`scroll`,e):u!=null&&S(e,o,u,c))}switch(n){case`input`:xe(e),Oe(e,r,!1);break;case`textarea`:xe(e),Pe(e);break;case`option`:r.value!=null&&e.setAttribute(`value`,``+ve(r.value));break;case`select`:e.multiple=!!r.multiple,o=r.value,o==null?r.defaultValue!=null&&k(e,!!r.multiple,r.defaultValue,!0):k(e,!!r.multiple,o,!1);break;default:typeof a.onClick==`function`&&(e.onclick=Di)}switch(n){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return W(t),null;case 6:if(e&&t.stateNode!=null)fc(e,t,e.memoizedProps,r);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(n=xo(bo.current),xo(vo.current),La(t)){if(r=t.stateNode,n=t.memoizedProps,r[Bi]=t,(o=r.nodeValue!==n)&&(e=ka,e!==null))switch(e.tag){case 3:Ei(r.nodeValue,n,(e.mode&1)!=0);break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&Ei(r.nodeValue,n,(e.mode&1)!=0)}o&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[Bi]=t,t.stateNode=r}return W(t),null;case 13:if(I(z),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(R&&Aa!==null&&t.mode&1&&!(t.flags&128))Ra(),za(),t.flags|=98560,o=!1;else if(o=La(t),r!==null&&r.dehydrated!==null){if(e===null){if(!o)throw Error(i(318));if(o=t.memoizedState,o=o===null?null:o.dehydrated,!o)throw Error(i(317));o[Bi]=t}else za(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;W(t),o=!1}else ja!==null&&(yl(ja),ja=null),o=!0;if(!o)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||z.current&1?Q===0&&(Q=3):kl())),t.updateQueue!==null&&(t.flags|=4),W(t),null);case 4:return Co(),e===null&&gi(t.stateNode.containerInfo),W(t),null;case 10:return $a(t.type._context),W(t),null;case 17:return ia(t.type)&&aa(),W(t),null;case 19:if(I(z),o=t.memoizedState,o===null)return W(t),null;if(r=(t.flags&128)!=0,c=o.rendering,c===null)if(r)pc(o,!1);else{if(Q!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(c=Eo(e),c!==null){for(t.flags|=128,pc(o,!1),r=c.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)o=n,e=r,o.flags&=14680066,c=o.alternate,c===null?(o.childLanes=0,o.lanes=e,o.child=null,o.subtreeFlags=0,o.memoizedProps=null,o.memoizedState=null,o.updateQueue=null,o.dependencies=null,o.stateNode=null):(o.childLanes=c.childLanes,o.lanes=c.lanes,o.child=c.child,o.subtreeFlags=0,o.deletions=null,o.memoizedProps=c.memoizedProps,o.memoizedState=c.memoizedState,o.updateQueue=c.updateQueue,o.type=c.type,e=c.dependencies,o.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return L(z,z.current&1|2),t.child}e=e.sibling}o.tail!==null&&M()>tl&&(t.flags|=128,r=!0,pc(o,!1),t.lanes=4194304)}else{if(!r)if(e=Eo(c),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),pc(o,!0),o.tail===null&&o.tailMode===`hidden`&&!c.alternate&&!R)return W(t),null}else 2*M()-o.renderingStartTime>tl&&n!==1073741824&&(t.flags|=128,r=!0,pc(o,!1),t.lanes=4194304);o.isBackwards?(c.sibling=t.child,t.child=c):(n=o.last,n===null?t.child=c:n.sibling=c,o.last=c)}return o.tail===null?(W(t),null):(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=M(),t.sibling=null,n=z.current,L(z,r?n&1|2:n&1),t);case 22:case 23:return Tl(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Kc&1073741824&&(W(t),t.subtreeFlags&6&&(t.flags|=8192)):W(t),null;case 24:return null;case 25:return null}throw Error(i(156,t.tag))}function hc(e,t){switch(Oa(t),t.tag){case 1:return ia(t.type)&&aa(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Co(),I(ta),I(ea),Oo(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return To(t),null;case 13:if(I(z),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));za()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return I(z),null;case 4:return Co(),null;case 10:return $a(t.type._context),null;case 22:case 23:return Tl(),null;case 24:return null;default:return null}}var gc=!1,G=!1,_c=typeof WeakSet==`function`?WeakSet:Set,K=null;function vc(e,t){var n=e.ref;if(n!==null)if(typeof n==`function`)try{n(null)}catch(n){$(e,t,n)}else n.current=null}function yc(e,t,n){try{n()}catch(n){$(e,t,n)}}var bc=!1;function xc(e,t){if(Oi=bn,e=Vr(),Hr(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||a!==0&&f.nodeType!==3||(c=s+a),f!==o||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===a&&(c=s),p===o&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(ki={focusedElem:e,selectionRange:n},bn=!1,K=t;K!==null;)if(t=K,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,K=e;else for(;K!==null;){t=K;try{var h=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(h!==null){var g=h.memoizedProps,_=h.memoizedState,v=t.stateNode;v.__reactInternalSnapshotBeforeUpdate=v.getSnapshotBeforeUpdate(t.elementType===t.type?g:Cs(t.type,g),_)}break;case 3:var y=t.stateNode.containerInfo;y.nodeType===1?y.textContent=``:y.nodeType===9&&y.documentElement&&y.removeChild(y.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(i(163))}}catch(e){$(t,t.return,e)}if(e=t.sibling,e!==null){e.return=t.return,K=e;break}K=t.return}return h=bc,bc=!1,h}function Sc(e,t,n){var r=t.updateQueue;if(r=r===null?null:r.lastEffect,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var a=i.destroy;i.destroy=void 0,a!==void 0&&yc(t,n,a)}i=i.next}while(i!==r)}}function Cc(e,t){if(t=t.updateQueue,t=t===null?null:t.lastEffect,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function wc(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t==`function`?t(e):t.current=e}}function Tc(e){var t=e.alternate;t!==null&&(e.alternate=null,Tc(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Bi],delete t[Vi],delete t[Ui],delete t[Wi],delete t[Gi])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Ec(e){return e.tag===5||e.tag===3||e.tag===4}function Dc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Ec(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Oc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Di));else if(r!==4&&(e=e.child,e!==null))for(Oc(e,t,n),e=e.sibling;e!==null;)Oc(e,t,n),e=e.sibling}function kc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(kc(e,t,n),e=e.sibling;e!==null;)kc(e,t,n),e=e.sibling}var q=null,Ac=!1;function jc(e,t,n){for(n=n.child;n!==null;)Mc(e,t,n),n=n.sibling}function Mc(e,t,n){if(jt&&typeof jt.onCommitFiberUnmount==`function`)try{jt.onCommitFiberUnmount(At,n)}catch{}switch(n.tag){case 5:G||vc(n,t);case 6:var r=q,i=Ac;q=null,jc(e,t,n),q=r,Ac=i,q!==null&&(Ac?(e=q,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):q.removeChild(n.stateNode));break;case 18:q!==null&&(Ac?(e=q,n=n.stateNode,e.nodeType===8?Ii(e.parentNode,n):e.nodeType===1&&Ii(e,n),vn(e)):Ii(q,n.stateNode));break;case 4:r=q,i=Ac,q=n.stateNode.containerInfo,Ac=!0,jc(e,t,n),q=r,Ac=i;break;case 0:case 11:case 14:case 15:if(!G&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var a=i,o=a.destroy;a=a.tag,o!==void 0&&(a&2||a&4)&&yc(n,t,o),i=i.next}while(i!==r)}jc(e,t,n);break;case 1:if(!G&&(vc(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(e){$(n,t,e)}jc(e,t,n);break;case 21:jc(e,t,n);break;case 22:n.mode&1?(G=(r=G)||n.memoizedState!==null,jc(e,t,n),G=r):jc(e,t,n);break;default:jc(e,t,n)}}function Nc(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new _c),t.forEach(function(t){var r=Hl.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))})}}function Pc(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var a=n[r];try{var o=e,s=t,c=s;a:for(;c!==null;){switch(c.tag){case 5:q=c.stateNode,Ac=!1;break a;case 3:q=c.stateNode.containerInfo,Ac=!0;break a;case 4:q=c.stateNode.containerInfo,Ac=!0;break a}c=c.return}if(q===null)throw Error(i(160));Mc(o,s,a),q=null,Ac=!1;var l=a.alternate;l!==null&&(l.return=null),a.return=null}catch(e){$(a,t,e)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)Fc(t,e),t=t.sibling}function Fc(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(Pc(t,e),Ic(e),r&4){try{Sc(3,e,e.return),Cc(3,e)}catch(t){$(e,e.return,t)}try{Sc(5,e,e.return)}catch(t){$(e,e.return,t)}}break;case 1:Pc(t,e),Ic(e),r&512&&n!==null&&vc(n,n.return);break;case 5:if(Pc(t,e),Ic(e),r&512&&n!==null&&vc(n,n.return),e.flags&32){var a=e.stateNode;try{ze(a,``)}catch(t){$(e,e.return,t)}}if(r&4&&(a=e.stateNode,a!=null)){var o=e.memoizedProps,s=n===null?o:n.memoizedProps,c=e.type,l=e.updateQueue;if(e.updateQueue=null,l!==null)try{c===`input`&&o.type===`radio`&&o.name!=null&&Ee(a,o),Ke(c,s);var u=Ke(c,o);for(s=0;s<l.length;s+=2){var d=l[s],f=l[s+1];d===`style`?Ue(a,f):d===`dangerouslySetInnerHTML`?Re(a,f):d===`children`?ze(a,f):S(a,d,f,u)}switch(c){case`input`:De(a,o);break;case`textarea`:Ne(a,o);break;case`select`:var p=a._wrapperState.wasMultiple;a._wrapperState.wasMultiple=!!o.multiple;var m=o.value;m==null?p!==!!o.multiple&&(o.defaultValue==null?k(a,!!o.multiple,o.multiple?[]:``,!1):k(a,!!o.multiple,o.defaultValue,!0)):k(a,!!o.multiple,m,!1)}a[Vi]=o}catch(t){$(e,e.return,t)}}break;case 6:if(Pc(t,e),Ic(e),r&4){if(e.stateNode===null)throw Error(i(162));a=e.stateNode,o=e.memoizedProps;try{a.nodeValue=o}catch(t){$(e,e.return,t)}}break;case 3:if(Pc(t,e),Ic(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{vn(t.containerInfo)}catch(t){$(e,e.return,t)}break;case 4:Pc(t,e),Ic(e);break;case 13:Pc(t,e),Ic(e),a=e.child,a.flags&8192&&(o=a.memoizedState!==null,a.stateNode.isHidden=o,!o||a.alternate!==null&&a.alternate.memoizedState!==null||(el=M())),r&4&&Nc(e);break;case 22:if(d=n!==null&&n.memoizedState!==null,e.mode&1?(G=(u=G)||d,Pc(t,e),G=u):Pc(t,e),Ic(e),r&8192){if(u=e.memoizedState!==null,(e.stateNode.isHidden=u)&&!d&&e.mode&1)for(K=e,d=e.child;d!==null;){for(f=K=d;K!==null;){switch(p=K,m=p.child,p.tag){case 0:case 11:case 14:case 15:Sc(4,p,p.return);break;case 1:vc(p,p.return);var h=p.stateNode;if(typeof h.componentWillUnmount==`function`){r=p,n=p.return;try{t=r,h.props=t.memoizedProps,h.state=t.memoizedState,h.componentWillUnmount()}catch(e){$(r,n,e)}}break;case 5:vc(p,p.return);break;case 22:if(p.memoizedState!==null){Bc(f);continue}}m===null?Bc(f):(m.return=p,K=m)}d=d.sibling}a:for(d=null,f=e;;){if(f.tag===5){if(d===null){d=f;try{a=f.stateNode,u?(o=a.style,typeof o.setProperty==`function`?o.setProperty(`display`,`none`,`important`):o.display=`none`):(c=f.stateNode,l=f.memoizedProps.style,s=l!=null&&l.hasOwnProperty(`display`)?l.display:null,c.style.display=He(`display`,s))}catch(t){$(e,e.return,t)}}}else if(f.tag===6){if(d===null)try{f.stateNode.nodeValue=u?``:f.memoizedProps}catch(t){$(e,e.return,t)}}else if((f.tag!==22&&f.tag!==23||f.memoizedState===null||f===e)&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break a;for(;f.sibling===null;){if(f.return===null||f.return===e)break a;d===f&&(d=null),f=f.return}d===f&&(d=null),f.sibling.return=f.return,f=f.sibling}}break;case 19:Pc(t,e),Ic(e),r&4&&Nc(e);break;case 21:break;default:Pc(t,e),Ic(e)}}function Ic(e){var t=e.flags;if(t&2){try{a:{for(var n=e.return;n!==null;){if(Ec(n)){var r=n;break a}n=n.return}throw Error(i(160))}switch(r.tag){case 5:var a=r.stateNode;r.flags&32&&(ze(a,``),r.flags&=-33),kc(e,Dc(e),a);break;case 3:case 4:var o=r.stateNode.containerInfo;Oc(e,Dc(e),o);break;default:throw Error(i(161))}}catch(t){$(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Lc(e,t,n){K=e,Rc(e,t,n)}function Rc(e,t,n){for(var r=(e.mode&1)!=0;K!==null;){var i=K,a=i.child;if(i.tag===22&&r){var o=i.memoizedState!==null||gc;if(!o){var s=i.alternate,c=s!==null&&s.memoizedState!==null||G;s=gc;var l=G;if(gc=o,(G=c)&&!l)for(K=i;K!==null;)o=K,c=o.child,o.tag===22&&o.memoizedState!==null||c===null?Vc(i):(c.return=o,K=c);for(;a!==null;)K=a,Rc(a,t,n),a=a.sibling;K=i,gc=s,G=l}zc(e,t,n)}else i.subtreeFlags&8772&&a!==null?(a.return=i,K=a):zc(e,t,n)}}function zc(e){for(;K!==null;){var t=K;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:G||Cc(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!G)if(n===null)r.componentDidMount();else{var a=t.elementType===t.type?n.memoizedProps:Cs(t.type,n.memoizedProps);r.componentDidUpdate(a,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var o=t.updateQueue;o!==null&&go(t,o,r);break;case 3:var s=t.updateQueue;if(s!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}go(t,s,n)}break;case 5:var c=t.stateNode;if(n===null&&t.flags&4){n=c;var l=t.memoizedProps;switch(t.type){case`button`:case`input`:case`select`:case`textarea`:l.autoFocus&&n.focus();break;case`img`:l.src&&(n.src=l.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var u=t.alternate;if(u!==null){var d=u.memoizedState;if(d!==null){var f=d.dehydrated;f!==null&&vn(f)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(i(163))}G||t.flags&512&&wc(t)}catch(e){$(t,t.return,e)}}if(t===e){K=null;break}if(n=t.sibling,n!==null){n.return=t.return,K=n;break}K=t.return}}function Bc(e){for(;K!==null;){var t=K;if(t===e){K=null;break}var n=t.sibling;if(n!==null){n.return=t.return,K=n;break}K=t.return}}function Vc(e){for(;K!==null;){var t=K;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{Cc(4,t)}catch(e){$(t,n,e)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount==`function`){var i=t.return;try{r.componentDidMount()}catch(e){$(t,i,e)}}var a=t.return;try{wc(t)}catch(e){$(t,a,e)}break;case 5:var o=t.return;try{wc(t)}catch(e){$(t,o,e)}}}catch(e){$(t,t.return,e)}if(t===e){K=null;break}var s=t.sibling;if(s!==null){s.return=t.return,K=s;break}K=t.return}}var Hc=Math.ceil,Uc=C.ReactCurrentDispatcher,Wc=C.ReactCurrentOwner,Gc=C.ReactCurrentBatchConfig,J=0,Y=null,X=null,Z=0,Kc=0,qc=Qi(0),Q=0,Jc=null,Yc=0,Xc=0,Zc=0,Qc=null,$c=null,el=0,tl=1/0,nl=null,rl=!1,il=null,al=null,ol=!1,sl=null,cl=0,ll=0,ul=null,dl=-1,fl=0;function pl(){return J&6?M():dl===-1?dl=M():dl}function ml(e){return e.mode&1?J&2&&Z!==0?Z&-Z:Va.transition===null?(e=N,e===0?(e=window.event,e=e===void 0?16:En(e.type),e):e):(fl===0&&(fl=Wt()),fl):1}function hl(e,t,n,r){if(50<ll)throw ll=0,ul=null,Error(i(185));Kt(e,n,r),(!(J&2)||e!==Y)&&(e===Y&&(!(J&2)&&(Xc|=n),Q===4&&xl(e,Z)),gl(e,r),n===1&&J===0&&!(t.mode&1)&&(tl=M()+500,da&&ha()))}function gl(e,t){var n=e.callbackNode;Ht(e,t);var r=Bt(e,e===Y?Z:0);if(r===0)n!==null&&xt(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&xt(n),t===1)e.tag===0?ma(Sl.bind(null,e)):pa(Sl.bind(null,e)),Pi(function(){!(J&6)&&ha()}),n=null;else{switch(Yt(r)){case 1:n=Tt;break;case 4:n=Et;break;case 16:n=Dt;break;case 536870912:n=kt;break;default:n=Dt}n=Wl(n,_l.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function _l(e,t){if(dl=-1,fl=0,J&6)throw Error(i(327));var n=e.callbackNode;if(Ll()&&e.callbackNode!==n)return null;var r=Bt(e,e===Y?Z:0);if(r===0)return null;if(r&30||(r&e.expiredLanes)!==0||t)t=Al(e,r);else{t=r;var a=J;J|=2;var o=Ol();(Y!==e||Z!==t)&&(nl=null,tl=M()+500,El(e,t));do try{Ml();break}catch(t){Dl(e,t)}while(1);Qa(),Uc.current=o,J=a,X===null?(Y=null,Z=0,t=Q):t=0}if(t!==0){if(t===2&&(a=Ut(e),a!==0&&(r=a,t=vl(e,a))),t===1)throw n=Jc,El(e,0),xl(e,r),gl(e,M()),n;if(t===6)xl(e,r);else{if(a=e.current.alternate,!(r&30)&&!bl(a)&&(t=Al(e,r),t===2&&(o=Ut(e),o!==0&&(r=o,t=vl(e,o))),t===1))throw n=Jc,El(e,0),xl(e,r),gl(e,M()),n;switch(e.finishedWork=a,e.finishedLanes=r,t){case 0:case 1:throw Error(i(345));case 2:Fl(e,$c,nl);break;case 3:if(xl(e,r),(r&130023424)===r&&(t=el+500-M(),10<t)){if(Bt(e,0)!==0)break;if(a=e.suspendedLanes,(a&r)!==r){pl(),e.pingedLanes|=e.suspendedLanes&a;break}e.timeoutHandle=ji(Fl.bind(null,e,$c,nl),t);break}Fl(e,$c,nl);break;case 4:if(xl(e,r),(r&4194240)===r)break;for(t=e.eventTimes,a=-1;0<r;){var s=31-Nt(r);o=1<<s,s=t[s],s>a&&(a=s),r&=~o}if(r=a,r=M()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Hc(r/1960))-r,10<r){e.timeoutHandle=ji(Fl.bind(null,e,$c,nl),r);break}Fl(e,$c,nl);break;case 5:Fl(e,$c,nl);break;default:throw Error(i(329))}}}return gl(e,M()),e.callbackNode===n?_l.bind(null,e):null}function vl(e,t){var n=Qc;return e.current.memoizedState.isDehydrated&&(El(e,t).flags|=256),e=Al(e,t),e!==2&&(t=$c,$c=n,t!==null&&yl(t)),e}function yl(e){$c===null?$c=e:$c.push.apply($c,e)}function bl(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!Ir(a(),i))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function xl(e,t){for(t&=~Zc,t&=~Xc,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Nt(t),r=1<<n;e[n]=-1,t&=~r}}function Sl(e){if(J&6)throw Error(i(327));Ll();var t=Bt(e,0);if(!(t&1))return gl(e,M()),null;var n=Al(e,t);if(e.tag!==0&&n===2){var r=Ut(e);r!==0&&(t=r,n=vl(e,r))}if(n===1)throw n=Jc,El(e,0),xl(e,t),gl(e,M()),n;if(n===6)throw Error(i(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Fl(e,$c,nl),gl(e,M()),null}function Cl(e,t){var n=J;J|=1;try{return e(t)}finally{J=n,J===0&&(tl=M()+500,da&&ha())}}function wl(e){sl!==null&&sl.tag===0&&!(J&6)&&Ll();var t=J;J|=1;var n=Gc.transition,r=N;try{if(Gc.transition=null,N=1,e)return e()}finally{N=r,Gc.transition=n,J=t,!(J&6)&&ha()}}function Tl(){Kc=qc.current,I(qc)}function El(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,Mi(n)),X!==null)for(n=X.return;n!==null;){var r=n;switch(Oa(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&aa();break;case 3:Co(),I(ta),I(ea),Oo();break;case 5:To(r);break;case 4:Co();break;case 13:I(z);break;case 19:I(z);break;case 10:$a(r.type._context);break;case 22:case 23:Tl()}n=n.return}if(Y=e,X=e=Yl(e.current,null),Z=Kc=t,Q=0,Jc=null,Zc=Xc=Yc=0,$c=Qc=null,ro!==null){for(t=0;t<ro.length;t++)if(n=ro[t],r=n.interleaved,r!==null){n.interleaved=null;var i=r.next,a=n.pending;if(a!==null){var o=a.next;a.next=i,r.next=o}n.pending=r}ro=null}return e}function Dl(e,t){do{var n=X;try{if(Qa(),ko.current=ys,Mo){for(var r=B.memoizedState;r!==null;){var a=r.queue;a!==null&&(a.pending=null),r=r.next}Mo=!1}if(jo=0,H=V=B=null,No=!1,Po=0,Wc.current=null,n===null||n.return===null){Q=1,Jc=t,X=null;break}a:{var o=e,s=n.return,c=n,l=t;if(t=Z,c.flags|=32768,typeof l==`object`&&l&&typeof l.then==`function`){var u=l,d=c,f=d.tag;if(!(d.mode&1)&&(f===0||f===11||f===15)){var p=d.alternate;p?(d.updateQueue=p.updateQueue,d.memoizedState=p.memoizedState,d.lanes=p.lanes):(d.updateQueue=null,d.memoizedState=null)}var m=Ls(s);if(m!==null){m.flags&=-257,Rs(m,s,c,o,t),m.mode&1&&Is(o,u,t),t=m,l=u;var h=t.updateQueue;if(h===null){var g=new Set;g.add(l),t.updateQueue=g}else h.add(l);break a}else{if(!(t&1)){Is(o,u,t),kl();break a}l=Error(i(426))}}else if(R&&c.mode&1){var _=Ls(s);if(_!==null){!(_.flags&65536)&&(_.flags|=256),Rs(_,s,c,o,t),Ba(As(l,c));break a}}o=l=As(l,c),Q!==4&&(Q=2),Qc===null?Qc=[o]:Qc.push(o),o=s;do{switch(o.tag){case 3:o.flags|=65536,t&=-t,o.lanes|=t;var v=Ps(o,l,t);mo(o,v);break a;case 1:c=l;var y=o.type,b=o.stateNode;if(!(o.flags&128)&&(typeof y.getDerivedStateFromError==`function`||b!==null&&typeof b.componentDidCatch==`function`&&(al===null||!al.has(b)))){o.flags|=65536,t&=-t,o.lanes|=t;var x=Fs(o,c,t);mo(o,x);break a}}o=o.return}while(o!==null)}Pl(n)}catch(e){t=e,X===n&&n!==null&&(X=n=n.return);continue}break}while(1)}function Ol(){var e=Uc.current;return Uc.current=ys,e===null?ys:e}function kl(){(Q===0||Q===3||Q===2)&&(Q=4),Y===null||!(Yc&268435455)&&!(Xc&268435455)||xl(Y,Z)}function Al(e,t){var n=J;J|=2;var r=Ol();(Y!==e||Z!==t)&&(nl=null,El(e,t));do try{jl();break}catch(t){Dl(e,t)}while(1);if(Qa(),J=n,Uc.current=r,X!==null)throw Error(i(261));return Y=null,Z=0,Q}function jl(){for(;X!==null;)Nl(X)}function Ml(){for(;X!==null&&!St();)Nl(X)}function Nl(e){var t=Ul(e.alternate,e,Kc);e.memoizedProps=e.pendingProps,t===null?Pl(e):X=t,Wc.current=null}function Pl(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=hc(n,t),n!==null){n.flags&=32767,X=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Q=6,X=null;return}}else if(n=mc(n,t,Kc),n!==null){X=n;return}if(t=t.sibling,t!==null){X=t;return}X=t=e}while(t!==null);Q===0&&(Q=5)}function Fl(e,t,n){var r=N,i=Gc.transition;try{Gc.transition=null,N=1,Il(e,t,n,r)}finally{Gc.transition=i,N=r}return null}function Il(e,t,n,r){do Ll();while(sl!==null);if(J&6)throw Error(i(327));n=e.finishedWork;var a=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(i(177));e.callbackNode=null,e.callbackPriority=0;var o=n.lanes|n.childLanes;if(qt(e,o),e===Y&&(X=Y=null,Z=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||ol||(ol=!0,Wl(Dt,function(){return Ll(),null})),o=(n.flags&15990)!=0,n.subtreeFlags&15990||o){o=Gc.transition,Gc.transition=null;var s=N;N=1;var c=J;J|=4,Wc.current=null,xc(e,n),Fc(n,e),Ur(ki),bn=!!Oi,ki=Oi=null,e.current=n,Lc(n,e,a),Ct(),J=c,N=s,Gc.transition=o}else e.current=n;if(ol&&(ol=!1,sl=e,cl=a),o=e.pendingLanes,o===0&&(al=null),Mt(n.stateNode,r),gl(e,M()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)a=t[n],r(a.value,{componentStack:a.stack,digest:a.digest});if(rl)throw rl=!1,e=il,il=null,e;return cl&1&&e.tag!==0&&Ll(),o=e.pendingLanes,o&1?e===ul?ll++:(ll=0,ul=e):ll=0,ha(),null}function Ll(){if(sl!==null){var e=Yt(cl),t=Gc.transition,n=N;try{if(Gc.transition=null,N=16>e?16:e,sl===null)var r=!1;else{if(e=sl,sl=null,cl=0,J&6)throw Error(i(331));var a=J;for(J|=4,K=e.current;K!==null;){var o=K,s=o.child;if(K.flags&16){var c=o.deletions;if(c!==null){for(var l=0;l<c.length;l++){var u=c[l];for(K=u;K!==null;){var d=K;switch(d.tag){case 0:case 11:case 15:Sc(8,d,o)}var f=d.child;if(f!==null)f.return=d,K=f;else for(;K!==null;){d=K;var p=d.sibling,m=d.return;if(Tc(d),d===u){K=null;break}if(p!==null){p.return=m,K=p;break}K=m}}}var h=o.alternate;if(h!==null){var g=h.child;if(g!==null){h.child=null;do{var _=g.sibling;g.sibling=null,g=_}while(g!==null)}}K=o}}if(o.subtreeFlags&2064&&s!==null)s.return=o,K=s;else b:for(;K!==null;){if(o=K,o.flags&2048)switch(o.tag){case 0:case 11:case 15:Sc(9,o,o.return)}var v=o.sibling;if(v!==null){v.return=o.return,K=v;break b}K=o.return}}var y=e.current;for(K=y;K!==null;){s=K;var b=s.child;if(s.subtreeFlags&2064&&b!==null)b.return=s,K=b;else b:for(s=y;K!==null;){if(c=K,c.flags&2048)try{switch(c.tag){case 0:case 11:case 15:Cc(9,c)}}catch(e){$(c,c.return,e)}if(c===s){K=null;break b}var x=c.sibling;if(x!==null){x.return=c.return,K=x;break b}K=c.return}}if(J=a,ha(),jt&&typeof jt.onPostCommitFiberRoot==`function`)try{jt.onPostCommitFiberRoot(At,e)}catch{}r=!0}return r}finally{N=n,Gc.transition=t}}return!1}function Rl(e,t,n){t=As(n,t),t=Ps(e,t,1),e=fo(e,t,1),t=pl(),e!==null&&(Kt(e,1,t),gl(e,t))}function $(e,t,n){if(e.tag===3)Rl(e,e,n);else for(;t!==null;){if(t.tag===3){Rl(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(al===null||!al.has(r))){e=As(n,e),e=Fs(t,e,1),t=fo(t,e,1),e=pl(),t!==null&&(Kt(t,1,e),gl(t,e));break}}t=t.return}}function zl(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=pl(),e.pingedLanes|=e.suspendedLanes&n,Y===e&&(Z&n)===n&&(Q===4||Q===3&&(Z&130023424)===Z&&500>M()-el?El(e,0):Zc|=n),gl(e,t)}function Bl(e,t){t===0&&(e.mode&1?(t=Rt,Rt<<=1,!(Rt&130023424)&&(Rt=4194304)):t=1);var n=pl();e=oo(e,t),e!==null&&(Kt(e,t,n),gl(e,n))}function Vl(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Bl(e,n)}function Hl(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(i(314))}r!==null&&r.delete(t),Bl(e,n)}var Ul=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||ta.current)Bs=!0;else{if((e.lanes&n)===0&&!(t.flags&128))return Bs=!1,lc(e,t,n);Bs=!!(e.flags&131072)}else Bs=!1,R&&t.flags&1048576&&Ea(t,ya,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;sc(e,t),e=t.pendingProps;var a=ra(t,ea.current);to(t,n),a=Lo(null,t,r,e,a,n);var o=Ro();return t.flags|=1,typeof a==`object`&&a&&typeof a.render==`function`&&a.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,ia(r)?(o=!0,ca(t)):o=!1,t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,co(t),a.updater=Ts,t.stateNode=a,a._reactInternals=t,ks(t,r,e,n),t=Ys(null,t,r,!0,o,n)):(t.tag=0,R&&o&&Da(t),Vs(null,t,a,n),t=t.child),t;case 16:r=t.elementType;a:{switch(sc(e,t),e=t.pendingProps,a=r._init,r=a(r._payload),t.type=r,a=t.tag=Jl(r),e=Cs(r,e),a){case 0:t=qs(null,t,r,e,n);break a;case 1:t=Js(null,t,r,e,n);break a;case 11:t=Hs(null,t,r,e,n);break a;case 14:t=Us(null,t,r,Cs(r.type,e),n);break a}throw Error(i(306,r,``))}return t;case 0:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Cs(r,a),qs(e,t,r,a,n);case 1:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Cs(r,a),Js(e,t,r,a,n);case 3:a:{if(Xs(t),e===null)throw Error(i(387));r=t.pendingProps,o=t.memoizedState,a=o.element,lo(e,t),ho(t,r,null,n);var s=t.memoizedState;if(r=s.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){a=As(Error(i(423)),t),t=Zs(e,t,r,n,a);break a}else if(r!==a){a=As(Error(i(424)),t),t=Zs(e,t,r,n,a);break a}else for(Aa=Li(t.stateNode.containerInfo.firstChild),ka=t,R=!0,ja=null,n=qa(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(za(),r===a){t=cc(e,t,n);break a}Vs(e,t,r,n)}t=t.child}return t;case 5:return wo(t),e===null&&Fa(t),r=t.type,a=t.pendingProps,o=e===null?null:e.memoizedProps,s=a.children,Ai(r,a)?s=null:o!==null&&Ai(r,o)&&(t.flags|=32),Ks(e,t),Vs(e,t,s,n),t.child;case 6:return e===null&&Fa(t),null;case 13:return ec(e,t,n);case 4:return So(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Ka(t,null,r,n):Vs(e,t,r,n),t.child;case 11:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Cs(r,a),Hs(e,t,r,a,n);case 7:return Vs(e,t,t.pendingProps,n),t.child;case 8:return Vs(e,t,t.pendingProps.children,n),t.child;case 12:return Vs(e,t,t.pendingProps.children,n),t.child;case 10:a:{if(r=t.type._context,a=t.pendingProps,o=t.memoizedProps,s=a.value,L(Ja,r._currentValue),r._currentValue=s,o!==null)if(Ir(o.value,s)){if(o.children===a.children&&!ta.current){t=cc(e,t,n);break a}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var c=o.dependencies;if(c!==null){s=o.child;for(var l=c.firstContext;l!==null;){if(l.context===r){if(o.tag===1){l=uo(-1,n&-n),l.tag=2;var u=o.updateQueue;if(u!==null){u=u.shared;var d=u.pending;d===null?l.next=l:(l.next=d.next,d.next=l),u.pending=l}}o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),eo(o.return,n,t),c.lanes|=n;break}l=l.next}}else if(o.tag===10)s=o.type===t.type?null:o.child;else if(o.tag===18){if(s=o.return,s===null)throw Error(i(341));s.lanes|=n,c=s.alternate,c!==null&&(c.lanes|=n),eo(s,n,t),s=o.sibling}else s=o.child;if(s!==null)s.return=o;else for(s=o;s!==null;){if(s===t){s=null;break}if(o=s.sibling,o!==null){o.return=s.return,s=o;break}s=s.return}o=s}Vs(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,r=t.pendingProps.children,to(t,n),a=no(a),r=r(a),t.flags|=1,Vs(e,t,r,n),t.child;case 14:return r=t.type,a=Cs(r,t.pendingProps),a=Cs(r.type,a),Us(e,t,r,a,n);case 15:return Ws(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Cs(r,a),sc(e,t),t.tag=1,ia(r)?(e=!0,ca(t)):e=!1,to(t,n),Ds(t,r,a),ks(t,r,a,n),Ys(null,t,r,!0,e,n);case 19:return oc(e,t,n);case 22:return Gs(e,t,n)}throw Error(i(156,t.tag))};function Wl(e,t){return bt(e,t)}function Gl(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Kl(e,t,n,r){return new Gl(e,t,n,r)}function ql(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Jl(e){if(typeof e==`function`)return+!!ql(e);if(e!=null){if(e=e.$$typeof,e===ie)return 11;if(e===D)return 14}return 2}function Yl(e,t){var n=e.alternate;return n===null?(n=Kl(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Xl(e,t,n,r,a,o){var s=2;if(r=e,typeof e==`function`)ql(e)&&(s=1);else if(typeof e==`string`)s=5;else a:switch(e){case T:return Zl(n.children,a,o,t);case E:s=8,a|=8;break;case te:return e=Kl(12,n,t,a|2),e.elementType=te,e.lanes=o,e;case ae:return e=Kl(13,n,t,a),e.elementType=ae,e.lanes=o,e;case oe:return e=Kl(19,n,t,a),e.elementType=oe,e.lanes=o,e;case ce:return Ql(n,a,o,t);default:if(typeof e==`object`&&e)switch(e.$$typeof){case ne:s=10;break a;case re:s=9;break a;case ie:s=11;break a;case D:s=14;break a;case se:s=16,r=null;break a}throw Error(i(130,e==null?e:typeof e,``))}return t=Kl(s,n,t,a),t.elementType=e,t.type=r,t.lanes=o,t}function Zl(e,t,n,r){return e=Kl(7,e,r,t),e.lanes=n,e}function Ql(e,t,n,r){return e=Kl(22,e,r,t),e.elementType=ce,e.lanes=n,e.stateNode={isHidden:!1},e}function $l(e,t,n){return e=Kl(6,e,null,t),e.lanes=n,e}function eu(e,t,n){return t=Kl(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function tu(e,t,n,r,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Gt(0),this.expirationTimes=Gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Gt(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function nu(e,t,n,r,i,a,o,s,c){return e=new tu(e,t,n,s,c),t===1?(t=1,!0===a&&(t|=8)):t=0,a=Kl(3,null,null,t),e.current=a,a.stateNode=e,a.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},co(a),e}function ru(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:ee,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}function iu(e){if(!e)return $i;e=e._reactInternals;a:{if(mt(e)!==e||e.tag!==1)throw Error(i(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break a;case 1:if(ia(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break a}}t=t.return}while(t!==null);throw Error(i(171))}if(e.tag===1){var n=e.type;if(ia(n))return sa(e,n,t)}return t}function au(e,t,n,r,i,a,o,s,c){return e=nu(n,r,!0,e,i,a,o,s,c),e.context=iu(null),n=e.current,r=pl(),i=ml(n),a=uo(r,i),a.callback=t??null,fo(n,a,i),e.current.lanes=i,Kt(e,i,r),gl(e,r),e}function ou(e,t,n,r){var i=t.current,a=pl(),o=ml(i);return n=iu(n),t.context===null?t.context=n:t.pendingContext=n,t=uo(a,o),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=fo(i,t,o),e!==null&&(hl(e,i,o,a),po(e,i,o)),o}function su(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function cu(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function lu(e,t){cu(e,t),(e=e.alternate)&&cu(e,t)}function uu(){return null}var du=typeof reportError==`function`?reportError:function(e){console.error(e)};function fu(e){this._internalRoot=e}pu.prototype.render=fu.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(i(409));ou(e,t,null,null)},pu.prototype.unmount=fu.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;wl(function(){ou(null,e,null,null)}),t[Hi]=null}};function pu(e){this._internalRoot=e}pu.prototype.unstable_scheduleHydration=function(e){if(e){var t=Qt();e={blockedOn:null,target:e,priority:t};for(var n=0;n<cn.length&&t!==0&&t<cn[n].priority;n++);cn.splice(n,0,e),n===0&&pn(e)}};function mu(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function hu(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==` react-mount-point-unstable `))}function gu(){}function _u(e,t,n,r,i){if(i){if(typeof r==`function`){var a=r;r=function(){var e=su(o);a.call(e)}}var o=au(t,r,e,0,null,!1,!1,``,gu);return e._reactRootContainer=o,e[Hi]=o.current,gi(e.nodeType===8?e.parentNode:e),wl(),o}for(;i=e.lastChild;)e.removeChild(i);if(typeof r==`function`){var s=r;r=function(){var e=su(c);s.call(e)}}var c=nu(e,0,!1,null,null,!1,!1,``,gu);return e._reactRootContainer=c,e[Hi]=c.current,gi(e.nodeType===8?e.parentNode:e),wl(function(){ou(t,c,n,r)}),c}function vu(e,t,n,r,i){var a=n._reactRootContainer;if(a){var o=a;if(typeof i==`function`){var s=i;i=function(){var e=su(o);s.call(e)}}ou(t,o,e,i)}else o=_u(n,t,e,i,r);return su(o)}P=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=zt(t.pendingLanes);n!==0&&(Jt(t,n|1),gl(t,M()),!(J&6)&&(tl=M()+500,ha()))}break;case 13:wl(function(){var t=oo(e,1);t!==null&&hl(t,e,1,pl())}),lu(e,1)}},Xt=function(e){if(e.tag===13){var t=oo(e,134217728);t!==null&&hl(t,e,134217728,pl()),lu(e,134217728)}},Zt=function(e){if(e.tag===13){var t=ml(e),n=oo(e,t);n!==null&&hl(n,e,t,pl()),lu(e,t)}},Qt=function(){return N},$t=function(e,t){var n=N;try{return N=e,t()}finally{N=n}},Ye=function(e,t,n){switch(t){case`input`:if(De(e,n),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name=`+JSON.stringify(``+t)+`][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=Yi(r);if(!a)throw Error(i(90));Se(r),De(r,a)}}}break;case`textarea`:Ne(e,n);break;case`select`:t=n.value,t!=null&&k(e,!!n.multiple,t,!1)}},tt=Cl,nt=wl;var yu={usingClientEntryPoint:!1,Events:[qi,Ji,Yi,$e,et,Cl]},bu={findFiberByHostInstance:Ki,bundleType:0,version:`18.3.1`,rendererPackageName:`react-dom`},xu={bundleType:bu.bundleType,version:bu.version,rendererPackageName:bu.rendererPackageName,rendererConfig:bu.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:C.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=vt(e),e===null?null:e.stateNode},findFiberByHostInstance:bu.findFiberByHostInstance||uu,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:`18.3.1-next-f1338f8080-20240426`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var Su=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Su.isDisabled&&Su.supportsFiber)try{At=Su.inject(xu),jt=Su}catch{}}e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=yu,e.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!mu(t))throw Error(i(200));return ru(e,t,null,n)},e.createRoot=function(e,t){if(!mu(e))throw Error(i(299));var n=!1,r=``,a=du;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(a=t.onRecoverableError)),t=nu(e,1,!1,null,null,n,!1,r,a),e[Hi]=t.current,gi(e.nodeType===8?e.parentNode:e),new fu(t)},e.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(i(188)):(e=Object.keys(e).join(`,`),Error(i(268,e)));return e=vt(t),e=e===null?null:e.stateNode,e},e.flushSync=function(e){return wl(e)},e.hydrate=function(e,t,n){if(!hu(t))throw Error(i(200));return vu(null,e,t,!0,n)},e.hydrateRoot=function(e,t,n){if(!mu(e))throw Error(i(405));var r=n!=null&&n.hydratedSources||null,a=!1,o=``,s=du;if(n!=null&&(!0===n.unstable_strictMode&&(a=!0),n.identifierPrefix!==void 0&&(o=n.identifierPrefix),n.onRecoverableError!==void 0&&(s=n.onRecoverableError)),t=au(t,null,e,1,n??null,a,!1,o,s),e[Hi]=t.current,gi(e),r)for(e=0;e<r.length;e++)n=r[e],a=n._getVersion,a=a(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,a]:t.mutableSourceEagerHydrationData.push(n,a);return new pu(t)},e.render=function(e,t,n){if(!hu(t))throw Error(i(200));return vu(null,e,t,!1,n)},e.unmountComponentAtNode=function(e){if(!hu(e))throw Error(i(40));return e._reactRootContainer?(wl(function(){vu(null,null,e,!1,function(){e._reactRootContainer=null,e[Hi]=null})}),!0):!1},e.unstable_batchedUpdates=Cl,e.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!hu(n))throw Error(i(200));if(e==null||e._reactInternals===void 0)throw Error(i(38));return vu(e,t,n,!1,r)},e.version=`18.3.1-next-f1338f8080-20240426`})),s=t(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=o()})),c=t((e=>{var t=s();e.createRoot=t.createRoot,e.hydrateRoot=t.hydrateRoot})),l=e(r()),u=e(c(),1),d=e=>typeof e==`string`,f=()=>{let e,t,n=new Promise((n,r)=>{e=n,t=r});return n.resolve=e,n.reject=t,n},p=e=>e==null?``:String(e),m=(e,t,n)=>{e.forEach(e=>{t[e]&&(n[e]=t[e])})},h=/###/g,g=e=>e&&e.includes(`###`)?e.replace(h,`.`):e,_=e=>!e||d(e),v=(e,t,n)=>{let r=d(t)?t.split(`.`):t,i=0;for(;i<r.length-1;){if(_(e))return{};let t=g(r[i]);!e[t]&&n&&(e[t]=new n),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{},++i}return _(e)?{}:{obj:e,k:g(r[i])}},y=(e,t,n)=>{let{obj:r,k:i}=v(e,t,Object);if(r!==void 0||t.length===1){r[i]=n;return}let a=t[t.length-1],o=t.slice(0,t.length-1),s=v(e,o,Object);for(;s.obj===void 0&&o.length;)a=`${o[o.length-1]}.${a}`,o=o.slice(0,o.length-1),s=v(e,o,Object),s?.obj&&s.obj[`${s.k}.${a}`]!==void 0&&(s.obj=void 0);s.obj[`${s.k}.${a}`]=n},b=(e,t,n,r)=>{let{obj:i,k:a}=v(e,t,Object);i[a]=i[a]||[],i[a].push(n)},x=(e,t)=>{let{obj:n,k:r}=v(e,t);if(n&&Object.prototype.hasOwnProperty.call(n,r))return n[r]},S=(e,t,n)=>{let r=x(e,n);return r===void 0?x(t,n):r},C=(e,t,n)=>{for(let r in t)r!==`__proto__`&&r!==`constructor`&&(r in e?d(e[r])||e[r]instanceof String||d(t[r])||t[r]instanceof String?n&&(e[r]=t[r]):C(e[r],t[r],n):e[r]=t[r]);return e},w=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,`\\$&`),ee={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`,"/":`&#x2F;`},T=e=>d(e)?e.replace(/[&<>"'\/]/g,e=>ee[e]):e,E=class{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){let t=this.regExpMap.get(e);if(t!==void 0)return t;let n=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,n),this.regExpQueue.push(e),n}},te=[` `,`,`,`?`,`!`,`;`],ne=new E(20),re=(e,t,n)=>{t||=``,n||=``;let r=te.filter(e=>!t.includes(e)&&!n.includes(e));if(r.length===0)return!0;let i=ne.getRegExp(`(${r.map(e=>e===`?`?`\\?`:e).join(`|`)})`),a=!i.test(e);if(!a){let t=e.indexOf(n);t>0&&!i.test(e.substring(0,t))&&(a=!0)}return a},ie=(e,t,n=`.`)=>{if(!e)return;if(e[t])return Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0;let r=t.split(n),i=e;for(let e=0;e<r.length;){if(!i||typeof i!=`object`)return;let t,a=``;for(let o=e;o<r.length;++o)if(o!==e&&(a+=n),a+=r[o],t=i[a],t!==void 0){if([`string`,`number`,`boolean`].includes(typeof t)&&o<r.length-1)continue;e+=o-e+1;break}i=t}return i},ae=e=>e?.replace(/_/g,`-`),oe={type:`logger`,log(e){this.output(`log`,e)},warn(e){this.output(`warn`,e)},error(e){this.output(`error`,e)},output(e,t){console?.[e]?.apply?.(console,t)}},D=new class e{constructor(e,t={}){this.init(e,t)}init(e,t={}){this.prefix=t.prefix||`i18next:`,this.logger=e||oe,this.options=t,this.debug=t.debug}log(...e){return this.forward(e,`log`,``,!0)}warn(...e){return this.forward(e,`warn`,``,!0)}error(...e){return this.forward(e,`error`,``)}deprecate(...e){return this.forward(e,`warn`,`WARNING DEPRECATED: `,!0)}forward(e,t,n,r){return r&&!this.debug?null:(e=e.map(e=>d(e)?e.replace(/[\r\n\x00-\x1F\x7F]/g,` `):e),d(e[0])&&(e[0]=`${n}${this.prefix} ${e[0]}`),this.logger[t](e))}create(t){return new e(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return t||=this.options,t.prefix=t.prefix||this.prefix,new e(this.logger,t)}},se=class{constructor(){this.observers={}}on(e,t){return e.split(` `).forEach(e=>{this.observers[e]||(this.observers[e]=new Map);let n=this.observers[e].get(t)||0;this.observers[e].set(t,n+1)}),this}off(e,t){if(this.observers[e]){if(!t){delete this.observers[e];return}this.observers[e].delete(t)}}once(e,t){let n=(...r)=>{t(...r),this.off(e,n)};return this.on(e,n),this}emit(e,...t){this.observers[e]&&Array.from(this.observers[e].entries()).forEach(([e,n])=>{for(let r=0;r<n;r++)e(...t)}),this.observers[`*`]&&Array.from(this.observers[`*`].entries()).forEach(([n,r])=>{for(let i=0;i<r;i++)n(e,...t)})}},ce=class extends se{constructor(e,t={ns:[`translation`],defaultNS:`translation`}){super(),this.data=e||{},this.options=t,this.options.keySeparator===void 0&&(this.options.keySeparator=`.`),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.includes(e)||this.options.ns.push(e)}removeNamespaces(e){let t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}getResource(e,t,n,r={}){let i=r.keySeparator===void 0?this.options.keySeparator:r.keySeparator,a=r.ignoreJSONStructure===void 0?this.options.ignoreJSONStructure:r.ignoreJSONStructure,o;e.includes(`.`)?o=e.split(`.`):(o=[e,t],n&&(Array.isArray(n)?o.push(...n):d(n)&&i?o.push(...n.split(i)):o.push(n)));let s=x(this.data,o);return!s&&!t&&!n&&e.includes(`.`)&&(e=o[0],t=o[1],n=o.slice(2).join(`.`)),s||!a||!d(n)?s:ie(this.data?.[e]?.[t],n,i)}addResource(e,t,n,r,i={silent:!1}){let a=i.keySeparator===void 0?this.options.keySeparator:i.keySeparator,o=[e,t];n&&(o=o.concat(a?n.split(a):n)),e.includes(`.`)&&(o=e.split(`.`),r=t,t=o[1]),this.addNamespaces(t),y(this.data,o,r),i.silent||this.emit(`added`,e,t,n,r)}addResources(e,t,n,r={silent:!1}){for(let r in n)(d(n[r])||Array.isArray(n[r]))&&this.addResource(e,t,r,n[r],{silent:!0});r.silent||this.emit(`added`,e,t,n)}addResourceBundle(e,t,n,r,i,a={silent:!1,skipCopy:!1}){let o=[e,t];e.includes(`.`)&&(o=e.split(`.`),r=n,n=t,t=o[1]),this.addNamespaces(t);let s=x(this.data,o)||{};a.skipCopy||(n=JSON.parse(JSON.stringify(n))),r?C(s,n,i):s={...s,...n},y(this.data,o,s),a.silent||this.emit(`added`,e,t,n)}removeResourceBundle(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit(`removed`,e,t)}hasResourceBundle(e,t){return this.getResource(e,t)!==void 0}getResourceBundle(e,t){return t||=this.options.defaultNS,this.getResource(e,t)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){let t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find(e=>t[e]&&Object.keys(t[e]).length>0)}toJSON(){return this.data}},le={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,i){return e.forEach(e=>{t=this.processors[e]?.process(t,n,r,i)??t}),t}},ue=Symbol(`i18next/PATH_KEY`);function O(){let e=[],t=Object.create(null),n;return t.get=(r,i)=>(n?.revoke?.(),i===ue?e:(e.push(i),n=Proxy.revocable(r,t),n.proxy)),Proxy.revocable(Object.create(null),t).proxy}function de(e,t){let{[ue]:n}=e(O()),r=t?.keySeparator??`.`,i=t?.nsSeparator??`:`,a=t?.enableSelector===`strict`;if(n.length>1&&i){let e=t?.ns,o=a?Array.isArray(e)?e:e?[e]:null:Array.isArray(e)?e:null;if(o&&(a?o:o.length>1?o.slice(1):[]).includes(n[0]))return`${n[0]}${i}${n.slice(1).join(r)}`}return n.join(r)}var fe=e=>!d(e)&&typeof e!=`boolean`&&typeof e!=`number`,pe=class e extends se{constructor(e,t={}){super(),m([`resourceStore`,`languageUtils`,`pluralResolver`,`interpolator`,`backendConnector`,`i18nFormat`,`utils`],e,this),this.options=t,this.options.keySeparator===void 0&&(this.options.keySeparator=`.`),this.logger=D.create(`translator`),this.checkedLoadedFor={}}changeLanguage(e){e&&(this.language=e)}exists(e,t={interpolation:{}}){let n={...t};if(e==null)return!1;let r=this.resolve(e,n);if(r?.res===void 0)return!1;let i=fe(r.res);return!(n.returnObjects===!1&&i)}extractFromKey(e,t){let n=t.nsSeparator===void 0?this.options.nsSeparator:t.nsSeparator;n===void 0&&(n=`:`);let r=t.keySeparator===void 0?this.options.keySeparator:t.keySeparator,i=t.ns||this.options.defaultNS||[],a=n&&e.includes(n),o=!this.options.userDefinedKeySeparator&&!t.keySeparator&&!this.options.userDefinedNsSeparator&&!t.nsSeparator&&!re(e,n,r);if(a&&!o){let t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:d(i)?[i]:i};let a=e.split(n);(n!==r||n===r&&this.options.ns.includes(a[0]))&&(i=a.shift()),e=a.join(r)}return{key:e,namespaces:d(i)?[i]:i}}translate(t,n,r){let i=typeof n==`object`?{...n}:n;if(typeof i!=`object`&&this.options.overloadTranslationOptionHandler&&(i=this.options.overloadTranslationOptionHandler(arguments)),typeof i==`object`&&(i={...i}),i||={},t==null)return``;typeof t==`function`&&(t=de(t,{...this.options,...i})),Array.isArray(t)||(t=[String(t)]),t=t.map(e=>typeof e==`function`?de(e,{...this.options,...i}):String(e));let a=i.returnDetails===void 0?this.options.returnDetails:i.returnDetails,o=i.keySeparator===void 0?this.options.keySeparator:i.keySeparator,{key:s,namespaces:c}=this.extractFromKey(t[t.length-1],i),l=c[c.length-1],u=i.nsSeparator===void 0?this.options.nsSeparator:i.nsSeparator;u===void 0&&(u=`:`);let f=i.lng||this.language,p=i.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(f?.toLowerCase()===`cimode`)return p?a?{res:`${l}${u}${s}`,usedKey:s,exactUsedKey:s,usedLng:f,usedNS:l,usedParams:this.getUsedParamsDetails(i)}:`${l}${u}${s}`:a?{res:s,usedKey:s,exactUsedKey:s,usedLng:f,usedNS:l,usedParams:this.getUsedParamsDetails(i)}:s;let m=this.resolve(t,i),h=m?.res,g=m?.usedKey||s,_=m?.exactUsedKey||s,v=[`[object Number]`,`[object Function]`,`[object RegExp]`],y=i.joinArrays===void 0?this.options.joinArrays:i.joinArrays,b=!this.i18nFormat||this.i18nFormat.handleAsObject,x=i.count!==void 0&&!d(i.count),S=e.hasDefaultValue(i),C=x?this.pluralResolver.getSuffix(f,i.count,i):``,w=i.ordinal&&x?this.pluralResolver.getSuffix(f,i.count,{ordinal:!1}):``,ee=x&&!i.ordinal&&i.count===0,T=ee&&i[`defaultValue${this.options.pluralSeparator}zero`]||i[`defaultValue${C}`]||i[`defaultValue${w}`]||i.defaultValue,E=h;b&&!h&&S&&(E=T);let te=fe(E),ne=Object.prototype.toString.apply(E);if(b&&E&&te&&!v.includes(ne)&&!(d(y)&&Array.isArray(E))){if(!i.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn(`accessing an object - but returnObjects options is not enabled!`);let e=this.options.returnedObjectHandler?this.options.returnedObjectHandler(g,E,{...i,ns:c}):`key '${s} (${this.language})' returned an object instead of string.`;return a?(m.res=e,m.usedParams=this.getUsedParamsDetails(i),m):e}if(o){let e=Array.isArray(E),t=e?[]:{},n=e?_:g;for(let e in E)if(Object.prototype.hasOwnProperty.call(E,e)){let r=`${n}${o}${e}`;S&&!h?t[e]=this.translate(r,{...i,defaultValue:fe(T)?T[e]:void 0,joinArrays:!1,ns:c}):t[e]=this.translate(r,{...i,joinArrays:!1,ns:c}),t[e]===r&&(t[e]=E[e])}h=t}}else if(b&&d(y)&&Array.isArray(h))h=h.join(y),h&&=this.extendTranslation(h,t,i,r);else{let e=!1,n=!1;!this.isValidLookup(h)&&S&&(e=!0,h=T),this.isValidLookup(h)||(n=!0,h=s);let a=(i.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&n?void 0:h,c=S&&T!==h&&this.options.updateMissing;if(n||e||c){if(this.logger.log(c?`updateKey`:`missingKey`,f,l,x&&!c?`${s}${this.pluralResolver.getSuffix(f,i.count,i)}`:s,c?T:h),o){let e=this.resolve(s,{...i,keySeparator:!1});e&&e.res&&this.logger.warn(`Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.`)}let e=[],t=this.languageUtils.getFallbackCodes(this.options.fallbackLng,i.lng||this.language);if(this.options.saveMissingTo===`fallback`&&t&&t[0])for(let n=0;n<t.length;n++)e.push(t[n]);else this.options.saveMissingTo===`all`?e=this.languageUtils.toResolveHierarchy(i.lng||this.language):e.push(i.lng||this.language);let n=(e,t,n)=>{let r=S&&n!==h?n:a;this.options.missingKeyHandler?this.options.missingKeyHandler(e,l,t,r,c,i):this.backendConnector?.saveMissing&&this.backendConnector.saveMissing(e,l,t,r,c,i),this.emit(`missingKey`,e,l,t,h)};this.options.saveMissing&&(this.options.saveMissingPlurals&&x?e.forEach(e=>{let t=this.pluralResolver.getSuffixes(e,i);ee&&i[`defaultValue${this.options.pluralSeparator}zero`]&&!t.includes(`${this.options.pluralSeparator}zero`)&&t.push(`${this.options.pluralSeparator}zero`),t.forEach(t=>{n([e],s+t,i[`defaultValue${t}`]||T)})}):n(e,s,T))}h=this.extendTranslation(h,t,i,m,r),n&&h===s&&this.options.appendNamespaceToMissingKey&&(h=`${l}${u}${s}`),(n||e)&&this.options.parseMissingKeyHandler&&(h=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}${u}${s}`:s,e?h:void 0,i))}return a?(m.res=h,m.usedParams=this.getUsedParamsDetails(i),m):h}extendTranslation(e,t,n,r,i){if(this.i18nFormat?.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||r.usedLng,r.usedNS,r.usedKey,{resolved:r});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});let a=d(e)&&(n?.interpolation?.skipOnVariables===void 0?this.options.interpolation.skipOnVariables:n.interpolation.skipOnVariables),o;if(a){let t=e.match(this.interpolator.nestingRegexp);o=t&&t.length}let s=n.replace&&!d(n.replace)?n.replace:n;if(this.options.interpolation.defaultVariables&&(s={...this.options.interpolation.defaultVariables,...s}),e=this.interpolator.interpolate(e,s,n.lng||this.language||r.usedLng,n),a){let t=e.match(this.interpolator.nestingRegexp),r=t&&t.length;o<r&&(n.nest=!1)}!n.lng&&r&&r.res&&(n.lng=this.language||r.usedLng),n.nest!==!1&&(e=this.interpolator.nest(e,(...e)=>i?.[0]===e[0]&&!n.context?(this.logger.warn(`It seems you are nesting recursively key: ${e[0]} in key: ${t[0]}`),null):this.translate(...e,t),n)),n.interpolation&&this.interpolator.reset()}let a=n.postProcess||this.options.postProcess,o=d(a)?[a]:a;return e!=null&&o?.length&&n.applyPostProcessor!==!1&&(e=le.handle(o,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...r,usedParams:this.getUsedParamsDetails(n)},...n}:n,this)),e}resolve(e,t={}){let n,r,i,a,o;return d(e)&&(e=[e]),Array.isArray(e)&&(e=e.map(e=>typeof e==`function`?de(e,{...this.options,...t}):e)),e.forEach(e=>{if(this.isValidLookup(n))return;let s=this.extractFromKey(e,t),c=s.key;r=c;let l=s.namespaces;this.options.fallbackNS&&(l=l.concat(this.options.fallbackNS));let u=t.count!==void 0&&!d(t.count),f=u&&!t.ordinal&&t.count===0,p=t.context!==void 0&&(d(t.context)||typeof t.context==`number`)&&t.context!==``,m=t.lngs?t.lngs:this.languageUtils.toResolveHierarchy(t.lng||this.language,t.fallbackLng);l.forEach(e=>{this.isValidLookup(n)||(o=e,!this.checkedLoadedFor[`${m[0]}-${e}`]&&this.utils?.hasLoadedNamespace&&!this.utils?.hasLoadedNamespace(o)&&(this.checkedLoadedFor[`${m[0]}-${e}`]=!0,this.logger.warn(`key "${r}" for languages "${m.join(`, `)}" won't get resolved as namespace "${o}" was not yet loaded`,`This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!`)),m.forEach(r=>{if(this.isValidLookup(n))return;a=r;let o=[c];if(this.i18nFormat?.addLookupKeys)this.i18nFormat.addLookupKeys(o,c,r,e,t);else{let e;u&&(e=this.pluralResolver.getSuffix(r,t.count,t));let n=`${this.options.pluralSeparator}zero`,i=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(u&&(t.ordinal&&e.startsWith(i)&&o.push(c+e.replace(i,this.options.pluralSeparator)),o.push(c+e),f&&o.push(c+n)),p){let r=`${c}${this.options.contextSeparator||`_`}${t.context}`;o.push(r),u&&(t.ordinal&&e.startsWith(i)&&o.push(r+e.replace(i,this.options.pluralSeparator)),o.push(r+e),f&&o.push(r+n))}}let s;for(;s=o.pop();)this.isValidLookup(n)||(i=s,n=this.getResource(r,e,s,t))}))})}),{res:n,usedKey:r,exactUsedKey:i,usedLng:a,usedNS:o}}isValidLookup(e){return e!==void 0&&!(!this.options.returnNull&&e===null)&&!(!this.options.returnEmptyString&&e===``)}getResource(e,t,n,r={}){return this.i18nFormat?.getResource?this.i18nFormat.getResource(e,t,n,r):this.resourceStore.getResource(e,t,n,r)}getUsedParamsDetails(e={}){let t=[`defaultValue`,`ordinal`,`context`,`replace`,`lng`,`lngs`,`fallbackLng`,`ns`,`keySeparator`,`nsSeparator`,`returnObjects`,`returnDetails`,`joinArrays`,`postProcess`,`interpolation`],n=e.replace&&!d(e.replace),r=n?e.replace:e;if(n&&e.count!==void 0&&(r.count=e.count),this.options.interpolation.defaultVariables&&(r={...this.options.interpolation.defaultVariables,...r}),!n){r={...r};for(let e of t)delete r[e]}return r}static hasDefaultValue(e){for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&t.startsWith(`defaultValue`)&&e[t]!==void 0)return!0;return!1}},me=class{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=D.create(`languageUtils`)}getScriptPartFromCode(e){if(e=ae(e),!e||!e.includes(`-`))return null;let t=e.split(`-`);return t.length===2||(t.pop(),t[t.length-1].toLowerCase()===`x`)?null:this.formatLanguageCode(t.join(`-`))}getLanguagePartFromCode(e){if(e=ae(e),!e||!e.includes(`-`))return e;let t=e.split(`-`);return this.formatLanguageCode(t[0])}formatLanguageCode(e){if(d(e)&&e.includes(`-`)){let t;try{t=Intl.getCanonicalLocales(e)[0]}catch{}return t&&this.options.lowerCaseLng&&(t=t.toLowerCase()),t||(this.options.lowerCaseLng?e.toLowerCase():e)}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return(this.options.load===`languageOnly`||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.includes(e)}getBestMatchFromCodes(e){if(!e)return null;let t;return e.forEach(e=>{if(t)return;let n=this.formatLanguageCode(e);(!this.options.supportedLngs||this.isSupportedCode(n))&&(t=n)}),!t&&this.options.supportedLngs&&e.forEach(e=>{if(t)return;let n=this.getScriptPartFromCode(e);if(this.isSupportedCode(n))return t=n;let r=this.getLanguagePartFromCode(e);if(this.isSupportedCode(r))return t=r;t=this.options.supportedLngs.find(e=>e===r?!0:!e.includes(`-`)&&!r.includes(`-`)?!1:!!(e.includes(`-`)&&!r.includes(`-`)&&e.slice(0,e.indexOf(`-`))===r||e.startsWith(r)&&r.length>1))}),t||=this.getFallbackCodes(this.options.fallbackLng)[0],t}getFallbackCodes(e,t){if(!e)return[];if(typeof e==`function`&&(e=e(t)),d(e)&&(e=[e]),Array.isArray(e))return e;if(!t)return e.default||[];let n=e[t];return n||=e[this.getScriptPartFromCode(t)],n||=e[this.formatLanguageCode(t)],n||=e[this.getLanguagePartFromCode(t)],n||=e.default,n||[]}toResolveHierarchy(e,t){let n=this.getFallbackCodes((t===!1?[]:t)||this.options.fallbackLng||[],e),r=[],i=e=>{e&&(this.isSupportedCode(e)?r.push(e):this.logger.warn(`rejecting language code not found in supportedLngs: ${e}`))};return d(e)&&(e.includes(`-`)||e.includes(`_`))?(this.options.load!==`languageOnly`&&i(this.formatLanguageCode(e)),this.options.load!==`languageOnly`&&this.options.load!==`currentOnly`&&i(this.getScriptPartFromCode(e)),this.options.load!==`currentOnly`&&i(this.getLanguagePartFromCode(e))):d(e)&&i(this.formatLanguageCode(e)),n.forEach(e=>{r.includes(e)||i(this.formatLanguageCode(e))}),r}},he={zero:0,one:1,two:2,few:3,many:4,other:5},ge={select:e=>e===1?`one`:`other`,resolvedOptions:()=>({pluralCategories:[`one`,`other`]})},_e=class{constructor(e,t={}){this.languageUtils=e,this.options=t,this.logger=D.create(`pluralResolver`),this.pluralRulesCache={}}clearCache(){this.pluralRulesCache={}}getRule(e,t={}){let n=ae(e===`dev`?`en`:e),r=t.ordinal?`ordinal`:`cardinal`,i=JSON.stringify({cleanedCode:n,type:r});if(i in this.pluralRulesCache)return this.pluralRulesCache[i];let a;try{a=new Intl.PluralRules(n,{type:r})}catch{if(typeof Intl>`u`)return this.logger.error(`No Intl support, please use an Intl polyfill!`),ge;if(!e.match(/-|_/))return ge;let n=this.languageUtils.getLanguagePartFromCode(e);a=this.getRule(n,t)}return this.pluralRulesCache[i]=a,a}needsPlural(e,t={}){let n=this.getRule(e,t);return n||=this.getRule(`dev`,t),n?.resolvedOptions().pluralCategories.length>1}getPluralFormsOfKey(e,t,n={}){return this.getSuffixes(e,n).map(e=>`${t}${e}`)}getSuffixes(e,t={}){let n=this.getRule(e,t);return n||=this.getRule(`dev`,t),n?n.resolvedOptions().pluralCategories.sort((e,t)=>he[e]-he[t]).map(e=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:``}${e}`):[]}getSuffix(e,t,n={}){let r=this.getRule(e,n);return r?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:``}${r.select(t)}`:(this.logger.warn(`no plural rule found for: ${e}`),this.getSuffix(`dev`,t,n))}},ve=(e,t,n,r=`.`,i=!0)=>{let a=S(e,t,n);return!a&&i&&d(n)&&(a=ie(e,n,r),a===void 0&&(a=ie(t,n,r))),a},ye=e=>e.replace(/\$/g,`$$$$`),be=class{constructor(e={}){this.logger=D.create(`interpolator`),this.options=e,this.format=e?.interpolation?.format||(e=>e),this.init(e)}init(e={}){e.interpolation||={escapeValue:!0};let{escape:t,escapeValue:n,useRawValueToEscape:r,prefix:i,prefixEscaped:a,suffix:o,suffixEscaped:s,formatSeparator:c,unescapeSuffix:l,unescapePrefix:u,nestingPrefix:d,nestingPrefixEscaped:f,nestingSuffix:p,nestingSuffixEscaped:m,nestingOptionsSeparator:h,maxReplaces:g,alwaysFormat:_}=e.interpolation;this.escape=t===void 0?T:t,this.escapeValue=n===void 0?!0:n,this.useRawValueToEscape=r===void 0?!1:r,this.prefix=i?w(i):a||`{{`,this.suffix=o?w(o):s||`}}`,this.formatSeparator=c||`,`,this.unescapePrefix=l?``:u?w(u):`-`,this.unescapeSuffix=this.unescapePrefix?``:l?w(l):``,this.nestingPrefix=d?w(d):f||w(`$t(`),this.nestingSuffix=p?w(p):m||w(`)`),this.nestingOptionsSeparator=h||`,`,this.maxReplaces=g||1e3,this.alwaysFormat=_===void 0?!1:_,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){let e=(e,t)=>e?.source===t?(e.lastIndex=0,e):new RegExp(t,`g`);this.regexp=e(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=e(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=e(this.nestingRegexp,`${this.nestingPrefix}((?:[^()"']+|"[^"]*"|'[^']*'|\\((?:[^()]|"[^"]*"|'[^']*')*\\))*?)${this.nestingSuffix}`)}interpolate(e,t,n,r){let i,a,o,s=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},c=e=>{if(!e.includes(this.formatSeparator)){let i=ve(t,s,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(i,void 0,n,{...r,...t,interpolationkey:e}):i}let i=e.split(this.formatSeparator),a=i.shift().trim(),o=i.join(this.formatSeparator).trim();return this.format(ve(t,s,a,this.options.keySeparator,this.options.ignoreJSONStructure),o,n,{...r,...t,interpolationkey:a})};this.resetRegExp(),!this.escapeValue&&typeof e==`string`&&/\$t\([^)]*\{[^}]*\{\{/.test(e)&&this.logger.warn(`nesting options string contains interpolated variables with escapeValue: false — if any of those values are attacker-controlled they can inject additional nesting options (e.g. redirect lng/ns). Sanitise untrusted input before passing it to t(), or keep escapeValue: true.`);let l=r?.missingInterpolationHandler||this.options.missingInterpolationHandler,u=r?.interpolation?.skipOnVariables===void 0?this.options.interpolation.skipOnVariables:r.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>ye(e)},{regex:this.regexp,safeValue:e=>this.escapeValue?ye(this.escape(e)):ye(e)}].forEach(t=>{for(o=0;i=t.regex.exec(e);){let n=i[1].trim();if(a=c(n),a===void 0)if(typeof l==`function`){let t=l(e,i,r);a=d(t)?t:``}else if(r&&Object.prototype.hasOwnProperty.call(r,n))a=``;else if(u){a=i[0];continue}else this.logger.warn(`missed to pass in variable ${n} for interpolating ${e}`),a=``;else !d(a)&&!this.useRawValueToEscape&&(a=p(a));let s=t.safeValue(a);if(e=e.replace(i[0],s),u?(t.regex.lastIndex+=a.length,t.regex.lastIndex-=i[0].length):t.regex.lastIndex=0,o++,o>=this.maxReplaces)break}}),e}nest(e,t,n={}){let r,i,a,o=(e,t)=>{let n=this.nestingOptionsSeparator;if(!e.includes(n))return e;let r=e.split(RegExp(`${w(n)}[ ]*{`)),i=`{${r[1]}`;e=r[0],i=this.interpolate(i,a);let o=i.match(/'/g),s=i.match(/"/g);((o?.length??0)%2==0&&!s||(s?.length??0)%2!=0)&&(i=i.replace(/'/g,`"`));try{a=JSON.parse(i),t&&(a={...t,...a})}catch(t){return this.logger.warn(`failed parsing options string in nesting for key ${e}`,t),`${e}${n}${i}`}return a.defaultValue&&a.defaultValue.includes(this.prefix)&&delete a.defaultValue,e};for(;r=this.nestingRegexp.exec(e);){let s=[];a={...n},a=a.replace&&!d(a.replace)?a.replace:a,a.applyPostProcessor=!1,delete a.defaultValue;let c=/{.*}/.test(r[1])?r[1].lastIndexOf(`}`)+1:r[1].indexOf(this.formatSeparator);if(c!==-1&&(s=r[1].slice(c).split(this.formatSeparator).map(e=>e.trim()).filter(Boolean),r[1]=r[1].slice(0,c)),i=t(o.call(this,r[1].trim(),a),a),i&&r[0]===e&&!d(i))return i;d(i)||(i=p(i)),i||=(this.logger.warn(`missed to resolve ${r[1]} for nesting ${e}`),``),s.length&&(i=s.reduce((e,t)=>this.format(e,t,n.lng,{...n,interpolationkey:r[1].trim()}),i.trim())),e=e.replace(r[0],i),this.regexp.lastIndex=0}return e}},xe=e=>{let t=e.toLowerCase().trim(),n={};if(e.includes(`(`)){let r=e.split(`(`);t=r[0].toLowerCase().trim();let i=r[1].slice(0,-1);t===`currency`&&!i.includes(`:`)?n.currency||=i.trim():t===`relativetime`&&!i.includes(`:`)?n.range||=i.trim():i.split(`;`).forEach(e=>{if(e){let[t,...r]=e.split(`:`),i=r.join(`:`).trim().replace(/^'+|'+$/g,``),a=t.trim();n[a]||(n[a]=i),i===`false`&&(n[a]=!1),i===`true`&&(n[a]=!0),isNaN(i)||(n[a]=parseInt(i,10))}})}return{formatName:t,formatOptions:n}},Se=e=>{let t={};return(n,r,i)=>{let a=i;i&&i.interpolationkey&&i.formatParams&&i.formatParams[i.interpolationkey]&&i[i.interpolationkey]&&(a={...a,[i.interpolationkey]:void 0});let o=r+JSON.stringify(a),s=t[o];return s||(s=e(ae(r),i),t[o]=s),s(n)}},Ce=e=>(t,n,r)=>e(ae(n),r)(t),we=class{constructor(e={}){this.logger=D.create(`formatter`),this.options=e,this.init(e)}init(e,t={interpolation:{}}){this.formatSeparator=t.interpolation.formatSeparator||`,`;let n=t.cacheInBuiltFormats?Se:Ce;this.formats={number:n((e,t)=>{let n=new Intl.NumberFormat(e,{...t});return e=>n.format(e)}),currency:n((e,t)=>{let n=new Intl.NumberFormat(e,{...t,style:`currency`});return e=>n.format(e)}),datetime:n((e,t)=>{let n=new Intl.DateTimeFormat(e,{...t});return e=>n.format(e)}),relativetime:n((e,t)=>{let n=new Intl.RelativeTimeFormat(e,{...t});return e=>n.format(e,t.range||`day`)}),list:n((e,t)=>{let n=new Intl.ListFormat(e,{...t});return e=>n.format(e)})}}add(e,t){this.formats[e.toLowerCase().trim()]=t}addCached(e,t){this.formats[e.toLowerCase().trim()]=Se(t)}format(e,t,n,r={}){if(!t||e==null)return e;let i=t.split(this.formatSeparator);if(i.length>1&&i[0].indexOf(`(`)>1&&!i[0].includes(`)`)&&i.find(e=>e.includes(`)`))){let e=i.findIndex(e=>e.includes(`)`));i[0]=[i[0],...i.splice(1,e)].join(this.formatSeparator)}return i.reduce((e,t)=>{let{formatName:i,formatOptions:a}=xe(t);if(this.formats[i]){let t=e;try{let o=r?.formatParams?.[r.interpolationkey]||{},s=o.locale||o.lng||r.locale||r.lng||n;t=this.formats[i](e,s,{...a,...r,...o})}catch(e){this.logger.warn(e)}return t}else this.logger.warn(`there was no format function for ${i}`);return e},e)}},Te=(e,t)=>{e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)},Ee=class extends se{constructor(e,t,n,r={}){super(),this.backend=e,this.store=t,this.services=n,this.languageUtils=n.languageUtils,this.options=r,this.logger=D.create(`backendConnector`),this.waitingReads=[],this.maxParallelReads=r.maxParallelReads||10,this.readingCalls=0,this.maxRetries=r.maxRetries>=0?r.maxRetries:5,this.retryTimeout=r.retryTimeout>=1?r.retryTimeout:350,this.state={},this.queue=[],this.backend?.init?.(n,r.backend,r)}queueLoad(e,t,n,r){let i={},a={},o={},s={};return e.forEach(e=>{let r=!0;t.forEach(t=>{let o=`${e}|${t}`;!n.reload&&this.store.hasResourceBundle(e,t)?this.state[o]=2:this.state[o]<0||(this.state[o]===1?a[o]===void 0&&(a[o]=!0):(this.state[o]=1,r=!1,a[o]===void 0&&(a[o]=!0),i[o]===void 0&&(i[o]=!0),s[t]===void 0&&(s[t]=!0)))}),r||(o[e]=!0)}),(Object.keys(i).length||Object.keys(a).length)&&this.queue.push({pending:a,pendingCount:Object.keys(a).length,loaded:{},errors:[],callback:r}),{toLoad:Object.keys(i),pending:Object.keys(a),toLoadLanguages:Object.keys(o),toLoadNamespaces:Object.keys(s)}}loaded(e,t,n){let r=e.split(`|`),i=r[0],a=r[1];t&&this.emit(`failedLoading`,i,a,t),!t&&n&&this.store.addResourceBundle(i,a,n,void 0,void 0,{skipCopy:!0}),this.state[e]=t?-1:2,t&&n&&(this.state[e]=0);let o={};this.queue.forEach(n=>{b(n.loaded,[i],a),Te(n,e),t&&n.errors.push(t),n.pendingCount===0&&!n.done&&(Object.keys(n.loaded).forEach(e=>{o[e]||(o[e]={});let t=n.loaded[e];t.length&&t.forEach(t=>{o[e][t]===void 0&&(o[e][t]=!0)})}),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())}),this.emit(`loaded`,o),this.queue=this.queue.filter(e=>!e.done)}read(e,t,n,r=0,i=this.retryTimeout,a){if(!e.length)return a(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:e,ns:t,fcName:n,tried:r,wait:i,callback:a});return}this.readingCalls++;let o=(o,s)=>{if(this.readingCalls--,this.waitingReads.length>0){let e=this.waitingReads.shift();this.read(e.lng,e.ns,e.fcName,e.tried,e.wait,e.callback)}if(o&&s&&r<this.maxRetries){setTimeout(()=>{this.read(e,t,n,r+1,i*2,a)},i);return}a(o,s)},s=this.backend[n].bind(this.backend);if(s.length===2){try{let n=s(e,t);n&&typeof n.then==`function`?n.then(e=>o(null,e)).catch(o):o(null,n)}catch(e){o(e)}return}return s(e,t,o)}prepareLoading(e,t,n={},r){if(!this.backend)return this.logger.warn(`No backend was added via i18next.use. Will not load resources.`),r&&r();d(e)&&(e=this.languageUtils.toResolveHierarchy(e)),d(t)&&(t=[t]);let i=this.queueLoad(e,t,n,r);if(!i.toLoad.length)return i.pending.length||r(),null;i.toLoad.forEach(e=>{this.loadOne(e)})}load(e,t,n){this.prepareLoading(e,t,{},n)}reload(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}loadOne(e,t=``){let n=e.split(`|`),r=n[0],i=n[1];this.read(r,i,`read`,void 0,void 0,(n,a)=>{n&&this.logger.warn(`${t}loading namespace ${i} for language ${r} failed`,n),!n&&a&&this.logger.log(`${t}loaded namespace ${i} for language ${r}`,a),this.loaded(e,n,a)})}saveMissing(e,t,n,r,i,a={},o=()=>{}){if(this.services?.utils?.hasLoadedNamespace&&!this.services?.utils?.hasLoadedNamespace(t)){this.logger.warn(`did not save key "${n}" as the namespace "${t}" was not yet loaded`,`This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!`);return}if(!(n==null||n===``)){if(this.backend?.create){let s={...a,isUpdate:i},c=this.backend.create.bind(this.backend);if(c.length<6)try{let i;i=c.length===5?c(e,t,n,r,s):c(e,t,n,r),i&&typeof i.then==`function`?i.then(e=>o(null,e)).catch(o):o(null,i)}catch(e){o(e)}else c(e,t,n,r,o,s)}!e||!e[0]||this.store.addResource(e[0],t,n,r)}}},De=()=>({debug:!1,initAsync:!0,ns:[`translation`],defaultNS:[`translation`],fallbackLng:[`dev`],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:`all`,preload:!1,keySeparator:`.`,nsSeparator:`:`,pluralSeparator:`_`,contextSeparator:`_`,enableSelector:!1,partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:`fallback`,saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if(typeof e[1]==`object`&&(t=e[1]),d(e[1])&&(t.defaultValue=e[1]),d(e[2])&&(t.tDescription=e[2]),typeof e[2]==`object`||typeof e[3]==`object`){let n=e[3]||e[2];Object.keys(n).forEach(e=>{t[e]=n[e]})}return t},interpolation:{escapeValue:!0,prefix:`{{`,suffix:`}}`,formatSeparator:`,`,unescapePrefix:`-`,nestingPrefix:`$t(`,nestingSuffix:`)`,nestingOptionsSeparator:`,`,maxReplaces:1e3,skipOnVariables:!0},cacheInBuiltFormats:!0}),Oe=e=>(d(e.ns)&&(e.ns=[e.ns]),d(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),d(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&!e.supportedLngs.includes(`cimode`)&&(e.supportedLngs=e.supportedLngs.concat([`cimode`])),e),ke=()=>{},Ae=e=>{Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(t=>{typeof e[t]==`function`&&(e[t]=e[t].bind(e))})},k=class e extends se{constructor(e={},t){if(super(),this.options=Oe(e),this.services={},this.logger=D,this.modules={external:[]},Ae(this),t&&!this.isInitialized&&!e.isClone){if(!this.options.initAsync)return this.init(e,t),this;setTimeout(()=>{this.init(e,t)},0)}}init(e={},t){this.isInitializing=!0,typeof e==`function`&&(t=e,e={}),e.defaultNS==null&&e.ns&&(d(e.ns)?e.defaultNS=e.ns:e.ns.includes(`translation`)||(e.defaultNS=e.ns[0]));let n=De();this.options={...n,...this.options,...Oe(e)},this.options.interpolation={...n.interpolation,...this.options.interpolation},e.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=e.keySeparator),e.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=e.nsSeparator),typeof this.options.overloadTranslationOptionHandler!=`function`&&(this.options.overloadTranslationOptionHandler=n.overloadTranslationOptionHandler);let r=e=>e?typeof e==`function`?new e:e:null;if(!this.options.isClone){this.modules.logger?D.init(r(this.modules.logger),this.options):D.init(null,this.options);let e;e=this.modules.formatter?this.modules.formatter:we;let t=new me(this.options);this.store=new ce(this.options.resources,this.options);let n=this.services;n.logger=D,n.resourceStore=this.store,n.languageUtils=t,n.pluralResolver=new _e(t,{prepend:this.options.pluralSeparator}),e&&(n.formatter=r(e),n.formatter.init&&n.formatter.init(n,this.options),this.options.interpolation.format=n.formatter.format.bind(n.formatter)),n.interpolator=new be(this.options),n.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},n.backendConnector=new Ee(r(this.modules.backend),n.resourceStore,n,this.options),n.backendConnector.on(`*`,(e,...t)=>{this.emit(e,...t)}),this.modules.languageDetector&&(n.languageDetector=r(this.modules.languageDetector),n.languageDetector.init&&n.languageDetector.init(n,this.options.detection,this.options)),this.modules.i18nFormat&&(n.i18nFormat=r(this.modules.i18nFormat),n.i18nFormat.init&&n.i18nFormat.init(this)),this.translator=new pe(this.services,this.options),this.translator.on(`*`,(e,...t)=>{this.emit(e,...t)}),this.modules.external.forEach(e=>{e.init&&e.init(this)})}if(this.format=this.options.interpolation.format,t||=ke,this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){let e=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);e.length>0&&e[0]!==`dev`&&(this.options.lng=e[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn(`init: no languageDetector is used and no lng is defined`),[`getResource`,`hasResourceBundle`,`getResourceBundle`,`getDataByLanguage`].forEach(e=>{this[e]=(...t)=>this.store[e](...t)}),[`addResource`,`addResources`,`addResourceBundle`,`removeResourceBundle`].forEach(e=>{this[e]=(...t)=>(this.store[e](...t),this)});let i=f(),a=()=>{let e=(e,n)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn(`init: i18next is already initialized. You should call init just once!`),this.isInitialized=!0,this.options.isClone||this.logger.log(`initialized`,this.options),this.emit(`initialized`,this.options),i.resolve(n),t(e,n)};if((this.languages||this.isLanguageChangingTo)&&!this.isInitialized)return e(null,this.t.bind(this));this.changeLanguage(this.options.lng,e)};return this.options.resources||!this.options.initAsync?a():setTimeout(a,0),i}loadResources(e,t=ke){let n=t,r=d(e)?e:this.language;if(typeof e==`function`&&(n=e),!this.options.resources||this.options.partialBundledLanguages){if(r?.toLowerCase()===`cimode`&&(!this.options.preload||this.options.preload.length===0))return n();let e=[],t=t=>{t&&t!==`cimode`&&this.services.languageUtils.toResolveHierarchy(t).forEach(t=>{t!==`cimode`&&(e.includes(t)||e.push(t))})};r?t(r):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(e=>t(e)),this.options.preload?.forEach?.(e=>t(e)),this.services.backendConnector.load(e,this.options.ns,e=>{!e&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),n(e)})}else n(null)}reloadResources(e,t,n){let r=f();return typeof e==`function`&&(n=e,e=void 0),typeof t==`function`&&(n=t,t=void 0),e||=this.languages,t||=this.options.ns,n||=ke,this.services.backendConnector.reload(e,t,e=>{r.resolve(),n(e)}),r}use(e){if(!e)throw Error(`You are passing an undefined module! Please check the object you are passing to i18next.use()`);if(!e.type)throw Error(`You are passing a wrong module! Please check the object you are passing to i18next.use()`);return e.type===`backend`&&(this.modules.backend=e),(e.type===`logger`||e.log&&e.warn&&e.error)&&(this.modules.logger=e),e.type===`languageDetector`&&(this.modules.languageDetector=e),e.type===`i18nFormat`&&(this.modules.i18nFormat=e),e.type===`postProcessor`&&le.addPostProcessor(e),e.type===`formatter`&&(this.modules.formatter=e),e.type===`3rdParty`&&this.modules.external.push(e),this}setResolvedLanguage(e){if(!(!e||!this.languages)&&![`cimode`,`dev`].includes(e)){for(let e=0;e<this.languages.length;e++){let t=this.languages[e];if(![`cimode`,`dev`].includes(t)&&this.store.hasLanguageSomeTranslations(t)){this.resolvedLanguage=t;break}}!this.resolvedLanguage&&!this.languages.includes(e)&&this.store.hasLanguageSomeTranslations(e)&&(this.resolvedLanguage=e,this.languages.unshift(e))}}changeLanguage(e,t){this.isLanguageChangingTo=e;let n=f();this.emit(`languageChanging`,e);let r=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},i=(i,a)=>{a?this.isLanguageChangingTo===e&&(r(a),this.translator.changeLanguage(a),this.isLanguageChangingTo=void 0,this.emit(`languageChanged`,a),this.logger.log(`languageChanged`,a)):this.isLanguageChangingTo=void 0,n.resolve((...e)=>this.t(...e)),t&&t(i,(...e)=>this.t(...e))},a=t=>{!e&&!t&&this.services.languageDetector&&(t=[]);let n=d(t)?t:t&&t[0],a=this.store.hasLanguageSomeTranslations(n)?n:this.services.languageUtils.getBestMatchFromCodes(d(t)?[t]:t);a&&(this.language||r(a),this.translator.language||this.translator.changeLanguage(a),this.services.languageDetector?.cacheUserLanguage?.(a)),this.loadResources(a,e=>{i(e,a)})};return!e&&this.services.languageDetector&&!this.services.languageDetector.async?a(this.services.languageDetector.detect()):!e&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(a):this.services.languageDetector.detect(a):a(e),n}getFixedT(e,t,n,r){let i=r?.scopeNs,a=(e,t,...r)=>{let o;o=typeof t==`object`?{...t}:this.options.overloadTranslationOptionHandler([e,t].concat(r)),o.lng=o.lng||a.lng,o.lngs=o.lngs||a.lngs;let s=o.ns!==void 0&&o.ns!==null;o.ns=o.ns||a.ns,o.keyPrefix!==``&&(o.keyPrefix=o.keyPrefix||n||a.keyPrefix);let c={...this.options,...o};Array.isArray(i)&&!s&&(c.ns=i),typeof o.keyPrefix==`function`&&(o.keyPrefix=de(o.keyPrefix,c));let l=this.options.keySeparator||`.`,u;return o.keyPrefix&&Array.isArray(e)?u=e.map(e=>(typeof e==`function`&&(e=de(e,c)),`${o.keyPrefix}${l}${e}`)):(typeof e==`function`&&(e=de(e,c)),u=o.keyPrefix?`${o.keyPrefix}${l}${e}`:e),this.t(u,o)};return d(e)?a.lng=e:a.lngs=e,a.ns=t,a.keyPrefix=n,a}t(...e){return this.translator?.translate(...e)}exists(...e){return this.translator?.exists(...e)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e,t={}){if(!this.isInitialized)return this.logger.warn(`hasLoadedNamespace: i18next was not initialized`,this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn(`hasLoadedNamespace: i18n.languages were undefined or empty`,this.languages),!1;let n=t.lng||this.resolvedLanguage||this.languages[0],r=this.options?this.options.fallbackLng:!1,i=this.languages[this.languages.length-1];if(n.toLowerCase()===`cimode`)return!0;let a=(e,t)=>{let n=this.services.backendConnector.state[`${e}|${t}`];return n===-1||n===0||n===2};if(t.precheck){let e=t.precheck(this,a);if(e!==void 0)return e}return!!(this.hasResourceBundle(n,e)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||a(n,e)&&(!r||a(i,e)))}loadNamespaces(e,t){let n=f();return this.options.ns?(d(e)&&(e=[e]),e.forEach(e=>{this.options.ns.includes(e)||this.options.ns.push(e)}),this.loadResources(e=>{n.resolve(),t&&t(e)}),n):(t&&t(),Promise.resolve())}loadLanguages(e,t){let n=f();d(e)&&(e=[e]);let r=this.options.preload||[],i=e.filter(e=>!r.includes(e)&&this.services.languageUtils.isSupportedCode(e));return i.length?(this.options.preload=r.concat(i),this.loadResources(e=>{n.resolve(),t&&t(e)}),n):(t&&t(),Promise.resolve())}dir(e){if(e||=this.resolvedLanguage||(this.languages?.length>0?this.languages[0]:this.language),!e)return`rtl`;try{let t=new Intl.Locale(e);if(t&&t.getTextInfo){let e=t.getTextInfo();if(e&&e.direction)return e.direction}}catch{}let t=`ar.shu.sqr.ssh.xaa.yhd.yud.aao.abh.abv.acm.acq.acw.acx.acy.adf.ads.aeb.aec.afb.ajp.apc.apd.arb.arq.ars.ary.arz.auz.avl.ayh.ayl.ayn.ayp.bbz.pga.he.iw.ps.pbt.pbu.pst.prp.prd.ug.ur.ydd.yds.yih.ji.yi.hbo.men.xmn.fa.jpr.peo.pes.prs.dv.sam.ckb`.split(`.`),n=this.services?.languageUtils||new me(De());return e.toLowerCase().indexOf(`-latn`)>1?`ltr`:t.includes(n.getLanguagePartFromCode(e))||e.toLowerCase().indexOf(`-arab`)>1?`rtl`:`ltr`}static createInstance(t={},n){let r=new e(t,n);return r.createInstance=e.createInstance,r}cloneInstance(t={},n=ke){let r=t.forkResourceStore;r&&delete t.forkResourceStore;let i={...this.options,...t,isClone:!0},a=new e(i);if((t.debug!==void 0||t.prefix!==void 0)&&(a.logger=a.logger.clone(t)),[`store`,`services`,`language`].forEach(e=>{a[e]=this[e]}),a.services={...this.services},a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},r&&(a.store=new ce(Object.keys(this.store.data).reduce((e,t)=>(e[t]={...this.store.data[t]},e[t]=Object.keys(e[t]).reduce((n,r)=>(n[r]={...e[t][r]},n),e[t]),e),{}),i),a.services.resourceStore=a.store),t.interpolation){let e={...De().interpolation,...this.options.interpolation,...t.interpolation},n={...i,interpolation:e};a.services.interpolator=new be(n)}return a.translator=new pe(a.services,i),a.translator.on(`*`,(e,...t)=>{a.emit(e,...t)}),a.init(i,n),a.translator.options=i,a.translator.backendConnector.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}.createInstance();k.createInstance,k.dir,k.init,k.loadResources,k.reloadResources,k.use,k.changeLanguage,k.getFixedT,k.t,k.exists,k.setDefaultNamespace,k.hasLoadedNamespace,k.loadNamespaces,k.loadLanguages;var je=(e,t,n,r)=>{let i=[n,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(i,`warn`,`react-i18next::`,!0);Re(i[0])&&(i[0]=`react-i18next:: ${i[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...i):console?.warn&&console.warn(...i)},Me={},Ne=(e,t,n,r)=>{Re(n)&&Me[n]||(Re(n)&&(Me[n]=new Date),je(e,t,n,r))},Pe=(e,t)=>()=>{if(e.isInitialized)t();else{let n=()=>{setTimeout(()=>{e.off(`initialized`,n)},0),t()};e.on(`initialized`,n)}},Fe=(e,t,n)=>{e.loadNamespaces(t,Pe(e,n))},Ie=(e,t,n,r)=>{if(Re(n)&&(n=[n]),e.options.preload&&e.options.preload.indexOf(t)>-1)return Fe(e,n,r);n.forEach(t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)}),e.loadLanguages(t,Pe(e,r))},Le=(e,t,n={})=>!t.languages||!t.languages.length?(Ne(t,`NO_LANGUAGES`,`i18n.languages were undefined or empty`,{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:n.lng,precheck:(t,r)=>{if(n.bindI18n&&n.bindI18n.indexOf(`languageChanging`)>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!r(t.isLanguageChangingTo,e))return!1}}),Re=e=>typeof e==`string`,ze=e=>typeof e==`object`&&!!e,Be=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,Ve={"&amp;":`&`,"&#38;":`&`,"&lt;":`<`,"&#60;":`<`,"&gt;":`>`,"&#62;":`>`,"&apos;":`'`,"&#39;":`'`,"&quot;":`"`,"&#34;":`"`,"&nbsp;":` `,"&#160;":` `,"&copy;":`©`,"&#169;":`©`,"&reg;":`®`,"&#174;":`®`,"&hellip;":`…`,"&#8230;":`…`,"&#x2F;":`/`,"&#47;":`/`},He=e=>Ve[e],Ue={bindI18n:`languageChanged`,bindI18nStore:``,transEmptyNodeValue:``,transSupportBasicHtmlNodes:!0,transWrapTextNodes:``,transKeepBasicHtmlNodesFor:[`br`,`strong`,`i`,`p`],useSuspense:!0,unescape:e=>e.replace(Be,He),transDefaultProps:void 0},We=(e={})=>{Ue={...Ue,...e}},Ge=()=>Ue,Ke,qe=e=>{Ke=e},Je=()=>Ke,Ye={type:`3rdParty`,init(e){We(e.options.react),qe(e)}},Xe=(0,l.createContext)(),Ze=class{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}},Qe=t((e=>{var t=r();function n(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var i=typeof Object.is==`function`?Object.is:n,a=t.useState,o=t.useEffect,s=t.useLayoutEffect,c=t.useDebugValue;function l(e,t){var n=t(),r=a({inst:{value:n,getSnapshot:t}}),i=r[0].inst,l=r[1];return s(function(){i.value=n,i.getSnapshot=t,u(i)&&l({inst:i})},[e,n,t]),o(function(){return u(i)&&l({inst:i}),e(function(){u(i)&&l({inst:i})})},[e]),c(n),n}function u(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!i(e,n)}catch{return!0}}function d(e,t){return t()}var f=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?d:l;e.useSyncExternalStore=t.useSyncExternalStore===void 0?f:t.useSyncExternalStore})),$e=t(((e,t)=>{t.exports=Qe()}))(),et={t:(e,t)=>{if(Re(t))return t;if(ze(t)&&Re(t.defaultValue))return t.defaultValue;if(typeof e==`function`)return``;if(Array.isArray(e)){let t=e[e.length-1];return typeof t==`function`?``:t}return e},ready:!1},tt=()=>()=>{},nt=(e,t={})=>{let{i18n:n}=t,{i18n:r,defaultNS:i}=(0,l.useContext)(Xe)||{},a=n||r||Je();a&&!a.reportNamespaces&&(a.reportNamespaces=new Ze),a||Ne(a,`NO_I18NEXT_INSTANCE`,`useTranslation: You will need to pass in an i18next instance by using initReactI18next`);let o=(0,l.useMemo)(()=>({...Ge(),...a?.options?.react,...t}),[a,t]),{useSuspense:s,keyPrefix:c}=o,u=e||i||a?.options?.defaultNS,d=Re(u)?[u]:u||[`translation`],f=(0,l.useMemo)(()=>d,d);a?.reportNamespaces?.addUsedNamespaces?.(f);let p=(0,l.useRef)(0),m=(0,l.useCallback)(e=>{if(!a)return tt;let{bindI18n:t,bindI18nStore:n}=o,r=()=>{p.current+=1,e()};return t&&a.on(t,r),n&&a.store.on(n,r),()=>{t&&t.split(` `).forEach(e=>a.off(e,r)),n&&n.split(` `).forEach(e=>a.store.off(e,r))}},[a,o]),h=(0,l.useRef)(),g=(0,l.useCallback)(()=>{if(!a)return et;let e=!!(a.isInitialized||a.initializedStoreOnce)&&f.every(e=>Le(e,a,o)),n=t.lng||a.language,r=p.current,i=h.current;if(i&&i.ready===e&&i.lng===n&&i.keyPrefix===c&&i.revision===r)return i;let s={t:a.getFixedT(n,o.nsMode===`fallback`?f:f[0],c,{scopeNs:f}),ready:e,lng:n,keyPrefix:c,revision:r};return h.current=s,s},[a,f,c,o,t.lng]),[_,v]=(0,l.useState)(0),{t:y,ready:b}=(0,$e.useSyncExternalStore)(m,g,g);(0,l.useEffect)(()=>{if(a&&!b&&!s){let e=()=>v(e=>e+1);t.lng?Ie(a,t.lng,f,e):Fe(a,f,e)}},[a,t.lng,f,b,s,_]);let x=a||{},S=(0,l.useRef)(null),C=(0,l.useRef)(),w=e=>{let t=Object.getOwnPropertyDescriptors(e);t.__original&&delete t.__original;let n=Object.create(Object.getPrototypeOf(e),t);if(!Object.prototype.hasOwnProperty.call(n,`__original`))try{Object.defineProperty(n,"__original",{value:e,writable:!1,enumerable:!1,configurable:!1})}catch{}return n},ee=(0,l.useMemo)(()=>{let e=x,t=e?.language,n=e;e&&(S.current&&S.current.__original===e&&C.current===t?n=S.current:(n=w(e),S.current=n,C.current=t));let r=!b&&!s?(...e)=>(Ne(a,`USE_T_BEFORE_READY`,`useTranslation: t was called before ready. When using useSuspense: false, make sure to check the ready flag before using t.`),y(...e)):y,i=[r,n,b];return i.t=r,i.i18n=n,i.ready=b,i},[y,x,b,x.resolvedLanguage,x.language,x.languages]);if(a&&s&&!b)throw new Promise(e=>{let n=()=>e();t.lng?Ie(a,t.lng,f,n):Fe(a,f,n)});return ee};function rt({i18n:e,defaultNS:t,children:n}){let r=(0,l.useMemo)(()=>({i18n:e,defaultNS:t}),[e,t]);return(0,l.createElement)(Xe.Provider,{value:r},n)}var it=t((e=>{var t=r(),n=Symbol.for(`react.element`),i=Symbol.for(`react.fragment`),a=Object.prototype.hasOwnProperty,o=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,r){var i,c={},l=null,u=null;for(i in r!==void 0&&(l=``+r),t.key!==void 0&&(l=``+t.key),t.ref!==void 0&&(u=t.ref),t)a.call(t,i)&&!s.hasOwnProperty(i)&&(c[i]=t[i]);if(e&&e.defaultProps)for(i in t=e.defaultProps,t)c[i]===void 0&&(c[i]=t[i]);return{$$typeof:n,type:e,key:l,ref:u,props:c,_owner:o.current}}e.Fragment=i,e.jsx=c,e.jsxs=c})),at=t(((e,t)=>{t.exports=it()})),A=at(),ot=`cookieConsent`,st=`cookieConsentMinimized`,ct=()=>{let{t:e}=nt(),[t,n]=(0,l.useState)(!1),[r,i]=(0,l.useState)(!1),a=(0,l.useRef)(null);(0,l.useEffect)(()=>{let e=null,t=null;try{e=localStorage.getItem(ot),t=localStorage.getItem(st)}catch{e=null,t=null}e||(n(!0),t===`true`&&i(!0)),e&&(window.cookieConsent=e,window.dispatchEvent(new CustomEvent(`cookieConsentChanged`,{detail:{value:e}})))},[]),(0,l.useEffect)(()=>{if(typeof document>`u`)return;let e=document.body;if(!e||!t||r)return;let n=e.style.paddingBottom,i=a.current;if(!i)return;let o=null,s=null,c=()=>{if(!i)return;let t=Math.ceil(i.getBoundingClientRect().height||0);e.style.paddingBottom=t?`${t}px`:n},l=()=>{typeof window>`u`||(o&&window.cancelAnimationFrame(o),o=window.requestAnimationFrame(c))};l();let u=()=>l();return window.addEventListener(`resize`,u),typeof ResizeObserver<`u`&&i&&(s=new ResizeObserver(()=>l()),s.observe(i)),()=>{o&&window.cancelAnimationFrame(o),s&&s.disconnect(),window.removeEventListener(`resize`,u),e.style.paddingBottom=n}},[t,r]);let o=e=>{try{localStorage.setItem(ot,e),localStorage.removeItem(st)}catch{}typeof window<`u`&&(window.cookieConsent=e,window.dispatchEvent(new CustomEvent(`cookieConsentChanged`,{detail:{value:e}}))),n(!1)};return t?r?(0,A.jsx)(`button`,{type:`button`,onClick:()=>{i(!1);try{localStorage.removeItem(st)}catch{}},className:`fixed bottom-3 right-3 z-1500 px-2 py-0.5 rounded-full bg-white/95 border border-slate-200 shadow-lg text-[8px] font-semibold text-slate-700 hover:bg-slate-50`,children:e(`common.cookie.manage`)}):(0,A.jsx)(`div`,{ref:a,className:`fixed inset-x-0 bottom-0 z-1500 border-t border-slate-200 bg-white/95 backdrop-blur-sm`,style:{paddingBottom:`env(safe-area-inset-bottom)`},children:(0,A.jsxs)(`div`,{className:`max-w-5xl mx-auto px-2 py-0 flex flex-col sm:flex-row gap-1 sm:items-center sm:justify-between text-slate-700`,children:[(0,A.jsx)(`p`,{className:`text-[7px] sm:text-[8px] leading-tight`,children:e(`common.cookie.message`)}),(0,A.jsxs)(`div`,{className:`flex gap-1 justify-end`,children:[(0,A.jsx)(`button`,{type:`button`,onClick:()=>{i(!0);try{localStorage.setItem(st,`true`)}catch{}},className:`px-1 py-0 rounded-lg border border-slate-200 text-[7px] sm:text-[8px] text-slate-500 hover:bg-slate-50`,children:e(`common.cookie.hide`)}),(0,A.jsx)(`button`,{type:`button`,onClick:()=>o(`declined`),className:`px-1 py-0 rounded-lg border border-slate-200 text-[7px] sm:text-[8px] hover:bg-slate-50`,children:e(`common.cookie.decline`)}),(0,A.jsx)(`button`,{type:`button`,onClick:()=>o(`accepted`),className:`px-1 py-0 rounded-lg bg-slate-900 text-white text-[7px] sm:text-[8px] hover:bg-slate-800`,children:e(`common.cookie.accept`)})]})]})}):null},lt=`modulepreload`,ut=function(e){return`/app/`+e},dt={},j=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=ut(t,n),t in dt)return;dt[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:lt,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},ft=l.lazy(()=>j(()=>import(`./App-CZiyX8-L.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]))),pt=l.lazy(()=>j(()=>import(`./Landing-B_CvZDXJ.js`),__vite__mapDeps([20,1,5,6,7,8,9,21,22,13,23,17,24,15,16,25,12,26,27,28,4,29]))),mt=l.lazy(()=>j(()=>import(`./Terms-BMt39FQK.js`),__vite__mapDeps([30,1,5,21,27,6,28,4,31,29]))),ht=l.lazy(()=>j(()=>import(`./Privacy-C6MrXYPO.js`),__vite__mapDeps([32,1,5,21,27,6,28,4,31,29]))),gt=l.lazy(()=>j(()=>import(`./Legal-BwGbEjDk.js`),__vite__mapDeps([33,1,5,21,27,6,28,4,31,29]))),_t=l.lazy(()=>j(()=>import(`./Security-C1OmAgom.js`),__vite__mapDeps([34,1,5,6,11,21,24,17,27,28,4,31,29]))),vt=l.lazy(()=>j(()=>import(`./Proof-C3DDFAhm.js`),__vite__mapDeps([35,1,5,6,13,21,24,27,28,4,31,29]))),yt=l.lazy(()=>j(()=>import(`./DesignPartner-B4J7f0Bx.js`),__vite__mapDeps([36,1,5,6,9,21,24,18,28,4,37,3]))),bt=l.lazy(()=>j(()=>import(`./NotFound-Ba1Bw7uu.js`),__vite__mapDeps([38,1,5,21]))),xt=l.lazy(()=>j(()=>import(`./Success-D6b4wLPD.js`),__vite__mapDeps([39,1,5,21,37,3,4]))),St=l.lazy(()=>j(()=>import(`./Cancelled-CP6V6uDb.js`),__vite__mapDeps([40,1,5,21,37,3,4]))),Ct=l.lazy(()=>j(()=>import(`./ToolsIndex-d1szo5bn.js`),__vite__mapDeps([41,1,5,6,42,9,43,21,44,24,16,25,12,26,45,46,47,8,10]))),M=l.lazy(()=>j(()=>import(`./FirstExport-qfY7uE8r.js`),__vite__mapDeps([48,1,5,6,8,9,21,44,22,13,23,17,16,25,12,26,45,46]))),wt=l.lazy(()=>j(()=>import(`./WorkloadCalculator-BbFWF2Ls.js`),__vite__mapDeps([49,1,5,6,42,8,9,12,21,25,26,45,46,47,10]))),Tt=l.lazy(()=>j(()=>import(`./FivePanelFramework-C4yq58kM.js`),__vite__mapDeps([50,1,5,6,8,9,10,12,43,21,25,26,45,46,47]))),Et=l.lazy(()=>j(()=>import(`./StoreAssetsPipeline-DNnnBp0D.js`),__vite__mapDeps([51,1,5,6,8,9,10,52,23,14,21,25,12,26,45,46,47]))),Dt=l.lazy(()=>j(()=>import(`./FastlaneScreenshots-cdZE6cGY.js`),__vite__mapDeps([53,1,5,6,8,9,10,23,21,25,12,26,45,46,47]))),Ot=l.lazy(()=>j(()=>import(`./AppReviewAso-DYOCuqgV.js`),__vite__mapDeps([54,1,5,6,9,52,43,21,24,25,12,26,45,46,47,8,10]))),kt=l.lazy(()=>j(()=>import(`./AgentCli-nIqgOG-i.js`),__vite__mapDeps([55,1,5,6,8,9,12,21,22,13,23,17,16,56,45,46,26]))),At=l.lazy(()=>j(()=>import(`./Pricing-Dt-V4Gqc.js`),__vite__mapDeps([57,1,5,6,7,9,10,21,24,16,25,12,26,56,46,27,28,4,37,3]))),jt=l.lazy(()=>j(()=>import(`./SignIn-C_wwnmvu.js`),__vite__mapDeps([58,1,2,5,59,21,15]))),Mt=l.lazy(()=>j(()=>import(`./SignUp-Dm5HalC6.js`),__vite__mapDeps([60,1,2,5,59,21]))),Nt=l.lazy(()=>j(()=>import(`./ForgotPassword-KF_HFGyb.js`),__vite__mapDeps([61,1,2,5,59,21]))),Pt=[`/tools/fastlane-screenshot-folder-structure`],Ft=[`/tools/app-store-screenshot-automation`,`/tools/google-play-screenshot-automation`,`/tools/app-store-localization-screenshot-automation`,`/tools/device-locale-screenshot-matrix`,`/tools/fastlane-screenshot-pipeline`,`/tools/screenshot-ci-pipeline`,`/tools/deterministic-screenshot-reruns`,`/tools/screenshot-naming-order-drift`,`/tools/claude-code-mcp-screenshot-automation`,`/tools/cursor-mcp-screenshot-automation`,`/tools/vscode-copilot-mcp-screenshot-automation`,`/tools/gemini-cli-mcp-screenshot-automation`,`/tools/openai-responses-tool-screenshot-automation`],It=[`/tools/app-store-screenshot-requirements-checklist`,`/tools/google-play-screenshot-requirements-checklist`,`/tools/ipad-screenshot-review-requirements`],Lt=e=>(e||``).split(`-`)[0]===`ja`?`ja`:`en`,Rt=()=>(0,A.jsx)(`div`,{className:`min-h-screen bg-slate-950 text-white flex items-center justify-center px-6`,children:(0,A.jsx)(`div`,{className:`text-sm text-slate-300`,children:`Loading...`})}),zt=()=>{let{i18n:e}=nt(),t=typeof window<`u`?window.location.pathname:`/`,n=typeof window<`u`?window.location.search:``,r=typeof window<`u`?window.location.hash:``;(0,l.useEffect)(()=>{if(typeof document>`u`)return;let t=Lt(e.resolvedLanguage||e.language);document.documentElement.lang=t},[e.language,e.resolvedLanguage]),typeof window<`u`&&(t===`/tools`||t.startsWith(`/tools/`)&&!t.endsWith(`/`))&&window.history.replaceState(window.history.state,``,`${t}/${n}${r}`);let i=t.replace(/\/+$/,``)||`/`,a=n.includes(`code=`),o=e=>(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(ct,{}),(0,A.jsx)(l.Suspense,{fallback:(0,A.jsx)(Rt,{}),children:e})]});return i.startsWith(`/signin`)||i.startsWith(`/app/signin`)?o((0,A.jsx)(jt,{})):i.startsWith(`/signup`)||i.startsWith(`/app/signup`)?o((0,A.jsx)(Mt,{})):i.startsWith(`/forgot-password`)||i.startsWith(`/app/forgot-password`)?o((0,A.jsx)(Nt,{})):a&&i===`/`||i.startsWith(`/app`)?o((0,A.jsx)(ft,{})):i===`/`?o((0,A.jsx)(pt,{})):i.startsWith(`/success`)?o((0,A.jsx)(xt,{})):i.startsWith(`/cancelled`)?o((0,A.jsx)(St,{})):i.startsWith(`/lp`)?o((0,A.jsx)(pt,{})):i.startsWith(`/pricing`)?o((0,A.jsx)(At,{})):i===`/tools`?o((0,A.jsx)(Ct,{})):i.startsWith(`/tools/first-export`)?o((0,A.jsx)(M,{})):i.startsWith(`/tools/screenshot-workload-calculator`)?o((0,A.jsx)(wt,{})):i.startsWith(`/tools/fastlane-screenshots`)||Pt.some(e=>i.startsWith(e))?o((0,A.jsx)(Dt,{})):i.startsWith(`/tools/5-panel-screenshot-framework`)?o((0,A.jsx)(Tt,{})):i.startsWith(`/tools/store-assets-pipeline`)?o((0,A.jsx)(Et,{})):i.startsWith(`/tools/app-review-aso`)||It.some(e=>i.startsWith(e))?o((0,A.jsx)(Ot,{})):i.startsWith(`/tools/agent-cli`)||Ft.some(e=>i.startsWith(e))?o((0,A.jsx)(kt,{})):i.startsWith(`/terms`)?o((0,A.jsx)(mt,{})):i.startsWith(`/privacy`)?o((0,A.jsx)(ht,{})):i.startsWith(`/legal`)?o((0,A.jsx)(gt,{})):i.startsWith(`/security`)?o((0,A.jsx)(_t,{})):i.startsWith(`/proof`)?o((0,A.jsx)(vt,{})):i.startsWith(`/design-partner`)?o((0,A.jsx)(yt,{})):o((0,A.jsx)(bt,{}))},Bt=`appLang`,Vt=()=>{try{if(typeof window<`u`&&window.localStorage){let e=window.localStorage.getItem(Bt);if(e===`ja`||e===`en`)return e}}catch{}return typeof navigator<`u`&&navigator.language&&navigator.language.startsWith(`ja`)?`ja`:`en`},Ht=e=>{try{typeof window<`u`&&window.localStorage&&window.localStorage.setItem(Bt,e)}catch{}},Ut=e=>{typeof document<`u`&&(document.documentElement.lang=e||`en`)},Wt={en:{translation:{titles:{landing:`ShipScreens - Tell Your Coding Agent to Use It`,editor:`Editor - ShipScreens`,signIn:`Sign In - ShipScreens`,signUp:`Sign Up - ShipScreens`,forgotPassword:`Reset Password - ShipScreens`,notFound:`Page Not Found - ShipScreens`,pricing:`Pricing - ShipScreens`,workloadCalculator:`Screenshot Workload Calculator - ShipScreens`,fivePanelFramework:`5-panel Screenshot Framework - ShipScreens`,storeAssetsPipeline:`Store Assets Pipeline Kit - ShipScreens`,tools:`Screenshot Cheat Sheets & Tools - ShipScreens`,firstExport:`5-minute First Export - ShipScreens`,fastlaneScreenshots:`Fastlane Screenshot Folder Structure - ShipScreens`,appReviewAso:`App Review + ASO Quick Check - ShipScreens`,agentCli:`AI Agent + CLI for App Store Screenshot Automation - ShipScreens`,terms:`Terms - ShipScreens`,privacy:`Privacy - ShipScreens`,legal:`Legal - ShipScreens`,proof:`Proof & Case Snapshots - ShipScreens`,designPartner:`Design Partner Offer - ShipScreens`,agentStarterRequest:`Agent Starter Request - ShipScreens`,checkoutSuccess:`Checkout Succeeded - ShipScreens`,checkoutCancelled:`Checkout Cancelled - ShipScreens`},common:{manageSubscription:`Manage Subscription`,copy:`Copy`,copied:`Copied`,copyFailed:`Copy failed`,showCommands:`Show commands`,menu:`Menu`,close:`Close`,cookie:{message:`We use cookies for essential app functions and optional analytics.`,accept:`Accept`,decline:`Decline`,manage:`Cookie settings`,hide:`Hide`},cliPreflight:{title:`Before you run (prep checklist)`,body:`Have these ready so the CLI can run end-to-end without prompts.`,bullets:[`PNG assets + paths are final (no placeholders).`,`Locales, devices, and slide count are decided.`,`Copy per locale is ready (config or CSV).`,`Branding choices are set (frame, background, fonts, badges).`],note:`agent-run stops early if any PNG is missing or still a placeholder.`,cta:`Open CLI preflight checklist`}},notFound:{title:`Page not found`,description:`The page you are looking for does not exist.`,backHome:`Go to Home`,openApp:`Open App`},upgrade:{title:`Upgrade to Pro`,subtitle:`If the free preview looks right, unlock deterministic reruns: full matrix + copy import + no watermark.`,authRequired:`Create an account or sign in first. Your current sample/work is kept, then checkout resumes after you return.`,plans:{starter:{title:`Start Agent Starter`,subtitle:`For the first paid yes: one app, agent-run exports, verify/stage proof, and no watermark at $5/mo.`,features:[`No watermark on one active app release workflow`,`Agent-run exports with verify/stage proof`,`Current device/emulator screenshot capture path`,`Fastlane-ready local output roots`,`Upgrade to Pro later for full matrix reruns`],cta:`Start Agent Starter - $5/mo (USD)`},annual:{title:`Start Pro Annual`,subtitle:`For repeatable release screenshot ops: full matrix reruns, copy import, and no watermark.`,cta:`Start Pro Annual - $99/year (USD)`}},features:[`No watermark on release exports`,`Full matrix reruns (devices × locales)`,`CSV/JSON copy import for recurring updates`,`Reusable presets + branding controls`,`Deterministic CI reruns (CLI auth for rendered exports)`],cta:`Unlock Pro - $19/mo (USD)`,legal:`Cancel anytime. By upgrading you agree to our Terms, Privacy, and Legal (Japan) disclosures.`,later:`Maybe Later`},consent:{billing:`By continuing you agree to our Terms, Privacy, and Legal (Japan) disclosures.`},app:{alerts:{signInUpgrade:`Please sign in before upgrading.`,priceMissing:`Stripe price ID not configured`,checkoutFailed:`Failed to start checkout. Please try again.`,signInManage:`Please sign in to manage your subscription.`,portalUnavailable:`Portal URL not available. Please try again later.`,portalFailed:`Failed to open portal. Please try again.`,portalNoCustomer:`Manage Subscription is unavailable until a payment is on file. Please complete checkout or contact support@shimaumaservices.co.jp.`,importSuccess:`Imported configuration for {{count}} languages.`,presetSaved:`Preset saved!`,generateFailed:`Failed to generate image.`,exportFailed:`Export failed.`,shareTooLarge:`Project configuration is too large to share via URL.`,shareUnableCopy:`Unable to copy URL.`,shareManualCopy:`Unable to copy URL. Please copy it manually from address bar.`,fileType:`Please select an image file (max 20MB).`,fileSize:`File size limit is 20MB.`,slideLimit:`Maximum 50 slides allowed.`,importInvalidCsvColumns:`CSV columns not recognized. Expected: Locale,Header_1,Subtitle_1,Header_2,Subtitle_2,...`,importInvalidCsv:`Failed to parse CSV. Please check commas/quotes and try again.`,importCsvNoRows:`No valid CSV rows found. Fill Locale and at least one Header_#/Subtitle_# cell.`,iosZipWarning:`iOS Safari has limitations with ZIP saving. Continue?`,localesAdded:`Added {{count}} languages`},sessionExpired:{message:`Session expired. Please sign in again.`,dismiss:`Dismiss`},fonts:{inter:`Modern Sans (Inter)`,roboto:`Clean (Roboto)`,montserrat:`Geometric (Montserrat)`,playfair:`Elegant Serif (Playfair Display)`,merriweather:`Classic Serif (Merriweather)`,system:`System Default`},userMenu:{signedInAs:`Signed in as`},prompts:{localeId:`Enter locale ID (e.g., '{{example1}}', '{{example2}}'):`,localeDefault:`es-ES`,presetName:`Enter a name for this preset:`,presetDefault:`My Awesome Theme`},defaults:{newSlideTitle:`New Slide`,newSlideDesc:`Description`,newLocaleHeader:`Header`,newLocaleSub:`Subtitle`},share:{success:`Shared!`,copySuccess:`Project URL copied to clipboard! (Images are not shared in URL)`,fallbackSuccess:`Project URL copied to clipboard! (Images are not shared in URL)`,manualCopy:`Unable to copy URL. Please copy it manually from address bar.`,unableCopy:`Unable to copy URL.`},statuses:{saved:`Saved to browser. You can restore this next time you visit.`,loaded:`Restored from browser.`,shared:`Shared!`},history:{undo:`Undo`,redo:`Redo`},mobile:{openControls:`Open controls`,closeControls:`Hide controls`},checkout:{success:`Checkout completed. Pro access is now active.`,pending:`Processing payment... checking status ({{count}}/6).`,retry:`Status not confirmed yet. Please retry or wait a moment.`,signin:`Please sign in to confirm Pro access after checkout.`},progress:{generating:`Generating Assets...`,images:`{{current}} / {{total}} images`,detail:`Generating {{device}} ({{locale}}) slide {{index}}`,preparingBundle:`Preparing Fastlane ZIP...`,cancelling:`Cancelling...`},header:{editor:`Editor`,batch:`Batch`,pro:`(Pro)`,download:`Download`,switchToJa:`Switch to Japanese`,switchToEn:`Switch to English`,manage:`Manage`,share:`Share Project`,upgrade:`Upgrade to Pro`,redirecting:`Redirecting...`,downloadPro:`Download (No watermark)`,downloadWatermark:`Download (With watermark)`,exportBundle:`Export Fastlane ZIP`,ciQuickstartShort:`Coding/CI`,ciQuickstart:`Coding agent + CI handoff`,confirm:`OK`},upsell:{watermarkToast:{message:`Exported with watermark. Upgrade to remove it.`,action:`Remove watermark`}},tabs:{edit:`Edit Content`,style:`Design & Style`,templates:`Templates & Presets`,data:`Data & Export`},content:{title:`Content`,headerPlaceholder:`Header ({{locale}})`,subPlaceholder:`Subtitle ({{locale}})`,changeImage:`Change Image`,uploadScreenshot:`Upload Screenshot`,changeImageForLocale:`Change Image ({{locale}})`,uploadScreenshotForLocale:`Upload Screenshot ({{locale}})`,screenshotScopeLabel:`Apply to`,screenshotScopeShared:`Shared`,screenshotScopeLocale:`This locale`,screenshotScopeOverride:`Override`,screenshotClear:`Remove image`,screenshotSharedOverridesHint:`{{count}} locale overrides on this slide. Shared changes will not affect them.`,screenshotLocaleFallbackHint:`No override for this locale. Using the shared screenshot.`,screenshotLocaleEmptyHint:`No screenshot set yet. Upload one for this locale.`,clearAllOverrides:`Clear all overrides`,clearAllOverridesConfirm:`Clear all locale screenshot overrides for this slide?`},language:{title:`Language`,remove:`×`,description:`Manage target languages. The selected language is shown in the preview and editable.`,add:`Add`,searchPlaceholder:`Search (e.g. ja, Japanese)`,presets:`Presets`,noResults:`No languages found`,presetsHint:`EFIGS / CJK presets available`},device:{title:`Device`,portrait:`Portrait`,landscape:`Landscape`,searchPlaceholder:`Search (e.g. 6.9, 1290x2796, Pixel)`,labelMode:{store:`Store label`,detailed:`Model + px`},labelModeHint:`Switches device labels in lists and batch preview (does not affect exported images).`,groups:{iPhone:`iPhone`,iphoneClassic:`iPhone Classic`,iPad:`iPad`,android:`Android`,androidTablet:`Android Tablet`,watch:`Watch`}},theme:{title:`Theme`,clean:`Clean`,dark:`Dark`,pop:`Pop`},background:{title:`Background`,types:{transparent:`Transparent`,solid:`Solid`,gradient:`Gradient`,image:`Image`},upload:`Upload BG`,blur:`Blur`,dim:`Dim`},branding:{title:`Branding`,frameColor:`Frame Color`,uploadLogo:`Upload Logo`},layout:{title:`Layout & Typography`,options:{top:`Std`,bottom:`Pop`,split:`Split`},textColor:`Text Color`,topSpacing:`Top Spacing`,scale:`Scale`,overrideToggle:`Override this slide`,overrideReset:`Reset`},badge:{title:`Badge`,options:{none:`None`,stars:`Rating`,award:`Editor's Choice`,download:`App Store`,googleplay:`Google Play`}},templates:{official:`Official Templates`,officialItems:{minimal_dark:`Minimal Dark`,clean_blue:`Clean Blue`,vibrant_gradient:`Vibrant Pop`,split_modern:`Split Modern`},mine:`My Styles (Design Only)`,saveCurrent:`+ Save Current Style`,empty:`No saved styles.
10
+ Text and images are NOT saved.`,proRequired:`Saving styles requires Pro`},data:{title:`Data Management`,browserTitle:`Local Workspace (This Device)`,limitInfo:`Limit: ~5MB`,usageInfo:`{{used}}MB used`,quotaWarning:`Storage nearly full. "Export Project File" is recommended for images.`,overwrite:`Overwrite Save`,overwriteDesc:`For pausing/resuming work`,restore:`Restore`,settingsOnlyShort:`Settings Only`,fileExportTitle:`Export File`,fileExportBadge:`No Limit / Full Backup`,fileExportDesc:`Save as a single .json file to PC.<br/>Best for migration and high-res images.`,includeAll:`Includes everything`,saveBrowser:`Quick Save (This Browser)`,saveBrowserDesc:`Data is saved to this browser only. Not synced to your account.`,saveSettingsOnly:`Save Settings Only (No Images)`,load:`Load from Browser`,loadConfirm:`This will overwrite your current work. Continue?`,export:`Export Project File`,exportDesc:`Download a .json backup. Includes images & settings.`,import:`Import Project File`,dropJson:`Drop .json file here to restore`,storageUsage:`Storage Usage`,privacy:`Data stays in your browser. No upload to server.`,sampleTitle:`Sample project`,sampleDesc:`Pre-filled 5-panel storyboard (no images). Great for your first export.`,sampleLoad:`Load sample project`,cliTitle:`Coding agent + CLI guide (no browser)`,cliDesc:`Use your coding agent to run the wizard once, or run it yourself, then export locally or in CI.`,cliCmd:`npx --yes shipscreens wizard
11
+ # replace assets/en-US/01.png..05.png
12
+ npx --yes shipscreens agent-run --mode raw --zip --out out/agent --stage`,cliLink:`Open tell-your-agent guide`,sampleConfirm:`Replace your current work with the sample project? (Images will be cleared.)`,sampleLoaded:`Loaded sample project`,sampleWelcomeTitle:`Quick start`,sampleWelcomeBody:`New here? Load a sample project to see the workflow (recommended).`,sampleWelcomeLoad:`Load sample`,sampleWelcomeBlank:`Start blank`,saveQuotaError:`Storage full. Try "Save Settings Only" or Export.`,saveBlocked:`Save failed. Please allow cookies/site data in your browser.`,loadMissing:`No saved data found in this browser.`,loadError:`Failed to load project.`,importError:`Invalid JSON file.`,exportError:`Export failed. Please try again.`},teamSync:{title:`Team Sync (Beta)`,subtitle:`Sync config + copy. Screenshots stay local.`,note:`Uploads project settings and localized copy to ShipScreens. Base screenshots and exports are not stored by default.`,signInRequired:`Sign in to use Team Sync.`,refresh:`Refresh`,selectWorkspace:`Select workspace`,newWorkspace:`New`,selectProject:`Select project`,newProject:`New`,head:`Remote`,refreshHead:`Refresh status`,pull:`Pull`,push:`Push`,invites:`Invites`,createInvite:`Create invite`,invitePlaceholder:`Paste invite token…`,acceptInvite:`Accept`,copy:`Copy`,expires:`Expires`,toasts:{workspaceCreated:`Workspace created`,projectCreated:`Project created`,noRemoteSpec:`No remote spec yet. Push first.`,pulled:`Pulled latest spec (images kept local)`,pushed:`Pushed current spec`,inviteCreated:`Invite created`,inviteAccepted:`Invite accepted`},errors:{fetchWorkspaces:`Failed to load workspaces`,fetchProjects:`Failed to load projects`,createWorkspace:`Failed to create workspace`,createProject:`Failed to create project`,pull:`Failed to pull`,push:`Failed to push`,conflict:`Conflict: pull the latest, then push again`,invite:`Failed to create invite`,inviteAccept:`Failed to accept invite`}},importer:{title:`Import Copy (CSV)`,description:`Upload a CSV file with localized copy per slide. ShipScreens does not translate; it keeps layouts stable across locales.`,downloadTemplate:`Download Template`,importCsv:`Import CSV`,hint:`Columns map to slide numbers: <code>Header_1</code>, <code>Subtitle_1</code>, <code>Header_2</code>... (1 = slide #1). Download a template for <b>current / 5 / 7 / 10 / custom</b> slides. Use language codes (e.g. en-US, ja-JP) in the <code>Locale</code> column to auto-detect flags.`,previewTitle:`Review CSV Import`,previewSummary:`{{count}} languages × {{slides}} slides detected. Apply this copy?`,previewWarning:`{{count}} parse warnings detected. Data loaded where possible.`,previewMore:`...and {{extra}} more languages`,previewMoreSlides:`...and {{extra}} more slides`,previewSlideNoteAdd:`This import will add {{count}} slides (images stay empty).`,previewSlideNotePartial:`CSV contains {{count}} slides. Slides #{{from}}+ will remain unchanged.`,previewChangesTitle:`Changes`,delta:{localesAdded:`+{{count}} languages`,localesRemoved:`-{{count}} languages`,localesUpdated:`{{count}} updated`,localesUnchanged:`{{count}} unchanged`,localesKept:`{{count}} kept`,slidesAdded:`+{{count}} slides`,slidesUnchanged:`{{count}} slides unchanged`},templateDialog:{title:`Download CSV template`,description:`Choose how many slides (columns) to generate.`,optionCurrent:`Current project ({{count}} slides)`,optionCurrentDesc:`Matches your storyboard slide count.`,optionCustom:`Custom`,optionCustomDesc:`Generate columns for an exact slide count.`,optionCustomUnit:`slides`,optionPreset:`{{count}} slides`,optionPresetDesc:`Use a common store screenshot count.`,download:`Download`},previewApply:`Apply import`,mode:{label:`Import Mode`,merge:`Merge (Keep existing)`,replace:`Replace All`,mergeDesc:`Updates existing languages and adds new ones. Keeps other languages intact.`,replaceDesc:`Removes all current languages and replaces them with CSV data.`}},screenshotImporter:{title:`Import Locale Screenshots`,description:`Bulk import locale-specific screenshots (overrides) per slide.`,hint:`Use <b>ZIP</b> or <b>folder/files</b>. Examples: <code>en-US/01.png</code>, <code>ja-JP/02.png</code>, or <code>en-US_01.png</code>. Slide numbers are <b>1-50</b>.`,importZip:`ZIP`,importFolder:`Folder`,importFiles:`Files`,filesLabel:`{{count}} files`,noFiles:`No image files found.`,noMatches:`No files matched a locale + slide pattern.`,failed:`Screenshot import failed.`,applied:`Imported {{count}} screenshots.`,appliedWithErrors:`Imported {{count}} screenshots ({{errors}} failed).`,dialog:{title:`Review Screenshot Import`,summary:`{{count}} images → {{locales}} locales × {{slides}} slides`,source:`Source: {{source}}`,noteAddLocales:`+{{count}} locales will be added`,noteAddSlides:`+{{count}} slides will be added (images stay empty)`,warnSkipped:`{{count}} files were skipped (unrecognized name/path)`,warnNotImages:`{{count}} non-image files were skipped`,warnOutOfRange:`{{count}} files were skipped (slide number out of range)`,noteDuplicates:`{{count}} duplicates detected (last one wins)`,progress:`Importing... {{current}} / {{total}}`,apply:`Apply import`,applying:`Importing...`}},batch:{title:`Batch Output Target`,selected:`{{count}} selected`,noDevices:`Select at least one device.`,presets:{title:`Quick select`,iosRequired:`iOS required sizes`,playPhone:`Play: Phone`,playTablet:`Play: Tablet`,all:`All`,clear:`Clear`},structure:{title:`ZIP structure`,byLocale:`Locale folders (Fastlane)`,byDevice:`Device folders`},freePreview:{badge:`Free preview`,title:`Free bundle preview`,body:`Free preview is limited to 1 locale × 5 slides × 1 iOS + 1 Android device (watermarked). If the output looks right, unlock Pro to run full matrix reruns.`,cta:`Unlock Pro`}},storyboard:{addSlide:`Add Slide`,localeOverrides:`{{count}} overrides`,dropToAddSlides:`Drop images to add slides`},csv:{headerRow:`Locale,Header_1,Subtitle_1`,exampleEn:`en-US,New App,Available Now`,exampleJa:`ja-JP,新作アプリ,近日リリース`},canvas:{watermark:`ShipScreens`,center:`Center`,badges:{award:`Editor's Choice`,downloadLine1:`Download on the`,downloadLine2:`App Store`,googleLine1:`GET IT ON`,googleLine2:`Google Play`}}},landing:{nav:{openApp:`Open App`,tools:`Tools`,pricing:`Pricing`,goPro:`Go Pro`,primaryCta:`Open the coding-agent guide`},tagline:`SCREENSHOTS AS A BUILD STEP.`,headline:`Release-safe screenshot ops for active app teams.`,subheading:`ShipScreens is not another screenshot generator. For active commercial apps where release reruns now matter, keep the screenshots you already create in Figma/Canva/AI/manual flows, then turn those assets into deterministic, Fastlane-ready outputs before release.`,whoFor:`Best fit: a release, growth, or founder-operator who already has screenshots but loses time when updates, device buckets, locales, iPad review, or upload roots drift. Developers can use MCP/CLI/CI; ASO and marketers can keep the current creative workflow and use browser + CSV review.`,ctas:{primary:`Open the coding-agent guide`,secondarySample:`Get first export in browser (5 min)`,secondaryTools:`Get messaging + ops cheat sheets`,secondaryCi:`Agent/CI handoff`},badges:[`Active release cadence`,`Keep Figma/Canva/AI`,`Fastlane-ready reruns`],hero:{livePreview:`Release-step quickstart`,devices:`wizard -> agent-run -> proof`,caption:`Runs locally/CI · no browser · reproducible ZIP`,alt:`ShipScreens CLI quickstart showing wizard and agent-run commands`,outputs:[`Paste one natural-language handoff instead of rebuilding screenshot ops by hand`,`Keep your current design stack while the agent chooses workspace-local MCP or CLI`,`Compile deterministic Fastlane-ready outputs with 01..05 naming and stable upload roots`,`Catch mixed folders, iPad/review surprises, and missing slots with upload checks`],agentPrompt:{label:`Paste the agent prompt`,code:`Use ShipScreens as the build step for our mobile release screenshots. Keep our current Figma/Fastlane/manual workflow, inspect this repo, choose the best path for this workspace (workspace-local MCP if available, otherwise pure CLI), capture current device/emulator screens if no screenshot folder exists, generate deterministic Fastlane-ready outputs, run verify/stage, and return a short report with output paths, warnings, and next steps. Only ask me if device or locale scope, panel #1 messaging, or store-upload approval is unclear.`,note:`Recommended: give one natural-language handoff, then review the first deterministic export.`},cliQuickstart:{label:`What runs after setup`,code:`# 1) CLI first export
13
+ npx --yes shipscreens wizard --defaults
14
+ npx --yes shipscreens agent-run --mode raw --zip --out out --stage --profile appstore
15
+
16
+ # 2) Unlock Pro (remove watermark)
17
+ npx --yes shipscreens auth login
18
+ npx --yes shipscreens agent-run --mode raw --zip --out out --stage --profile appstore --require-pro`,note:`After one-time setup or direct CLI selection, rerun agent-run with --require-pro when you want watermark-free CI output.`},tabs:{output:`Output example`,quickstart:`CLI quickstart`},outputExample:{badge:`OUTPUT`,title:`SEE THE OUTPUTS BEFORE YOU COMMIT`,desc:`ShipScreens generates Fastlane-ready folders, a ZIP artifact, staged upload roots, and proof reports for your release pipeline.`,treeLabel:`Example output tree`,tree:`out/agent/
19
+ fastlane/
20
+ screenshots/ # iOS (deliver)
21
+ en-US/
22
+ iphone69_01.png
23
+ iphone69_02.png
24
+ metadata/
25
+ android/ # Android (supply)
26
+ en-US/
27
+ images/
28
+ phoneScreenshots/
29
+ 01.png
30
+ 02.png
31
+ fastlane_assets.zip
32
+ shipscreens.agent-report.json
33
+ shipscreens.agent-summary.md
34
+
35
+ out/agent-stage/`,thumbAlt:`Example screenshot output`,messageExamplesTitle:`Panel #1 headline examples (vague -> concrete)`,messageExamplesLead:`Use concrete outcomes by app type. If the same line could fit many apps, rewrite it with one concrete outcome.`,messageExamplesBadLabel:`Vague`,messageExamplesGoodLabel:`Concrete`,messageExamples:[{category:`Finance app`,bad:`Learn everything about finance`,good:`Build a weekly budget and track spending in 10 minutes`},{category:`Habit app`,bad:`The easiest habit tracker`,good:`Track 3 daily habits with streak reminders and weekly review`},{category:`Meal app`,bad:`Healthy meals made easy`,good:`Plan 5 low-carb dinners and auto-generate a shopping list`}],note:`Use agent-run --stage so build, verify, stage, and report stay attached to the same release proof.`},noLogin:`No login required to try. Free exports include a watermark.`,proUnlockNote:`Free = watermarked preview bundle · Pro = full batch + CSV + no watermark`,proPriceNote:``},guardrails:{title:`Verify + stage guardrails (before upload)`,subtitle:`Screenshot pipelines fail in predictable ways. ShipScreens catches them early so quality and positioning do not regress at release time.`,items:[{title:`Fails fast on missing outputs`,desc:`verify ensures there are no gaps in indices and every locale/device slot is present.`},{title:`Detects mixed folders`,desc:`Avoid shipping a folder that mixes framed and unframed screenshots (common deliver accident).`},{title:`Stages clean upload roots`,desc:`stage copies only upload-ready files into a new root per store (deliver/supply).`}],example:{label:`Example (verify error)`,code:`$ shipscreens verify --out out/agent --zip --profile appstore
36
+ Mixed iOS screenshots (unframed and _framed) are not allowed for profile=appstore: fastlane/screenshots/en-US/
37
+ Use: shipscreens stage --profile appstore --out <dir> (then upload the staged folder)`},note:`ShipScreens does not upload to App Store Connect / Play Console (upload is still required).`},pipeline:{title:`Define screenshots as code`,subtitle:`Commit config + copy. Validate, lock, then agent-run build/verify/stage/report in CI. Keep your design style and rerun safely each release.`,inputs:{label:`Inputs`,title:`Config + assets, committed`,desc:`Start with shipscreens wizard (step-by-step), then reference assets by path, keep diffs clean, and rerun reproducibly.`,files:[{label:`shipscreens.config.yml`,code:`schemaVersion: 1
38
+
39
+ locales:
40
+ - id: en-US
41
+ - id: ja-JP
42
+
43
+ devices:
44
+ - id: iphone69
45
+ platform: ios
46
+ - id: pixel8
47
+ platform: android
48
+
49
+ slides:
50
+ - id: 1
51
+ screenshot:
52
+ path: assets/en-US/01.png
53
+ screenshotsByLocale:
54
+ ja-JP: assets/ja-JP/01.png
55
+ text:
56
+ en-US:
57
+ header: New App
58
+ sub: Available Now
59
+ ja-JP:
60
+ header: 新作アプリ
61
+ sub: 好評配信中`},{label:`copy.csv`,code:`Locale,Header_1,Subtitle_1
62
+ en-US,New App,Available Now
63
+ ja-JP,新作アプリ,好評配信中`},{label:`shipscreens.lock.json`,code:`{
64
+ "version": 1,
65
+ "assets": {
66
+ "assets/en-US/01.png": { "sha256": "…", "bytes": 12345 }
67
+ }
68
+ }`}]},outputs:{label:`Outputs`,title:`Fastlane-ready folders plus proof`,desc:`Writes to Fastlane’s expected paths for deliver (iOS) and supply (Android), then stages clean upload roots and report artifacts.`,files:[{label:`out/agent/`,code:`out/agent/
69
+ fastlane/
70
+ screenshots/
71
+ en-US/
72
+ iphone69_01.png
73
+ iphone69_02.png
74
+ metadata/
75
+ android/
76
+ en-US/
77
+ images/
78
+ phoneScreenshots/
79
+ 01.png
80
+ 02.png
81
+ fastlane_assets.zip
82
+ shipscreens.agent-report.json
83
+ shipscreens.agent-summary.md
84
+
85
+ out/agent-stage/`}],note:`Use agent-run --stage to keep upload roots and reports tied to the same run.`}},ciQuickstart:{title:`Agent/CI handoff (copy/paste)`,desc:`Paste the core pipeline when the agent falls back to the CLI or when you run the deterministic release step yourself.`,codeLabel:`Commands`,code:`npx --yes shipscreens validate
86
+ npx --yes shipscreens lock
87
+ npx --yes shipscreens copy check --strict --write-pseudo-csv out/copy-pseudo.csv --write-report-json out/copy-check-report.json
88
+ npx --yes shipscreens agent-run --mode raw --out out --zip --stage --profile appstore --json`,note:`Advanced: build --mode frameit runs raw + export framefile --check.`},features:[{title:`Keep your design tools, lock the release contract`,desc:`Keep Figma/Canva/AI/manual creation for visuals, then lock panel order, naming, and upload roots so Fastlane path breakage and rerun drift stop leaking into release week.`},{title:`Make panel #1 and scope repeatable`,desc:`Start iPhone-first, keep one concrete outcome on panel #1, then expand devices/locales without rewriting the whole screenshot story.`},{title:`Upload-ready output without upload churn`,desc:`Generate deliver/supply roots (or a reproducible ZIP) with stable ordering, path naming, reviewable diffs, and a non-interactive CLI/MCP lane for agents and CI.`},{title:`Pre-submit gates for review + store constraints`,desc:`Catch mixed folders, iPad/review surprises, and store-unsafe roots early, then stage clean upload trees for deliver/supply.`}],entryPoints:{title:`Two doors, one deterministic release-step core`,subtitle:`For developers: MCP/CLI/CI. For ASO/marketers: browser + CSV. Same release-safe contract underneath.`,items:[{title:`For developers: coding agent + CLI`,desc:`Recommended when Claude/Cursor/Copilot/Gemini is already in your dev flow: let the agent set up workspace-local MCP or CLI, then move through deterministic build, verify, and stage without redesigning.`,codeLabel:`Example`,code:`npx --yes shipscreens@latest mcp init --client cursor
89
+ # then give your agent the ShipScreens setup prompt`,cta:`Open the coding-agent guide`,href:`/tools/agent-cli/`},{title:`For ASO / marketers: browser first export`,desc:`Best when you want to validate the current creative, panel order, and CSV-driven copy without learning another design tool first.`,cta:`Get first export in browser`,href:`/tools/first-export/`},{title:`For scaling teams: matrix planning`,desc:`Best when device/locale growth is the blocker: shrink to the minimum stable matrix before you expand the release workflow.`,codeLabel:`Example`,code:`npx --yes shipscreens copy import --csv copy.csv --import-mode merge
90
+ npx --yes shipscreens plan --profile appstore --json`,cta:`Calculate your workload`,href:`/tools/screenshot-workload-calculator/`}]},comparison:{title:`Compare approaches`,subtitle:`Most tools optimize for creating screenshots. ShipScreens optimizes for rerunning them safely with the design stack you already use.`,columns:[`Figma/Canva ops`,`AI generators`,`All-in-one SaaS`,`ShipScreens`],legend:{yes:`Yes`,partial:`Partial`,no:`No`},rows:[{label:`Keep the current design workflow`,values:[`yes`,`partial`,`no`,`yes`]},{label:`Deterministic reruns (same input → same output)`,values:[`no`,`no`,`partial`,`yes`]},{label:`Upload-ready folders + reproducible ZIP`,values:[`no`,`no`,`partial`,`yes`]},{label:`Natural-language AI-agent guide`,values:[`no`,`no`,`partial`,`yes`]},{label:`CLI / MCP / non-interactive (CI + agents)`,values:[`no`,`no`,`partial`,`yes`]},{label:`Pre-upload checks before submission`,values:[`no`,`no`,`partial`,`yes`]}],note:`ShipScreens does not translate your copy or upload to App Store Connect / Play Console.`},fit:{title:`Best fit vs not fit`,bestTitle:`Best fit`,bestBullets:[`You own an active commercial app with a near-term release or recurring update cadence.`,`You already design screenshots, but release reruns break on order/paths.`,`You are iPhone-first today, but iPad/Android/locales are coming next and you want the contract fixed early.`,`You handle 2+ locales or 2+ device buckets and need repeatable exports.`,`You need a non-interactive CLI/MCP path for coding agents or CI, or a browser review that preserves the same contract.`],notTitle:`Not fit (for now)`,notBullets:[`You are still early, ship rarely, or manual work is fine for now.`,`You mainly want a cheap/free screenshot generator or template gallery.`,`You only want AI-generated designs/templates and no release pipeline.`,`You need automatic translation as a managed service.`,`You need direct upload automation into App Store Connect / Play Console.`,`The only reachable inbox is a support autoresponder with no owner, product, growth, or release owner path.`],note:`If you are in the "not fit" list, keep your current design stack and use ShipScreens later when reruns/start-to-release reliability becomes the bottleneck.`},socialProof:{title:`Built for privacy-first, outcome-first reruns`,caption:`Case snapshots and ops evidence from public threads + command logs (no unverified paid testimonials).`,proofPacketCta:`Open dated proof packet`,proofPacketHref:`/downloads/shipscreens-proof-packet-2026-02.md`,permissionedQuoteCta:`Request a permissioned customer quote`,permissionedQuoteSubject:`ShipScreens permissioned customer quote request`,permissionedQuoteBody:`Hi ShipScreens team,
91
+
92
+ Please share a permissioned customer quote/reference for internal review.
93
+
94
+ - App / URL:
95
+ - Platform:
96
+ - Device x locale scope:
97
+ - Evidence needed:
98
+
99
+ Thanks.`,items:[{quote:`Locale-matrix teams still hit rerun drift; fixed 01..05 slot order plus locale templates gave a stable repeat path.`,name:`Case snapshot (2026-02-26)`,role:`localization_scale thread + follow-up`,evidenceLabel:`Source + reply evidence`,evidenceHref:`https://x.com/shipscreenscom/status/2026817239933161493`},{quote:`ASO review threads asking for screenshot conversion help were answered with concrete panel narrative and checklist-style follow-up.`,name:`Case snapshot (2026-02-25)`,role:`aso_optimization public thread`,evidenceLabel:`Source + reply evidence`,evidenceHref:`https://www.reddit.com/r/AppStoreOptimization/comments/1re6h38/comment/o7ayxwt/`},{quote:`Ops snapshot (2026-02-26): 343 logged leads, 0 missing pain/intent/evidence hygiene fields.`,name:`Ops evidence`,role:`npm run -s outbound:metrics`,evidenceLabel:`Open dated proof packet`,evidenceHref:`/downloads/shipscreens-proof-packet-2026-02.md`}],badges:[`Keep your design workflow`,`Screenshots stay local`,`Deterministic upload-ready outputs`]},partner:{title:`Paid release setup scope for repeatable screenshot ops`,body:`Start with an async release-risk review; use a 15-min call only if that is faster. If the fit is right, we scope a paid release-setup engagement around naming/order/folder contract, upload checks, first export, and an upload-ready workflow without changing your design stack.`,scopeBullets:[`Keep Figma/Canva/AI/manual creation; harden the release path instead.`,`Best for naming/order drift, iPad/review surprises, locale/device growth, or upload-root churn.`,`Leaves you with a clear yes/no on the next paid step, not a vague audit.`],emailCta:`Request release setup review`,dmCta:`DM about release setup`,jumpCta:`Open release setup review`,payFirstCta:`Prefer a paid scope first? Open pay-first`,emailSubject:`ShipScreens release setup review`,emailBody:`Hi ShipScreens team,
100
+
101
+ I'd like an async release-risk review to see whether a paid screenshot release-setup scope makes sense.
102
+
103
+ - App name / link:
104
+ - Release timeline:
105
+ - Current screenshot workflow (Figma/Canva/AI/Fastlane/manual):
106
+ - iPhone-only or device/locale matrix:
107
+ - Biggest blocker (panel #1, naming/order, iPad/review, upload roots):
108
+ - If fit, what should the first paid deliverable focus on?
109
+
110
+ Thanks!`,emailLabel:`Email:`},pricing:{free:{title:`Free`,price:`$0`,bullets:[`Browser fallback first export (watermarked, 1 locale, up to 5 slides)`,`1 iOS + 1 Android device`,`Upload-ready folders + ZIP (limited)`],cta:`Open browser fallback`},pro:{title:`Pro`,price:`$19/mo (USD)`,bullets:[`Watermark-free release exports`,`Full device × locale reruns`,`CSV/JSON copy import for localization ops`,`Deterministic Fastlane-ready outputs`,`Pre-upload checks for path/review drift`],cta:`Upgrade to Pro`,badge:`Best`},starter:{title:`Agent Starter`,price:`$5/mo (USD)`,bullets:[`One active app release workflow`,`Watermark-free agent-run exports`,`Connected device/emulator capture path`,`Verify/stage proof before store upload`],cta:`Start Agent Starter`,fallbackCta:`Request $5 Starter`,badge:`Low friction`},cliProUnlock:{title:`Unlock Pro (CLI)`,body:`Once you need watermark-free exports, run:`,cmd:`npx --yes shipscreens auth login`,note:`Completes a one-time browser sign-in; then rerun agent-run with --require-pro.`}},faq:{title:`Frequently Asked Questions`,items:[{q:`Can I use this for commercial apps?`,a:`Yes. You own all exported assets.`},{q:`Do you upload screenshots?`,a:`No. Rendering/export runs locally (browser or CI runner). No uploads to ShipScreens; store upload still required.`},{q:`Do I have to use the browser UI?`,a:`No. The CLI runs headless Chromium locally or in CI, so you can export without opening the app.`},{q:`Can I run this in CI?`,a:`Yes. Run shipscreens build + verify/lock/stage in CI to generate reproducible outputs for Fastlane.`},{q:`Will this force my screenshots to look generic?`,a:`No. ShipScreens fixes pipeline consistency and panel order; your visual style stays yours. Clarity check: if screenshot #1 could fit many apps, rewrite it with one concrete outcome. If needed, pair screenshots with a short app preview video.`},{q:`Is cancellation easy?`,a:`Yes. Cancel anytime from Manage Subscription in one click.`},{q:`Do you support Android?`,a:`Yes. Pixel, Galaxy, and generic Android frames are included.`}]},footer:{copyright:`© {{year}} ShipScreens`,terms:`Terms`,privacy:`Privacy`,legal:`Legal (Japan)`,links:[{label:`iPhone Screenshot Generator`,href:`/app/`},{label:`Android Screenshot Generator`,href:`/app/`},{label:`Fastlane Screenshot Pipeline`,href:`/app/`},{label:`Screenshot Cheat Sheets`,href:`/tools/`},{label:`5-minute First Export`,href:`/tools/first-export/`},{label:`Screenshot Workload Calculator`,href:`/tools/screenshot-workload-calculator/`},{label:`5-panel Screenshot Framework`,href:`/tools/5-panel-screenshot-framework/`},{label:`Store Assets Pipeline Kit`,href:`/tools/store-assets-pipeline/`}]}},auth:{title:`Sign In`,subtitle:`Access your account to continue`,signupTitle:`Create your account`,signupSubtitle:`Start generating screenshots in seconds.`,email:`Email`,password:`Password`,code:`Verification Code`,placeholders:{email:`you@example.com`,password:`Your password`,passwordNew:`At least 8 characters`},links:{forgotPassword:`Forgot password?`},remember:`Remember me`,actions:{signIn:`Sign In`,signUp:`Sign Up`,createAccount:`Create Account`,haveAccount:`Already have an account?`,needAccount:`Don't have an account?`,goToSignIn:`Go to Sign In`,goToSignUp:`Go to Sign Up`,signOut:`Sign Out`,showPassword:`Show password`,hidePassword:`Hide password`,confirm:`Confirm`,cancel:`Cancel`},errors:{UserNotFoundException:`No account found with this email.`,NotAuthorizedException:`Incorrect email or password.`,UsernameExistsException:`An account with this email already exists.`,CodeMismatchException:`Invalid verification code.`,ExpiredCodeException:`Verification code has expired. Please request a new one.`,default:`Sign-in failed. Please try again.`},success:{signup:`Sign-up succeeded. Please check your email for the verification code.`,confirm:`Email verified. You can now sign in.`},helper:{terms:`By continuing you agree to our Terms and Privacy.`},forgot:{title:`Reset your password`,subtitle:`Enter your email to receive a reset code.`,sendCode:`Send Reset Code`,newPassword:`New Password`,reset:`Reset Password`,codeSent:`We sent a reset code to your email.`}},terms:{title:`Terms of Service`,intro:`By accessing or using ShipScreens ("Service"), you agree to be bound by these Terms. If you disagree with any part of the terms, you may not access the Service.`,sections:[{title:`1. Service Description`,body:`ShipScreens is a web-based tool for creating and exporting mobile app screenshots. We provide Free (watermarked), Pro (subscription-based), and limited fixed-scope release-setup offers. We reserve the right to modify or discontinue the Service at any time.`},{title:`2. Intellectual Property`,body:`You retain all rights to the images and content you upload and the screenshots you generate using the Service ("User Content"). You grant us a license to process this content solely for the purpose of providing the Service. The Service itself (code, design, templates) is owned by ShipScreens.`},{title:`3. Accounts & Payment`,body:`You are responsible for maintaining the confidentiality of your account. Pro subscriptions are billed in advance on a monthly basis via Stripe. Limited fixed-scope release-setup offers may be sold as one-time payments via Stripe at the displayed checkout price. Payments are non-refundable, except as required by law. You may cancel subscriptions at any time via the dashboard.`},{title:`4. Prohibited Uses`,body:`You agree not to: (a) reverse engineer the Service; (b) use the Service for illegal purposes; (c) attempting to bypass usage limits or watermarks through unauthorized means.`},{title:`5. Disclaimer & Limitation of Liability`,body:`The Service is provided "AS IS". We make no warranties regarding uptime or data integrity. We may suspend or modify the Service without notice. To the fullest extent permitted by law, ShipScreens is not liable for any indirect, incidental, or consequential damages, and any direct liability shall not exceed the fees paid by you for the Service in the past one (1) month.`},{title:`6. Governing Law`,body:`These Terms shall be governed by the laws of Japan. Any disputes shall be subject to the exclusive jurisdiction of the Tokyo District Court.`}],contact:`Contact: {{email}}`},privacy:{title:`Privacy Policy`,intro:`This Privacy Policy explains how ShipScreens collects, uses, and protects your information.`,sections:[{title:`Information Collection`,items:[`Account Information: Email address (via Cognito).`,`Payment Information: Processed securely by Stripe (we do not store card details).`,`Usage Data: Browser type, device info, and interaction metrics (via Google Analytics).`,`Team Data (if enabled): Project config, localized copy, presets, and audit logs.`,`Images: Base screenshots and generated outputs are processed and kept on your device by default (we do not store them). Optional small brand assets (e.g., logo/badge/background) may be stored only if you explicitly opt in.`]},{title:`How We Use Your Data`,body:`To provide and maintain the Service, process payments, improve user experience, and communicate with you regarding your account. We do not sell your personal data.`},{title:`Third-Party Services`,body:`We share data with trusted partners solely for operating the Service: AWS (Hosting/Infrastructure), Stripe (Payments), and Google Analytics (Analysis).`},{title:`Cookies`,body:`We use cookies to maintain your session and preferences. You can control cookie settings through your browser or our consent banner.`},{title:`Your Rights`,body:`You have the right to access, correct, or delete your personal information. Please contact us at support@shimaumaservices.co.jp for assistance.`}],contact:`Contact: {{email}}`},pages:{success:{title:`Checkout succeeded`,description:`Stripe checkout finished. If you are signed in, open the app to refresh and confirm Pro access.`,action:`Open the app`},cancelled:{title:`Checkout was cancelled`,description:`Stripe checkout was cancelled. Review the details and try again if needed.`,action:`Back to app`}},legal:{title:`Legal (Specified Commercial Transactions Act)`,intro:`Disclosures required by Japanese law.`,fields:[{label:`Seller`,value:`Shimauma Services, Inc.`},{label:`Representative`,value:`Takefumi Miyauchi`},{label:`Address`,value:`1-12-4-6F Ginza, Chuo-ku, Tokyo, Japan`},{label:`Phone Number`,value:`Disclosed without delay upon request via email.`},{label:`Email Address`,value:`support@shimaumaservices.co.jp`},{label:`Service URL`,value:`https://shipscreens.com`},{label:`Pricing`,value:`Agent Starter: $5/month (USD) when configured. Pro Plan: $19/month (USD). Fixed-scope release-setup offers may be sold as one-time payments at the displayed checkout price (for example, Launch Pass $49, paid teardown $99, or a larger setup pilot). Consumption tax may apply.`},{label:`Payment Method`,value:`Credit Card (via Stripe).`},{label:`Payment Timing`,value:`Processed immediately upon subscription and automatically renewed monthly.`},{label:`Delivery Time`,value:`Pro features are available immediately after successful payment. Fixed-scope release-setup offers start after payment confirmation and follow-up scheduling by email.`},{label:`Returns & Cancellations`,value:`Due to the digital nature of the service, no refunds are offered. Subscriptions can be cancelled at any time via the "Manage Subscription" page, effective at the end of the current billing period. One-time release-setup offers cannot be cancelled after purchase except where required by law.`},{label:`System Requirements`,value:`Requires a modern web browser (Chrome, Safari, Edge, etc.) and internet connection.`}],notesTitle:`Notes`,notes:[],contact:`Contact: {{email}}`}}},ja:{translation:{titles:{landing:`ShipScreens - coding agent 向けスクショ運用`,editor:`エディター - ShipScreens`,signIn:`サインイン - ShipScreens`,signUp:`サインアップ - ShipScreens`,forgotPassword:`パスワードリセット - ShipScreens`,notFound:`ページが見つかりません - ShipScreens`,pricing:`料金 - ShipScreens`,workloadCalculator:`スクショ作業量計算ツール - ShipScreens`,fivePanelFramework:`5枚構成スクショフレームワーク - ShipScreens`,storeAssetsPipeline:`ストア素材パイプラインキット - ShipScreens`,tools:`スクショのチートシート&ツール - ShipScreens`,firstExport:`5分で初回エクスポート - ShipScreens`,fastlaneScreenshots:`Fastlane用スクショのフォルダ構成 - ShipScreens`,appReviewAso:`App Review / ASO クイックチェック - ShipScreens`,agentCli:`coding agent 向けApp Storeスクショ自動化CLI - ShipScreens`,terms:`利用規約 - ShipScreens`,privacy:`プライバシー - ShipScreens`,legal:`特商法表記 - ShipScreens`,proof:`実績・証跡 - ShipScreens`,designPartner:`Design Partner オファー - ShipScreens`,agentStarterRequest:`Agent Starter 申込 - ShipScreens`,checkoutSuccess:`決済完了 - ShipScreens`,checkoutCancelled:`決済キャンセル - ShipScreens`},common:{manageSubscription:`サブスクリプションを管理`,copy:`コピー`,copied:`コピーしました`,copyFailed:`コピーに失敗しました`,showCommands:`コマンドを展開`,menu:`メニュー`,close:`閉じる`,cookie:{message:`本サービスは必須クッキーと任意の解析用クッキーを利用します。`,accept:`同意する`,decline:`拒否する`,manage:`クッキー設定`,hide:`閉じる`},cliPreflight:{title:`実行前の準備チェック`,body:`ここまで決まっているとCLIが止まらずに最後まで回ります。`,bullets:[`PNG素材とパスが確定(placeholderなし)。`,`ロケール/端末/枚数が確定。`,`各ロケールのコピーが準備済み(config or CSV)。`,`フレーム/背景/フォント/バッジなどのブランド設定が確定。`],note:`agent-run はPNGが欠けている/プレースホルダーだと停止します。`,cta:`CLI準備チェックを見る`}},notFound:{title:`ページが見つかりません`,description:`お探しのページは存在しないか移動しました。`,backHome:`ホームへ戻る`,openApp:`アプリを開く`},upgrade:{title:`Pro へアップグレード`,subtitle:`Freeプレビューで出力が合えば、本番再実行向けに解除(フル一括 + copy運用 + 透かし解除)。`,authRequired:`先にアカウント作成またはサインインしてください。作業内容を保持し、戻ったあと決済に進みます。`,plans:{starter:{title:`Agent Starter を開始`,subtitle:`最初の有償 yes 向け。1アプリ、agent-run 出力、verify/stage proof、透かし解除を $5/mo で始めます。`,features:[`1つのアクティブなアプリリリース運用で透かしなし`,`agent-run 出力 + verify/stage proof`,`接続端末/エミュレータ画面の capture 導線`,`Fastlane 向けローカル出力ルート`,`フルマトリクス再実行が必要になったら Pro へ移行`],cta:`Agent Starter を開始 - $5/mo (USD)`},annual:{title:`Pro Annual を開始`,subtitle:`毎リリースのスクショ運用向け。フル再実行、copy取り込み、透かし解除をまとめて使います。`,cta:`Pro Annual を開始 - $99/year (USD)`}},features:[`本番出力でウォーターマークなし`,`フル一括の再実行(端末×言語)`,`定期更新向けの CSV/JSON copy 取り込み`,`再利用できるプリセット/ブランディング`,`決定的な CI 再実行(rendered出力はCLI認証対応)`],cta:`Proを解除 - $19/mo (USD)`,legal:`いつでも解約できます。アップグレードにより利用規約・プライバシー・特商法表示に同意したものとみなされます。`,later:`あとで`},consent:{billing:`続行すると利用規約・プライバシー・特商法表示に同意したものとみなされます。`},app:{alerts:{signInUpgrade:`アップグレード前にサインインしてください。`,priceMissing:`Stripe の価格 ID が未設定です`,checkoutFailed:`チェックアウト開始に失敗しました。もう一度お試しください。`,signInManage:`サブスクリプション管理の前にサインインしてください。`,portalUnavailable:`ポータル URL が取得できません。しばらくしてからお試しください。`,portalFailed:`ポータルの起動に失敗しました。もう一度お試しください。`,portalNoCustomer:`決済完了後に管理が可能になります。未決済の場合はアップグレードを完了するか、support@shimaumaservices.co.jp までご連絡ください。`,importSuccess:`{{count}} 言語の設定を取り込みました。`,presetSaved:`プリセットを保存しました!`,generateFailed:`画像の生成に失敗しました。`,exportFailed:`エクスポートに失敗しました。`,shareTooLarge:`プロジェクト設定が大きすぎて URL 共有できません。`,shareUnableCopy:`URL をコピーできませんでした。`,shareManualCopy:`URL をコピーできませんでした。ブラウザのアドレスバーから手動でコピーしてください。`,fileType:`画像ファイルを選択してください(最大 20MB)。`,fileSize:`ファイルサイズは 20MB までです。`,slideLimit:`スライドは最大 50 枚までです。`,importInvalidCsvColumns:`CSVの列名を認識できませんでした。例: Locale,Header_1,Subtitle_1,Header_2,Subtitle_2,...`,importInvalidCsv:`CSV の解析に失敗しました。カンマや引用符の形式をご確認ください。`,importCsvNoRows:`有効なCSV行が見つかりませんでした。Locale と Header_#/Subtitle_# のいずれかを入力してください。`,iosZipWarning:`iOS Safari では ZIP 保存に制限がある場合があります。続行しますか?`,localesAdded:`{{count}} 言語を追加しました`},sessionExpired:{message:`セッションの有効期限が切れました。再度サインインしてください。`,dismiss:`閉じる`},fonts:{inter:`モダンゴシック (Inter)`,roboto:`クリーン (Roboto)`,montserrat:`ジオメトリック (Montserrat)`,playfair:`エレガント明朝 (Playfair Display)`,merriweather:`クラシック明朝 (Merriweather)`,system:`システム標準`},userMenu:{signedInAs:`ログイン中:`},prompts:{localeId:`ロケール ID を入力してください(例: '{{example1}}', '{{example2}}'):`,localeDefault:`es-ES`,presetName:`このプリセットの名前を入力してください:`,presetDefault:`マイテーマ`},defaults:{newSlideTitle:`新しいスライド`,newSlideDesc:`説明`,newLocaleHeader:`ヘッダー`,newLocaleSub:`サブタイトル`},share:{success:`共有しました!`,copySuccess:`プロジェクト URL をコピーしました(画像は URL 共有されません)`,fallbackSuccess:`プロジェクト URL をコピーしました(画像は URL 共有されません)`,manualCopy:`URL をコピーできませんでした。アドレスバーから手動でコピーしてください。`,unableCopy:`URL をコピーできませんでした。`},statuses:{saved:`保存しました(次回アクセス時に復元できます)`,loaded:`ブラウザから復元しました`,shared:`共有しました!`},history:{undo:`元に戻す`,redo:`やり直す`},mobile:{openControls:`設定パネルを開く`,closeControls:`設定パネルを閉じる`},checkout:{success:`決済が完了しました。Pro機能が有効になりました。`,pending:`決済状況を確認中... ({{count}}/6)`,retry:`ステータスがまだ確認できません。再度試すか、少し待ってください。`,signin:`Proアクセスを確認するため、サインインしてください。`},progress:{generating:`アセットを生成中...`,images:`{{current}} / {{total}} 枚`,detail:`現在 {{locale}} の {{device}} スライド {{index}} を生成中`,preparingBundle:`Fastlane ZIP を準備中...`,cancelling:`キャンセル中...`},header:{editor:`エディター`,batch:`バッチ`,pro:`(Pro)`,download:`ダウンロード`,manage:`契約管理`,share:`プロジェクト共有`,upgrade:`Pro にアップグレード`,redirecting:`リダイレクト中...`,downloadPro:`ダウンロード(透かしなし)`,downloadWatermark:`ダウンロード(透かしあり)`,switchToJa:`日本語に切り替え`,switchToEn:`英語に切り替え`,exportBundle:`Fastlane ZIP を書き出す`,ciQuickstartShort:`coding+CI`,ciQuickstart:`coding agent + CIガイド`,confirm:`OK`},upsell:{watermarkToast:{message:`ウォーターマーク付きで書き出しました。Proで解除できます。`,action:`ウォーターマーク解除`}},tabs:{edit:`コンテンツ`,style:`デザイン`,templates:`テンプレ/プリセット`,data:`データ/エクスポート`},content:{title:`コンテンツ`,headerPlaceholder:`ヘッダー ({{locale}})`,subPlaceholder:`サブタイトル ({{locale}})`,changeImage:`画像を変更`,uploadScreenshot:`スクリーンショットをアップロード`,changeImageForLocale:`画像を変更({{locale}})`,uploadScreenshotForLocale:`スクリーンショットをアップロード({{locale}})`,screenshotScopeLabel:`適用先`,screenshotScopeShared:`共通`,screenshotScopeLocale:`この言語`,screenshotScopeOverride:`上書き`,screenshotClear:`画像を削除`,screenshotSharedOverridesHint:`このスライドには上書きが{{count}}言語あります(共通を変更しても反映されません)。`,screenshotLocaleFallbackHint:`この言語の上書きは未設定のため、共通スクショを使用中です。`,screenshotLocaleEmptyHint:`まだスクショがありません。この言語用にアップロードしてください。`,clearAllOverrides:`上書きを一括クリア`,clearAllOverridesConfirm:`このスライドのロケール別スクショ上書きをすべて削除しますか?`},language:{title:`言語`,remove:`削除`,description:`出力する言語を管理します。選択した言語がプレビューに表示され、テキストの編集対象になります。`,add:`追加`,searchPlaceholder:`検索 (例: ja, Japanese)`,presets:`プリセット`,noResults:`見つかりませんでした`,presetsHint:`EFIGS (欧州) / CJK (アジア) プリセットも利用可能`},device:{title:`デバイス`,portrait:`縦向き`,landscape:`横向き`,searchPlaceholder:`検索 (例: 6.9, 1290x2796, Pixel)`,labelMode:{store:`ストア表記`,detailed:`端末+解像度`},labelModeHint:`デバイス一覧の表示名を切り替えます(生成画像には影響しません)。`,groups:{iPhone:`iPhone`,iphoneClassic:`iPhone Classic`,iPad:`iPad`,android:`Android`,androidTablet:`Android タブレット`,watch:`Watch`}},theme:{title:`テーマ`,clean:`クリーン`,dark:`ダーク`,pop:`ポップ`},background:{title:`背景`,types:{transparent:`透過`,solid:`単色`,gradient:`グラデーション`,image:`画像`},upload:`背景をアップロード`,blur:`ぼかし`,dim:`暗さ`},branding:{title:`ブランディング`,frameColor:`フレームカラー`,uploadLogo:`ロゴをアップロード`},layout:{title:`レイアウトと書体`,options:{top:`標準`,bottom:`POP`,split:`分割`},textColor:`テキストカラー`,topSpacing:`上マージン`,scale:`スケール`,overrideToggle:`このスライドを個別に調整`,overrideReset:`リセット`},badge:{title:`バッジ`,options:{none:`なし`,stars:`評価`,award:`編集部おすすめ`,download:`App Store`,googleplay:`Google Play`}},templates:{official:`公式テンプレート`,officialItems:{minimal_dark:`Minimal Dark`,clean_blue:`Clean Blue`,vibrant_gradient:`Vibrant Pop`,split_modern:`Split Modern`},mine:`保存したスタイル (デザインのみ)`,saveCurrent:`+ 現在のスタイルを保存`,empty:`保存されたスタイルはありません。
111
+ ※テキストや画像は保存されません。`,proRequired:`スタイルの保存は Pro 専用です`},data:{title:`データ管理`,browserTitle:`ローカルワークスペース (この端末のみ)`,limitInfo:`保存上限の目安: 約5MB`,usageInfo:`{{used}}MB 使用中`,quotaWarning:`容量が一杯に近づいています。画像を含む場合は「ファイル書き出し」を推奨します。`,overwrite:`上書き保存`,overwriteDesc:`作業の中断・再開用`,restore:`復元`,settingsOnlyShort:`設定のみ保存`,fileExportTitle:`ファイル書き出し`,fileExportBadge:`容量制限なし・完全バックアップ`,fileExportDesc:`現在の状態を1つのファイル (.json) にしてPCに保存します。<br/>別のPCへの移行や、高画質画像の保存に最適です。`,includeAll:`すべて含まれます`,saveBrowser:`ブラウザに一時保存`,saveBrowserDesc:`このブラウザにのみ保存されます。アカウント同期はされません。`,saveSettingsOnly:`設定のみ保存(画像なし)`,load:`ブラウザから読み込み`,loadConfirm:`現在の作業内容は上書きされます。よろしいですか?`,export:`プロジェクトを書き出し`,exportDesc:`.json ファイルとしてPCに保存します。バックアップに最適です。`,import:`プロジェクトを読み込み`,dropJson:`.json ファイルをここにドロップして復元`,storageUsage:`ブラウザ保存容量`,privacy:`データはブラウザ内に保存されます。サーバーには送信されません。`,sampleTitle:`サンプルプロジェクト`,sampleDesc:`5枚構成の雛形(画像なし)を読み込みます。初回のExportにおすすめ。`,sampleLoad:`サンプルを読み込む`,cliTitle:`coding agent + CLIガイド(ブラウザ不要)`,cliDesc:`coding agent に wizard を 1 回走らせるか、自分で実行してから、ローカル/CI で出力。`,cliCmd:`npx --yes shipscreens wizard
112
+ # assets/en-US/01.png〜05.png を差し替え
113
+ npx --yes shipscreens agent-run --mode raw --zip --out out/agent --stage`,cliLink:`coding agent ガイドを開く`,sampleConfirm:`現在の作業内容はサンプルで上書きされます(画像はクリアされます)。よろしいですか?`,sampleLoaded:`サンプルを読み込みました`,sampleWelcomeTitle:`クイックスタート`,sampleWelcomeBody:`サンプルを読み込んで最短でExportまで試せます(おすすめ)。`,sampleWelcomeLoad:`サンプルを読み込む`,sampleWelcomeBlank:`空から始める`,saveQuotaError:`保存容量が一杯です。「設定のみ保存」か書き出しを試してください。`,saveBlocked:`保存に失敗しました。ブラウザのCookie/サイトデータ設定を確認してください。`,loadMissing:`保存されたデータが見つかりませんでした。`,loadError:`読み込みに失敗しました。`,importError:`無効なファイルです。正しいJSONを選択してください。`,exportError:`書き出しに失敗しました。再度お試しください。`},teamSync:{title:`Team Sync(Beta)`,subtitle:`設定・コピーを同期。スクショは端末に残します。`,note:`プロジェクト設定とローカライズ文言をShipScreensに同期します。アプリのスクショや生成物は原則保存しません。`,signInRequired:`Team Syncを使うにはログインが必要です。`,refresh:`更新`,selectWorkspace:`Workspaceを選択`,newWorkspace:`新規`,selectProject:`Projectを選択`,newProject:`新規`,head:`リモート`,refreshHead:`状態を更新`,pull:`Pull`,push:`Push`,invites:`招待`,createInvite:`招待トークン作成`,invitePlaceholder:`招待トークンを貼り付け…`,acceptInvite:`参加`,copy:`コピー`,expires:`期限`,toasts:{workspaceCreated:`Workspaceを作成しました`,projectCreated:`Projectを作成しました`,noRemoteSpec:`まだリモートにデータがありません。先にPushしてください。`,pulled:`最新をPullしました(画像は端末に保持)`,pushed:`現在の設定をPushしました`,inviteCreated:`招待トークンを作成しました`,inviteAccepted:`招待を受け付けました`},errors:{fetchWorkspaces:`Workspaceの取得に失敗しました`,fetchProjects:`Projectの取得に失敗しました`,createWorkspace:`Workspaceの作成に失敗しました`,createProject:`Projectの作成に失敗しました`,pull:`Pullに失敗しました`,push:`Pushに失敗しました`,conflict:`競合しました。Pullしてから再度Pushしてください`,invite:`招待トークンの作成に失敗しました`,inviteAccept:`招待の受付に失敗しました`}},importer:{title:`コピーをCSVで取り込み`,description:`スライドごとの多言語コピーをCSVから読み込みます。翻訳は外部でOK、ShipScreensは崩れないレイアウトを作ります。`,downloadTemplate:`テンプレートをダウンロード`,importCsv:`CSV を取り込む`,hint:`※ 列はスライド番号に対応します(例: <code>Header_1</code>, <code>Subtitle_1</code>, <code>Header_2</code>...)。テンプレートは <b>現在 / 5 / 7 / 10 / カスタム</b> を選んでDLできます。<code>Locale</code>列には en-US, ja-JP などの言語コードを指定すると、国旗と正式名称が自動で反映されます。`,previewTitle:`CSV 取り込み内容の確認`,previewSummary:`{{count}}言語 × {{slides}}枚のスライドを検出しました。取り込みますか?`,previewWarning:`{{count}} 件の警告があります。可能なデータを読み込みました。`,previewMore:`...ほか {{extra}} 言語`,previewMoreSlides:`...ほか {{extra}} 枚`,previewSlideNoteAdd:`この取り込みでスライドが {{count}} 枚追加されます(画像は空のままです)。`,previewSlideNotePartial:`CSV は {{count}} 枚分です。{{from}} 枚目以降のスライドは変更されません。`,previewChangesTitle:`変更内容`,delta:{localesAdded:`+{{count}}言語`,localesRemoved:`-{{count}}言語`,localesUpdated:`{{count}}言語更新`,localesUnchanged:`{{count}}言語そのまま`,localesKept:`{{count}}言語を保持`,slidesAdded:`+{{count}}枚`,slidesUnchanged:`{{count}}枚は未変更`},templateDialog:{title:`CSVテンプレートをダウンロード`,description:`列(スライド枚数)を選択してください。`,optionCurrent:`現在のプロジェクト({{count}}枚)`,optionCurrentDesc:`ストーリーボードの枚数に合わせます。`,optionCustom:`カスタム`,optionCustomDesc:`指定した枚数で列を作ります。`,optionCustomUnit:`枚`,optionPreset:`{{count}}枚`,optionPresetDesc:`よくあるスクショ枚数で作ります。`,download:`ダウンロード`},previewApply:`取り込みを適用`,mode:{label:`取り込みモード`,merge:`マージ (既存を維持)`,replace:`すべて置換`,mergeDesc:`既存の言語設定を残しつつ、CSVの内容で更新・追加します。`,replaceDesc:`現在の言語設定をすべて削除し、CSVの内容に置き換えます。`}},screenshotImporter:{title:`ロケール別スクショを取り込み`,description:`言語(ロケール)×スライド番号で、スクショ(上書き)をまとめて取り込みます。`,hint:`<b>ZIP</b> または <b>フォルダ/ファイル</b> で取り込みできます。例: <code>en-US/01.png</code>, <code>ja-JP/02.png</code>, <code>en-US_01.png</code>。スライド番号は <b>1-50</b>。`,importZip:`ZIP`,importFolder:`フォルダ`,importFiles:`ファイル`,filesLabel:`{{count}}ファイル`,noFiles:`画像ファイルが見つかりませんでした。`,noMatches:`ロケール + スライド番号として認識できるファイルがありませんでした。`,failed:`スクショの取り込みに失敗しました。`,applied:`{{count}}枚のスクショを取り込みました。`,appliedWithErrors:`{{count}}枚取り込みました({{errors}}枚失敗)。`,dialog:{title:`スクショ取り込み内容の確認`,summary:`{{count}}枚 → {{locales}}言語 × {{slides}}枚`,source:`ソース: {{source}}`,noteAddLocales:`+{{count}}言語を追加します`,noteAddSlides:`+{{count}}枚のスライドを追加します(画像は空のまま)`,warnSkipped:`{{count}}件スキップしました(名前/パスを認識できません)`,warnNotImages:`{{count}}件スキップしました(画像以外)`,warnOutOfRange:`{{count}}件スキップしました(スライド番号が範囲外)`,noteDuplicates:`{{count}}件の重複があります(最後のファイルが適用されます)`,progress:`取り込み中... {{current}} / {{total}}`,apply:`取り込みを適用`,applying:`取り込み中...`}},batch:{title:`バッチ出力デバイス`,selected:`{{count}} 件選択`,noDevices:`少なくとも 1 つデバイスを選択してください。`,presets:{title:`クイック選択`,iosRequired:`iOS 必須サイズ`,playPhone:`Play: Phone`,playTablet:`Play: Tablet`,all:`全て`,clear:`クリア`},structure:{title:`ZIP 構成`,byLocale:`言語フォルダ (Fastlane)`,byDevice:`デバイスフォルダ`},freePreview:{badge:`Freeプレビュー`,title:`Free プレビュー(バンドル)`,body:`Freeプレビューは 1言語 × 最大5枚 × iOS 1台 + Android 1台(透かし付き)まで。出力が合えば、Proでフル一括の再実行を解放。`,cta:`Proを解除`}},storyboard:{addSlide:`スライドを追加`,localeOverrides:`上書き {{count}}`,dropToAddSlides:`画像をドロップしてスライドを追加`},csv:{headerRow:`Locale,Header_1,Subtitle_1`,exampleEn:`en-US,New App,Available Now`,exampleJa:`ja-JP,新作アプリ,近日リリース`},canvas:{watermark:`ShipScreens`,center:`中央に合わせる`,badges:{award:`編集部おすすめ`,downloadLine1:`Download on the`,downloadLine2:`App Store`,googleLine1:`GET IT ON`,googleLine2:`Google Play`}}},landing:{nav:{openApp:`アプリを開く`,tools:`ツール`,pricing:`料金`,goPro:`Proへ`,primaryCta:`coding agent ガイドを見る`},tagline:`スクショをビルド工程へ。`,headline:`更新が続く商用アプリ向けの、壊れないスクショ運用。`,subheading:`ShipScreensは新しいスクショ作成ツールではありません。リリースごとの再実行が重要になった商用アプリ向けに、今の Figma/Canva/AI/手動フローを維持したまま、Fastlane 向けの再現できる出力と提出前チェックへ変換します。`,whoFor:`最も向いているのは、既にスクショは作れているが、更新・端末バケット・多言語・iPad審査・提出ルートで手戻りが出ている release / growth / founder-operator です。開発者は MCP/CLI/CI、ASO/マーケはブラウザ + CSV で同じ契約を使えます。`,ctas:{primary:`coding agent ガイドを見る`,secondarySample:`ブラウザで初回エクスポート(5分)`,secondaryTools:`訴求 + 運用チートシート`,secondaryCi:`coding agent + CIガイド`},badges:[`更新が続く商用アプリ向け`,`Figma/Canva/AIを維持`,`Fastlane提出向け`],hero:{livePreview:`リリース工程クイックスタート`,devices:`wizard -> agent-run -> proof`,caption:`ローカル/CI実行 · ブラウザ不要 · 再現性ZIP`,alt:`ShipScreens CLI クイックスタート(wizard/agent-run)`,outputs:[`自然文で 1 回指示するだけで、スクショ運用を毎回組み直さなくてよくなる`,`このワークスペースで使える MCP または CLI を agent 自身に選ばせる`,`01..05 命名、訴求順、Fastlane 提出向けルートをリリース前に固定`,`提出前チェックで混在フォルダ、iPad審査系の抜け、スロット欠けを検知`],agentPrompt:{label:`coding agent に渡すプロンプト`,code:`このモバイルアプリのリリース用スクリーンショットは、ShipScreens をビルド工程として使って進めてください。今の Figma/Fastlane/手動フローは維持し、この repo を確認して、このプロジェクトで使える MCP または CLI を選び、Fastlane 向けの再現できる出力を生成し、verify と stage を実行し、出力パス・警告・次の作業を短く報告してください。端末/言語スコープか1枚目訴求が不明なときだけ確認してください。`,note:`おすすめは、自然文で 1 回指示して最初の再現できる出力だけ確認することです。`},cliQuickstart:{label:`設定後に実行するコマンド`,code:`# 1) CLI初回エクスポート
114
+ npx --yes shipscreens wizard --defaults
115
+ npx --yes shipscreens agent-run --mode raw --zip --out out --stage --profile appstore
116
+
117
+ # 2) Pro解除(透かし解除)
118
+ npx --yes shipscreens auth login
119
+ npx --yes shipscreens agent-run --mode raw --zip --out out --stage --profile appstore --require-pro`,note:`MCP設定後でも CLI 直実行でも、その後はこの再現できる agent-run と提出前チェックに入ります。`},tabs:{output:`出力例`,quickstart:`CLI`},outputExample:{badge:`OUTPUT`,title:`出力を見てからコミットできます`,desc:`ShipScreensは、Fastlaneにそのまま流せるフォルダ、ZIP、staged upload root、proof report を生成します。`,treeLabel:`出力ツリー例`,tree:`out/agent/
120
+ fastlane/
121
+ screenshots/ # iOS (deliver)
122
+ en-US/
123
+ iphone69_01.png
124
+ iphone69_02.png
125
+ metadata/
126
+ android/ # Android (supply)
127
+ en-US/
128
+ images/
129
+ phoneScreenshots/
130
+ 01.png
131
+ 02.png
132
+ fastlane_assets.zip
133
+ shipscreens.agent-report.json
134
+ shipscreens.agent-summary.md
135
+
136
+ out/agent-stage/`,thumbAlt:`スクショ出力例`,messageExamplesTitle:`1枚目見出しの業種別例(曖昧 -> 具体)`,messageExamplesLead:`業種ごとに成果を具体化します。同じ文言が他の多くのアプリにも当てはまるなら書き直します。`,messageExamplesBadLabel:`曖昧`,messageExamplesGoodLabel:`具体`,messageExamples:[{category:`家計管理アプリ`,bad:`お金のことを全部学べる`,good:`10分で週次予算を作って、支出を自動で把握する`},{category:`習慣化アプリ`,bad:`最強の習慣管理アプリ`,good:`3つの習慣を毎日記録し、連続達成と週次レビューで続ける`},{category:`献立アプリ`,bad:`健康的な食事がもっと簡単に`,good:`低糖質の夕食5日分を10分で組み、買い物リストを自動作成`}],note:`agent-run --stage で build / verify / stage / report を同じ release proof に紐づけます。`},noLogin:`ログイン不要で試せます(Freeは透かし付き)。`,proUnlockNote:`Free=透かし付きプレビュー / Pro=フル一括+CSV+透かしなし`,proPriceNote:``},guardrails:{title:`提出前チェックで事故を潰す(アップロード前)`,subtitle:`スクショ運用の失敗パターンはだいたい決まっています。提出前に止めて、品質と訴求の劣化を防ぎます。`,items:[{title:`欠けを即検知`,desc:`連番の欠けや、各ロケール/端末スロットの不足を verify で検知します。`},{title:`混在フォルダ検知`,desc:`framed/unframed の混在など、deliver で事故りやすい状態を検出します。`},{title:`store別に stage`,desc:`deliver/supply 向けに、アップロード用ルートをクリーンに切り出します。`}],example:{label:`例(verifyエラー)`,code:`$ shipscreens verify --out out/agent --zip --profile appstore
137
+ Mixed iOS screenshots (unframed and _framed) are not allowed for profile=appstore: fastlane/screenshots/en-US/
138
+ Use: shipscreens stage --profile appstore --out <dir> (then upload the staged folder)`},note:`ShipScreens はストアへのアップロード自体は行いません(出力生成まで)。`},pipeline:{title:`スクショをコードとして定義する`,subtitle:`設定 + copy をコミット。CI で validate / lock の後に agent-run で build / verify / stage / report。見た目は維持しつつ、毎リリースを再現できる状態にする。`,inputs:{label:`入力`,title:`設定 + アセット(コミット可能)`,desc:`shipscreens wizard で雛形を作り、アセットはパス参照で再現性のある再実行。`,files:[{label:`shipscreens.config.yml`,code:`schemaVersion: 1
139
+
140
+ locales:
141
+ - id: en-US
142
+ - id: ja-JP
143
+
144
+ devices:
145
+ - id: iphone69
146
+ platform: ios
147
+ - id: pixel8
148
+ platform: android
149
+
150
+ slides:
151
+ - id: 1
152
+ screenshot:
153
+ path: assets/en-US/01.png
154
+ screenshotsByLocale:
155
+ ja-JP: assets/ja-JP/01.png
156
+ text:
157
+ en-US:
158
+ header: New App
159
+ sub: Available Now
160
+ ja-JP:
161
+ header: 新作アプリ
162
+ sub: 好評配信中`},{label:`copy.csv`,code:`Locale,Header_1,Subtitle_1
163
+ en-US,New App,Available Now
164
+ ja-JP,新作アプリ,好評配信中`},{label:`shipscreens.lock.json`,code:`{
165
+ "version": 1,
166
+ "assets": {
167
+ "assets/en-US/01.png": { "sha256": "…", "bytes": 12345 }
168
+ }
169
+ }`}]},outputs:{label:`出力`,title:`アップロード向け構成 + proof`,desc:`Fastlane が想定するパスに生成し、clean upload root と report artifact まで残します。`,files:[{label:`out/agent/`,code:`out/agent/
170
+ fastlane/
171
+ screenshots/
172
+ en-US/
173
+ iphone69_01.png
174
+ iphone69_02.png
175
+ metadata/
176
+ android/
177
+ en-US/
178
+ images/
179
+ phoneScreenshots/
180
+ 01.png
181
+ 02.png
182
+ fastlane_assets.zip
183
+ shipscreens.agent-report.json
184
+ shipscreens.agent-summary.md
185
+
186
+ out/agent-stage/`}],note:`agent-run --stage で upload root と report を同じ実行に固定します。`}},ciQuickstart:{title:`AIエージェント + CIガイド(コピペ)`,desc:`agent が CLI に fallback したとき、または自分で再現できるリリース工程を回すときのコアパイプラインです。`,codeLabel:`コマンド`,code:`npx --yes shipscreens validate
187
+ npx --yes shipscreens lock
188
+ npx --yes shipscreens copy check --strict --write-pseudo-csv out/copy-pseudo.csv --write-report-json out/copy-check-report.json
189
+ npx --yes shipscreens agent-run --mode raw --out out --zip --stage --profile appstore --json`,note:`上級者向け: build --mode frameit は raw + export framefile --check。`},features:[{title:`既存ツールのまま、リリース契約を固定する`,desc:`Figma/Canva/AI/手動作成はそのままに、訴求順・命名・提出ルートだけを固定して、Fastlaneのパス崩れや再実行ドリフトを止めます。`},{title:`1枚目訴求とスコープを再現可能にする`,desc:`まずは iPhone-first で1枚目の成果訴求を固定し、その後で端末/言語を拡張しても話が崩れない状態にします。`},{title:`Fastlane対応をアップロード事故なしで`,desc:`deliver / supply が想定する fastlane/ 配下を安定生成し、順序/パスの手戻りを減らします。ZIPはartifactにでき、CLI/MCPで AIエージェントやCI にも渡せます。`},{title:`提出前ゲートで事故を潰す`,desc:`混在(framed/unframed)、bucket/連番欠け、iPad審査や提出時に問題になりやすい状態をアップロード前に検知します。`}],entryPoints:{title:`2つの入口、1つの再現できるリリース工程`,subtitle:`開発者には MCP/CLI/CI、ASO/マーケにはブラウザ + CSV。中身は同じ release-safe contract です。`,items:[{title:`開発者向け: coding agent + CLI`,desc:`Claude/Cursor/Copilot/Gemini が既に開発フローにあるならこれが最優先です。このワークスペースで使う MCP または CLI を選ばせ、再現できる build / verify / stage に載せます。`,codeLabel:`例`,code:`npx --yes shipscreens@latest mcp init --client cursor
190
+ # その後 coding agent に「ShipScreens で進めて」と渡す`,cta:`coding agent ガイドを見る`,href:`/tools/agent-cli/`},{title:`ASO / マーケ向け: ブラウザ first export`,desc:`新しいデザインツールを覚えずに、現行クリエイティブ・5枚構成・CSV copy・最初のアップロード向け出力を確認したいときに最適です。`,cta:`ブラウザで初回エクスポート`,href:`/tools/first-export/`},{title:`拡張前提チーム向け: 最小マトリクスを決める`,desc:`端末/言語の増加が本当のボトルネックなら、まず最小の安定マトリクスを決めてから拡張します。`,codeLabel:`例`,code:`npx --yes shipscreens copy import --csv copy.csv --import-mode merge
191
+ npx --yes shipscreens plan --profile appstore --json`,cta:`作業量を計算する`,href:`/tools/screenshot-workload-calculator/`}]},comparison:{title:`比較`,subtitle:`多くのツールは「作る」ことを最適化します。ShipScreensは、今の制作物を安全に再実行することを最適化します。`,columns:[`Figma/Canva運用`,`AI生成`,`オールインワンSaaS`,`ShipScreens`],legend:{yes:`対応`,partial:`一部`,no:`非対応`},rows:[{label:`今のデザイン運用を維持できる`,values:[`yes`,`partial`,`no`,`yes`]},{label:`再現できる再実行(同じ入力→同じ出力)`,values:[`no`,`no`,`partial`,`yes`]},{label:`アップロード向けフォルダ + 再現性ZIP`,values:[`no`,`no`,`partial`,`yes`]},{label:`自然言語で coding agent に委譲できる`,values:[`no`,`no`,`partial`,`yes`]},{label:`CLI / MCP / non-interactive(CI + エージェント)`,values:[`no`,`no`,`partial`,`yes`]},{label:`提出前チェックのガードレール`,values:[`no`,`no`,`partial`,`yes`]}],note:`ShipScreensは「翻訳」や「ストアへのアップロード」は提供しません(出力生成まで)。`},fit:{title:`向いているケース / 向いていないケース`,bestTitle:`向いている`,bestBullets:[`近いリリース、または継続的な更新がある商用アプリを運用している。`,`既存ツールでデザインはできるが、毎リリースで順序/パスが崩れる。`,`いまは iPhone-first だが、今後 iPad/Android/多言語へ広げる前に契約を固めたい。`,`2言語以上 or 2端末バケット以上で、決定的な出力が必要。`,`エージェントやCIへ渡す non-interactive な CLI/MCP、または同じ契約を保てるブラウザ確認が必要。`],notTitle:`向いていない(現時点)`,notBullets:[`まだ初期、更新頻度が低い、または手動で十分。`,`安い/無料のスクショ生成ツールやテンプレ集だけが欲しい。`,`生成AIのデザイン/テンプレだけが目的で、運用パイプラインは不要。`,`翻訳までマネージドで自動化したい。`,`App Store Connect / Play Console への直接アップロード自動化が必須。`,`support autoresponder 以外の founder / product / growth / release owner 導線がない。`],note:`上記の「向いていない」に当てはまる場合は既存ツールを優先し、再実行性・提出安定が課題化した時点でShipScreensを使うのが最適です。`},socialProof:{title:`プライバシー重視・訴求重視の再実行`,caption:`公開スレッドと運用ログに基づくケース/実績(未検証の有料テスティモニアルは未掲載)。`,proofPacketCta:`日付付き proof packet を開く`,proofPacketHref:`/downloads/shipscreens-proof-packet-2026-02.md`,permissionedQuoteCta:`許諾済み顧客コメントを依頼`,permissionedQuoteSubject:`ShipScreens 許諾済み顧客コメントの共有依頼`,permissionedQuoteBody:`ShipScreens チーム様
192
+
193
+ 社内確認用に、許諾済みの顧客コメント/参考事例をご共有ください。
194
+
195
+ - アプリ名 / URL:
196
+ - 対象プラットフォーム:
197
+ - 端末数 / 言語数:
198
+ - 必要な証跡:
199
+
200
+ よろしくお願いします。`,items:[{quote:`多言語運用では再実行時のドリフトが起きやすく、01..05固定順 + テンプレ化が安定化に有効でした。`,name:`ケーススナップショット(2026-02-26)`,role:`localization_scale スレッド + 追跡返信`,evidenceLabel:`元スレ + 返信証跡`,evidenceHref:`https://x.com/shipscreenscom/status/2026817239933161493`},{quote:`ASO相談スレッドでは、スクショ訴求の順序とチェックリスト化を返すと具体的な次アクションへ進みやすくなりました。`,name:`ケーススナップショット(2026-02-25)`,role:`aso_optimization 公開スレッド`,evidenceLabel:`元スレ + 返信証跡`,evidenceHref:`https://www.reddit.com/r/AppStoreOptimization/comments/1re6h38/comment/o7ayxwt/`},{quote:`運用実績(2026-02-26): リード343件、pain/intent/evidenceの欠損0件。`,name:`運用エビデンス`,role:`npm run -s outbound:metrics`,evidenceLabel:`日付付き proof packet を開く`,evidenceHref:`/downloads/shipscreens-proof-packet-2026-02.md`}],badges:[`既存のデザイン運用を維持`,`スクショは端末に残る`,`再現できるアップロード向け出力`]},partner:{title:`再現できるスクショ運用向け有償リリース整備スコープ`,body:`まず async のリリースリスクレビューから始めます。必要な場合だけ15分コールにし、適合する場合は naming/order/folder contract、提出前チェック、初回エクスポート、アップロードしやすいリリース工程を含む有償リリース整備スコープを切ります。デザイン運用自体は置き換えません。`,scopeBullets:[`Figma/Canva/AI/手動作成はそのまま、リリース運用だけ固める前提です。`,`命名/順序崩れ、iPad審査、端末/言語拡張、提出ルート事故の解消に向いています。`,`曖昧な監査ではなく、次の有償ステップをやるかどうかを15分で判断します。`],emailCta:`リリース整備レビューを依頼`,dmCta:`Xでリリース整備相談`,jumpCta:`リリース整備レビューを開く`,payFirstCta:`先に有償スコープを見たい場合は pay-first を開く`,emailSubject:`ShipScreens リリース整備レビュー相談`,emailBody:`ShipScreens チーム様
201
+
202
+ 有償リリース整備スコープに進むべきか判断したいので、async のリリースリスクレビューを希望します。
203
+
204
+ - アプリ名 / URL:
205
+ - リリース予定時期:
206
+ - 現在のスクショ作業フロー(Figma/Canva/AI/Fastlane/手動):
207
+ - iPhone-only か、端末/言語マトリクスか:
208
+ - 最大の詰まりポイント(1枚目訴求 / 命名順 / iPad審査 / 提出ルート など):
209
+ - 適合するなら、最初の有償成果物に何を含めたいか:
210
+
211
+ よろしくお願いします。`,emailLabel:`メール:`},pricing:{free:{title:`Free`,price:`$0`,bullets:[`ブラウザ fallback の first export(透かしあり・1言語・最大5枚)`,`iOS 1台 + Android 1台`,`アップロード向け出力(制限あり)`],cta:`ブラウザ fallback を開く`},pro:{title:`Pro`,price:`$19/mo (USD)`,bullets:[`透かしなしのリリース出力`,`端末 × 言語のフル再実行`,`多言語運用向け CSV/JSON copy 取り込み`,`Fastlane 向けの再現できる出力`,`パス/審査ドリフトを止める提出前チェック`],cta:`Proにアップグレード`,badge:`おすすめ`},starter:{title:`Agent Starter`,price:`$5/mo (USD)`,bullets:[`1つのアクティブなアプリリリース運用`,`透かしなしの agent-run 出力`,`接続端末/エミュレータ capture 導線`,`ストア提出前の verify/stage proof`],cta:`Agent Starter を開始`,fallbackCta:`$5 Starter を相談`,badge:`低摩擦`},cliProUnlock:{title:`Proを解除(CLI)`,body:`透かし解除が必要になったら、まずはCLI認証を実行:`,cmd:`npx --yes shipscreens auth login`,note:`初回のみブラウザでサインインします。以後は --require-pro で再実行。`}},faq:{title:`FAQ`,items:[{q:`商用アプリにも使えますか?`,a:`はい。書き出した画像の権利はユーザーに帰属します。`},{q:`スクショはサーバにアップロードされますか?`,a:`いいえ。レンダリング/エクスポートはローカル(ブラウザ/CI)で完結し、ShipScreensへアップロードされません(ストアは別途)。`},{q:`ブラウザUIは必須?`,a:`いいえ。CLIはローカル/CIでHeadless Chromiumを実行でき、ブラウザを開かずに出力できます。`},{q:`CIで回せますか?`,a:`はい。validate/lock/build/verify/stage をCIで実行し、Fastlane向けに再現性のある出力と提出前チェックを生成できます。`},{q:`テンプレっぽい見た目になりませんか?`,a:`なりません。ShipScreensは運用と訴求順を固定するツールで、見た目は既存デザインを維持できます。確認として「1枚目見出しが他の多くのアプリにも当てはまる」場合は、成果を具体化してください。必要なら短いアプリ動画を併用してください。`},{q:`解約は簡単ですか?`,a:`はい。Manage Subscription からワンクリックでいつでも解約できます。`},{q:`Android 対応は?`,a:`Pixel/Galaxy など主要 Android 端末フレームを用意しています。`}]},footer:{copyright:`© {{year}} ShipScreens`,terms:`利用規約`,privacy:`プライバシー`,legal:`特定商取引法に基づく表記`,links:[{label:`iPhone スクリーンショット ジェネレーター`,href:`/app/`},{label:`Android スクショ生成ツール`,href:`/app/`},{label:`Fastlane スクショパイプライン`,href:`/app/`},{label:`スクショのチートシート`,href:`/tools/`},{label:`5分で初回エクスポート`,href:`/tools/first-export/`},{label:`スクショ作業量 計算ツール`,href:`/tools/screenshot-workload-calculator/`},{label:`5枚構成 スクショフレームワーク`,href:`/tools/5-panel-screenshot-framework/`},{label:`ストア素材パイプラインキット`,href:`/tools/store-assets-pipeline/`}]}},auth:{title:`サインイン`,subtitle:`アカウントにアクセスして続行`,signupTitle:`アカウントを作成`,signupSubtitle:`数秒でスクリーンショット生成を始めましょう。`,email:`メールアドレス`,password:`パスワード`,code:`確認コード`,placeholders:{email:`you@example.com`,password:`パスワード`,passwordNew:`8文字以上`},links:{forgotPassword:`パスワードを忘れた`},remember:`ログイン状態を保持`,actions:{signIn:`サインイン`,signUp:`サインアップ`,createAccount:`アカウントを作成`,haveAccount:`すでにアカウントをお持ちですか?`,needAccount:`アカウントをお持ちでない方はこちら`,goToSignIn:`サインインへ`,goToSignUp:`サインアップへ`,signOut:`サインアウト`,showPassword:`パスワードを表示`,hidePassword:`パスワードを隠す`,confirm:`確認する`,cancel:`キャンセル`},errors:{UserNotFoundException:`このメールアドレスのアカウントが見つかりません。`,NotAuthorizedException:`メールアドレスまたはパスワードが正しくありません。`,UsernameExistsException:`このメールアドレスは既に登録されています。`,CodeMismatchException:`確認コードが正しくありません。`,ExpiredCodeException:`確認コードの有効期限が切れています。再取得してください。`,default:`サインインに失敗しました。もう一度お試しください。`},success:{signup:`サインアップに成功しました。メールの確認コードを入力してください。`,confirm:`メール確認が完了しました。サインインできます。`},helper:{terms:`続行すると利用規約とプライバシーに同意したものとみなされます。`},forgot:{title:`パスワードをリセット`,subtitle:`リセットコードを受け取るメールアドレスを入力してください。`,sendCode:`リセットコードを送信`,newPassword:`新しいパスワード`,reset:`パスワードをリセット`,codeSent:`リセットコードをメールに送信しました。`}},terms:{title:`利用規約`,intro:`この利用規約(以下「本規約」)は、ShipScreens(以下「本サービス」)の利用条件を定めるものです。本サービスを利用することで、本規約に同意したものとみなされます。`,sections:[{title:`第1条(サービスの内容)`,body:`本サービスは、アプリストア向け画像の作成・編集・出力を支援するWebツールです。無料のFreeプラン、有料のProプラン(月額サブスクリプション)、および限定的な fixed-scope リリース整備オファーを提供します。運営者は事前の通知なくサービス内容を変更または終了する権利を留保します。`},{title:`第2条(知的財産権)`,body:`ユーザーが本サービスを利用して作成した画像(成果物)の著作権は、ユーザーに帰属します。ユーザーは、商用・非商用を問わず成果物を自由に利用できます。ただし、本サービス自体のプログラム、デザイン、テンプレート等の権利は運営者に帰属します。`},{title:`第3条(利用料金と支払い)`,body:`Agent Starterプランの利用料金は、設定済み環境では月額5ドルです。Proプランの利用料金は月額19ドルです。Stripeを通じて前払いで決済されます。fixed-scope リリース整備オファーは、表示された価格で都度課金される場合があります。法令により義務付けられる場合を除き、支払い済みの料金は返金されません。ユーザーはサブスクリプションをいつでも解約手続きを行うことができ、次回更新日をもって契約終了となります。`},{title:`第4条(禁止事項)`,body:`以下の行為を禁止します:(1) 本サービスの逆コンパイル・リバースエンジニアリング (2) 不正な手段による機能制限(ウォーターマーク等)の解除 (3) 法令や公序良俗に反する利用 (4) サーバーに過度な負荷をかける行為。`},{title:`第5条(免責)`,body:`本サービスは「現状有姿」で提供され、事前の予告なく停止・変更する場合があります。本サービスの利用により生じた損害(データ消失、審査落ち、逸失利益等)について、運営者は故意または重過失がない限り責任を負いません。直接損害が認められる場合も、責任額は過去1ヶ月に支払われた利用料金を上限とします。重要なデータは必ずご自身でバックアップしてください。`},{title:`第6条(準拠法・裁判管轄)`,body:`本規約の解釈にあたっては日本法を準拠法とします。本サービスに関して紛争が生じた場合には、東京地方裁判所を第一審の専属的合意管轄裁判所とします。`}],contact:`お問い合わせ: {{email}}`},privacy:{title:`プライバシーポリシー`,intro:`ShipScreens(以下「当方」)は、本サービスの提供にあたり、ユーザーの個人情報を以下の通り取り扱います。`,sections:[{title:`1. 取得する情報`,items:[`アカウント情報:メールアドレス(Cognitoで管理)、認証トークン。`,`決済情報:クレジットカード情報等は決済代行会社(Stripe)が直接管理し、当方は保持しません。`,`利用状況:アクセスログ、デバイス情報、Cookie情報(Google Analytics等による解析)。`,`Teamデータ(Team等で同期する場合):プロジェクト設定、コピー(ローカライズ文言)、プリセット、監査ログ。`,`画像データ:アプリのスクリーンショットや生成物は原則としてユーザーのブラウザ内で処理・保持し、当方では保存しません。例外として、ユーザーが任意で保存を選択したロゴ等のブランド素材を限定的にセキュア保存する場合があります。`]},{title:`2. 利用目的`,body:`サービスの提供・運営、本人確認、利用料金の請求、サービスの改善・新機能の開発、および重要なお知らせの通知のために利用します。`},{title:`3. 第三者への提供`,body:`法令に基づく場合を除き、同意なく第三者に個人データを提供しません。ただし、決済処理(Stripe)、ホスティング(AWS)、アクセス解析(Google)などの業務委託先に、必要な範囲で情報を提供または預託する場合があります。`},{title:`4. Cookie(クッキー)`,body:`本サービスでは、セッション維持や利用状況分析のためにCookieを使用します。ユーザーはブラウザの設定または本サイトのバナーによりCookieの拒否を選択できます。`},{title:`5. お問い合わせ`,body:`個人情報の開示・訂正・削除等のご請求は、support@shimaumaservices.co.jp までご連絡ください。`}],contact:`お問い合わせ: {{email}}`},pages:{success:{title:`決済が完了しました`,description:`Stripe での決済が完了しました。アプリを開いて Pro 機能が有効になっていることを確認してください。`,action:`アプリを開く`},cancelled:{title:`決済がキャンセルされました`,description:`Stripe での決済処理がキャンセルされました。必要に応じて再度お試しください。`,action:`アプリに戻る`}},legal:{title:`特定商取引法に基づく表記`,intro:`特定商取引法に基づき、以下の通り表示いたします。`,fields:[{label:`販売業者`,value:`シマウマサービス株式会社`},{label:`代表責任者`,value:`宮内 武文`},{label:`所在地`,value:`〒104-0061 東京都中央区銀座1-12-4 N&E BLD. 6F`},{label:`電話番号`,value:`請求があり次第提供致しますので、必要な方はメールにてご連絡ください。`},{label:`メールアドレス`,value:`support@shimaumaservices.co.jp`},{label:`ホームページURL`,value:`https://shipscreens.com`},{label:`販売価格`,value:`Agent Starter: 設定済み環境では月額5ドル (USD)。Proプラン: 月額19ドル (USD)。fixed-scope リリース整備オファーは、告知ページまたは決済画面に表示された価格で都度課金されます(例: Launch Pass $49、paid teardown $99、より大きい setup pilot)。日本国内からの購入には別途消費税が加算される場合があります。`},{label:`お支払方法`,value:`クレジットカード決済 (Stripe)`},{label:`代金の支払時期`,value:`初回申込時に即時決済され、以降は毎月の更新日に自動決済されます。`},{label:`商品引渡し時期`,value:`Pro機能は決済完了後、直ちにご利用いただけます。fixed-scope リリース整備オファーは決済確認後にメールで日程・スコープ確認を行ったうえで役務提供を開始します。`},{label:`返品・キャンセル`,value:`デジタルコンテンツ/役務の性質上、決済完了後の返品・返金はお受けできません。サブスクリプションの解約は「契約管理」ページよりいつでも可能で、次回更新日以降の請求が停止されます(残存期間中は引き続き利用可能です)。fixed-scope リリース整備オファーのキャンセルは法令で認められる場合を除きお受けできません。`},{label:`動作環境`,value:`最新のGoogle Chrome, Safari, Edge, Firefox等のブラウザおよびインターネット接続環境が必要です。`}],notesTitle:`備考`,notes:[],contact:`お問い合わせ: {{email}}`}}}},Gt=Vt();Ut(Gt),k.use(Ye).init({resources:Wt,lng:Gt,fallbackLng:`en`,supportedLngs:[`en`,`ja`],nonExplicitSupportedLngs:!0,react:{useSuspense:!1},interpolation:{escapeValue:!1}}),k.on(`languageChanged`,e=>{let t=(e||``).split(`-`)[0]===`ja`?`ja`:`en`;Ut(t),Ht(t)});var Kt=k,qt=Object.freeze({manual_figma:Object.freeze({scope:`iphone_first`,workflow:`figma`,blocker:`panel_hook`}),fastlane_paths:Object.freeze({workflow:`fastlane_ci`,blocker:`upload_roots`}),localization_scale:Object.freeze({scope:`matrix`,workflow:`figma`,blocker:`naming_order`}),aso_optimization:Object.freeze({scope:`review_fix`,workflow:`figma`,blocker:`ipad_review`}),diy_tool:Object.freeze({workflow:`fastlane_ci`,blocker:`upload_roots`}),ci_determinism:Object.freeze({workflow:`fastlane_ci`,blocker:`upload_roots`})}),Jt=Object.freeze({releaseTimeline:Object.freeze([`this_week`,`this_month`,`next_quarter`]),platform:Object.freeze([`ios`,`android`,`ios_android`]),scope:Object.freeze([`iphone_first`,`matrix`,`review_fix`]),workflow:Object.freeze([`figma`,`canva`,`ai_manual`,`fastlane_ci`]),blocker:Object.freeze([`panel_hook`,`naming_order`,`ipad_review`,`upload_roots`]),reviewMode:Object.freeze([`async_email`,`live_call`]),preset:Object.freeze(Object.keys(qt))}),N=Object.freeze(Object.fromEntries(Object.entries(Jt).map(([e,t])=>[e,new Set(t)]))),Yt=Object.freeze({app_store_screenshot_automation:`manual_figma`,google_play_screenshot_automation:`manual_figma`,app_store_localization_automation:`localization_scale`,fastlane_screenshot_pipeline:`fastlane_paths`,screenshot_ci_pipeline:`ci_determinism`,claude_code_mcp_screenshot_automation:`ci_determinism`,cursor_mcp_screenshot_automation:`ci_determinism`,vscode_copilot_mcp_screenshot_automation:`ci_determinism`,gemini_cli_mcp_screenshot_automation:`ci_determinism`,openai_responses_tool_screenshot_automation:`ci_determinism`,deterministic_screenshot_reruns:`ci_determinism`,screenshot_naming_order_drift:`localization_scale`,app_store_requirements:`aso_optimization`,google_play_requirements:`aso_optimization`,ipad_screenshot_review_requirements:`aso_optimization`}),P=e=>String(e??``).trim(),Xt=(e,t=500)=>P(e).slice(0,t),Zt=e=>{let t=Xt(e,200).toLowerCase();return/^[^\s@]+@[^\s@]+\.[^\s@]+$/i.test(t)?t:``},Qt=e=>{let t=Xt(e,80).replace(/^@+/,``);return t?`@${t}`:``},$t=/^[A-Za-z0-9][A-Za-z0-9._-]{0,119}$/,en=`https://shipscreens.local`,tn=(e,t,n,r)=>{let i=P(n);i&&(r&&!r.has(i)||e.set(t,i))},nn=(e,{entrySource:t=``,leadId:n=``,preset:r=``,appName:i=``,appUrl:a=``,contactEmail:o=``,contactName:s=``,xHandle:c=``,reviewMode:l=``,releaseTimeline:u=``,platform:d=``,scope:f=``,workflow:p=``,blocker:m=``}={})=>{let h=P(r),g=un({preset:h,releaseTimeline:P(u),platform:P(d),scope:P(f),workflow:P(p),blocker:P(m)});tn(e,`preset`,h,N.preset);let _=P(t);_&&e.set(`entry_source`,_);let v=cn(n);v&&e.set(`lead_id`,v);let y=Xt(i,160);y&&e.set(`appName`,y);let b=P(a);b&&e.set(`appUrl`,b.slice(0,500));let x=Zt(o);x&&e.set(`contactEmail`,x);let S=Xt(s,120);S&&e.set(`contactName`,S);let C=Qt(c);C&&e.set(`xHandle`,C),tn(e,`reviewMode`,P(l),N.reviewMode),tn(e,`releaseTimeline`,g.releaseTimeline,N.releaseTimeline),tn(e,`platform`,g.platform,N.platform),tn(e,`scope`,g.scope,N.scope),tn(e,`workflow`,g.workflow,N.workflow),tn(e,`blocker`,g.blocker,N.blocker)},rn=e=>qt[String(e||``).trim()]||null,an=e=>Yt[P(e)]||``,on=e=>/(^|_)(owner_email|profile_email)(_|$)/i.test(P(e)),sn=e=>on(e),cn=e=>{let t=P(e);return t&&$t.test(t)?t:``},ln=e=>{let t=e instanceof URLSearchParams?e:new URLSearchParams(String(e||``).replace(/^\?/,``)),n=P(t.get(`preset`)),r=un({preset:n,releaseTimeline:P(t.get(`releaseTimeline`)),platform:P(t.get(`platform`)),scope:P(t.get(`scope`)),workflow:P(t.get(`workflow`)),blocker:P(t.get(`blocker`))});return{preset:N.preset.has(n)?n:``,contactEmail:Zt(t.get(`contactEmail`)),contactName:Xt(t.get(`contactName`),120),xHandle:Qt(t.get(`xHandle`)),appName:Xt(t.get(`appName`),160),appUrl:Xt(t.get(`appUrl`),500),leadId:cn(t.get(`lead_id`)),reviewMode:N.reviewMode.has(P(t.get(`reviewMode`)))?P(t.get(`reviewMode`)):``,releaseTimeline:N.releaseTimeline.has(r.releaseTimeline)?r.releaseTimeline:``,platform:N.platform.has(r.platform)?r.platform:``,scope:N.scope.has(r.scope)?r.scope:``,workflow:N.workflow.has(r.workflow)?r.workflow:``,blocker:N.blocker.has(r.blocker)?r.blocker:``}},un=({preset:e=``,releaseTimeline:t=``,platform:n=``,scope:r=``,workflow:i=``,blocker:a=``}={})=>{let o=rn(e)||{};return{releaseTimeline:t,platform:n,scope:r||o.scope||``,workflow:i||o.workflow||``,blocker:a||o.blocker||``}},dn=({entrySource:e=``,leadId:t=``,preset:n=``,appName:r=``,appUrl:i=``,contactEmail:a=``,contactName:o=``,xHandle:s=``,reviewMode:c=``,releaseTimeline:l=``,platform:u=``,scope:d=``,workflow:f=``,blocker:p=``}={})=>{let m=new URLSearchParams;nn(m,{entrySource:e,leadId:t,preset:n,appName:r,appUrl:i,contactEmail:a,contactName:o,xHandle:s,reviewMode:c,releaseTimeline:l,platform:u,scope:d,workflow:f,blocker:p});let h=m.toString();return h?`/design-partner/?${h}`:`/design-partner/`},fn=({answers:e={},pathKey:t=``,appUrl:n=``,entrySourceBase:r=`release_fit_intake`,reviewMode:i=`async_email`}={})=>{let a={this_week:`this_week`,this_month:`this_month`,later:`next_quarter`},o={design_stack:`ai_manual`,fastlane_ci:`fastlane_ci`,manual_browser:`ai_manual`},s={iphone_first:{platform:`ios`,scope:`iphone_first`},ios_android:{platform:`ios_android`,scope:`iphone_first`},matrix:{platform:`ios_android`,scope:`matrix`}},c={panel_clarity:`panel_hook`,upload_roots:`upload_roots`,review_risk:`ipad_review`,matrix_drift:`naming_order`},l={iphone_quick:`manual_figma`,fastlane_ci:`ci_determinism`,locale_matrix:`localization_scale`,aso_review:`aso_optimization`},u=s[e.scope]||{},d=P(t);return{entrySource:d?`${r}_${d}`:r,preset:l[t]||``,appUrl:n,reviewMode:i,releaseTimeline:a[e.timeline]||``,platform:u.platform||``,scope:u.scope||``,workflow:o[e.workflow]||``,blocker:c[e.blocker]||``}},pn=({answers:e={},pathKey:t=``,appUrl:n=``,entrySourceBase:r=`release_fit_intake`,hash:i=`request-review`}={})=>{let a=dn(fn({answers:e,pathKey:t,appUrl:n,entrySourceBase:r}));return i?`${a}#${i}`:a},mn=({offer:e=``,entrySource:t=``,leadId:n=``,preset:r=``,appName:i=``,appUrl:a=``,contactEmail:o=``,contactName:s=``,xHandle:c=``,reviewMode:l=``,releaseTimeline:u=``,platform:d=``,scope:f=``,workflow:p=``,blocker:m=``}={})=>{let h=new URLSearchParams,g=P(e);g&&h.set(`offer`,g.slice(0,80)),nn(h,{entrySource:t,leadId:n,preset:r,appName:i,appUrl:a,contactEmail:o,contactName:s,xHandle:c,reviewMode:l,releaseTimeline:u,platform:d,scope:f,workflow:p,blocker:m});let _=h.toString();return _?`/pricing?${_}`:`/pricing`},hn=(e,t={})=>{let n=String(e??``).trim();if(!n||!n.startsWith(`/`))return e;let r=new URL(n,en);nn(r.searchParams,t);let i=r.searchParams.toString();return`${r.pathname}${i?`?${i}`:``}${r.hash||``}`},gn=`shipscreens_attribution_v1`,_n=[`utm_source`,`utm_medium`,`utm_campaign`,`utm_content`,`utm_term`,`utm_id`],vn=[`entry_path`,`referrer_host`,`entry_source`,`agent_surface`],yn=[{surface:`chatgpt`,tokens:[`chatgpt.com`,`chat.openai.com`,`chatgpt`,`openai`]},{surface:`claude`,tokens:[`claude.ai`,`claude`]},{surface:`perplexity`,tokens:[`perplexity.ai`,`perplexity`]},{surface:`gemini`,tokens:[`gemini.google.com`,`gemini`]},{surface:`copilot`,tokens:[`copilot.microsoft.com`,`github copilot`,`code.visualstudio.com`,`vscode.dev`,`copilot`]},{surface:`cursor`,tokens:[`cursor.com`,`cursor`]},{surface:`windsurf`,tokens:[`windsurf.com`,`codeium.com`,`windsurf`,`codeium`]},{surface:`replit`,tokens:[`replit.com`,`replit`]},{surface:`bolt`,tokens:[`bolt.new`,`stackblitz.com`,`stackblitz`,`bolt`]},{surface:`lovable`,tokens:[`lovable.dev`,`lovable`]},{surface:`v0`,tokens:[`v0.dev`,`v0`]},{surface:`grok`,tokens:[`grok.com`,`x.com/i/grok`,`grok`]}],bn=e=>{let t=String(e??``).trim().replace(/\s+/g,` `);return t?t.length>120?t.slice(0,120):t:``},xn=e=>bn(e).toLowerCase(),Sn=e=>{let t=xn(e);if(!t)return``;for(let e of yn)if(e.tokens.some(e=>t.includes(e)))return e.surface;return t.includes(`agent_cli`)?`agent_cli_page`:t.includes(`agent`)?`agent_other`:``},Cn=({referrer_host:e,utm_source:t,entry_source:n}={})=>Sn(e)||Sn(t)||Sn(n)||``,wn=()=>{if(typeof window>`u`)return null;try{let e=window.sessionStorage.getItem(gn);if(!e)return null;let t=JSON.parse(e);return!t||typeof t!=`object`?null:t}catch{return null}},Tn=e=>{if(!(typeof window>`u`))try{window.sessionStorage.setItem(gn,JSON.stringify(e))}catch{}},En=()=>{if(typeof window>`u`)return;let e=wn()||{},t={};if(e.entry_path||(t.entry_path=bn(window.location.pathname||`/`)),!e.referrer_host&&typeof document<`u`)try{let e=String(document.referrer||``).trim();if(e){let n=bn(new URL(e).hostname),r=bn(window.location.hostname);n&&r&&n!==r&&(t.referrer_host=n)}}catch{}let n=new URLSearchParams(window.location.search||``),r={},i=!1;n.has(`entry_source`)&&(i=!0);for(let e of _n){let t=bn(n.get(e));t&&(r[e]=t,i=!0)}let a=bn(n.get(`entry_source`));a&&(r.entry_source=a);let o=cn(n.get(`lead_id`));o&&(r.lead_id=o,i=!0);let s={...e,...t,...r},c=Cn(s);if(c&&(s.agent_surface=c),JSON.stringify(e)!==JSON.stringify(s)&&Tn(s),i)try{let e=new URL(window.location.href),t=!1;for(let n of _n)e.searchParams.has(n)&&(e.searchParams.delete(n),t=!0);if(e.searchParams.has(`entry_source`)&&(e.searchParams.delete(`entry_source`),t=!0),e.searchParams.has(`lead_id`)&&(e.searchParams.delete(`lead_id`),t=!0),t){let t=`${e.pathname}${e.search}${e.hash||``}`;window.history.replaceState(window.history.state,``,t)}}catch{}},Dn=()=>{let e=wn();if(!e)return{};let t={};for(let n of _n){let r=bn(e[n]);r&&(t[n]=r)}for(let n of vn){let r=bn(e[n]);r&&(t[n]=r)}return t},On=()=>{let e=wn();return e?cn(e.lead_id):``},kn=()=>{if(typeof window>`u`)return;let e=wn();if(!e)return;let t=bn(window.location.origin);if(!t)return;let n=bn(e.entry_path)||bn(window.location.pathname)||`/`,r=new URL(t);r.pathname=n.startsWith(`/`)?n:`/${n}`;for(let t of _n){let n=bn(e[t]);n&&r.searchParams.set(t,n)}return r.toString()},An=`https://api.shipscreens.com/Prod`,jn=`https://api-stg.shipscreens.com/Prod`,Mn=`/telemetry/aggregate`,Nn=1200,Pn=20,Fn={landing_view:[`path`,`entrySource`,`salesEntry`],tool_view:[`path`,`entrySource`,`tool`,`sourcePage`],pricing_view:[`path`,`entrySource`,`salesEntry`,`variant`],design_partner_view:[`path`,`entrySource`,`salesEntry`,`sourcePage`],project_created:[`path`,`entrySource`,`source`],export_completed:[`path`,`entrySource`,`source`,`exportType`],design_partner_request_submitted:[`path`,`entrySource`,`sourcePage`,`submitSurface`,`salesEntry`],checkout_auth_required:[`path`,`entrySource`,`source`,`offer`],checkout_started:[`path`,`entrySource`,`source`,`offer`],checkout_success_view:[`path`,`entrySource`,`offer`],quick_ship_path_progress:[`path`,`entrySource`,`step`,`quickShipPath`]},In=null,Ln=[],Rn=!1,zn=(e,t=120)=>String(e??``).trim().slice(0,t),Bn=e=>{let t=zn(e,200);return t?t.startsWith(`/`)?t:`/${t.replace(/^\/+/,``)}`:``},Vn=e=>{let t=zn(e,10).toLowerCase();return t===`yes`||t===`no`?t:``},Hn=()=>{if(typeof window>`u`)return``;let e=String(window.location.hostname||``).toLowerCase();return e===`shipscreens.com`||e===`www.shipscreens.com`||e===`app.shipscreens.com`?An:e===`staging.shipscreens.com`||e.includes(`develop`)?jn:``},Un=(e,t={})=>{let n=Fn[e];if(!n)return null;let r={path:Bn(t.path||typeof window<`u`&&window.location.pathname||``),entrySource:zn(t.entry_source??t.entrySource,120),sourcePage:zn(t.source_page??t.sourcePage,80),tool:zn(t.tool,80),source:zn(t.source,80),exportType:zn(t.export_type??t.exportType,40),submitSurface:zn(t.submit_surface??t.submitSurface,80),salesEntry:Vn(t.sales_entry??t.salesEntry),quickShipPath:zn(t.quick_ship_path??t.quickShipPath,40),step:zn(t.step,40),offer:zn(t.offer,80),variant:zn(t.offer_variant??t.variant,40)},i={name:e};return n.forEach(e=>{r[e]&&(i[e]=r[e])}),Object.keys(i).length>1?i:null},Wn=({immediate:e=!1}={})=>{In&&=(clearTimeout(In),null);let t=Hn();if(!t||Ln.length===0)return;let n=Ln.slice(0,Pn);Ln=Ln.slice(n.length);let r=JSON.stringify({events:n}),i=`${t}${Mn}`,a=new Blob([r],{type:`text/plain;charset=UTF-8`});if(typeof navigator<`u`&&typeof navigator.sendBeacon==`function`)try{navigator.sendBeacon(i,a)}catch{}else typeof fetch==`function`&&fetch(i,{method:`POST`,body:r,headers:{"Content-Type":`text/plain;charset=UTF-8`},keepalive:!0,mode:`cors`}).catch(()=>{});Ln.length>0&&!e&&(In=setTimeout(()=>Wn(),Nn))},Gn=()=>{Rn||typeof document>`u`||(document.addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&Wn({immediate:!0})}),Rn=!0)},Kn=(e,t={})=>{let n=Un(e,t);return n?(Ln.push(n),Gn(),In||=setTimeout(()=>Wn(),Nn),!0):!1},qn=()=>Wn({immediate:!0}),Jn=`G-ST0SL3S7NV`,Yn=new Set([`app_url`,`appUrl`,`contact_email`,`contactEmail`,`email`,`lead_id`,`leadId`,`message`,`subject`]),Xn=!1,Zn=null,Qn=()=>{if(typeof window>`u`)return null;let e=String(window.location.hostname||``).toLowerCase();return e===`shipscreens.com`||e===`www.shipscreens.com`||e===`app.shipscreens.com`||e===`staging.shipscreens.com`?Jn:null},$n=()=>{try{return localStorage.getItem(`cookieConsent`)}catch{return null}},er=()=>typeof window>`u`?null:window.cookieConsent||$n(),tr=(e,{includeWait:t=!1}={})=>({ad_storage:`denied`,ad_user_data:`denied`,ad_personalization:`denied`,analytics_storage:e===`accepted`?`granted`:`denied`,functionality_storage:`granted`,security_storage:`granted`,...t?{wait_for_update:500}:{}}),nr=(e={})=>Object.fromEntries(Object.entries(e).filter(([e,t])=>Yn.has(e)?!1:t!=null&&t!==``)),rr=(e={})=>Object.fromEntries(Object.entries(e).filter(([,e])=>e!=null&&e!==``)),ir=(e={})=>{let t=Dn();return{path:typeof window<`u`?window.location.pathname:void 0,...t,...rr(e)}},ar=()=>typeof window>`u`?null:(window.dataLayer=window.dataLayer||[],window.gtag=window.gtag||function(){window.dataLayer.push(arguments)},window.gtag),or=()=>{let e=Qn();if(!e||typeof window>`u`)return!1;if(ar(),Xn)return!0;let t=er();window.gtag(`consent`,`default`,tr(t,{includeWait:!0})),window.gtag(`js`,new Date);let n={allow_ad_personalization_signals:!1,allow_google_signals:!1},r=kn();r&&(n.page_location=r),window.gtag(`config`,e,n);let i=document.createElement(`script`);return i.async=!0,i.src=`https://www.googletagmanager.com/gtag/js?id=${e}`,document.head.appendChild(i),Xn=!0,!0},sr=e=>{typeof window>`u`||!e||Zn!==e&&(Zn=e,Qn()&&(ar(),window.gtag(`consent`,`update`,tr(e)),Qn()&&e===`accepted`&&window.gtag(`event`,`cookie_consent`,{consent_state:e,event_category:`consent`,non_interaction:!0})))},cr=()=>{if(typeof window>`u`)return;let e=$n();if(e===`declined`){Zn=`declined`;return}or(),e&&sr(e)},lr=()=>{typeof window>`u`||window.addEventListener(`cookieConsentChanged`,e=>{let t=e.detail?.value;if(t){if(t===`accepted`){or(),sr(`accepted`);return}if(Xn){sr(t);return}Zn=t}})},ur=(e,t={})=>{if(typeof window>`u`||!e)return!1;let n=ir(t);return Kn(e,n),er()===`declined`||!or()?!1:(ar(),window.gtag(`event`,e,nr(n)),!0)},dr=(e,t={},n=800)=>typeof window>`u`||!e?Promise.resolve(!1):new Promise(r=>{let i=!1,a=()=>{i||(i=!0,r(!0))},o=t?.event_callback,s=typeof t?.event_timeout==`number`&&Number.isFinite(t.event_timeout)?t.event_timeout:n;if(!ur(e,{transport_type:`beacon`,...t,event_callback:()=>{try{o?.()}finally{a()}},event_timeout:s})){r(!1);return}setTimeout(a,s+150)}),fr=async(e,t,n={},r=800)=>{if(typeof window>`u`||!e?.currentTarget||e.defaultPrevented||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||typeof e.button==`number`&&e.button!==0)return;let i=e.currentTarget.getAttribute?.(`target`)||``;if(i&&i!==`_self`){ur(t,n);return}let a=e.currentTarget.href||e.currentTarget.getAttribute?.(`href`);a&&(e.preventDefault(),await dr(t,n,r),window.location.href=a)},pr=(0,l.createContext)(null),mr={success:`bg-emerald-600 text-white`,error:`bg-rose-600 text-white`,info:`bg-slate-900 text-white`},hr=({children:e})=>{let{t}=nt(),[n,r]=(0,l.useState)([]),i=(0,l.useCallback)(e=>{r(t=>t.filter(t=>t.id!==e))},[]),a=(0,l.useCallback)(({message:e,type:t=`info`,duration:n=3500,action:a})=>{if(!e)return;let o=`${Date.now()}-${Math.random().toString(16).slice(2)}`;r(n=>[...n,{id:o,message:e,type:t,action:a}]),setTimeout(()=>i(o),n)},[i]);return(0,A.jsxs)(pr.Provider,{value:{addToast:a,removeToast:i},children:[e,(0,A.jsx)(`div`,{className:`fixed bottom-4 right-4 z-1000 space-y-2 w-72 max-w-[calc(100vw-32px)]`,children:n.map(e=>(0,A.jsxs)(`div`,{role:e.type===`error`?`alert`:`status`,"aria-atomic":`true`,className:`flex items-center gap-3 rounded-lg shadow-lg px-4 py-3 text-sm border border-black/5 animate-in slide-in-from-bottom-2 duration-200 ${mr[e.type]||mr.info}`,children:[(0,A.jsx)(`span`,{className:`flex-1 font-medium`,children:e.message}),e.action&&(0,A.jsx)(`button`,{type:`button`,onClick:()=>{e.action.onClick(),i(e.id)},className:`px-2 py-1 rounded-sm bg-white/20 hover:bg-white/30 text-white text-xs font-bold transition-colors whitespace-nowrap`,children:e.action.label}),(0,A.jsx)(`button`,{type:`button`,onClick:()=>i(e.id),className:`text-white/70 hover:text-white`,"aria-label":t(`common.close`,{defaultValue:`Close`}),title:t(`common.close`,{defaultValue:`Close`}),children:`×`})]},e.id))})]})},gr=()=>{let e=(0,l.useContext)(pr);if(!e)throw Error(`useToast must be used within ToastProvider`);return e};u.createRoot(document.getElementById(`root`)).render((0,A.jsx)(l.StrictMode,{children:(0,A.jsx)(rt,{i18n:Kt,children:(0,A.jsx)(hr,{children:(0,A.jsx)(zt,{})})})})),En(),cr(),lr();export{r as S,Ht as _,qn as a,at as b,hn as c,pn as d,an as f,sn as g,ln as h,dr as i,dn as l,cn as m,ur as n,On as o,on as p,fr as r,Dn as s,gr as t,mn as u,Ut as v,nt as x,j as y};
212
+ //# sourceMappingURL=index-D7D6ZRCW.js.map