@scrabble-solver/scrabble-solver 2.15.13 → 2.15.15

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 (216) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build/chunks/[root-of-the-server]__6e020478._.js +441 -0
  3. package/.next/build/chunks/[root-of-the-server]__6e020478._.js.map +7 -0
  4. package/.next/build/chunks/[root-of-the-server]__c7ae8543._.js +500 -0
  5. package/.next/build/chunks/[root-of-the-server]__c7ae8543._.js.map +11 -0
  6. package/.next/build/chunks/[turbopack-node]_transforms_webpack-loaders_ts_c84aa21a._.js +12 -0
  7. package/.next/build/chunks/[turbopack-node]_transforms_webpack-loaders_ts_c84aa21a._.js.map +5 -0
  8. package/.next/build/chunks/[turbopack]_runtime.js +770 -0
  9. package/.next/build/chunks/[turbopack]_runtime.js.map +10 -0
  10. package/.next/build/package.json +1 -0
  11. package/.next/build/webpack-loaders.js +6 -0
  12. package/.next/build/webpack-loaders.js.map +5 -0
  13. package/.next/build-manifest.json +29 -32
  14. package/.next/cache/.previewinfo +1 -1
  15. package/.next/cache/.rscinfo +1 -1
  16. package/.next/cache/.tsbuildinfo +1 -1
  17. package/.next/diagnostics/build-diagnostics.json +1 -1
  18. package/.next/diagnostics/framework.json +1 -1
  19. package/.next/fallback-build-manifest.json +24 -0
  20. package/.next/images-manifest.json +12 -3
  21. package/.next/next-minimal-server.js.nft.json +1 -1
  22. package/.next/next-server.js.nft.json +1 -1
  23. package/.next/prerender-manifest.json +4 -4
  24. package/.next/required-server-files.json +104 -73
  25. package/.next/routes-manifest.json +30 -9
  26. package/.next/server/chunks/[root-of-the-server]__378b5933._.js +3 -0
  27. package/.next/server/chunks/[root-of-the-server]__378b5933._.js.map +1 -0
  28. package/.next/server/chunks/[root-of-the-server]__51a21f60._.js +3 -0
  29. package/.next/server/chunks/[root-of-the-server]__51a21f60._.js.map +1 -0
  30. package/.next/server/chunks/[root-of-the-server]__53eb4a3b._.js +4 -0
  31. package/.next/server/chunks/[root-of-the-server]__53eb4a3b._.js.map +1 -0
  32. package/.next/server/chunks/[root-of-the-server]__7e4e99cd._.js +3 -0
  33. package/.next/server/chunks/[root-of-the-server]__7e4e99cd._.js.map +1 -0
  34. package/.next/server/chunks/[root-of-the-server]__a6a82e19._.js +3 -0
  35. package/.next/server/chunks/[root-of-the-server]__a6a82e19._.js.map +1 -0
  36. package/.next/server/chunks/[root-of-the-server]__a84df743._.js +3 -0
  37. package/.next/server/chunks/[root-of-the-server]__a84df743._.js.map +1 -0
  38. package/.next/server/chunks/[root-of-the-server]__a99303dc._.js +3 -0
  39. package/.next/server/chunks/[root-of-the-server]__a99303dc._.js.map +1 -0
  40. package/.next/server/chunks/[root-of-the-server]__bfa4320b._.js +3 -0
  41. package/.next/server/chunks/[root-of-the-server]__bfa4320b._.js.map +1 -0
  42. package/.next/server/chunks/[turbopack]_runtime.js +770 -0
  43. package/.next/server/chunks/[turbopack]_runtime.js.map +10 -0
  44. package/.next/server/chunks/scrabble-solver_b903dbba._.js +3 -0
  45. package/.next/server/chunks/scrabble-solver_b903dbba._.js.map +1 -0
  46. package/.next/server/chunks/scrabble-solver_packages_configs_build_5accd600._.js +3 -0
  47. package/.next/server/chunks/scrabble-solver_packages_configs_build_5accd600._.js.map +1 -0
  48. package/.next/server/chunks/ssr/1b834_next_d69de9fa._.js +3 -0
  49. package/.next/server/chunks/ssr/1b834_next_d69de9fa._.js.map +1 -0
  50. package/.next/server/chunks/ssr/[externals]_fs_54ffce70._.js +3 -0
  51. package/.next/server/chunks/ssr/[externals]_fs_54ffce70._.js.map +1 -0
  52. package/.next/server/chunks/ssr/[externals]_transliteration_b8916dda._.js +3 -0
  53. package/.next/server/chunks/ssr/[externals]_transliteration_b8916dda._.js.map +1 -0
  54. package/.next/server/chunks/ssr/[root-of-the-server]__1115f13a._.js +3 -0
  55. package/.next/server/chunks/ssr/[root-of-the-server]__1115f13a._.js.map +1 -0
  56. package/.next/server/chunks/ssr/[root-of-the-server]__421f2b10._.js +3 -0
  57. package/.next/server/chunks/ssr/[root-of-the-server]__421f2b10._.js.map +1 -0
  58. package/.next/server/chunks/ssr/[root-of-the-server]__b87cf431._.js +3 -0
  59. package/.next/server/chunks/ssr/[root-of-the-server]__b87cf431._.js.map +1 -0
  60. package/.next/server/chunks/ssr/[root-of-the-server]__bdcde4df._.js +5 -0
  61. package/.next/server/chunks/ssr/[root-of-the-server]__bdcde4df._.js.map +1 -0
  62. package/.next/server/chunks/ssr/[root-of-the-server]__c803ce2b._.js +3 -0
  63. package/.next/server/chunks/ssr/[root-of-the-server]__c803ce2b._.js.map +1 -0
  64. package/.next/server/chunks/ssr/[turbopack]_runtime.js +770 -0
  65. package/.next/server/chunks/ssr/[turbopack]_runtime.js.map +10 -0
  66. package/.next/server/chunks/ssr/scrabble-solver_1bf76a93._.js +3 -0
  67. package/.next/server/chunks/ssr/scrabble-solver_1bf76a93._.js.map +1 -0
  68. package/.next/server/chunks/ssr/scrabble-solver_a6d23152._.js +8 -0
  69. package/.next/server/chunks/ssr/scrabble-solver_a6d23152._.js.map +1 -0
  70. package/.next/server/chunks/ssr/scrabble-solver_packages_scrabble-solver_src_i18n_languages_1f0474f1._.js +3 -0
  71. package/.next/server/chunks/ssr/scrabble-solver_packages_scrabble-solver_src_i18n_languages_1f0474f1._.js.map +1 -0
  72. package/.next/server/middleware-build-manifest.js +40 -1
  73. package/.next/server/middleware-manifest.json +2 -2
  74. package/.next/server/next-font-manifest.js +1 -1
  75. package/.next/server/next-font-manifest.json +6 -1
  76. package/.next/server/pages/404.html +1 -1
  77. package/.next/server/pages/500.html +1 -1
  78. package/.next/server/pages/_app/build-manifest.json +18 -0
  79. package/.next/server/pages/_app/client-build-manifest.json +5 -0
  80. package/.next/server/pages/_app/next-font-manifest.json +6 -0
  81. package/.next/server/pages/_app/pages-manifest.json +3 -0
  82. package/.next/server/pages/_app/react-loadable-manifest.json +1 -0
  83. package/.next/server/pages/_app.js +6 -1
  84. package/.next/server/pages/_app.js.map +5 -0
  85. package/.next/server/pages/_app.js.nft.json +1 -1
  86. package/.next/server/pages/_document/next-font-manifest.json +6 -0
  87. package/.next/server/pages/_document/pages-manifest.json +3 -0
  88. package/.next/server/pages/_document/react-loadable-manifest.json +1 -0
  89. package/.next/server/pages/_document.js +5 -1
  90. package/.next/server/pages/_document.js.map +5 -0
  91. package/.next/server/pages/_document.js.nft.json +1 -1
  92. package/.next/server/pages/_error/build-manifest.json +15 -0
  93. package/.next/server/pages/_error/client-build-manifest.json +5 -0
  94. package/.next/server/pages/_error/next-font-manifest.json +6 -0
  95. package/.next/server/pages/_error/pages-manifest.json +3 -0
  96. package/.next/server/pages/_error/react-loadable-manifest.json +1 -0
  97. package/.next/server/pages/_error.js +10 -1
  98. package/.next/server/pages/_error.js.map +5 -0
  99. package/.next/server/pages/_error.js.nft.json +1 -1
  100. package/.next/server/pages/api/dictionary/[locale]/[word]/pages-manifest.json +3 -0
  101. package/.next/server/pages/api/dictionary/[locale]/[word].js +8 -2
  102. package/.next/server/pages/api/dictionary/[locale]/[word].js.map +5 -0
  103. package/.next/server/pages/api/dictionary/[locale]/[word].js.nft.json +1 -1
  104. package/.next/server/pages/api/dictionary/[locale]/pages-manifest.json +3 -0
  105. package/.next/server/pages/api/dictionary/[locale].js +6 -1
  106. package/.next/server/pages/api/dictionary/[locale].js.map +5 -0
  107. package/.next/server/pages/api/dictionary/[locale].js.nft.json +1 -1
  108. package/.next/server/pages/api/solve/pages-manifest.json +3 -0
  109. package/.next/server/pages/api/solve.js +8 -1
  110. package/.next/server/pages/api/solve.js.map +5 -0
  111. package/.next/server/pages/api/solve.js.nft.json +1 -1
  112. package/.next/server/pages/api/verify/pages-manifest.json +3 -0
  113. package/.next/server/pages/api/verify.js +7 -1
  114. package/.next/server/pages/api/verify.js.map +5 -0
  115. package/.next/server/pages/api/verify.js.nft.json +1 -1
  116. package/.next/server/pages/api/visit/pages-manifest.json +3 -0
  117. package/.next/server/pages/api/visit.js +5 -1
  118. package/.next/server/pages/api/visit.js.map +5 -0
  119. package/.next/server/pages/api/visit.js.nft.json +1 -1
  120. package/.next/server/pages/index/build-manifest.json +18 -0
  121. package/.next/server/pages/index/client-build-manifest.json +5 -0
  122. package/.next/server/pages/index/next-font-manifest.json +6 -0
  123. package/.next/server/pages/index/pages-manifest.json +3 -0
  124. package/.next/server/pages/index/react-loadable-manifest.json +1 -0
  125. package/.next/server/pages/index.html +1 -1
  126. package/.next/server/pages/index.js +11 -1
  127. package/.next/server/pages/index.js.map +5 -0
  128. package/.next/server/pages/index.js.nft.json +1 -1
  129. package/.next/server/pages/index.json +1 -1
  130. package/.next/server/pages/not-found/build-manifest.json +17 -0
  131. package/.next/server/pages/not-found/client-build-manifest.json +5 -0
  132. package/.next/server/pages/not-found/next-font-manifest.json +6 -0
  133. package/.next/server/pages/not-found/pages-manifest.json +3 -0
  134. package/.next/server/pages/not-found/react-loadable-manifest.json +1 -0
  135. package/.next/server/pages/not-found.html +1 -0
  136. package/.next/server/pages/not-found.js.map +5 -0
  137. package/.next/server/pages/not-found.js.nft.json +1 -0
  138. package/.next/server/pages-manifest.json +6 -5
  139. package/.next/server/server-reference-manifest.js +1 -0
  140. package/.next/server/server-reference-manifest.json +5 -0
  141. package/.next/static/7kzTSHcrJ7tE47btIJcLO/_buildManifest.js +27 -0
  142. package/.next/static/chunks/060b82a3f336704f.js +3 -0
  143. package/.next/static/chunks/18159e87dc14f3cf.js +1 -0
  144. package/.next/static/chunks/27692b9d65f8b241.js +8 -0
  145. package/.next/static/chunks/2f5ae49118c8c86e.js +1 -0
  146. package/.next/static/chunks/339ed8704781040d.js +5 -0
  147. package/.next/static/chunks/3c8b810de7908416.js +3 -0
  148. package/.next/static/chunks/50e709cb7765c2f9.js +1 -0
  149. package/.next/static/chunks/69fdc9801e177051.js +1 -0
  150. package/.next/static/chunks/77bd0d5f1fb6eeba.js +3 -0
  151. package/.next/static/chunks/88b0985f454c1075.js +1 -0
  152. package/.next/static/chunks/95230bbbdd629d16.js +1 -0
  153. package/.next/static/chunks/997907c5fccf02bb.js +5 -0
  154. package/.next/static/chunks/9b2e7a689e581b58.js +7 -0
  155. package/.next/static/chunks/a4580bbcd72cf165.css +2 -0
  156. package/.next/static/chunks/e37c75eaddd8268a.css +47 -0
  157. package/.next/static/chunks/e75d2aeb209c3d8c.js +8 -0
  158. package/.next/static/chunks/eebac312ab720248.js +1 -0
  159. package/.next/static/chunks/turbopack-3eaa540498b1c1e9.js +3 -0
  160. package/.next/static/chunks/turbopack-6422aba52462ed1d.js +3 -0
  161. package/.next/static/chunks/turbopack-c70c4122d677e1a8.js +3 -0
  162. package/.next/static/chunks/turbopack-cc316a12eadf598b.js +3 -0
  163. package/.next/trace +1 -24
  164. package/.next/trace-build +1 -0
  165. package/.next/turbopack +0 -0
  166. package/.next/types/routes.d.ts +57 -0
  167. package/.next/types/validator.ts +106 -0
  168. package/next-env.d.ts +1 -0
  169. package/next.config.js +9 -32
  170. package/package.json +27 -27
  171. package/src/components/Modal/Modal.tsx +1 -0
  172. package/src/components/Results/Result.tsx +13 -17
  173. package/src/components/Results/Results.tsx +23 -24
  174. package/src/hooks/useMedia.ts +1 -0
  175. package/src/pages/_app.tsx +1 -1
  176. package/src/pages/{404.tsx → not-found.tsx} +2 -0
  177. package/src/state/cellFilters/slice.ts +1 -2
  178. package/src/state/settings/selectors.ts +0 -1
  179. package/src/styles/global.scss +1 -1
  180. package/src/styles/variables.scss +2 -2
  181. package/.next/cache/webpack/client-production/0.pack +0 -0
  182. package/.next/cache/webpack/client-production/index.pack +0 -0
  183. package/.next/cache/webpack/client-production/index.pack.old +0 -0
  184. package/.next/cache/webpack/edge-server-production/0.pack +0 -0
  185. package/.next/cache/webpack/edge-server-production/index.pack +0 -0
  186. package/.next/cache/webpack/edge-server-production/index.pack.old +0 -0
  187. package/.next/cache/webpack/server-production/0.pack +0 -0
  188. package/.next/cache/webpack/server-production/index.pack +0 -0
  189. package/.next/cache/webpack/server-production/index.pack.old +0 -0
  190. package/.next/server/InjectManifest.js.nft.json +0 -1
  191. package/.next/server/chunks/106.js +0 -1
  192. package/.next/server/chunks/30.js +0 -6
  193. package/.next/server/chunks/318.js +0 -1
  194. package/.next/server/chunks/50.js +0 -19
  195. package/.next/server/chunks/812.js +0 -1
  196. package/.next/server/chunks/929.js +0 -1
  197. package/.next/server/chunks/974.js +0 -1
  198. package/.next/server/dynamic-css-manifest.js +0 -1
  199. package/.next/server/middleware-react-loadable-manifest.js +0 -1
  200. package/.next/server/pages/404.js.nft.json +0 -1
  201. package/.next/server/webpack-api-runtime.js +0 -1
  202. package/.next/server/webpack-runtime.js +0 -1
  203. package/.next/static/MhrqAqLI9_L8obb7tgjvi/_buildManifest.js +0 -1
  204. package/.next/static/chunks/framework-aad31c68dd0bb0ea.js +0 -1
  205. package/.next/static/chunks/main-eab5847b41f0af4a.js +0 -1
  206. package/.next/static/chunks/pages/404-04457ede98c6b53e.js +0 -1
  207. package/.next/static/chunks/pages/_app-bf81f201c021fdc1.js +0 -1
  208. package/.next/static/chunks/pages/_error-a9800cedd835bcad.js +0 -1
  209. package/.next/static/chunks/pages/index-79a390f3c2a2499f.js +0 -1
  210. package/.next/static/chunks/polyfills-42372ed130431b0a.js +0 -1
  211. package/.next/static/chunks/webpack-6224d37324e372cb.js +0 -1
  212. package/.next/static/css/04a3767982ec10e8.css +0 -1
  213. package/.next/static/css/1fae874a25934f54.css +0 -2
  214. /package/.next/{react-loadable-manifest.json → server/app-paths-manifest.json} +0 -0
  215. /package/.next/{dynamic-css-manifest.json → static/7kzTSHcrJ7tE47btIJcLO/_clientMiddlewareManifest.json} +0 -0
  216. /package/.next/static/{MhrqAqLI9_L8obb7tgjvi → 7kzTSHcrJ7tE47btIJcLO}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/DictionaryModal/DictionaryModal.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/DictionaryModal/DictionaryModal.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/DictionaryModal/index.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/KeyMapModal/components/Mapping/Mapping.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/KeyMapModal/components/Mapping/Mapping.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/KeyMapModal/components/Mapping/index.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/KeyMapModal/KeyMapModal.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/KeyMapModal/index.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/MenuModal/MenuModal.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/MenuModal/MenuModal.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/MenuModal/index.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/RemainingTilesModal/components/Character/Character.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/RemainingTilesModal/components/Character/Character.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/RemainingTilesModal/components/Character/index.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/RemainingTilesModal/components/index.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/RemainingTilesModal/RemainingTilesModal.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/RemainingTilesModal/lib.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/RemainingTilesModal/selectors.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/RemainingTilesModal/RemainingTilesModal.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/RemainingTilesModal/index.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/ResultsModal/ResultsModal.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/ResultsModal/ResultsModal.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/ResultsModal/index.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/AutoGroupTilesSetting/AutoGroupTilesSetting.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/AutoGroupTilesSetting/constants.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/AutoGroupTilesSetting/lib.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/AutoGroupTilesSetting/AutoGroupTilesSetting.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/AutoGroupTilesSetting/index.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/ConfigSetting/ConfigSetting.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/ConfigSetting/lib.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/ConfigSetting/ConfigSetting.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/ConfigSetting/index.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/InputModeSetting.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/lib.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/InputModeSetting.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/index.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/LocaleSetting/LocaleSetting.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/LocaleSetting/LocaleSetting.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/LocaleSetting/index.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/ShowCoordinatesSetting/ShowCoordinatesSetting.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/ShowCoordinatesSetting/ShowCoordinatesSetting.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/ShowCoordinatesSetting/index.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/RemoveCellFiltersSetting/lib.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/RemoveCellFiltersSetting/RemoveCellFiltersSetting.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/RemoveCellFiltersSetting/RemoveCellFiltersSetting.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/RemoveCellFiltersSetting/index.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/components/index.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/SettingsModal.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/SettingsModal/index.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/modals/WordsModal/WordsModal.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/WordsModal/WordsModal.tsx","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/WordsModal/index.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/modals/index.ts","../../../../../../../scrabble-solver/packages/scrabble-solver/src/serviceWorkerManager.ts","turbopack:///[project]/scrabble-solver/packages/scrabble-solver/src/pages/index.module.scss [ssr] (css module)","../../../../../../../scrabble-solver/packages/scrabble-solver/src/pages/index.tsx","../../../../../../../scrabble-solver/node_modules/next/src/build/templates/pages.ts"],"sourcesContent":["__turbopack_context__.v({\n \"content\": \"DictionaryModal-module-scss-module__EaLnlG__content\",\n \"dictionary\": \"DictionaryModal-module-scss-module__EaLnlG__dictionary\",\n \"dictionaryInput\": \"DictionaryModal-module-scss-module__EaLnlG__dictionaryInput\",\n});\n","import { type FunctionComponent, memo } from 'react';\n\nimport { Dictionary, DictionaryInput, Modal } from 'components';\nimport { useTranslate } from 'state';\n\nimport styles from './DictionaryModal.module.scss';\n\ninterface Props {\n className?: string;\n isOpen: boolean;\n onClose: () => void;\n}\n\nconst DictionaryModalBase: FunctionComponent<Props> = ({ className, isOpen, onClose }) => {\n const translate = useTranslate();\n\n return (\n <Modal className={className} isOpen={isOpen} title={translate('dictionary')} onClose={onClose}>\n <div className={styles.content}>\n <Dictionary className={styles.dictionary} />\n <DictionaryInput className={styles.dictionaryInput} />\n </div>\n </Modal>\n );\n};\n\nexport const DictionaryModal = memo(DictionaryModalBase);\n","export { DictionaryModal } from './DictionaryModal';\n","__turbopack_context__.v({\n \"description\": \"Mapping-module-scss-module__UbdVNG__description\",\n \"group\": \"Mapping-module-scss-module__UbdVNG__group\",\n \"keys\": \"Mapping-module-scss-module__UbdVNG__keys\",\n \"mapping\": \"Mapping-module-scss-module__UbdVNG__mapping\",\n \"plus\": \"Mapping-module-scss-module__UbdVNG__plus\",\n \"slash\": \"Mapping-module-scss-module__UbdVNG__slash\",\n});\n","import classNames from 'classnames';\nimport { Fragment, type FunctionComponent, type ReactNode } from 'react';\n\nimport styles from './Mapping.module.scss';\n\ninterface Props {\n className?: string;\n description: string;\n mapping: (ReactNode | ReactNode[])[];\n}\n\nexport const Mapping: FunctionComponent<Props> = ({ className, description, mapping }) => (\n <div className={classNames(styles.mapping, className)}>\n <h3 className={styles.description}>{description}</h3>\n\n <div className={styles.keys}>\n {mapping.map((key, index) => (\n <Fragment key={index}>\n <div className={styles.group}>\n {Array.isArray(key) ? (\n <>\n {key[0]}\n <span className={styles.plus}>+</span>\n {key[1]}\n </>\n ) : (\n key\n )}\n </div>\n\n {mapping.length > 1 && index < mapping.length - 1 && <span className={styles.slash}>/</span>}\n </Fragment>\n ))}\n </div>\n </div>\n);\n","export { Mapping } from './Mapping';\n","import { type FunctionComponent, memo } from 'react';\n\nimport { Arrows, Backspace, Ctrl, Del, Enter, Key, Modal, Space } from 'components';\nimport { selectConfig, useTranslate, useTypedSelector } from 'state';\n\nimport { Mapping } from './components';\n\ninterface Props {\n className?: string;\n isOpen: boolean;\n onClose: () => void;\n}\n\nconst KeyMapModalBase: FunctionComponent<Props> = ({ className, isOpen, onClose }) => {\n const translate = useTranslate();\n const config = useTypedSelector(selectConfig);\n\n return (\n <Modal className={className} isOpen={isOpen} title={translate('keyMap')} onClose={onClose}>\n <Modal.Section label={translate('keyMap.board-and-rack')} title={translate('keyMap.board-and-rack')}>\n <Mapping description={translate('keyMap.board-and-rack.navigate')} mapping={[<Arrows key=\"arrows\" />]} />\n\n <Mapping\n description={translate('keyMap.board-and-rack.remove-tile')}\n mapping={[<Del key=\"del\" />, <Backspace key=\"backspace\" />]}\n />\n\n <Mapping description={translate('keyMap.board-and-rack.submit')} mapping={[<Enter key=\"del\" />]} />\n\n {config.twoCharacterTiles.length > 0 && (\n <Mapping\n description={translate('keyMap.board-and-rack.insert-two-letter-tile')}\n mapping={[\n [\n <Ctrl key=\"ctrl\" />,\n <>\n {config.twoCharacterTiles.map(([firstLetter]) => (\n <Key key={firstLetter}>{firstLetter.toUpperCase()}</Key>\n ))}\n </>,\n ],\n ]}\n />\n )}\n </Modal.Section>\n\n <Modal.Section label={translate('keyMap.board')} title={translate('keyMap.board')}>\n <Mapping description={translate('keyMap.board.toggle-direction')} mapping={[<Arrows key=\"arrows\" />]} />\n <Mapping description={translate('keyMap.board.toggle-blank')} mapping={[<Space key=\"space\" />]} />\n <Mapping\n description={translate('keyMap.board.toggle-cell-filter')}\n mapping={[[<Ctrl key=\"ctrl\" />, <Key key=\"g\">G</Key>]]}\n />\n </Modal.Section>\n\n <Modal.Section label={translate('keyMap.rack')} title={translate('keyMap.rack')}>\n <Mapping description={translate('keyMap.rack.insert-blank')} mapping={[<Space key=\"space\" />]} />\n </Modal.Section>\n </Modal>\n );\n};\n\nexport const KeyMapModal = memo(KeyMapModalBase);\n","export { KeyMapModal } from './KeyMapModal';\n","__turbopack_context__.v({\n \"button\": \"MenuModal-module-scss-module__JO7M8W__button\",\n \"flag\": \"MenuModal-module-scss-module__JO7M8W__flag\",\n \"settings\": \"MenuModal-module-scss-module__JO7M8W__settings\",\n \"settingsLabel\": \"MenuModal-module-scss-module__JO7M8W__settingsLabel\",\n});\n","import { type FunctionComponent, memo } from 'react';\n\nimport { Button, Modal } from 'components';\nimport { LOCALE_FEATURES } from 'i18n';\nimport { BookHalf, CardChecklist, Cog, Github, Sack } from 'icons';\nimport { GITHUB_PROJECT_URL } from 'parameters';\nimport { selectLocale, useTranslate, useTypedSelector } from 'state';\n\nimport styles from './MenuModal.module.scss';\n\ninterface Props {\n className?: string;\n isOpen: boolean;\n onClose: () => void;\n onShowDictionary: () => void;\n onShowRemainingTiles: () => void;\n onShowSettings: () => void;\n onShowWords: () => void;\n}\n\nconst MenuModalBase: FunctionComponent<Props> = ({\n className,\n isOpen,\n onClose,\n onShowDictionary,\n onShowRemainingTiles,\n onShowSettings,\n onShowWords,\n}) => {\n const translate = useTranslate();\n const locale = useTypedSelector(selectLocale);\n const { Icon } = LOCALE_FEATURES[locale];\n\n return (\n <Modal className={className} isOpen={isOpen} title={translate('menu')} onClose={onClose}>\n <Button\n aria-label={translate('remaining-tiles')}\n className={styles.button}\n Icon={Sack}\n wide\n onClick={onShowRemainingTiles}\n >\n {translate('remaining-tiles')}\n </Button>\n\n <Button aria-label={translate('words')} className={styles.button} Icon={CardChecklist} wide onClick={onShowWords}>\n {translate('words')}\n </Button>\n\n <Button\n aria-label={translate('dictionary')}\n className={styles.button}\n Icon={BookHalf}\n wide\n onClick={onShowDictionary}\n >\n {translate('dictionary')}\n </Button>\n\n <Button.Link\n aria-label={translate('github')}\n className={styles.button}\n href={GITHUB_PROJECT_URL}\n Icon={Github}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n wide\n >\n {translate('github')}\n </Button.Link>\n\n <Button aria-label={translate('settings')} className={styles.button} Icon={Cog} wide onClick={onShowSettings}>\n <div className={styles.settings}>\n <div className={styles.settingsLabel}>{translate('settings')}</div>\n <Icon aria-hidden=\"true\" className={styles.flag} role=\"img\" />\n </div>\n </Button>\n </Modal>\n );\n};\n\nexport const MenuModal = memo(MenuModalBase);\n","export { MenuModal } from './MenuModal';\n","__turbopack_context__.v({\n \"character\": \"Character-module-scss-module__sbmIIG__character\",\n \"count\": \"Character-module-scss-module__sbmIIG__count\",\n \"finished\": \"Character-module-scss-module__sbmIIG__finished\",\n \"overused\": \"Character-module-scss-module__sbmIIG__overused\",\n \"remaining\": \"Character-module-scss-module__sbmIIG__remaining\",\n \"tile\": \"Character-module-scss-module__sbmIIG__tile\",\n});\n","import { BLANK } from '@scrabble-solver/constants';\nimport classNames from 'classnames';\nimport { type FunctionComponent } from 'react';\n\nimport { Progress, Tile } from 'components';\nimport { LOCALE_FEATURES } from 'i18n';\nimport { REMAINING_TILES_TILE_SIZE } from 'parameters';\nimport { selectCharacterPoints, selectLocale, useTypedSelector } from 'state';\nimport { type RemainingTile } from 'types';\n\nimport styles from './Character.module.scss';\n\ninterface Props {\n tile: RemainingTile;\n}\n\nexport const Character: FunctionComponent<Props> = ({ tile }) => {\n const locale = useTypedSelector(selectLocale);\n const { direction } = LOCALE_FEATURES[locale];\n const { character, count, usedCount } = tile;\n\n if (typeof count === 'undefined') {\n throw new Error('Remaining tiles not supported for this config');\n }\n\n const remainingCount = count - usedCount;\n const points = useTypedSelector((state) => selectCharacterPoints(state, character));\n const current = direction === 'ltr' ? remainingCount : count;\n const total = direction === 'ltr' ? count : remainingCount;\n\n return (\n <div\n className={classNames(styles.character, {\n [styles.finished]: remainingCount <= 0,\n [styles.overused]: remainingCount < 0,\n })}\n >\n <Tile\n aria-label={character}\n character={character}\n className={styles.tile}\n disabled\n isBlank={character === BLANK}\n isValid={remainingCount >= 0}\n points={points}\n raised\n size={REMAINING_TILES_TILE_SIZE}\n />\n\n <Progress\n className={styles.remaining}\n max={count}\n style={{\n width: REMAINING_TILES_TILE_SIZE,\n }}\n value={remainingCount}\n />\n\n <div className={styles.count}>\n {current.toLocaleString(locale)} / {total.toLocaleString(locale)}\n </div>\n </div>\n );\n};\n","export { Character } from './Character';\n","export { Character } from './Character';\n","__turbopack_context__.v({\n \"badge\": \"RemainingTilesModal-module-scss-module__d8AVXG__badge\",\n \"character\": \"RemainingTilesModal-module-scss-module__d8AVXG__character\",\n \"content\": \"RemainingTilesModal-module-scss-module__d8AVXG__content\",\n \"title\": \"RemainingTilesModal-module-scss-module__d8AVXG__title\",\n});\n","import { BLANK, CONSONANTS, VOWELS } from '@scrabble-solver/constants';\n\nimport { type RemainingTile, type RemainingTilesGroup } from 'types';\n\nexport const getRemainingTilesGroups = (remainingTiles: RemainingTile[]): RemainingTilesGroup[] => {\n const consonants = remainingTiles.filter(isConsonant);\n const vowels = remainingTiles.filter(isVowel);\n const other = remainingTiles.filter(isOther);\n const groups: RemainingTilesGroup[] = [];\n\n groups.push({\n remainingCount: getRemainingTilesCount(vowels),\n tiles: vowels,\n translationKey: 'common.vowels',\n totalCount: getTotalTilesCount(vowels),\n });\n\n groups.push({\n remainingCount: getRemainingTilesCount(consonants),\n tiles: consonants,\n translationKey: 'common.consonants',\n totalCount: getTotalTilesCount(consonants),\n });\n\n groups.push({\n remainingCount: getRemainingTilesCount(other),\n tiles: other,\n translationKey: 'common.tiles',\n totalCount: getTotalTilesCount(other),\n });\n\n const twoCharacterTiles = remainingTiles.filter(isTwoCharacter);\n const blanks = remainingTiles.filter(isBlank);\n\n groups.push({\n remainingCount: getRemainingTilesCount(twoCharacterTiles),\n tiles: twoCharacterTiles,\n translationKey: 'common.two-letter-tiles',\n totalCount: getTotalTilesCount(twoCharacterTiles),\n });\n\n groups.push({\n remainingCount: getRemainingTilesCount(blanks),\n tiles: blanks,\n translationKey: 'common.blanks',\n totalCount: getTotalTilesCount(blanks),\n });\n\n return groups.filter(({ totalCount }) => totalCount > 0);\n};\n\nconst isConsonant = (tile: RemainingTile): boolean => CONSONANTS.includes(tile.character);\n\nconst isVowel = (tile: RemainingTile): boolean => VOWELS.includes(tile.character);\n\nconst isTwoCharacter = (tile: RemainingTile): boolean => tile.character.length === 2;\n\nconst isBlank = (tile: RemainingTile): boolean => tile.character === BLANK;\n\nconst isOther = (tile: RemainingTile) =>\n !isConsonant(tile) && !isVowel(tile) && !isBlank(tile) && !isTwoCharacter(tile);\n\nconst getRemainingTilesCount = (remainingTiles: RemainingTile[]): number => {\n return remainingTiles.reduce((sum, { count, usedCount }) => {\n if (typeof count === 'undefined') {\n return sum;\n }\n\n return sum + count - usedCount;\n }, 0);\n};\n\nconst getTotalTilesCount = (remainingTiles: RemainingTile[]): number => {\n return remainingTiles.reduce((sum, { count }) => {\n if (typeof count === 'undefined') {\n return sum;\n }\n\n return sum + count;\n }, 0);\n};\n","import { createSelector } from '@reduxjs/toolkit';\n\nimport { selectRemainingTiles } from 'state';\n\nimport { getRemainingTilesGroups } from './lib';\n\nexport const selectRemainingTilesGroups = createSelector([selectRemainingTiles], getRemainingTilesGroups);\n","import { type FunctionComponent, memo } from 'react';\n\nimport { Badge, Modal } from 'components';\nimport { LOCALE_FEATURES } from 'i18n';\nimport { getTileSizes } from 'lib';\nimport { REMAINING_TILES_TILE_SIZE } from 'parameters';\nimport { selectLocale, useTranslate, useTypedSelector } from 'state';\n\nimport { Character } from './components';\nimport styles from './RemainingTilesModal.module.scss';\nimport { selectRemainingTilesGroups } from './selectors';\n\ninterface Props {\n className?: string;\n isOpen: boolean;\n onClose: () => void;\n}\n\nconst RemainingTilesModalBase: FunctionComponent<Props> = ({ className, isOpen, onClose }) => {\n const translate = useTranslate();\n const locale = useTypedSelector(selectLocale);\n const groups = useTypedSelector(selectRemainingTilesGroups);\n const { tileFontSize } = getTileSizes(REMAINING_TILES_TILE_SIZE);\n const { direction } = LOCALE_FEATURES[locale];\n\n return (\n <Modal className={className} isOpen={isOpen} title={translate('remaining-tiles')} onClose={onClose}>\n {groups.map(({ remainingCount, tiles, translationKey, totalCount }) => {\n const current = direction === 'ltr' ? remainingCount : totalCount;\n const total = direction === 'ltr' ? totalCount : remainingCount;\n\n return (\n <Modal.Section\n key={translationKey}\n label={translate(translationKey)}\n title={\n <span className={styles.title}>\n <span>{translate(translationKey)}</span>\n <Badge className={styles.badge}>\n {current.toLocaleString(locale)} / {total.toLocaleString(locale)}\n </Badge>\n </span>\n }\n >\n <div className={styles.content} style={{ fontSize: tileFontSize }}>\n {tiles.map((tile) => {\n return (\n <div className={styles.character} key={tile.character}>\n <Character tile={tile} />\n </div>\n );\n })}\n </div>\n </Modal.Section>\n );\n })}\n </Modal>\n );\n};\n\nexport const RemainingTilesModal = memo(RemainingTilesModalBase);\n","export { RemainingTilesModal } from './RemainingTilesModal';\n","__turbopack_context__.v({\n \"content\": \"ResultsModal-module-scss-module__ChrS1q__content\",\n \"dictionary\": \"ResultsModal-module-scss-module__ChrS1q__dictionary\",\n \"results\": \"ResultsModal-module-scss-module__ChrS1q__results\",\n});\n","import { type Result } from '@scrabble-solver/types';\nimport { type FunctionComponent, memo, useEffect, useMemo } from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { Button, Dictionary, Modal, Results } from 'components';\nimport { useAppLayout } from 'hooks';\nimport { Check, EyeFill } from 'icons';\nimport { resultsSlice, selectProcessedResults, selectResultCandidate, useTranslate, useTypedSelector } from 'state';\n\nimport styles from './ResultsModal.module.scss';\n\ninterface Props {\n className?: string;\n isOpen: boolean;\n onClose: () => void;\n}\n\nconst ResultsModalBase: FunctionComponent<Props> = ({ className, isOpen, onClose }) => {\n const dispatch = useDispatch();\n const translate = useTranslate();\n const { showResultsInModal } = useAppLayout();\n const results = useTypedSelector(selectProcessedResults);\n const resultCandidate = useTypedSelector(selectResultCandidate);\n const index = results ? results.findIndex((result) => result.id === resultCandidate?.id) : -1;\n const highlightedIndex = index === -1 ? undefined : index;\n\n const callbacks = useMemo(\n () => ({\n onClick: (result: Result) => {\n const isSelected = result === resultCandidate;\n\n if (isSelected) {\n onClose();\n } else {\n dispatch(resultsSlice.actions.changeResultCandidate(result));\n }\n },\n }),\n [dispatch, onClose, resultCandidate],\n );\n\n const handleInsert = () => {\n if (resultCandidate) {\n dispatch(resultsSlice.actions.applyResult(resultCandidate));\n }\n\n onClose();\n };\n\n const handlePreview = () => {\n onClose();\n };\n\n useEffect(() => {\n if (isOpen && !showResultsInModal) {\n onClose();\n }\n }, [isOpen, onClose, showResultsInModal]);\n\n return (\n <Modal\n className={className}\n footer={\n <>\n <Button\n aria-label={translate('results.insert')}\n disabled={!resultCandidate}\n Icon={Check}\n tooltip={translate('results.insert')}\n variant=\"primary\"\n onClick={handleInsert}\n >\n {translate('results.insert')}\n </Button>\n\n <Button\n aria-label={translate('results.preview')}\n disabled={!resultCandidate}\n Icon={EyeFill}\n tooltip={translate('results.preview')}\n onClick={handlePreview}\n >\n {translate('results.preview')}\n </Button>\n </>\n }\n isOpen={isOpen}\n title={translate('results')}\n onClose={onClose}\n >\n <div className={styles.content}>\n <Results callbacks={callbacks} className={styles.results} highlightedIndex={highlightedIndex} />\n <Dictionary className={styles.dictionary} />\n </div>\n </Modal>\n );\n};\n\nexport const ResultsModal = memo(ResultsModalBase);\n","export { ResultsModal } from './ResultsModal';\n","__turbopack_context__.v({\n \"label\": \"AutoGroupTilesSetting-module-scss-module__sKtKxa__label\",\n \"option\": \"AutoGroupTilesSetting-module-scss-module__sKtKxa__option\",\n});\n","export const NULL_VALUE = 'null';\n","import { type AutoGroupTiles } from 'types';\n\nimport { NULL_VALUE } from './constants';\n\nexport const parseValue = (value: string): AutoGroupTiles => {\n if (value === 'left' || value === 'right') {\n return value;\n }\n\n if (value === NULL_VALUE) {\n return null;\n }\n\n throw new Error(`\"${value}\" is not valid. Should be \"left\", \"right\", or \"${NULL_VALUE}\"`);\n};\n","import { type ChangeEvent, type FunctionComponent } from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { Radio } from 'components';\nimport { selectAutoGroupTiles, settingsSlice, useTranslate, useTypedSelector } from 'state';\n\nimport styles from './AutoGroupTilesSetting.module.scss';\nimport { NULL_VALUE } from './constants';\nimport { parseValue } from './lib';\n\ninterface Props {\n className?: string;\n disabled?: boolean;\n}\n\nexport const AutoGroupTilesSetting: FunctionComponent<Props> = ({ className, disabled }) => {\n const dispatch = useDispatch();\n const translate = useTranslate();\n const value = useTypedSelector(selectAutoGroupTiles);\n\n const options = [\n {\n label: translate('settings.autoGroupTiles.left'),\n value: 'left',\n },\n {\n label: translate('settings.autoGroupTiles.right'),\n value: 'right',\n },\n {\n label: translate('settings.autoGroupTiles.null'),\n value: NULL_VALUE,\n },\n ];\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n const autoGroupTiles = parseValue(event.target.value);\n dispatch(settingsSlice.actions.changeAutoGroupTiles(autoGroupTiles));\n };\n\n return (\n <div className={className}>\n {options.map((option) => (\n <Radio\n checked={value === parseValue(option.value)}\n className={styles.option}\n disabled={disabled}\n key={option.value}\n name=\"autoGroupTiles\"\n value={option.value}\n onChange={handleChange}\n >\n <div className={styles.label}>{option.label}</div>\n </Radio>\n ))}\n </div>\n );\n};\n","export { AutoGroupTilesSetting } from './AutoGroupTilesSetting';\n","__turbopack_context__.v({\n \"label\": \"ConfigSetting-module-scss-module__TRAmGa__label\",\n \"option\": \"ConfigSetting-module-scss-module__TRAmGa__option\",\n});\n","import { games, hasConfig, languages } from '@scrabble-solver/configs';\nimport { type Locale } from '@scrabble-solver/types';\n\nexport const getOptions = (locale: Locale) => {\n const gameConfigs = Object.values(games);\n const languageConfigs = Object.values(languages);\n\n return gameConfigs.map((gameConfig) => {\n const languageConfig = languageConfigs.find((config) => {\n return config.game === gameConfig.game && config.locale === locale;\n });\n\n return {\n disabled: !hasConfig(gameConfig.game, locale),\n label: languageConfig?.config.name ?? gameConfig.name,\n value: gameConfig.game,\n };\n });\n};\n","import { isGame } from '@scrabble-solver/types';\nimport { type ChangeEvent, type FunctionComponent, useMemo } from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { Radio } from 'components';\nimport { selectGame, selectLocale, settingsSlice, useTypedSelector } from 'state';\n\nimport styles from './ConfigSetting.module.scss';\nimport { getOptions } from './lib';\n\ninterface Props {\n className?: string;\n disabled?: boolean;\n}\n\nexport const ConfigSetting: FunctionComponent<Props> = ({ className, disabled }) => {\n const dispatch = useDispatch();\n const game = useTypedSelector(selectGame);\n const locale = useTypedSelector(selectLocale);\n const options = useMemo(() => getOptions(locale), [locale]);\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (isGame(event.target.value)) {\n dispatch(settingsSlice.actions.changeGame(event.target.value));\n }\n };\n\n return (\n <div className={className}>\n {options.map((option) => (\n <Radio\n checked={game === option.value}\n className={styles.option}\n disabled={disabled || option.disabled}\n key={option.value}\n name=\"game\"\n value={option.value}\n onChange={handleChange}\n >\n <div className={styles.label}>{option.label}</div>\n </Radio>\n ))}\n </div>\n );\n};\n","export { ConfigSetting } from './ConfigSetting';\n","__turbopack_context__.v({\n \"label\": \"InputModeSetting-module-scss-module__DdYtsa__label\",\n \"option\": \"InputModeSetting-module-scss-module__DdYtsa__option\",\n});\n","import { type InputMode } from 'types';\n\nexport const parseValue = (value: string): InputMode => {\n if (value === 'keyboard') {\n return 'keyboard';\n }\n\n if (value === 'touchscreen') {\n return 'touchscreen';\n }\n\n throw new Error(`\"${value}\" is not valid. Should be \"keyboard\" or \"touchscreen\"`);\n};\n","import { type ChangeEvent, type FunctionComponent } from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { Radio } from 'components';\nimport { selectInputMode, settingsSlice, useTranslate, useTypedSelector } from 'state';\n\nimport styles from './InputModeSetting.module.scss';\nimport { parseValue } from './lib';\n\ninterface Props {\n className?: string;\n disabled?: boolean;\n}\n\nexport const InputModeSetting: FunctionComponent<Props> = ({ className, disabled }) => {\n const dispatch = useDispatch();\n const translate = useTranslate();\n const value = useTypedSelector(selectInputMode);\n\n const options = [\n {\n label: translate('settings.inputMode.keyboard'),\n value: 'keyboard',\n },\n {\n label: translate('settings.inputMode.touchscreen'),\n value: 'touchscreen',\n },\n ];\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n const inputMode = parseValue(event.target.value);\n dispatch(settingsSlice.actions.changeInputMode(inputMode));\n };\n\n return (\n <div className={className}>\n {options.map((option) => (\n <Radio\n checked={value === option.value}\n className={styles.option}\n disabled={disabled}\n key={option.value}\n name=\"inputMode\"\n value={option.value}\n onChange={handleChange}\n >\n <div className={styles.label}>{option.label}</div>\n </Radio>\n ))}\n </div>\n );\n};\n","export { InputModeSetting } from './InputModeSetting';\n","__turbopack_context__.v({\n \"flag\": \"LocaleSetting-module-scss-module__g0B85W__flag\",\n \"label\": \"LocaleSetting-module-scss-module__g0B85W__label\",\n \"option\": \"LocaleSetting-module-scss-module__g0B85W__option\",\n});\n","import { type Locale } from '@scrabble-solver/types';\nimport classNames from 'classnames';\nimport { type ChangeEvent, type FunctionComponent } from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { Radio } from 'components';\nimport { LOCALE_FEATURES } from 'i18n';\nimport { selectLocale, settingsSlice, useTypedSelector } from 'state';\n\nimport styles from './LocaleSetting.module.scss';\n\ninterface Props {\n className?: string;\n disabled: boolean;\n}\n\nconst OPTIONS = Object.values(LOCALE_FEATURES).sort((a, b) => a.name.localeCompare(b.name));\n\nexport const LocaleSetting: FunctionComponent<Props> = ({ className, disabled }) => {\n const dispatch = useDispatch();\n const locale = useTypedSelector(selectLocale);\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n const newLocale: Locale = event.target.value as Locale;\n dispatch(settingsSlice.actions.changeLocale(newLocale));\n };\n\n return (\n <div className={className}>\n {OPTIONS.map(({ Icon, ...option }) => (\n <Radio\n checked={locale === option.locale}\n className={classNames(styles.option, className, {\n [styles.checked]: locale === option.locale,\n })}\n disabled={disabled}\n key={option.locale}\n name=\"locale\"\n value={option.locale}\n onChange={handleChange}\n >\n <span className={styles.label}>\n <Icon aria-hidden=\"true\" className={styles.flag} role=\"img\" />\n\n <span>{option.label}</span>\n </span>\n </Radio>\n ))}\n </div>\n );\n};\n","export { LocaleSetting } from './LocaleSetting';\n","__turbopack_context__.v({\n \"label\": \"ShowCoordinatesSetting-module-scss-module__Rmp_7q__label\",\n \"option\": \"ShowCoordinatesSetting-module-scss-module__Rmp_7q__option\",\n});\n","import { type ShowCoordinates } from '@scrabble-solver/types';\nimport { type ChangeEvent, type FunctionComponent } from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { Radio } from 'components';\nimport { selectShowCoordinates, settingsSlice, useTranslate, useTypedSelector } from 'state';\n\nimport styles from './ShowCoordinatesSetting.module.scss';\n\ninterface Props {\n className?: string;\n disabled?: boolean;\n}\n\nexport const ShowCoordinatesSetting: FunctionComponent<Props> = ({ className, disabled }) => {\n const dispatch = useDispatch();\n const translate = useTranslate();\n const value = useTypedSelector(selectShowCoordinates);\n\n const options = [\n {\n label: translate('settings.showCoordinates.hidden'),\n value: 'hidden',\n },\n {\n label: translate('settings.showCoordinates.original'),\n value: 'original',\n },\n {\n label: translate('settings.showCoordinates.alternative'),\n value: 'alternative',\n },\n ];\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n const showCoordinates = event.target.value as ShowCoordinates;\n dispatch(settingsSlice.actions.changeShowCoordinates(showCoordinates));\n };\n\n return (\n <div className={className}>\n {options.map((option) => (\n <Radio\n checked={String(value) === option.value}\n className={styles.option}\n disabled={disabled}\n key={option.value}\n name=\"showCoordinates\"\n value={option.value}\n onChange={handleChange}\n >\n <div className={styles.label}>{option.label}</div>\n </Radio>\n ))}\n </div>\n );\n};\n","export { ShowCoordinatesSetting } from './ShowCoordinatesSetting';\n","import { type RemoveCellFilters } from 'types';\n\nexport const parseValue = (value: string): RemoveCellFilters => {\n if (value === 'always') {\n return 'always';\n }\n\n if (value === 'never') {\n return 'never';\n }\n\n throw new Error(`\"${value}\" is not valid. Should be \"always\" or \"never\"`);\n};\n","__turbopack_context__.v({\n \"label\": \"RemoveCellFiltersSetting-module-scss-module__V3WseW__label\",\n \"option\": \"RemoveCellFiltersSetting-module-scss-module__V3WseW__option\",\n});\n","import { type ChangeEvent, type FunctionComponent } from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { Radio } from 'components';\nimport { selectRemoveCellFilters, settingsSlice, useTranslate, useTypedSelector } from 'state';\n\nimport { parseValue } from './lib';\nimport styles from './RemoveCellFiltersSetting.module.scss';\n\ninterface Props {\n className?: string;\n disabled?: boolean;\n}\n\nexport const RemoveCellFiltersSetting: FunctionComponent<Props> = ({ className, disabled }) => {\n const dispatch = useDispatch();\n const translate = useTranslate();\n const value = useTypedSelector(selectRemoveCellFilters);\n\n const options = [\n {\n label: translate('settings.removeCellFilters.always'),\n value: 'always',\n },\n {\n label: translate('settings.removeCellFilters.never'),\n value: 'never',\n },\n ];\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n const removeTileFilter = parseValue(event.target.value);\n dispatch(settingsSlice.actions.changeRemoveCellFilters(removeTileFilter));\n };\n\n return (\n <div className={className}>\n {options.map((option) => (\n <Radio\n checked={value === option.value}\n className={styles.option}\n disabled={disabled}\n key={option.value}\n name=\"removeCellFilters\"\n value={option.value}\n onChange={handleChange}\n >\n <div className={styles.label}>{option.label}</div>\n </Radio>\n ))}\n </div>\n );\n};\n","export { RemoveCellFiltersSetting } from './RemoveCellFiltersSetting';\n","export { AutoGroupTilesSetting } from './AutoGroupTilesSetting';\nexport { ConfigSetting } from './ConfigSetting';\nexport { InputModeSetting } from './InputModeSetting';\nexport { LocaleSetting } from './LocaleSetting';\nexport { ShowCoordinatesSetting } from './ShowCoordinatesSetting';\nexport { RemoveCellFiltersSetting } from './RemoveCellFiltersSetting';\n","import { type FunctionComponent, memo } from 'react';\n\nimport { Modal } from 'components';\nimport { useIsTouchDevice } from 'hooks';\nimport { useTranslate } from 'state';\n\nimport {\n AutoGroupTilesSetting,\n ConfigSetting,\n InputModeSetting,\n LocaleSetting,\n ShowCoordinatesSetting,\n RemoveCellFiltersSetting,\n} from './components';\n\ninterface Props {\n className?: string;\n isOpen: boolean;\n onClose: () => void;\n}\n\nconst SettingsModalBase: FunctionComponent<Props> = ({ className, isOpen, onClose }) => {\n const translate = useTranslate();\n const isTouchDevice = useIsTouchDevice();\n\n return (\n <Modal className={className} isOpen={isOpen} title={translate('settings')} onClose={onClose}>\n <Modal.Section label={translate('settings.game')} title={translate('settings.game')}>\n <ConfigSetting disabled={!isOpen} />\n </Modal.Section>\n\n <Modal.Section label={translate('settings.language')} title={translate('settings.language')}>\n <LocaleSetting disabled={!isOpen} />\n </Modal.Section>\n\n <Modal.Section label={translate('settings.showCoordinates')} title={translate('settings.showCoordinates')}>\n <ShowCoordinatesSetting disabled={!isOpen} />\n </Modal.Section>\n\n {!isTouchDevice && (\n <Modal.Section label={translate('settings.inputMode')} title={translate('settings.inputMode')}>\n <InputModeSetting disabled={!isOpen} />\n </Modal.Section>\n )}\n\n <Modal.Section label={translate('settings.autoGroupTiles')} title={translate('settings.autoGroupTiles')}>\n <AutoGroupTilesSetting disabled={!isOpen} />\n </Modal.Section>\n\n <Modal.Section label={translate('settings.removeCellFilters')} title={translate('settings.removeCellFilters')}>\n <RemoveCellFiltersSetting disabled={!isOpen} />\n </Modal.Section>\n </Modal>\n );\n};\n\nexport const SettingsModal = memo(SettingsModalBase);\n","export { SettingsModal } from './SettingsModal';\n","__turbopack_context__.v({\n \"badge\": \"WordsModal-module-scss-module__EO2L3q__badge\",\n \"icon\": \"WordsModal-module-scss-module__EO2L3q__icon\",\n \"invalid\": \"WordsModal-module-scss-module__EO2L3q__invalid\",\n \"title\": \"WordsModal-module-scss-module__EO2L3q__title\",\n \"valid\": \"WordsModal-module-scss-module__EO2L3q__valid\",\n \"word\": \"WordsModal-module-scss-module__EO2L3q__word\",\n});\n","import classNames from 'classnames';\nimport { type FunctionComponent, memo } from 'react';\n\nimport { Badge, Modal } from 'components';\nimport { Check, Cross } from 'icons';\nimport { selectInvalidWords, selectLocale, selectValidWords, useTranslate, useTypedSelector } from 'state';\n\nimport styles from './WordsModal.module.scss';\n\ninterface Props {\n className?: string;\n isOpen: boolean;\n onClose: () => void;\n}\n\nconst WordsModalBase: FunctionComponent<Props> = ({ className, isOpen, onClose }) => {\n const translate = useTranslate();\n const locale = useTypedSelector(selectLocale);\n const invalidWords = useTypedSelector(selectInvalidWords);\n const validWords = useTypedSelector(selectValidWords);\n\n return (\n <Modal className={className} isOpen={isOpen} title={translate('words')} onClose={onClose}>\n <Modal.Section\n label={translate('words.invalid')}\n title={\n <span className={styles.title}>\n <span>{translate('words.invalid')}</span>\n <Badge className={styles.badge}>{invalidWords.length.toLocaleString(locale)}</Badge>\n </span>\n }\n >\n {invalidWords.map((word, index) => (\n <div className={styles.word} key={index}>\n <Cross aria-hidden=\"true\" className={classNames(styles.icon, styles.invalid)} role=\"img\" /> {word}\n </div>\n ))}\n </Modal.Section>\n\n <Modal.Section\n label={translate('words.valid')}\n title={\n <span className={styles.title}>\n <span>{translate('words.valid')}</span>\n <Badge className={styles.badge}>{validWords.length.toLocaleString(locale)}</Badge>\n </span>\n }\n >\n {validWords.map((word, index) => (\n <div className={styles.word} key={index}>\n <Check aria-hidden=\"true\" className={classNames(styles.icon, styles.valid)} role=\"img\" /> {word}\n </div>\n ))}\n </Modal.Section>\n </Modal>\n );\n};\n\nexport const WordsModal = memo(WordsModalBase);\n","export { WordsModal } from './WordsModal';\n","export { DictionaryModal } from './DictionaryModal';\nexport { KeyMapModal } from './KeyMapModal';\nexport { MenuModal } from './MenuModal';\nexport { RemainingTilesModal } from './RemainingTilesModal';\nexport { ResultsModal } from './ResultsModal';\nexport { SettingsModal } from './SettingsModal';\nexport { WordsModal } from './WordsModal';\n","import { Workbox } from 'workbox-window';\n\nlet serviceWorker: Workbox | null = null;\n\nexport const registerServiceWorker = async () => {\n if (!globalThis.navigator || !('serviceWorker' in globalThis.navigator)) {\n return;\n }\n\n serviceWorker = new Workbox('/service-worker.js');\n await serviceWorker.register({ immediate: true });\n};\n\nexport const getServiceWorker = async (): Promise<Workbox | null> => {\n if (process.env.NODE_ENV !== 'production') {\n return null;\n }\n\n if (serviceWorker) {\n return serviceWorker;\n }\n\n await registerServiceWorker();\n\n return serviceWorker;\n};\n","__turbopack_context__.v({\n \"logo\": \"index-module-scss-module__nMIqQa__logo\",\n \"logoContainer\": \"index-module-scss-module__nMIqQa__logoContainer\",\n \"nav\": \"index-module-scss-module__nMIqQa__nav\",\n \"navContent\": \"index-module-scss-module__nMIqQa__navContent\",\n \"navLogo\": \"index-module-scss-module__nMIqQa__navLogo\",\n \"solver\": \"index-module-scss-module__nMIqQa__solver\",\n});\n","import { isObject } from '@scrabble-solver/types';\nimport fs from 'fs';\nimport path from 'path';\nimport { type FunctionComponent, useState } from 'react';\nimport ReactModal from 'react-modal';\nimport { useDispatch } from 'react-redux';\n\nimport { Logo, NavButtons, Solver } from 'components';\nimport { useDirection, useEffectOnce, useLanguage, useLocalStorage } from 'hooks';\nimport { LOCALE_FEATURES } from 'i18n';\nimport {\n DictionaryModal,\n KeyMapModal,\n MenuModal,\n RemainingTilesModal,\n ResultsModal,\n SettingsModal,\n WordsModal,\n} from 'modals';\nimport { registerServiceWorker } from 'serviceWorkerManager';\nimport { initialize, reset, selectConfig, selectLocale, useTypedSelector } from 'state';\n\nimport styles from './index.module.scss';\n\nReactModal.setAppElement('#__next');\n\ninterface Props {\n version: string;\n}\n\ntype Modal = 'dictionary' | 'keyMap' | 'menu' | 'remainingTiles' | 'results' | 'settings' | 'words';\n\nconst Index: FunctionComponent<Props> = ({ version }) => {\n const dispatch = useDispatch();\n const config = useTypedSelector(selectConfig);\n const locale = useTypedSelector(selectLocale);\n const [isClient, setIsClient] = useState(false);\n const [modals, setModals] = useState<Record<Modal, boolean>>({\n dictionary: false,\n keyMap: false,\n menu: false,\n remainingTiles: false,\n results: false,\n settings: false,\n words: false,\n });\n\n const patchModals = (patch: Partial<Record<Modal, boolean>>) => {\n setModals((current) => ({ ...current, ...patch }));\n };\n\n useDirection(LOCALE_FEATURES[locale].direction);\n useLanguage(locale);\n useLocalStorage();\n\n useEffectOnce(() => {\n if (process.env.NODE_ENV === 'production') {\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n registerServiceWorker();\n }\n\n setIsClient(true);\n dispatch(initialize());\n });\n\n if (!isClient) {\n return null;\n }\n\n return (\n <>\n <nav className={styles.nav}>\n <div className={styles.navContent}>\n <div className={styles.navLogo}>\n <a className={styles.logoContainer} href=\"/\" title={version}>\n <Logo className={styles.logo} />\n </a>\n </div>\n\n <NavButtons\n onClear={() => dispatch(reset())}\n onShowKeyMap={() => patchModals({ keyMap: true })}\n onShowMenu={() => patchModals({ menu: true })}\n onShowRemainingTiles={() => patchModals({ remainingTiles: true })}\n onShowSettings={() => patchModals({ settings: true })}\n onShowWords={() => patchModals({ words: true })}\n />\n </div>\n </nav>\n\n <Solver className={styles.solver} onShowResults={() => patchModals({ results: true })} />\n\n <MenuModal\n isOpen={modals.menu}\n onClose={() => patchModals({ menu: false })}\n onShowDictionary={() => patchModals({ dictionary: true })}\n onShowRemainingTiles={() => patchModals({ remainingTiles: true })}\n onShowSettings={() => patchModals({ settings: true })}\n onShowWords={() => patchModals({ words: true })}\n />\n\n <SettingsModal isOpen={modals.settings} onClose={() => patchModals({ settings: false })} />\n\n <KeyMapModal isOpen={modals.keyMap} onClose={() => patchModals({ keyMap: false })} />\n\n <WordsModal isOpen={modals.words} onClose={() => patchModals({ words: false })} />\n\n {config.supportsRemainingTiles && (\n <RemainingTilesModal isOpen={modals.remainingTiles} onClose={() => patchModals({ remainingTiles: false })} />\n )}\n\n <ResultsModal isOpen={modals.results} onClose={() => patchModals({ results: false })} />\n\n <DictionaryModal isOpen={modals.dictionary} onClose={() => patchModals({ dictionary: false })} />\n </>\n );\n};\n\nexport const getStaticProps = async (): Promise<{ props: Props }> => {\n const version = await readVersion();\n return { props: { version } };\n};\n\nconst readVersion = async (): Promise<string> => {\n const packageJsonFilepath = path.resolve(process.cwd(), 'package.json');\n const data = await fs.promises.readFile(packageJsonFilepath, 'utf-8');\n const packageJson = JSON.parse(data);\n\n if (!isObject(packageJson) || !('version' in packageJson) || typeof packageJson.version !== 'string') {\n throw new Error('Invalid package.json');\n }\n\n return `v${packageJson.version}`;\n};\n\nexport default Index;\n","import { PagesRouteModule } from '../../server/route-modules/pages/module.compiled'\nimport { RouteKind } from '../../server/route-kind'\n\nimport { hoist } from './helpers'\n\n// Import the app and document modules.\nimport * as document from 'VAR_MODULE_DOCUMENT'\nimport * as app from 'VAR_MODULE_APP'\n\n// Import the userland code.\nimport * as userland from 'VAR_USERLAND'\nimport { getHandler } from '../../server/route-modules/pages/pages-handler'\n\n// Re-export the component (should be the default export).\nexport default hoist(userland, 'default')\n\n// Re-export methods.\nexport const getStaticProps = hoist(userland, 'getStaticProps')\nexport const getStaticPaths = hoist(userland, 'getStaticPaths')\nexport const getServerSideProps = hoist(userland, 'getServerSideProps')\nexport const config = hoist(userland, 'config')\nexport const reportWebVitals = hoist(userland, 'reportWebVitals')\n\n// Re-export legacy methods.\nexport const unstable_getStaticProps = hoist(\n userland,\n 'unstable_getStaticProps'\n)\nexport const unstable_getStaticPaths = hoist(\n userland,\n 'unstable_getStaticPaths'\n)\nexport const unstable_getStaticParams = hoist(\n userland,\n 'unstable_getStaticParams'\n)\nexport const unstable_getServerProps = hoist(\n userland,\n 'unstable_getServerProps'\n)\nexport const unstable_getServerSideProps = hoist(\n userland,\n 'unstable_getServerSideProps'\n)\n\n// Create and export the route module that will be consumed.\nexport const routeModule = new PagesRouteModule({\n definition: {\n kind: RouteKind.PAGES,\n page: 'VAR_DEFINITION_PAGE',\n pathname: 'VAR_DEFINITION_PATHNAME',\n // The following aren't used in production.\n bundlePath: '',\n filename: '',\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n relativeProjectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n components: {\n // default export might not exist when optimized for data only\n App: app.default,\n Document: document.default,\n },\n userland,\n})\n\nexport const handler = getHandler({\n srcPage: 'VAR_DEFINITION_PAGE',\n config,\n userland,\n routeModule,\n getStaticPaths,\n getStaticProps,\n getServerSideProps,\n})\n"],"names":["PagesRouteModule","RouteKind","hoist","document","app","userland","getHandler","getStaticProps","getStaticPaths","getServerSideProps","config","reportWebVitals","unstable_getStaticProps","unstable_getStaticPaths","unstable_getStaticParams","unstable_getServerProps","unstable_getServerSideProps","routeModule","definition","kind","PAGES","page","pathname","bundlePath","filename","distDir","process","env","__NEXT_RELATIVE_DIST_DIR","relativeProjectDir","__NEXT_RELATIVE_PROJECT_DIR","components","App","default","Document","handler","srcPage"],"mappings":"0BAAA,EAAA,CAAA,CAAA,CACA,QAAA,sDACA,WAAA,yDACA,gBAAA,6DACA,iDCJA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,6DAqBO,IAAM,EAAkB,CAAA,EAAA,EAAA,IAAA,AAAI,EAbmB,AAalB,CAbmB,WAAE,CAAS,QAAE,CAAM,SAAE,CAAO,CAAE,IACnF,IAAM,EAAY,CAAA,EAAA,EAAA,YAAA,AAAY,IAE9B,MACE,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CAAC,UAAW,EAAW,OAAQ,EAAQ,MAAO,EAAU,cAAe,QAAS,WACpF,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,OAAO,WAC5B,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,UAAU,CAAA,CAAC,UAAW,EAAA,OAAM,CAAC,UAAU,GACxC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,eAAe,CAAA,CAAC,UAAW,EAAA,OAAM,CAAC,eAAe,OAI1D,sFCxBA,IAAA,EAAA,EAAA,CAAA,CAAA,yUCAA,EAAA,CAAA,CAAA,CACA,YAAA,kDACA,MAAA,4CACA,KAAA,2CACA,QAAA,8CACA,KAAA,2CACA,MAAA,2CACA,2CCPA,EAAA,EAAA,CAAA,CAAA,MACA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,wBAQiD,CAAC,CAAE,WAAS,aAAE,CAAW,SAAE,CAAO,CAAE,GACnF,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAI,UAAW,CAAA,EAAA,EAAA,OAAU,AAAV,EAAW,EAAA,OAAM,CAAC,OAAO,CAAE,aACzC,CAAA,EAAA,EAAA,GAAA,EAAC,KAAA,CAAG,UAAW,EAAA,OAAM,CAAC,WAAW,UAAG,IAEpC,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,IAAI,UACxB,EAAQ,GAAG,CAAC,CAAC,EAAK,IACjB,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,QAAQ,CAAA,WACP,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,KAAK,UACzB,MAAM,OAAO,CAAC,GACb,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,QAAA,CAAA,WACG,CAAG,CAAC,EAAE,CACP,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,UAAW,EAAA,OAAM,CAAC,IAAI,UAAE,MAC7B,CAAG,CAAC,EAAE,IAGT,IAIH,EAAQ,MAAM,CAAG,GAAK,EAAQ,EAAQ,MAAM,CAAG,GAAK,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,UAAW,EAAA,OAAM,CAAC,KAAK,UAAE,QAbvE,mCCjBvB,EAAA,CAAA,CAAA,oECAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,MAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,CAAA,CAAA,OAAA,IAAA,EAAA,EAAA,CAAA,CAAA,iEAyDO,IAAM,EAAc,CAAA,EAAA,EAAA,IAAA,AAAI,EAjDmB,AAiDlB,CAjDmB,CAAE,WAAS,QAAE,CAAM,SAAE,CAAO,CAAE,IAC/E,IAAM,EAAY,CAAA,EAAA,EAAA,YAAA,AAAY,IACxB,EAAS,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,YAAY,EAE5C,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,KAAK,CAAA,CAAC,UAAW,EAAW,OAAQ,EAAQ,MAAO,EAAU,UAAW,QAAS,YAChF,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,KAAK,CAAC,OAAO,CAAA,CAAC,MAAO,EAAU,yBAA0B,MAAO,EAAU,mCACzE,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,OAAO,CAAA,CAAC,YAAa,EAAU,kCAAmC,QAAS,CAAC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,MAAM,CAAA,CAAA,EAAK,UAAY,GAErG,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,OAAO,CAAA,CACN,YAAa,EAAU,qCACvB,QAAS,CAAC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,GAAG,CAAA,CAAA,EAAK,OAAU,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,SAAS,CAAA,CAAA,EAAK,aAAe,GAG7D,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,OAAO,CAAA,CAAC,YAAa,EAAU,gCAAiC,QAAS,CAAC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CAAA,EAAK,OAAS,GAE9F,EAAO,iBAAiB,CAAC,MAAM,CAAG,GACjC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,OAAO,CAAA,CACN,YAAa,EAAU,gDACvB,QAAS,CACP,CACE,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,IAAI,CAAA,CAAA,EAAK,QACV,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,QAAA,CAAA,UACG,EAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAY,GAC1C,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,GAAG,CAAA,UAAoB,EAAY,WAAW,IAArC,MAGf,CACF,MAKP,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,KAAK,CAAC,OAAO,CAAA,CAAC,MAAO,EAAU,gBAAiB,MAAO,EAAU,0BAChE,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,OAAO,CAAA,CAAC,YAAa,EAAU,iCAAkC,QAAS,CAAC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,MAAM,CAAA,CAAA,EAAK,UAAY,GACpG,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,OAAO,CAAA,CAAC,YAAa,EAAU,6BAA8B,QAAS,CAAC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CAAA,EAAK,SAAW,GAC9F,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,OAAO,CAAA,CACN,YAAa,EAAU,mCACvB,QAAS,CAAC,CAAC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,IAAI,CAAA,CAAA,EAAK,QAAW,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,GAAG,CAAA,UAAS,KAAJ,KAAY,CAAC,MAI1D,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAC,OAAO,CAAA,CAAC,MAAO,EAAU,eAAgB,MAAO,EAAU,wBAC/D,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,OAAO,CAAA,CAAC,YAAa,EAAU,4BAA6B,QAAS,CAAC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CAAA,EAAK,SAAW,OAIrG,kFC5DA,IAAA,EAAA,EAAA,CAAA,CAAA,4JCAA,EAAA,CAAA,CAAA,CACA,OAAA,+CACA,KAAA,6CACA,SAAA,iDACA,cAAA,qDACA,kDCLA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,CAAA,CAAA,OAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,CAAA,CAAA,OAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,KAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,iEAyEO,IAAM,EAAY,CAAA,EAAA,EAAA,IAAA,AAAI,EA7DmB,AA6DlB,CA7DmB,WAC/C,CAAS,QACT,CAAM,SACN,CAAO,kBACP,CAAgB,sBAChB,CAAoB,gBACpB,CAAc,aACd,CAAW,CACZ,IACC,IAAM,EAAY,CAAA,EAAA,EAAA,YAAA,AAAY,IACxB,EAAS,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,YAAY,EACtC,MAAE,CAAI,CAAE,CAAG,EAAA,eAAe,CAAC,EAAO,CAExC,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,KAAK,CAAA,CAAC,UAAW,EAAW,OAAQ,EAAQ,MAAO,EAAU,QAAS,QAAS,YAC9E,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,MAAM,CAAA,CACL,aAAY,EAAU,mBACtB,UAAW,EAAA,OAAM,CAAC,MAAM,CACxB,KAAM,EAAA,IAAI,CACV,IAAI,CAAA,CAAA,EACJ,QAAS,WAER,EAAU,qBAGb,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,MAAM,CAAA,CAAC,aAAY,EAAU,SAAU,UAAW,EAAA,OAAM,CAAC,MAAM,CAAE,KAAM,EAAA,aAAa,CAAE,IAAI,CAAA,CAAA,EAAC,QAAS,WAClG,EAAU,WAGb,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,MAAM,CAAA,CACL,aAAY,EAAU,cACtB,UAAW,EAAA,OAAM,CAAC,MAAM,CACxB,KAAM,EAAA,QAAQ,CACd,IAAI,CAAA,CAAA,EACJ,QAAS,WAER,EAAU,gBAGb,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,MAAM,CAAC,IAAI,CAAA,CACV,aAAY,EAAU,UACtB,UAAW,EAAA,OAAM,CAAC,MAAM,CACxB,KAAM,EAAA,kBAAkB,CACxB,KAAM,EAAA,MAAM,CACZ,IAAI,sBACJ,OAAO,SACP,IAAI,CAAA,CAAA,WAEH,EAAU,YAGb,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,MAAM,CAAA,CAAC,aAAY,EAAU,YAAa,UAAW,EAAA,OAAM,CAAC,MAAM,CAAE,KAAM,EAAA,GAAG,CAAE,IAAI,CAAA,CAAA,EAAC,QAAS,WAC5F,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,QAAQ,WAC7B,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,aAAa,UAAG,EAAU,cACjD,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAK,cAAY,OAAO,UAAW,EAAA,OAAM,CAAC,IAAI,CAAE,KAAK,eAKhE,gFC/EA,IAAA,EAAA,EAAA,CAAA,CAAA,mFCAA,EAAA,CAAA,CAAA,CACA,UAAA,kDACA,MAAA,8CACA,SAAA,iDACA,SAAA,iDACA,UAAA,kDACA,KAAA,4CACA,kDCPA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,MAGA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,CAAA,CAAA,OAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAGA,EAAA,EAAA,CAAA,CAAA,gFAMmD,CAAC,MAAE,CAAI,CAAE,IAC1D,IAAM,EAAS,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,YAAY,EACtC,WAAE,CAAS,CAAE,CAAG,EAAA,eAAe,CAAC,EAAO,CACvC,CAAE,WAAS,OAAE,CAAK,WAAE,CAAS,CAAE,CAAG,EAExC,GAAI,KAAiB,IAAV,EACT,MAAM,AAAI,CADsB,KAChB,iDAGlB,IAAM,EAAiB,EAAQ,EACzB,EAAS,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,AAAC,GAAU,CAAA,EAAA,EAAA,qBAAqB,AAArB,EAAsB,EAAO,IAClE,EAAU,AAAc,UAAQ,EAAiB,EACjD,EAAsB,QAAd,EAAsB,EAAQ,EAE5C,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CACC,UAAW,CAAA,EAAA,EAAA,OAAA,AAAU,EAAC,EAAA,OAAM,CAAC,SAAS,CAAE,CACtC,CAAC,EAAA,OAAM,CAAC,QAAQ,CAAC,CAAE,GAAkB,EACrC,CAAC,EAAA,OAAM,CAAC,QAAQ,CAAC,CAAE,EAAiB,CACtC,aAEA,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,IAAI,CAAA,CACH,aAAY,EACZ,UAAW,EACX,UAAW,EAAA,OAAM,CAAC,IAAI,CACtB,QAAQ,CAAA,CAAA,EACR,QAAS,IAAc,EAAA,KAAK,CAC5B,QAAS,GAAkB,EAC3B,OAAQ,EACR,MAAM,CAAA,CAAA,EACN,KAAM,EAAA,yBAAyB,GAGjC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,QAAQ,CAAA,CACP,UAAW,EAAA,OAAM,CAAC,SAAS,CAC3B,IAAK,EACL,MAAO,CACL,MAAO,EAAA,yBAAyB,AAClC,EACA,MAAO,IAGT,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,KAAK,WACzB,EAAQ,cAAc,CAAC,GAAQ,MAAI,EAAM,cAAc,CAAC,QAIjE,0DC/DA,IAAA,EAAA,EAAA,CAAA,CAAA,uGCAA,IAAA,EAAA,EAAA,CAAA,CAAA,mFCAA,EAAA,CAAA,CAAA,CACA,MAAA,wDACA,UAAA,4DACA,QAAA,0DACA,MAAA,uDACA,0BCLA,IAAA,EAAA,EAAA,CAAA,CAAA,OAmDA,IAAM,EAAc,AAAC,GAAiC,EAAA,UAAU,CAAC,QAAQ,CAAC,EAAK,SAAS,EAElF,EAAU,AAAC,GAAiC,EAAA,MAAM,CAAC,QAAQ,CAAC,EAAK,SAAS,EAE1E,EAAiB,AAAC,GAA2D,IAA1B,EAAK,SAAS,CAAC,MAAM,CAExE,EAAU,AAAC,GAAiC,EAAK,SAAS,GAAK,EAAA,KAAK,CAEpE,EAAU,AAAC,GACf,CAAC,EAAY,IAAS,CAAC,EAAQ,IAAS,CAAC,EAAQ,IAAS,CAAC,EAAe,GAEtE,EAAyB,AAAC,GACvB,EAAe,MAAM,CAAC,CAAC,EAAK,OAAE,CAAK,WAAE,CAAS,CAAE,GACrD,AAAI,AAAiB,SAAV,EACF,EADyB,AAI3B,EAAM,EAAQ,EACpB,GAGC,EAAqB,AAAC,GACnB,EAAe,MAAM,CAAC,CAAC,EAAK,OAAE,CAAK,CAAE,GAC1C,AAAI,AAAiB,SAAV,EACF,EAGF,AAJ2B,EAIrB,EACZ,oCA3EmC,AAAD,IACrC,IAAM,EAAa,EAAe,MAAM,CAAC,GACnC,EAAS,EAAe,MAAM,CAAC,GAC/B,EAAQ,EAAe,MAAM,CAAC,GAC9B,EAAgC,EAAE,CAExC,EAAO,IAAI,CAAC,CACV,eAAgB,EAAuB,GACvC,MAAO,EACP,eAAgB,gBAChB,WAAY,EAAmB,EACjC,GAEA,EAAO,IAAI,CAAC,CACV,eAAgB,EAAuB,GACvC,MAAO,EACP,eAAgB,oBAChB,WAAY,EAAmB,EACjC,GAEA,EAAO,IAAI,CAAC,CACV,eAAgB,EAAuB,GACvC,MAAO,EACP,eAAgB,eAChB,WAAY,EAAmB,EACjC,GAEA,IAAM,EAAoB,EAAe,MAAM,CAAC,GAC1C,EAAS,EAAe,MAAM,CAAC,GAgBrC,OAdA,EAAO,IAAI,CAAC,CACV,eAAgB,EAAuB,GACvC,MAAO,EACP,eAAgB,0BAChB,WAAY,EAAmB,EACjC,GAEA,EAAO,IAAI,CAAC,CACV,eAAgB,EAAuB,GACvC,MAAO,EACP,eAAgB,gBAChB,WAAY,EAAmB,EACjC,GAEO,EAAO,MAAM,CAAC,CAAC,YAAE,CAAU,CAAE,GAAK,EAAa,EACxD,mCCjDA,IAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,gDAEO,IAAM,EAA6B,CAAA,EAAA,EAAA,cAAA,AAAc,EAAC,CAAC,EAAA,oBAAoB,CAAC,CAAE,EAAA,uBAAuB,gHCNxG,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,MAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,CAAA,CAAA,OAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,CAAA,CAAA,OAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,yEAkDO,IAAM,EAAsB,CAAA,EAAA,EAAA,IAAA,AAAI,EA1CmB,AA0ClB,CA1CmB,CAAE,WAAS,QAAE,CAAM,SAAE,CAAO,CAAE,IACvF,IAAM,EAAY,CAAA,EAAA,EAAA,YAAA,AAAY,IACxB,EAAS,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,YAAY,EACtC,EAAS,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,0BAA0B,EACpD,CAAE,cAAY,CAAE,CAAG,CAAA,EAAA,EAAA,YAAY,AAAZ,EAAa,EAAA,yBAAyB,EACzD,WAAE,CAAS,CAAE,CAAG,EAAA,eAAe,CAAC,EAAO,CAE7C,MACE,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CAAC,UAAW,EAAW,OAAQ,EAAQ,MAAO,EAAU,mBAAoB,QAAS,WACxF,EAAO,GAAG,CAAC,CAAC,gBAAE,CAAc,OAAE,CAAK,gBAAE,CAAc,YAAE,CAAU,CAAE,GAK9D,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAC,OAAO,CAAA,CAEZ,MAAO,EAAU,GACjB,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,OAAA,CAAK,UAAW,EAAA,OAAM,CAAC,KAAK,WAC3B,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UAAM,EAAU,KACjB,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,KAAK,CAAA,CAAC,UAAW,EAAA,OAAM,CAAC,KAAK,WAC3B,CAXmB,AAAd,UAAsB,EAAiB,CAAA,EAWpC,cAAc,CAAC,GAAQ,MAAI,CAVlB,QAAd,EAAsB,EAAa,CAAA,EAUG,cAAc,CAAC,kBAK/D,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,OAAO,CAAE,MAAO,CAAE,SAAU,CAAa,WAC7D,EAAM,GAAG,CAAC,AAAC,GAER,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,SAAS,UAC9B,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,SAAS,CAAA,CAAC,KAAM,KADoB,EAAK,SAAS,MAdtD,KAyBjB,0FC1DA,IAAA,EAAA,EAAA,CAAA,CAAA,2JCAA,EAAA,CAAA,CAAA,CACA,QAAA,mDACA,WAAA,sDACA,QAAA,kDACA,kDCHA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,CAAA,CAAA,OAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,yFAyFO,IAAM,EAAe,CAAA,EAAA,EAAA,IAAA,AAAI,EAjFmB,AAiFlB,CAjFmB,WAAE,CAAS,QAAE,CAAM,SAAE,CAAO,CAAE,IAChF,IAAM,EAAW,CAAA,EAAA,EAAA,WAAW,AAAX,IACX,EAAY,CAAA,EAAA,EAAA,YAAA,AAAY,IACxB,oBAAE,CAAkB,CAAE,CAAG,CAAA,EAAA,EAAA,YAAA,AAAY,IACrC,EAAU,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,sBAAsB,EACjD,EAAkB,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,qBAAqB,EACxD,EAAQ,EAAU,EAAQ,SAAS,CAAC,AAAC,GAAW,EAAO,EAAE,GAAK,GAAiB,IAAM,CAAC,EAGtF,EAAY,CAAA,EAAA,EAAA,OAAA,AAAO,EACvB,IAAM,CAAC,CACL,QAAS,AAAC,IACW,IAAW,EAG5B,IAEA,EAAS,EAAA,YAAY,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAExD,EACF,CAAC,CACD,CAAC,EAAU,EAAS,EAAgB,EAqBtC,MANA,CAAA,EAAA,EAAA,SAAA,AAAS,EAAC,KACJ,GAAU,CAAC,GACb,GAEJ,EAAG,CAAC,EAAQ,EAAS,EAAmB,EAGtC,CAAA,EAAA,AANmC,EAMnC,GAAA,EAAC,EAAA,KAAK,CAAA,CACJ,UAAW,EACX,OACE,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,QAAA,CAAA,WACE,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,MAAM,CAAA,CACL,aAAY,EAAU,kBACtB,SAAU,CAAC,EACX,KAAM,EAAA,KAAK,CACX,QAAS,EAAU,kBACnB,QAAQ,UACR,QA7BW,CA6BF,IA5Bb,GACF,EAAS,EAAA,UADU,EACE,CAAC,OAAO,CAAC,WAAW,CAAC,IAG5C,GACF,WAyBW,EAAU,oBAGb,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,MAAM,CAAA,CACL,aAAY,EAAU,mBACtB,SAAU,CAAC,EACX,KAAM,EAAA,OAAO,CACb,QAAS,EAAU,mBACnB,QA/BY,CA+BH,IA9BjB,GACF,WA+BW,EAAU,wBAIjB,OAAQ,EACR,MAAO,EAAU,WACjB,QAAS,WAET,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,OAAO,WAC5B,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,OAAO,CAAA,CAAC,UAAW,EAAW,UAAW,EAAA,OAAM,CAAC,OAAO,CAAE,iBAnE7B,CAmE+C,AAnE9C,IAAX,OAAe,EAAY,IAoE9C,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,UAAU,CAAA,CAAC,UAAW,EAAA,OAAM,CAAC,UAAU,OAIhD,mFChGA,IAAA,EAAA,EAAA,CAAA,CAAA,mFCAA,EAAA,CAAA,CAAA,CACA,MAAA,0DACA,OAAA,0DACA,+CCH0B,iCCE1B,IAAA,EAAA,EAAA,CAAA,CAAA,2BAE0B,AAAC,IACzB,GAAc,SAAV,GAA8B,SAAS,CAAnB,EACtB,OAAO,EAGT,GAAI,IAAU,EAAA,UAAU,CACtB,CADwB,MACjB,IAGT,OAAM,AAAI,MAAM,CAAC,CAAC,EAAE,EAAM,+CAA+C,EAAE,EAAA,UAAU,CAAC,CAAC,CAAC,CAC1F,mDCbA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,gGAO+D,CAAC,WAAE,CAAS,UAAE,CAAQ,CAAE,IACrF,IAAM,EAAW,CAAA,EAAA,EAAA,WAAA,AAAW,IACtB,EAAY,CAAA,EAAA,EAAA,YAAA,AAAY,IACxB,EAAQ,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,oBAAoB,EAE7C,EAAU,CACd,CACE,MAAO,EAAU,gCACjB,MAAO,MACT,EACA,CACE,MAAO,EAAU,iCACjB,MAAO,OACT,EACA,CACE,MAAO,EAAU,gCACjB,MAAO,EAAA,UAAU,AACnB,EACD,CAEK,EAAe,AAAC,IACpB,IAAM,EAAiB,CAAA,EAAA,EAAA,UAAU,AAAV,EAAW,EAAM,MAAM,CAAC,KAAK,EACpD,EAAS,EAAA,aAAa,CAAC,OAAO,CAAC,oBAAoB,CAAC,GACtD,EAEA,MACE,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,WACb,EAAQ,GAAG,CAAC,AAAC,GACZ,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CACJ,QAAS,IAAU,CAAA,EAAA,EAAA,UAAA,AAAU,EAAC,EAAO,KAAK,EAC1C,UAAW,EAAA,OAAM,CAAC,MAAM,CACxB,SAAU,EAEV,KAAK,iBACL,MAAO,EAAO,KAAK,CACnB,SAAU,WAEV,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,KAAK,UAAG,EAAO,KAAK,IALtC,EAAO,KAAK,IAU3B,0DCzDA,IAAA,EAAA,EAAA,CAAA,CAAA,mFCAA,EAAA,CAAA,CAAA,CACA,MAAA,kDACA,OAAA,kDACA,2BCHA,IAAA,EAAA,EAAA,CAAA,CAAA,2BAG0B,AAAC,IACzB,IAAM,EAAc,OAAO,MAAM,CAAC,EAAA,KAAK,EACjC,EAAkB,OAAO,MAAM,CAAC,EAAA,SAAS,EAE/C,OAAO,EAAY,GAAG,CAAC,AAAC,IACtB,IAAM,EAAiB,EAAgB,IAAI,CAAC,AAAC,GACpC,EAAO,IAAI,GAAK,EAAW,IAAI,EAAI,EAAO,MAAM,GAAK,GAG9D,MAAO,CACL,SAAU,CAAC,CAAA,EAAA,EAAA,SAAA,AAAS,EAAC,EAAW,IAAI,CAAE,GACtC,MAAO,GAAgB,OAAO,MAAQ,EAAW,IAAI,CACrD,MAAO,EAAW,IAAI,AACxB,CACF,EACF,mDClBA,EAAA,EAAA,CAAA,CAAA,IACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,oFAOuD,CAAC,WAAE,CAAS,UAAE,CAAQ,CAAE,IAC7E,IAAM,EAAW,CAAA,EAAA,EAAA,WAAW,AAAX,IACX,EAAO,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,UAAU,EAClC,EAAS,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,YAAY,EACtC,EAAU,CAAA,EAAA,EAAA,OAAA,AAAO,EAAC,IAAM,CAAA,EAAA,EAAA,UAAA,AAAU,EAAC,GAAS,CAAC,EAAO,EAEpD,EAAe,AAAC,IAChB,CAAA,EAAA,EAAA,MAAA,AAAM,EAAC,EAAM,MAAM,CAAC,KAAK,GAAG,AAC9B,EAAS,EAAA,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,EAAM,MAAM,CAAC,KAAK,EAEhE,EAEA,MACE,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,WACb,EAAQ,GAAG,CAAC,AAAC,GACZ,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CACJ,QAAS,IAAS,EAAO,KAAK,CAC9B,UAAW,EAAA,OAAM,CAAC,MAAM,CACxB,SAAU,GAAY,EAAO,QAAQ,CAErC,KAAK,OACL,MAAO,EAAO,KAAK,CACnB,SAAU,WAEV,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,KAAK,UAAG,EAAO,KAAK,IALtC,EAAO,KAAK,IAU3B,0DC5CA,IAAA,EAAA,EAAA,CAAA,CAAA,mFCAA,EAAA,CAAA,CAAA,CACA,MAAA,qDACA,OAAA,qDACA,+CCD2B,AAAD,IACxB,GAAc,YAAY,CAAtB,EACF,MAAO,WAGT,GAAc,eAAe,CAAzB,EACF,MAAO,aAGT,OAAM,AAAI,MAAM,CAAC,CAAC,EAAE,EAAM,qDAAqD,CAAC,CAClF,mDCXA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,2FAO0D,CAAC,WAAE,CAAS,UAAE,CAAQ,CAAE,IAChF,IAAM,EAAW,CAAA,EAAA,EAAA,WAAA,AAAW,IACtB,EAAY,CAAA,EAAA,EAAA,YAAA,AAAY,IACxB,EAAQ,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,eAAe,EAExC,EAAU,CACd,CACE,MAAO,EAAU,+BACjB,MAAO,UACT,EACA,CACE,MAAO,EAAU,kCACjB,MAAO,aACT,EACD,CAEK,EAAgB,AAAD,IACnB,IAAM,EAAY,CAAA,EAAA,EAAA,UAAA,AAAU,EAAC,EAAM,MAAM,CAAC,KAAK,EAC/C,EAAS,EAAA,aAAa,CAAC,OAAO,CAAC,eAAe,CAAC,GACjD,EAEA,MACE,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,WACb,EAAQ,GAAG,CAAC,AAAC,GACZ,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CACJ,QAAS,IAAU,EAAO,KAAK,CAC/B,UAAW,EAAA,OAAM,CAAC,MAAM,CACxB,SAAU,EAEV,KAAK,YACL,MAAO,EAAO,KAAK,CACnB,SAAU,WAEV,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,KAAK,UAAG,EAAO,KAAK,IALtC,EAAO,KAAK,IAU3B,0DCpDA,IAAA,EAAA,EAAA,CAAA,CAAA,mFCAA,EAAA,CAAA,CAAA,CACA,KAAA,iDACA,MAAA,kDACA,OAAA,kDACA,kDCHA,EAAA,EAAA,CAAA,CAAA,MAEA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,CAAA,CAAA,OAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,6DAOA,IAAM,EAAU,OAAO,MAAM,CAAC,EAAA,eAAe,EAAE,IAAI,CAAC,CAAC,EAAG,IAAM,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI,0BAElC,CAAC,WAAE,CAAS,UAAE,CAAQ,CAAE,IAC7E,IAAM,EAAW,CAAA,EAAA,EAAA,WAAA,AAAW,IACtB,EAAS,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,YAAY,EAEtC,EAAe,AAAC,IACpB,IAAM,EAAoB,EAAM,MAAM,CAAC,KAAK,CAC5C,EAAS,EAAA,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,GAC9C,EAEA,MACE,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,WACb,EAAQ,GAAG,CAAC,CAAC,MAAE,CAAI,CAAE,GAAG,EAAQ,GAC/B,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CACJ,QAAS,IAAW,EAAO,MAAM,CACjC,UAAW,CAAA,EAAA,EAAA,OAAU,AAAV,EAAW,EAAA,OAAM,CAAC,MAAM,CAAE,EAAW,CAC9C,CAAC,EAAA,OAAM,CAAC,OAAO,CAAC,CAAE,IAAW,EAAO,MAAM,AAC5C,GACA,SAAU,EAEV,KAAK,SACL,MAAO,EAAO,MAAM,CACpB,SAAU,WAEV,CAAA,EAAA,EAAA,IAAA,EAAC,OAAA,CAAK,UAAW,EAAA,OAAM,CAAC,KAAK,WAC3B,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAK,cAAY,OAAO,UAAW,EAAA,OAAM,CAAC,IAAI,CAAE,KAAK,QAEtD,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UAAM,EAAO,KAAK,OARhB,EAAO,MAAM,IAc5B,0DClDA,IAAA,EAAA,EAAA,CAAA,CAAA,mFCAA,EAAA,CAAA,CAAA,CACA,MAAA,2DACA,OAAA,2DACA,kDCDA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,iGAOgE,CAAC,CAAE,WAAS,UAAE,CAAQ,CAAE,IACtF,IAAM,EAAW,CAAA,EAAA,EAAA,WAAA,AAAW,IACtB,EAAY,CAAA,EAAA,EAAA,YAAA,AAAY,IACxB,EAAQ,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,qBAAqB,EAE9C,EAAU,CACd,CACE,MAAO,EAAU,mCACjB,MAAO,QACT,EACA,CACE,MAAO,EAAU,qCACjB,MAAO,UACT,EACA,CACE,MAAO,EAAU,wCACjB,MAAO,aACT,EACD,CAEK,EAAe,AAAC,IACpB,IAAM,EAAkB,EAAM,MAAM,CAAC,KAAK,CAC1C,EAAS,EAAA,aAAa,CAAC,OAAO,CAAC,qBAAqB,CAAC,GACvD,EAEA,MACE,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,WACb,EAAQ,GAAG,CAAC,AAAC,GACZ,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CACJ,QAAS,OAAO,KAAW,EAAO,KAAK,CACvC,UAAW,EAAA,OAAM,CAAC,MAAM,CACxB,SAAU,EAEV,KAAK,kBACL,MAAO,EAAO,KAAK,CACnB,SAAU,WAEV,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,KAAK,UAAG,EAAO,KAAK,IALtC,EAAO,KAAK,IAU3B,0DCxDA,IAAA,EAAA,EAAA,CAAA,CAAA,oHCE0B,AAAC,IACzB,GAAc,UAAU,CAApB,EACF,MAAO,SAGT,GAAc,SAAS,CAAnB,EACF,MAAO,OAGT,OAAU,AAAJ,MAAU,CAAC,CAAC,EAAE,EAAM,6CAA6C,CAAC,CAC1E,eCZA,EAAA,CAAA,CAAA,CACA,MAAA,6DACA,OAAA,6DACA,kDCFA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,mGAOkE,CAAC,WAAE,CAAS,UAAE,CAAQ,CAAE,IACxF,IAAM,EAAW,CAAA,EAAA,EAAA,WAAA,AAAW,IACtB,EAAY,CAAA,EAAA,EAAA,YAAY,AAAZ,IACZ,EAAQ,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,uBAAuB,EAEhD,EAAU,CACd,CACE,MAAO,EAAU,qCACjB,MAAO,QACT,EACA,CACE,MAAO,EAAU,oCACjB,MAAO,OACT,EACD,CAEK,EAAe,AAAC,IACpB,IAAM,EAAmB,CAAA,EAAA,EAAA,UAAA,AAAU,EAAC,EAAM,MAAM,CAAC,KAAK,EACtD,EAAS,EAAA,aAAa,CAAC,OAAO,CAAC,uBAAuB,CAAC,GACzD,EAEA,MACE,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,WACb,EAAQ,GAAG,CAAC,AAAC,GACZ,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CACJ,QAAS,IAAU,EAAO,KAAK,CAC/B,UAAW,EAAA,OAAM,CAAC,MAAM,CACxB,SAAU,EAEV,KAAK,oBACL,MAAO,EAAO,KAAK,CACnB,SAAU,WAEV,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,KAAK,UAAG,EAAO,KAAK,IALtC,EAAO,KAAK,IAU3B,0DCpDA,IAAA,EAAA,EAAA,CAAA,CAAA,uGCAA,IAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,2ICLA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,qFAkDO,IAAM,EAAgB,CAAA,EAAA,EAAA,IAAA,AAAI,EAnCmB,AAmClB,CAnCmB,WAAE,CAAS,QAAE,CAAM,SAAE,CAAO,CAAE,IACjF,IAAM,EAAY,CAAA,EAAA,EAAA,YAAA,AAAY,IACxB,EAAgB,CAAA,EAAA,EAAA,gBAAA,AAAgB,IAEtC,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,KAAK,CAAA,CAAC,UAAW,EAAW,OAAQ,EAAQ,MAAO,EAAU,YAAa,QAAS,YAClF,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAC,OAAO,CAAA,CAAC,MAAO,EAAU,iBAAkB,MAAO,EAAU,0BACjE,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,aAAa,CAAA,CAAC,SAAU,CAAC,MAG5B,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAC,OAAO,CAAA,CAAC,MAAO,EAAU,qBAAsB,MAAO,EAAU,8BACrE,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,aAAa,CAAA,CAAC,SAAU,CAAC,MAG5B,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAC,OAAO,CAAA,CAAC,MAAO,EAAU,4BAA6B,MAAO,EAAU,qCAC5E,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,sBAAsB,CAAA,CAAC,SAAU,CAAC,MAGpC,CAAC,GACA,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAC,OAAO,CAAA,CAAC,MAAO,EAAU,sBAAuB,MAAO,EAAU,+BACtE,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,gBAAgB,CAAA,CAAC,SAAU,CAAC,MAIjC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAC,OAAO,CAAA,CAAC,MAAO,EAAU,2BAA4B,MAAO,EAAU,oCAC3E,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,qBAAqB,CAAA,CAAC,SAAU,CAAC,MAGpC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAC,OAAO,CAAA,CAAC,MAAO,EAAU,8BAA+B,MAAO,EAAU,uCAC9E,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,wBAAwB,CAAA,CAAC,SAAU,CAAC,QAI7C,oFCtDA,IAAA,EAAA,EAAA,CAAA,CAAA,yJCAA,EAAA,CAAA,CAAA,CACA,MAAA,+CACA,KAAA,8CACA,QAAA,iDACA,MAAA,+CACA,MAAA,+CACA,KAAA,6CACA,kDCPA,EAAA,EAAA,CAAA,CAAA,MACA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,MAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,CAAA,CAAA,OAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,iEAmDO,IAAM,EAAa,CAAA,EAAA,EAAA,IAAA,AAAI,EAAC,AA3CkB,CAAC,WAAE,CAAS,QAAE,CAAM,SAAE,CAAO,CAAE,IAC9E,IAAM,EAAY,CAAA,EAAA,EAAA,YAAA,AAAY,IACxB,EAAS,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,YAAY,EACtC,EAAe,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,kBAAkB,EAClD,EAAa,CAAA,EAAA,EAAA,gBAAgB,AAAhB,EAAiB,EAAA,gBAAgB,EAEpD,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,KAAK,CAAA,CAAC,UAAW,EAAW,OAAQ,EAAQ,MAAO,EAAU,SAAU,QAAS,YAC/E,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAC,OAAO,CAAA,CACZ,MAAO,EAAU,iBACjB,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,OAAA,CAAK,UAAW,EAAA,OAAM,CAAC,KAAK,WAC3B,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UAAM,EAAU,mBACjB,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CAAC,UAAW,EAAA,OAAM,CAAC,KAAK,UAAG,EAAa,MAAM,CAAC,cAAc,CAAC,iBAIvE,EAAa,GAAG,CAAC,CAAC,EAAM,IACvB,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,IAAI,WACzB,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CAAC,cAAY,OAAO,UAAW,CAAA,EAAA,EAAA,OAAA,AAAU,EAAC,EAAA,OAAM,CAAC,IAAI,CAAE,EAAA,OAAM,CAAC,OAAO,EAAG,KAAK,QAAQ,IAAE,IAD7D,MAMtC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAC,OAAO,CAAA,CACZ,MAAO,EAAU,eACjB,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,OAAA,CAAK,UAAW,EAAA,OAAM,CAAC,KAAK,WAC3B,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UAAM,EAAU,iBACjB,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CAAC,UAAW,EAAA,OAAM,CAAC,KAAK,UAAG,EAAW,MAAM,CAAC,cAAc,CAAC,iBAIrE,EAAW,GAAG,CAAC,CAAC,EAAM,IACrB,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,IAAI,WACzB,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,KAAK,CAAA,CAAC,cAAY,OAAO,UAAW,CAAA,EAAA,EAAA,OAAA,AAAU,EAAC,EAAA,OAAM,CAAC,IAAI,CAAE,EAAA,OAAM,CAAC,KAAK,EAAG,KAAK,QAAQ,IAAE,IAD3D,QAO5C,iFCxDA,IAAA,EAAA,EAAA,CAAA,CAAA,uGCAA,IAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,uMCNA,IAAA,EAAA,EAAA,CAAA,CAAA,OAEA,IAAI,EAAgC,KAEvB,EAAwB,UAC9B,WAAW,SAAS,EAAM,EAAF,CAAC,eAAoB,WAAW,SAAS,GAItE,AAJyE,EAIzD,IAAI,EAAA,OAAO,CAAC,sBAC5B,MAAM,EAAc,QAAQ,CAAC,CAAE,WAAW,CAAK,GACjD,gDCXA,EAAA,CAAA,CAAA,CACA,KAAA,yCACA,cAAA,kDACA,IAAA,wCACA,WAAA,+CACA,QAAA,4CACA,OAAA,0CACA,kDCPA,EAAA,EAAA,CAAA,CAAA,IACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,CAAA,CAAA,OAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,MAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OASA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,iHAEA,EAAA,OAAU,CAAC,aAAa,CAAC,WA8FlB,IAAM,EAAiB,UAErB,CAAE,MAAO,CAAE,QADF,MAAM,GACI,EAAE,EAGxB,EAAc,UAClB,IAAM,EAAsB,EAAA,OAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,GAAI,gBAClD,EAAO,MAAM,EAAA,OAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAqB,SACvD,EAAc,KAAK,KAAK,CAAC,GAE/B,GAAI,CAAC,CAAA,EAAA,EAAA,QAAA,AAAQ,EAAC,IAAgB,CAAC,CAAC,YAAa,CAAA,CAAW,EAAoC,UAA/B,AAAyC,OAAlC,EAAY,OAAO,CACrF,MAAM,AAAI,MAAM,wBAGlB,MAAO,CAAC,CAAC,EAAE,EAAY,OAAO,CAAA,CAChC,AADkC,mBApGM,CAAC,SAAE,CAAO,CAAE,IAClD,IAAM,EAAW,CAAA,EAAA,EAAA,WAAA,AAAW,IACtB,EAAS,CAAA,EAAA,EAAA,gBAAgB,AAAhB,EAAiB,EAAA,YAAY,EACtC,EAAS,CAAA,EAAA,EAAA,gBAAA,AAAgB,EAAC,EAAA,YAAY,EACtC,CAAC,EAAU,EAAY,CAAG,CAAA,EAAA,EAAA,QAAA,AAAQ,GAAC,GACnC,CAAC,EAAQ,EAAU,CAAG,CAAA,EAAA,EAAA,QAAA,AAAQ,EAAyB,CAC3D,YAAY,EACZ,QAAQ,EACR,MAAM,EACN,gBAAgB,EAChB,SAAS,EACT,UAAU,EACV,OAAO,CACT,GAEM,EAAc,AAAC,IACnB,EAAU,AAAC,IAAa,CAAE,GAAG,CAAO,CAAb,AAAe,GAAG,CAAK,AAAC,CAAC,EAClD,QAgBA,CAdA,CAAA,EAAA,AAcI,EAdJ,YAAA,AAAY,EAAC,EAAA,eAAe,CAAC,EAAO,CAAC,SAAS,EAC9C,CAAA,EAAA,EAAA,WAAA,AAAW,EAAC,GACZ,CAAA,EAAA,EAAA,eAAA,AAAe,IAEf,CAAA,EAAA,EAAA,aAAA,AAAa,EAAC,KAGV,CAAA,EAAA,EAAA,qBAAA,AAAqB,IAGvB,GAAY,GACZ,EAAS,CAAA,EAAA,EAAA,UAAA,AAAU,IACrB,GAEK,GAKH,CAAA,EAAA,EAAA,EALa,EAKb,EAAA,EAAA,QAAA,CAAA,WACE,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,GAAG,UACxB,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,UAAU,WAC/B,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,EAAA,OAAM,CAAC,OAAO,UAC5B,CAAA,EAAA,EAAA,GAAA,EAAC,IAAA,CAAE,UAAW,EAAA,OAAM,CAAC,aAAa,CAAE,KAAK,IAAI,MAAO,WAClD,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,IAAI,CAAA,CAAC,UAAW,EAAA,OAAM,CAAC,IAAI,OAIhC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,UAAU,CAAA,CACT,QAAS,IAAM,EAAS,CAAA,EAAA,EAAA,KAAA,AAAK,KAC7B,aAAc,IAAM,EAAY,CAAE,QAAQ,CAAK,GAC/C,WAAY,IAAM,EAAY,CAAE,MAAM,CAAK,GAC3C,qBAAsB,IAAM,EAAY,CAAE,gBAAgB,CAAK,GAC/D,eAAgB,IAAM,EAAY,CAAE,UAAU,CAAK,GACnD,YAAa,IAAM,EAAY,CAAE,OAAO,CAAK,UAKnD,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,MAAM,CAAA,CAAC,UAAW,EAAA,OAAM,CAAC,MAAM,CAAE,cAAe,IAAM,EAAY,CAAE,SAAS,CAAK,KAEnF,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,SAAS,CAAA,CACR,OAAQ,EAAO,IAAI,CACnB,QAAS,IAAM,EAAY,CAAE,MAAM,CAAM,GACzC,iBAAkB,IAAM,EAAY,CAAE,YAAY,CAAK,GACvD,qBAAsB,IAAM,EAAY,CAAE,gBAAgB,CAAK,GAC/D,eAAgB,IAAM,EAAY,CAAE,UAAU,CAAK,GACnD,YAAa,IAAM,EAAY,CAAE,OAAO,CAAK,KAG/C,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,aAAa,CAAA,CAAC,OAAQ,EAAO,QAAQ,CAAE,QAAS,IAAM,EAAY,CAAE,UAAU,CAAM,KAErF,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,WAAW,CAAA,CAAC,OAAQ,EAAO,MAAM,CAAE,QAAS,IAAM,EAAY,CAAE,QAAQ,CAAM,KAE/E,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,UAAU,CAAA,CAAC,OAAQ,EAAO,KAAK,CAAE,QAAS,IAAM,EAAY,CAAE,MAAO,EAAM,KAE3E,EAAO,sBAAsB,EAC5B,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,mBAAmB,CAAA,CAAC,OAAQ,EAAO,cAAc,CAAE,QAAS,IAAM,EAAY,CAAE,gBAAgB,CAAM,KAGzG,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,YAAY,CAAA,CAAC,OAAQ,EAAO,OAAO,CAAE,QAAS,IAAM,EAAY,CAAE,QAAS,EAAM,KAElF,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,eAAe,CAAA,CAAC,OAAQ,EAAO,UAAU,CAAE,QAAS,IAAM,EAAY,CAAE,WAAY,EAAM,QA/CtF,IAkDX,8ECpHA,IAAA,EAAiC,EAAA,CAAA,AAAxBA,CAAwB,OACjC,EAA0B,EAAyB,CAA1CC,AAA0C,CAAA,EADgC,AAA1D,CAC0B,IAEnD,CAFkB,CAEe,CAHA,CAGA,CAAxBC,AAAwB,CAAA,GAFP,CAEZ,GAGd,EAA0B,EAAqB,CAHzB,AAGyB,CAAA,EAAnCC,KACZ,EAAqC,EAAA,AAJJ,CAII,CAAA,EAAzBC,CADc,IAI1B,EAAwC,EAHnB,AAGmB,CAAA,CAAA,EAA5BC,KACZ,EAA2B,EAAA,CAAlBC,AAAkB,CAAA,EAJU,CAGX,IACiD,EAAxD,QAAQ,CADa,oCAIzBJ,EAAAA,KAAAA,EAAMG,EAAU,WAAU,AAG5BE,EAAAA,CAAAA,EAAiBL,EAAAA,KAAAA,EAAMG,EAAU,kBAAiB,AAClDG,EAAAA,CAAAA,EAAiBN,EAAAA,KAAAA,EAAMG,EAAU,kBAAiB,AAClDI,EAAAA,CAAAA,EAAqBP,EAAAA,KAAAA,EAAMG,EAAU,sBAAqB,AAC1DK,EAAAA,CAAAA,EAASR,EAAAA,KAAAA,EAAMG,EAAU,UAAS,AAClCM,EAAAA,CAAAA,EAAkBT,EAAAA,KAAAA,EAAMG,EAAU,mBAGlCO,AAHoD,EAGpDA,CAAAA,EAA0BV,EAAAA,KAAAA,EACrCG,EACA,2BACD,AACYQ,EAAAA,CAAAA,EAA0BX,EAAAA,KAAAA,EACrCG,EACA,2BACD,AACYS,EAAAA,CAAAA,EAA2BZ,EAAAA,KAAAA,EACtCG,EACA,4BACD,AACYU,EAAAA,CAAAA,EAA0Bb,EAAAA,KAAAA,EACrCG,EACA,2BACD,AACYW,EAAAA,CAAAA,EAA8Bd,EAAAA,KAAAA,EACzCG,EACA,+BACD,AAGYY,EAAc,IAAIjB,EAAAA,gBAAAA,CAAiB,CAC9CkB,WAAY,CACVC,KAAMlB,EAAAA,SAAAA,CAAUmB,KAAK,CACrBC,KAAM,SACNC,SAAU,IAEVC,WAAY,GACZC,SAAU,EACZ,EACAC,QAAqBG,CAAZF,EAAoC,KAC7CG,CADiBF,GAAG,AAA6B,CAA5BC,cAC0C,CAA3CF,EACpBK,MAD4BJ,GAAG,CAACG,CACpB,CAEVE,IAAK5B,EAAI6B,EAAAA,KAAO,CAChBC,SAAU/B,EAAS8B,AAJsC,OAItCA,AAAO,AAC5B,WACA5B,CACF,GAAE,AAEW8B,EAAAA,CAAAA,EAAU7B,EAAAA,UAAAA,EAAW,CAChC8B,QAAS,gBACT1B,WACAL,cACAY,iBACAT,iBACAD,qBACAE,CACF,GAAE","ignoreList":[56]}
@@ -0,0 +1,3 @@
1
+ module.exports=[42773,(a,b,c)=>{b.exports=a.x("transliteration",()=>require("transliteration"))},8171,(a,b,c)=>{b.exports=a.x("react/jsx-runtime",()=>require("react/jsx-runtime"))},58793,(a,b,c)=>{"use strict";c._=function(a){return a&&a.__esModule?a:{default:a}}},27669,(a,b,c)=>{b.exports=a.x("react",()=>require("react"))},5515,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/pages-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/pages-turbo.runtime.prod.js"))},66410,(a,b,c)=>{"use strict";b.exports=a.r(5515)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__421f2b10._.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../scrabble-solver/node_modules/%40swc/helpers/cjs/_interop_require_default.cjs","../../../../../../../scrabble-solver/node_modules/next/src/server/route-modules/pages/module.compiled.js"],"sourcesContent":["\"use strict\";\n\nfunction _interop_require_default(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nexports._ = _interop_require_default;\n","if (process.env.NEXT_RUNTIME === 'edge') {\n module.exports = require('next/dist/server/route-modules/pages/module.js')\n} else {\n if (process.env.NODE_ENV === 'development') {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/pages-turbo.runtime.dev.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/pages.runtime.dev.js')\n }\n } else {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/pages-turbo.runtime.prod.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/pages.runtime.prod.js')\n }\n }\n}\n"],"names":["process","env","NEXT_RUNTIME","module","exports","require","NODE_ENV","TURBOPACK"],"mappings":"kNAKA,EAAQ,CAAC,CAHT,EAGY,OAHH,AAAyB,CAAG,EACjC,OAAO,GAAO,EAAI,UAAU,CAAG,EAAM,CAAE,QAAS,CAAI,CACxD,mQCOMG,EAAOC,OAAO,CAAGC,EAAQ,CAAA,CAAA,IAAA","ignoreList":[0,1]}
@@ -0,0 +1,3 @@
1
+ module.exports=[16150,(a,b,c)=>{b.exports=a.r(5515)},72134,a=>{"use strict";var b,c=((b={}).PAGES="PAGES",b.PAGES_API="PAGES_API",b.APP_PAGE="APP_PAGE",b.APP_ROUTE="APP_ROUTE",b.IMAGE="IMAGE",b);a.s(["RouteKind",()=>c])},37259,a=>{"use strict";a.s(["hoist",()=>function a(b,c){return c in b?b[c]:"then"in b&&"function"==typeof b.then?b.then(b=>a(b,c)):"function"==typeof b&&"default"===c?b:void 0}])},71822,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={RequestCookies:()=>p,ResponseCookies:()=>q,parseCookie:()=>l,parseSetCookie:()=>m,stringifyCookie:()=>k};for(var j in i)d(h,j,{get:i[j],enumerable:!0});function k(a){var b;let c=["path"in a&&a.path&&`Path=${a.path}`,"expires"in a&&(a.expires||0===a.expires)&&`Expires=${("number"==typeof a.expires?new Date(a.expires):a.expires).toUTCString()}`,"maxAge"in a&&"number"==typeof a.maxAge&&`Max-Age=${a.maxAge}`,"domain"in a&&a.domain&&`Domain=${a.domain}`,"secure"in a&&a.secure&&"Secure","httpOnly"in a&&a.httpOnly&&"HttpOnly","sameSite"in a&&a.sameSite&&`SameSite=${a.sameSite}`,"partitioned"in a&&a.partitioned&&"Partitioned","priority"in a&&a.priority&&`Priority=${a.priority}`].filter(Boolean),d=`${a.name}=${encodeURIComponent(null!=(b=a.value)?b:"")}`;return 0===c.length?d:`${d}; ${c.join("; ")}`}function l(a){let b=new Map;for(let c of a.split(/; */)){if(!c)continue;let a=c.indexOf("=");if(-1===a){b.set(c,"true");continue}let[d,e]=[c.slice(0,a),c.slice(a+1)];try{b.set(d,decodeURIComponent(null!=e?e:"true"))}catch{}}return b}function m(a){if(!a)return;let[[b,c],...d]=l(a),{domain:e,expires:f,httponly:g,maxage:h,path:i,samesite:j,secure:k,partitioned:m,priority:p}=Object.fromEntries(d.map(([a,b])=>[a.toLowerCase().replace(/-/g,""),b]));{var q,r,s={name:b,value:decodeURIComponent(c),domain:e,...f&&{expires:new Date(f)},...g&&{httpOnly:!0},..."string"==typeof h&&{maxAge:Number(h)},path:i,...j&&{sameSite:n.includes(q=(q=j).toLowerCase())?q:void 0},...k&&{secure:!0},...p&&{priority:o.includes(r=(r=p).toLowerCase())?r:void 0},...m&&{partitioned:!0}};let a={};for(let b in s)s[b]&&(a[b]=s[b]);return a}}b.exports=((a,b,c,h)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let i of f(b))g.call(a,i)||i===c||d(a,i,{get:()=>b[i],enumerable:!(h=e(b,i))||h.enumerable});return a})(d({},"__esModule",{value:!0}),h);var n=["strict","lax","none"],o=["low","medium","high"],p=class{constructor(a){this._parsed=new Map,this._headers=a;const b=a.get("cookie");if(b)for(const[a,c]of l(b))this._parsed.set(a,{name:a,value:c})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...a){let b="string"==typeof a[0]?a[0]:a[0].name;return this._parsed.get(b)}getAll(...a){var b;let c=Array.from(this._parsed);if(!a.length)return c.map(([a,b])=>b);let d="string"==typeof a[0]?a[0]:null==(b=a[0])?void 0:b.name;return c.filter(([a])=>a===d).map(([a,b])=>b)}has(a){return this._parsed.has(a)}set(...a){let[b,c]=1===a.length?[a[0].name,a[0].value]:a,d=this._parsed;return d.set(b,{name:b,value:c}),this._headers.set("cookie",Array.from(d).map(([a,b])=>k(b)).join("; ")),this}delete(a){let b=this._parsed,c=Array.isArray(a)?a.map(a=>b.delete(a)):b.delete(a);return this._headers.set("cookie",Array.from(b).map(([a,b])=>k(b)).join("; ")),c}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(a=>`${a.name}=${encodeURIComponent(a.value)}`).join("; ")}},q=class{constructor(a){var b,c,d;this._parsed=new Map,this._headers=a;const e=null!=(d=null!=(c=null==(b=a.getSetCookie)?void 0:b.call(a))?c:a.get("set-cookie"))?d:[];for(const a of Array.isArray(e)?e:function(a){if(!a)return[];var b,c,d,e,f,g=[],h=0;function i(){for(;h<a.length&&/\s/.test(a.charAt(h));)h+=1;return h<a.length}for(;h<a.length;){for(b=h,f=!1;i();)if(","===(c=a.charAt(h))){for(d=h,h+=1,i(),e=h;h<a.length&&"="!==(c=a.charAt(h))&&";"!==c&&","!==c;)h+=1;h<a.length&&"="===a.charAt(h)?(f=!0,h=e,g.push(a.substring(b,d)),b=h):h=d+1}else h+=1;(!f||h>=a.length)&&g.push(a.substring(b,a.length))}return g}(e)){const b=m(a);b&&this._parsed.set(b.name,b)}}get(...a){let b="string"==typeof a[0]?a[0]:a[0].name;return this._parsed.get(b)}getAll(...a){var b;let c=Array.from(this._parsed.values());if(!a.length)return c;let d="string"==typeof a[0]?a[0]:null==(b=a[0])?void 0:b.name;return c.filter(a=>a.name===d)}has(a){return this._parsed.has(a)}set(...a){let[b,c,d]=1===a.length?[a[0].name,a[0].value,a[0]]:a,e=this._parsed;return e.set(b,function(a={name:"",value:""}){return"number"==typeof a.expires&&(a.expires=new Date(a.expires)),a.maxAge&&(a.expires=new Date(Date.now()+1e3*a.maxAge)),(null===a.path||void 0===a.path)&&(a.path="/"),a}({name:b,value:c,...d})),function(a,b){for(let[,c]of(b.delete("set-cookie"),a)){let a=k(c);b.append("set-cookie",a)}}(e,this._headers),this}delete(...a){let[b,c]="string"==typeof a[0]?[a[0]]:[a[0].name,a[0]];return this.set({...c,name:b,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(k).join("; ")}}},90942,(a,b,c)=>{(()=>{"use strict";var a={695:a=>{var b=/(?:^|,)\s*?no-cache\s*?(?:,|$)/;function c(a){var b=a&&Date.parse(a);return"number"==typeof b?b:NaN}a.exports=function(a,d){var e=a["if-modified-since"],f=a["if-none-match"];if(!e&&!f)return!1;var g=a["cache-control"];if(g&&b.test(g))return!1;if(f&&"*"!==f){var h=d.etag;if(!h)return!1;for(var i=!0,j=function(a){for(var b=0,c=[],d=0,e=0,f=a.length;e<f;e++)switch(a.charCodeAt(e)){case 32:d===b&&(d=b=e+1);break;case 44:c.push(a.substring(d,b)),d=b=e+1;break;default:b=e+1}return c.push(a.substring(d,b)),c}(f),k=0;k<j.length;k++){var l=j[k];if(l===h||l==="W/"+h||"W/"+l===h){i=!1;break}}if(i)return!1}if(e){var m=d["last-modified"];if(!m||!(c(m)<=c(e)))return!1}return!0}}},c={};function d(b){var e=c[b];if(void 0!==e)return e.exports;var f=c[b]={exports:{}},g=!0;try{a[b](f,f.exports,d),g=!1}finally{g&&delete c[b]}return f.exports}d.ab="/ROOT/scrabble-solver/node_modules/next/dist/compiled/fresh/",b.exports=d(695)})()},93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},73295,a=>{"use strict";let b,c;var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r=a.i(72134),s=((d=s||{}).handleRequest="BaseServer.handleRequest",d.run="BaseServer.run",d.pipe="BaseServer.pipe",d.getStaticHTML="BaseServer.getStaticHTML",d.render="BaseServer.render",d.renderToResponseWithComponents="BaseServer.renderToResponseWithComponents",d.renderToResponse="BaseServer.renderToResponse",d.renderToHTML="BaseServer.renderToHTML",d.renderError="BaseServer.renderError",d.renderErrorToResponse="BaseServer.renderErrorToResponse",d.renderErrorToHTML="BaseServer.renderErrorToHTML",d.render404="BaseServer.render404",d),t=((e=t||{}).loadDefaultErrorComponents="LoadComponents.loadDefaultErrorComponents",e.loadComponents="LoadComponents.loadComponents",e),u=((f=u||{}).getRequestHandler="NextServer.getRequestHandler",f.getRequestHandlerWithMetadata="NextServer.getRequestHandlerWithMetadata",f.getServer="NextServer.getServer",f.getServerRequestHandler="NextServer.getServerRequestHandler",f.createServer="createServer.createServer",f),v=((g=v||{}).compression="NextNodeServer.compression",g.getBuildId="NextNodeServer.getBuildId",g.createComponentTree="NextNodeServer.createComponentTree",g.clientComponentLoading="NextNodeServer.clientComponentLoading",g.getLayoutOrPageModule="NextNodeServer.getLayoutOrPageModule",g.generateStaticRoutes="NextNodeServer.generateStaticRoutes",g.generateFsStaticRoutes="NextNodeServer.generateFsStaticRoutes",g.generatePublicRoutes="NextNodeServer.generatePublicRoutes",g.generateImageRoutes="NextNodeServer.generateImageRoutes.route",g.sendRenderResult="NextNodeServer.sendRenderResult",g.proxyRequest="NextNodeServer.proxyRequest",g.runApi="NextNodeServer.runApi",g.render="NextNodeServer.render",g.renderHTML="NextNodeServer.renderHTML",g.imageOptimizer="NextNodeServer.imageOptimizer",g.getPagePath="NextNodeServer.getPagePath",g.getRoutesManifest="NextNodeServer.getRoutesManifest",g.findPageComponents="NextNodeServer.findPageComponents",g.getFontManifest="NextNodeServer.getFontManifest",g.getServerComponentManifest="NextNodeServer.getServerComponentManifest",g.getRequestHandler="NextNodeServer.getRequestHandler",g.renderToHTML="NextNodeServer.renderToHTML",g.renderError="NextNodeServer.renderError",g.renderErrorToHTML="NextNodeServer.renderErrorToHTML",g.render404="NextNodeServer.render404",g.startResponse="NextNodeServer.startResponse",g.route="route",g.onProxyReq="onProxyReq",g.apiResolver="apiResolver",g.internalFetch="internalFetch",g),w=((h=w||{}).startServer="startServer.startServer",h),x=((i=x||{}).getServerSideProps="Render.getServerSideProps",i.getStaticProps="Render.getStaticProps",i.renderToString="Render.renderToString",i.renderDocument="Render.renderDocument",i.createBodyResult="Render.createBodyResult",i),y=((j=y||{}).renderToString="AppRender.renderToString",j.renderToReadableStream="AppRender.renderToReadableStream",j.getBodyResult="AppRender.getBodyResult",j.fetch="AppRender.fetch",j),z=((k=z||{}).executeRoute="Router.executeRoute",k),A=((l=A||{}).runHandler="Node.runHandler",l),B=((m=B||{}).runHandler="AppRouteRouteHandlers.runHandler",m),C=((n=C||{}).generateMetadata="ResolveMetadata.generateMetadata",n.generateViewport="ResolveMetadata.generateViewport",n),D=((o=D||{}).execute="Middleware.execute",o);let E=new Set(["Middleware.execute","BaseServer.handleRequest","Render.getServerSideProps","Render.getStaticProps","AppRender.fetch","AppRender.getBodyResult","Render.renderDocument","Node.runHandler","AppRouteRouteHandlers.runHandler","ResolveMetadata.generateMetadata","ResolveMetadata.generateViewport","NextNodeServer.createComponentTree","NextNodeServer.findPageComponents","NextNodeServer.getLayoutOrPageModule","NextNodeServer.startResponse","NextNodeServer.clientComponentLoading"]),F=new Set(["NextNodeServer.findPageComponents","NextNodeServer.createComponentTree","NextNodeServer.clientComponentLoading"]),G=process.env.NEXT_OTEL_PERFORMANCE_PREFIX;try{b=a.r(70406)}catch(c){b=a.r(52603)}let{context:H,propagation:I,trace:J,SpanStatusCode:K,SpanKind:L,ROOT_CONTEXT:M}=b;class N extends Error{constructor(a,b){super(),this.bubble=a,this.result=b}}let O=(a,b)=>{"object"==typeof b&&null!==b&&b instanceof N&&b.bubble?a.setAttribute("next.bubble",!0):(b&&(a.recordException(b),a.setAttribute("error.type",b.name)),a.setStatus({code:K.ERROR,message:null==b?void 0:b.message})),a.end()},P=new Map,Q=b.createContextKey("next.rootSpanId"),R=0,S={set(a,b,c){a.push({key:b,value:c})}},T=(c=new class a{getTracerInstance(){return J.getTracer("next.js","0.0.1")}getContext(){return H}getTracePropagationData(){let a=H.active(),b=[];return I.inject(a,b,S),b}getActiveScopeSpan(){return J.getSpan(null==H?void 0:H.active())}withPropagatedContext(a,b,c){let d=H.active();if(J.getSpanContext(d))return b();let e=I.extract(d,a,c);return H.with(e,b)}trace(...a){let[b,c,d]=a,{fn:e,options:f}="function"==typeof c?{fn:c,options:{}}:{fn:d,options:{...c}},g=f.spanName??b;if(!E.has(b)&&"1"!==process.env.NEXT_OTEL_VERBOSE||f.hideSpan)return e();let h=this.getSpanContext((null==f?void 0:f.parentSpan)??this.getActiveScopeSpan());h||(h=(null==H?void 0:H.active())??M);let i=h.getValue(Q),j="number"!=typeof i||!P.has(i),k=R++;return f.attributes={"next.span_name":g,"next.span_type":b,...f.attributes},H.with(h.setValue(Q,k),()=>this.getTracerInstance().startActiveSpan(g,f,a=>{let c;G&&b&&F.has(b)&&(c="performance"in globalThis&&"measure"in performance?globalThis.performance.now():void 0);let d=!1,g=()=>{!d&&(d=!0,P.delete(k),c&&performance.measure(`${G}:next-${(b.split(".").pop()||"").replace(/[A-Z]/g,a=>"-"+a.toLowerCase())}`,{start:c,end:performance.now()}))};if(j&&P.set(k,new Map(Object.entries(f.attributes??{}))),e.length>1)try{return e(a,b=>O(a,b))}catch(b){throw O(a,b),b}finally{g()}try{let b=e(a);if(null!==b&&"object"==typeof b&&"then"in b&&"function"==typeof b.then)return b.then(b=>(a.end(),b)).catch(b=>{throw O(a,b),b}).finally(g);return a.end(),g(),b}catch(b){throw O(a,b),g(),b}}))}wrap(...a){let b=this,[c,d,e]=3===a.length?a:[a[0],{},a[1]];return E.has(c)||"1"===process.env.NEXT_OTEL_VERBOSE?function(){let a=d;"function"==typeof a&&"function"==typeof e&&(a=a.apply(this,arguments));let f=arguments.length-1,g=arguments[f];if("function"!=typeof g)return b.trace(c,a,()=>e.apply(this,arguments));{let d=b.getContext().bind(H.active(),g);return b.trace(c,a,(a,b)=>(arguments[f]=function(a){return null==b||b(a),d.apply(this,arguments)},e.apply(this,arguments)))}}:e}startSpan(...a){let[b,c]=a,d=this.getSpanContext((null==c?void 0:c.parentSpan)??this.getActiveScopeSpan());return this.getTracerInstance().startSpan(b,c,d)}getSpanContext(a){return a?J.setSpan(H.active(),a):void 0}getRootSpanAttributes(){let a=H.active().getValue(Q);return P.get(a)}setRootSpanAttribute(a,b){let c=H.active().getValue(Q),d=P.get(c);d&&!d.has(a)&&d.set(a,b)}},()=>c);function U(a){return"string"==typeof a?a:("number"!=typeof a||isNaN(a))&&"boolean"!=typeof a?"":String(a)}let V=/https?|ftp|gopher|file/;function W(a){let{auth:b,hostname:c}=a,d=a.protocol||"",e=a.pathname||"",f=a.hash||"",g=a.query||"",h=!1;b=b?encodeURIComponent(b).replace(/%3A/i,":")+"@":"",a.host?h=b+a.host:c&&(h=b+(~c.indexOf(":")?`[${c}]`:c),a.port&&(h+=":"+a.port)),g&&"object"==typeof g&&(g=String(function(a){let b=new URLSearchParams;for(let[c,d]of Object.entries(a))if(Array.isArray(d))for(let a of d)b.append(c,U(a));else b.set(c,U(d));return b}(g)));let i=a.search||g&&`?${g}`||"";return d&&!d.endsWith(":")&&(d+=":"),a.slashes||(!d||V.test(d))&&!1!==h?(h="//"+(h||""),e&&"/"!==e[0]&&(e="/"+e)):h||(h=""),f&&"#"!==f[0]&&(f="#"+f),i&&"?"!==i[0]&&(i="?"+i),e=e.replace(/[?#]/g,encodeURIComponent),i=i.replace("#","%23"),`${d}${h}${e}${i}${f}`}let X=Symbol.for("NextInternalRequestMeta");function Y(a,b){let c=a[X]||{};return"string"==typeof b?c[b]:c}function Z(a,b,c){let d=Y(a);return d[b]=c,a[X]=d,d}function $(a){return a.isOnDemandRevalidate?"on-demand":a.isStaticGeneration?"stale":void 0}function _(a){let b=a.indexOf("#"),c=a.indexOf("?"),d=c>-1&&(b<0||c<b);return d||b>-1?{pathname:a.substring(0,d?c:b),query:d?a.substring(c,b>-1?b:void 0):"",hash:b>-1?a.slice(b):""}:{pathname:a,query:"",hash:""}}function aa(a,b){if("string"!=typeof a)return!1;let{pathname:c}=_(a);return c===b||c.startsWith(b+"/")}class ab{constructor(){let a,b;this.promise=new Promise((c,d)=>{a=c,b=d}),this.resolve=a,this.reject=b}}var ac=((p={}).APP_PAGE="APP_PAGE",p.APP_ROUTE="APP_ROUTE",p.PAGES="PAGES",p.FETCH="FETCH",p.REDIRECT="REDIRECT",p.IMAGE="IMAGE",p);function ad(){}new Uint8Array([60,104,116,109,108]),new Uint8Array([60,98,111,100,121]),new Uint8Array([60,47,104,101,97,100,62]),new Uint8Array([60,47,98,111,100,121,62]),new Uint8Array([60,47,104,116,109,108,62]),new Uint8Array([60,47,98,111,100,121,62,60,47,104,116,109,108,62]),new Uint8Array([60,109,101,116,97,32,110,97,109,101,61,34,194,171,110,120,116,45,105,99,111,110,194,187,34]);let ae=new TextEncoder;function af(a){return new ReadableStream({start(b){b.enqueue(ae.encode(a)),b.close()}})}function ag(a){return new ReadableStream({start(b){b.enqueue(a),b.close()}})}async function ah(a,b){let c=new TextDecoder("utf-8",{fatal:!0}),d="";for await(let e of a){if(null==b?void 0:b.aborted)return d;d+=c.decode(e,{stream:!0})}return d+c.decode()}let ai="text/html; charset=utf-8",aj="application/json; charset=utf-8",ak={shared:"shared",reactServerComponents:"rsc",serverSideRendering:"ssr",actionBrowser:"action-browser",apiNode:"api-node",apiEdge:"api-edge",middleware:"middleware",instrument:"instrument",edgeAsset:"edge-asset",appPagesBrowser:"app-pages-browser",pagesDirBrowser:"pages-dir-browser",pagesDirEdge:"pages-dir-edge",pagesDirNode:"pages-dir-node"};function al(a){return a.replace(/\/$/,"")||"/"}function am(a,b){if(!a.startsWith("/")||!b)return a;let{pathname:c,query:d,hash:e}=_(a);return`${b}${c}${d}${e}`}function an(a,b){if(!a.startsWith("/")||!b)return a;let{pathname:c,query:d,hash:e}=_(a);return`${c}${b}${d}${e}`}({...ak,GROUP:{builtinReact:[ak.reactServerComponents,ak.actionBrowser],serverOnly:[ak.reactServerComponents,ak.actionBrowser,ak.instrument,ak.middleware],neutralTarget:[ak.apiNode,ak.apiEdge],clientOnly:[ak.serverSideRendering,ak.appPagesBrowser],bundled:[ak.reactServerComponents,ak.actionBrowser,ak.serverSideRendering,ak.appPagesBrowser,ak.shared,ak.instrument,ak.middleware],appPages:[ak.reactServerComponents,ak.serverSideRendering,ak.appPagesBrowser,ak.actionBrowser]}});let ao=new WeakMap;function ap(a,b){let c;if(!b)return{pathname:a};let d=ao.get(b);d||(d=b.map(a=>a.toLowerCase()),ao.set(b,d));let e=a.split("/",2);if(!e[1])return{pathname:a};let f=e[1].toLowerCase(),g=d.indexOf(f);return g<0?{pathname:a}:(c=b[g],{pathname:a=a.slice(c.length+1)||"/",detectedLocale:c})}let aq=/(?!^https?:\/\/)(127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|\[::1\]|localhost)/;function ar(a,b){return new URL(String(a).replace(aq,"localhost"),b&&String(b).replace(aq,"localhost"))}let as=Symbol("NextURLInternal");class at{constructor(a,b,c){let d,e;"object"==typeof b&&"pathname"in b||"string"==typeof b?(d=b,e=c||{}):e=c||b||{},this[as]={url:ar(a,d??e.base),options:e,basePath:""},this.analyze()}analyze(){var a,b,c,d,e;let f=function(a,b){let{basePath:c,i18n:d,trailingSlash:e}=b.nextConfig??{},f={pathname:a,trailingSlash:"/"!==a?a.endsWith("/"):e};c&&aa(f.pathname,c)&&(f.pathname=function(a,b){if(!aa(a,b))return a;let c=a.slice(b.length);return c.startsWith("/")?c:`/${c}`}(f.pathname,c),f.basePath=c);let g=f.pathname;if(f.pathname.startsWith("/_next/data/")&&f.pathname.endsWith(".json")){let a=f.pathname.replace(/^\/_next\/data\//,"").replace(/\.json$/,"").split("/");f.buildId=a[0],g="index"!==a[1]?`/${a.slice(1).join("/")}`:"/",!0===b.parseData&&(f.pathname=g)}if(d){let a=b.i18nProvider?b.i18nProvider.analyze(f.pathname):ap(f.pathname,d.locales);f.locale=a.detectedLocale,f.pathname=a.pathname??f.pathname,!a.detectedLocale&&f.buildId&&(a=b.i18nProvider?b.i18nProvider.analyze(g):ap(g,d.locales)).detectedLocale&&(f.locale=a.detectedLocale)}return f}(this[as].url.pathname,{nextConfig:this[as].options.nextConfig,parseData:!0,i18nProvider:this[as].options.i18nProvider}),g=function(a,b){let c;if(b?.host&&!Array.isArray(b.host))c=b.host.toString().split(":",1)[0];else{if(!a.hostname)return;c=a.hostname}return c.toLowerCase()}(this[as].url,this[as].options.headers);this[as].domainLocale=this[as].options.i18nProvider?this[as].options.i18nProvider.detectDomainLocale(g):function(a,b,c){if(a){for(let d of(c&&(c=c.toLowerCase()),a))if(b===d.domain?.split(":",1)[0].toLowerCase()||c===d.defaultLocale.toLowerCase()||d.locales?.some(a=>a.toLowerCase()===c))return d}}(null==(b=this[as].options.nextConfig)||null==(a=b.i18n)?void 0:a.domains,g);let h=(null==(c=this[as].domainLocale)?void 0:c.defaultLocale)||(null==(e=this[as].options.nextConfig)||null==(d=e.i18n)?void 0:d.defaultLocale);this[as].url.pathname=f.pathname,this[as].defaultLocale=h,this[as].basePath=f.basePath??"",this[as].buildId=f.buildId,this[as].locale=f.locale??h,this[as].trailingSlash=f.trailingSlash}formatPathname(){var a;let b;return b=function(a,b,c,d){if(!b||b===c)return a;let e=a.toLowerCase();return!d&&(aa(e,"/api")||aa(e,`/${b.toLowerCase()}`))?a:am(a,`/${b}`)}((a={basePath:this[as].basePath,buildId:this[as].buildId,defaultLocale:this[as].options.forceLocale?void 0:this[as].defaultLocale,locale:this[as].locale,pathname:this[as].url.pathname,trailingSlash:this[as].trailingSlash}).pathname,a.locale,a.buildId?void 0:a.defaultLocale,a.ignorePrefix),(a.buildId||!a.trailingSlash)&&(b=al(b)),a.buildId&&(b=an(am(b,`/_next/data/${a.buildId}`),"/"===a.pathname?"index.json":".json")),b=am(b,a.basePath),!a.buildId&&a.trailingSlash?b.endsWith("/")?b:an(b,"/"):al(b)}formatSearch(){return this[as].url.search}get buildId(){return this[as].buildId}set buildId(a){this[as].buildId=a}get locale(){return this[as].locale??""}set locale(a){var b,c;if(!this[as].locale||!(null==(c=this[as].options.nextConfig)||null==(b=c.i18n)?void 0:b.locales.includes(a)))throw Object.defineProperty(TypeError(`The NextURL configuration includes no locale "${a}"`),"__NEXT_ERROR_CODE",{value:"E597",enumerable:!1,configurable:!0});this[as].locale=a}get defaultLocale(){return this[as].defaultLocale}get domainLocale(){return this[as].domainLocale}get searchParams(){return this[as].url.searchParams}get host(){return this[as].url.host}set host(a){this[as].url.host=a}get hostname(){return this[as].url.hostname}set hostname(a){this[as].url.hostname=a}get port(){return this[as].url.port}set port(a){this[as].url.port=a}get protocol(){return this[as].url.protocol}set protocol(a){this[as].url.protocol=a}get href(){let a=this.formatPathname(),b=this.formatSearch();return`${this.protocol}//${this.host}${a}${b}${this.hash}`}set href(a){this[as].url=ar(a),this.analyze()}get origin(){return this[as].url.origin}get pathname(){return this[as].url.pathname}set pathname(a){this[as].url.pathname=a}get hash(){return this[as].url.hash}set hash(a){this[as].url.hash=a}get search(){return this[as].url.search}set search(a){this[as].url.search=a}get password(){return this[as].url.password}set password(a){this[as].url.password=a}get username(){return this[as].url.username}set username(a){this[as].url.username=a}get basePath(){return this[as].basePath}set basePath(a){this[as].basePath=a.startsWith("/")?a:`/${a}`}toString(){return this.href}toJSON(){return this.href}[Symbol.for("edge-runtime.inspect.custom")](){return{href:this.href,origin:this.origin,protocol:this.protocol,username:this.username,password:this.password,host:this.host,hostname:this.hostname,port:this.port,pathname:this.pathname,search:this.search,searchParams:this.searchParams,hash:this.hash}}clone(){return new at(String(this),this[as].options)}}a.i(71822),Symbol("internal request"),Request,Symbol.for("edge-runtime.inspect.custom");let au="ResponseAborted";class av extends Error{constructor(...a){super(...a),this.name=au}}let aw=0,ax=0,ay=0;function az(a){return(null==a?void 0:a.name)==="AbortError"||(null==a?void 0:a.name)===au}async function aA(a,b,c){try{let d,{errored:e,destroyed:f}=b;if(e||f)return;let g=(d=new AbortController,b.once("close",()=>{b.writableFinished||d.abort(new av)}),d),h=function(a,b){let c=!1,d=new ab;function e(){d.resolve()}a.on("drain",e),a.once("close",()=>{a.off("drain",e),d.resolve()});let f=new ab;return a.once("finish",()=>{f.resolve()}),new WritableStream({write:async b=>{if(!c){if(c=!0,"performance"in globalThis&&process.env.NEXT_OTEL_PERFORMANCE_PREFIX){let a=function(a={}){let b=0===aw?void 0:{clientComponentLoadStart:aw,clientComponentLoadTimes:ax,clientComponentLoadCount:ay};return a.reset&&(aw=0,ax=0,ay=0),b}();a&&performance.measure(`${process.env.NEXT_OTEL_PERFORMANCE_PREFIX}:next-client-component-loading`,{start:a.clientComponentLoadStart,end:a.clientComponentLoadStart+a.clientComponentLoadTimes})}a.flushHeaders(),T().trace(v.startResponse,{spanName:"start response"},()=>void 0)}try{let c=a.write(b);"flush"in a&&"function"==typeof a.flush&&a.flush(),c||(await d.promise,d=new ab)}catch(b){throw a.end(),Object.defineProperty(Error("failed to write chunk to response",{cause:b}),"__NEXT_ERROR_CODE",{value:"E321",enumerable:!1,configurable:!0})}},abort:b=>{a.writableFinished||a.destroy(b)},close:async()=>{if(b&&await b,!a.writableFinished)return a.end(),f.promise}})}(b,c);await a.pipeTo(h,{signal:g.signal})}catch(a){if(az(a))return;throw Object.defineProperty(Error("failed to pipe response",{cause:a}),"__NEXT_ERROR_CODE",{value:"E180",enumerable:!1,configurable:!0})}}class aB extends Error{constructor(a,b){super(`Invariant: ${a.endsWith(".")?a:a+"."} This is a bug in Next.js.`,b),this.name="InvariantError"}}class aC{static #a=this.EMPTY=new aC(null,{metadata:{},contentType:null});static fromStatic(a,b){return new aC(a,{metadata:{},contentType:b})}constructor(a,{contentType:b,waitUntil:c,metadata:d}){this.response=a,this.contentType=b,this.metadata=d,this.waitUntil=c}assignMetadata(a){Object.assign(this.metadata,a)}get isNull(){return null===this.response}get isDynamic(){return"string"!=typeof this.response}toUnchunkedString(a=!1){if(null===this.response)return"";if("string"!=typeof this.response){if(!a)throw Object.defineProperty(new aB("dynamic responses cannot be unchunked. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E732",enumerable:!1,configurable:!0});return ah(this.readable)}return this.response}get readable(){return null===this.response?new ReadableStream({start(a){a.close()}}):"string"==typeof this.response?af(this.response):Buffer.isBuffer(this.response)?ag(this.response):Array.isArray(this.response)?function(...a){if(0===a.length)return new ReadableStream({start(a){a.close()}});if(1===a.length)return a[0];let{readable:b,writable:c}=new TransformStream,d=a[0].pipeTo(c,{preventClose:!0}),e=1;for(;e<a.length-1;e++){let b=a[e];d=d.then(()=>b.pipeTo(c,{preventClose:!0}))}let f=a[e];return(d=d.then(()=>f.pipeTo(c))).catch(ad),b}(...this.response):this.response}coerce(){return null===this.response?[]:"string"==typeof this.response?[af(this.response)]:Array.isArray(this.response)?this.response:Buffer.isBuffer(this.response)?[ag(this.response)]:[this.response]}unshift(a){this.response=this.coerce(),this.response.unshift(a)}push(a){this.response=this.coerce(),this.response.push(a)}async pipeTo(a){try{await this.readable.pipeTo(a,{preventClose:!0}),this.waitUntil&&await this.waitUntil,await a.close()}catch(b){if(az(b))return void await a.abort(b);throw b}}async pipeToNodeResponse(a){await aA(this.readable,a,this.waitUntil)}}async function aD(a){var b,c;return a?{isMiss:a.isMiss,isStale:a.isStale,cacheControl:a.cacheControl,value:(null==(b=a.value)?void 0:b.kind)===ac.PAGES?{kind:ac.PAGES,html:aC.fromStatic(a.value.html,ai),pageData:a.value.pageData,headers:a.value.headers,status:a.value.status}:(null==(c=a.value)?void 0:c.kind)===ac.APP_PAGE?{kind:ac.APP_PAGE,html:aC.fromStatic(a.value.html,ai),rscData:a.value.rscData,headers:a.value.headers,status:a.value.status,postponed:a.value.postponed,segmentData:a.value.segmentData}:a.value}:null}function aE({revalidate:a,expire:b}){let c="number"==typeof a&&void 0!==b&&a<b?`, stale-while-revalidate=${b-a}`:"";return 0===a?"private, no-cache, no-store, max-age=0, must-revalidate":"number"==typeof a?`s-maxage=${a}${c}`:`s-maxage=31536000${c}`}"undefined"!=typeof performance&&["mark","measure","getEntriesByName"].every(a=>"function"==typeof performance[a]);var aF=((q={})[q.SeeOther=303]="SeeOther",q[q.TemporaryRedirect=307]="TemporaryRedirect",q[q.PermanentRedirect=308]="PermanentRedirect",q),aG=a.i(14747),aH=a.i(90942);async function aI({req:a,res:b,result:c,generateEtags:d,poweredByHeader:e,cacheControl:f}){if(b.finished||b.headersSent)return;e&&c.contentType===ai&&b.setHeader("X-Powered-By","Next.js"),f&&!b.getHeader("Cache-Control")&&b.setHeader("Cache-Control",aE(f));let g=c.isDynamic?null:c.toUnchunkedString();if(d&&null!==g){let c=((a,b=!1)=>(b?'W/"':'"')+(a=>{let b=a.length,c=0,d=0,e=8997,f=0,g=33826,h=0,i=40164,j=0,k=52210;for(;c<b;)e^=a.charCodeAt(c++),d=435*e,f=435*g,h=435*i,j=435*k,h+=e<<8,j+=g<<8,f+=d>>>16,e=65535&d,h+=f>>>16,g=65535&f,k=j+(h>>>16)&65535,i=65535&h;return(15&k)*0x1000000000000+0x100000000*i+65536*g+(e^k>>4)})(a).toString(36)+a.length.toString(36)+'"')(g);if(c&&b.setHeader("ETag",c),(0,aH.default)(a.headers,{etag:c})&&(b.statusCode=304,b.end(),1))return}(!b.getHeader("Content-Type")&&c.contentType&&b.setHeader("Content-Type",c.contentType),g&&b.setHeader("Content-Length",Buffer.byteLength(g)),"HEAD"===a.method)?b.end(null):null!==g?b.end(g):await c.pipeToNodeResponse(b)}var aJ=a.i(93695);let aK=/[\w-]+-Google|Google-[\w-]+|Chrome-Lighthouse|Slurp|DuckDuckBot|baiduspider|yandex|sogou|bitlybot|tumblr|vkShare|quora link preview|redditbot|ia_archiver|Bingbot|BingPreview|applebot|facebookexternalhit|facebookcatalog|Twitterbot|LinkedInBot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|Yeti|googleweblight/i,aL=/Googlebot(?!-)|Googlebot$/i;aK.source,a.s(["getHandler",0,({srcPage:a,config:b,userland:c,routeModule:d,isFallbackError:e,getStaticPaths:f,getStaticProps:g,getServerSideProps:h})=>async function(i,j,k){var l,m,n,o,p;d.isDev&&Z(i,"devRequestTimingInternalsEnd",process.hrtime.bigint());let q=a;q=q.replace(/\/index$/,"")||"/";let t=await d.prepare(i,j,{srcPage:q,multiZoneDraftMode:!1});if(!t){j.statusCode=400,j.end("Bad Request"),null==k.waitUntil||k.waitUntil.call(k,Promise.resolve());return}let u=!!Y(i,"minimalMode"),v=async()=>{(null==P?void 0:P.render404)?await P.render404(i,j,z,!1):j.end("This page could not be found")},{buildId:w,query:x,params:y,parsedUrl:z,originalQuery:A,originalPathname:B,buildManifest:C,fallbackBuildManifest:D,nextFontManifest:E,serverFilesManifest:F,reactLoadableManifest:G,prerenderManifest:H,isDraftMode:I,isOnDemandRevalidate:J,revalidateOnlyGenerated:K,locale:M,locales:N,defaultLocale:O,routerServerContext:P,nextConfig:Q,resolvedPathname:R,encodedResolvedPathname:S}=t,U=null==F||null==(m=F.config)||null==(l=m.experimental)?void 0:l.isExperimentalCompile,V=!!h,X=!!g,_=!!f,ab=!!(c.default||c).getInitialProps,ad=null,ae=!1,af=t.isNextDataRequest&&(X||V),ag="/404"===q,ah="/500"===q,ak="/_error"===q;if(d.isDev||I||!X||(ad=`${M?`/${M}`:""}${("/"===q||"/"===R)&&M?"":R}`,(ag||ah||ak)&&(ad=`${M?`/${M}`:""}${q}`),ad="/index"===ad?"/":ad),_&&!I){let a=al(M?am(R,`/${M}`):R),b=!!H.routes[a]||H.notFoundRoutes.includes(a),c=H.dynamicRoutes[q];if(c){if(!1===c.fallback&&!b){if(Q.experimental.adapterPath)return await v();throw new aJ.NoFallbackError}"string"!=typeof c.fallback||b||af||(ae=!0)}}(ae&&(p=o=i.headers["user-agent"]||"",aL.test(p)||aK.test(o))||u)&&(ae=!1);let an=T(),ao=an.getActiveScopeSpan();try{let a=i.method||"GET",l=W({pathname:Q.trailingSlash?`${S}${!S.endsWith("/")&&(null==(n=z.pathname)?void 0:n.endsWith("/"))?"/":""}`:al(S||"/"),query:X?{}:A}),m=async m=>{var n,o;let p,t=async({previousCacheEntry:n})=>{var o;let p=async()=>{try{var k,o;return await d.render(i,j,{query:X&&!U?{...y}:{...x,...y},params:y,page:q,renderContext:{isDraftMode:I,isFallback:ae,developmentNotFoundSourcePage:Y(i,"developmentNotFoundSourcePage")},sharedContext:{buildId:w,customServer:!!(null==P?void 0:P.isCustomServer)||void 0,deploymentId:!1},renderOpts:{params:y,routeModule:d,page:q,pageConfig:b||{},Component:c.default||c,ComponentMod:c,getStaticProps:g,getStaticPaths:f,getServerSideProps:h,supportsDynamicResponse:!X,buildManifest:e?D:C,nextFontManifest:E,reactLoadableManifest:G,assetPrefix:Q.assetPrefix,previewProps:H.preview,images:Q.images,nextConfigOutput:Q.output,optimizeCss:!!Q.experimental.optimizeCss,nextScriptWorkers:!!Q.experimental.nextScriptWorkers,domainLocales:null==(k=Q.i18n)?void 0:k.domains,crossOrigin:Q.crossOrigin,multiZoneDraftMode:!1,basePath:Q.basePath,disableOptimizedLoading:Q.experimental.disableOptimizedLoading,largePageDataBytes:Q.experimental.largePageDataBytes,isExperimentalCompile:U,experimental:{clientTraceMetadata:Q.experimental.clientTraceMetadata||[]},locale:M,locales:N,defaultLocale:O,setIsrStatus:null==P?void 0:P.setIsrStatus,isNextDataRequest:af&&(V||X),resolvedUrl:l,resolvedAsPath:V||ab?W({pathname:af?(o=B,aa(o||"/","/_next/data")&&"/index"===(o=o.replace(/\/_next\/data\/[^/]{1,}/,"").replace(/\.json$/,""))?"/":o):B,query:A}):l,isOnDemandRevalidate:J,ErrorDebug:Y(i,"PagesErrorDebug"),err:Y(i,"invokeError"),dev:d.isDev,distDir:aG.default.join(process.cwd(),d.relativeProjectDir,d.distDir)}}).then(a=>{let{metadata:b}=a,c=b.cacheControl;return"isNotFound"in b&&b.isNotFound?{value:null,cacheControl:c}:b.isRedirect?{value:{kind:ac.REDIRECT,props:b.pageData??b.flightData},cacheControl:c}:{value:{kind:ac.PAGES,html:a,pageData:a.metadata.pageData,headers:a.metadata.headers,status:a.metadata.statusCode},cacheControl:c}}).finally(()=>{if(!m)return;m.setAttributes({"http.status_code":j.statusCode,"next.rsc":!1});let b=an.getRootSpanAttributes();if(!b)return;if(b.get("next.span_type")!==s.handleRequest)return void console.warn(`Unexpected root span type '${b.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let c=b.get("next.route");if(c){let b=`${a} ${c}`;m.setAttributes({"next.route":c,"http.route":c,"next.span_name":b}),m.updateName(b)}else m.updateName(`${a} ${q}`)})}catch(a){throw(null==n?void 0:n.isStale)&&await d.onRequestError(i,a,{routerKind:"Pages Router",routePath:q,routeType:"render",revalidateReason:$({isStaticGeneration:X,isOnDemandRevalidate:J})},P),a}};if(n&&(ae=!1),ae){let a=await d.getResponseCache(i).get(d.isDev?null:M?`/${M}${q}`:q,async({previousCacheEntry:a=null})=>d.isDev?p():aD(a),{routeKind:r.RouteKind.PAGES,isFallback:!0,isRoutePPREnabled:!1,isOnDemandRevalidate:!1,incrementalCache:await d.getIncrementalCache(i,Q,H,u),waitUntil:k.waitUntil});if(a)return delete a.cacheControl,a.isMiss=!0,a}return!u&&J&&K&&!n?(j.statusCode=404,j.setHeader("x-nextjs-cache","REVALIDATED"),j.end("This page could not be found"),null):ae&&(null==n||null==(o=n.value)?void 0:o.kind)===ac.PAGES?{value:{kind:ac.PAGES,html:new aC(Buffer.from(n.value.html),{contentType:ai,metadata:{statusCode:n.value.status,headers:n.value.headers}}),pageData:{},status:n.value.status,headers:n.value.headers},cacheControl:{revalidate:0,expire:void 0}}:p()},z=await d.handleResponse({cacheKey:ad,req:i,nextConfig:Q,routeKind:r.RouteKind.PAGES,isOnDemandRevalidate:J,revalidateOnlyGenerated:K,waitUntil:k.waitUntil,responseGenerator:t,prerenderManifest:H,isMinimalMode:u});if(!ae||(null==z?void 0:z.isMiss)||(ae=!1),z){if(X&&!u&&j.setHeader("x-nextjs-cache",J?"REVALIDATED":z.isMiss?"MISS":z.isStale?"STALE":"HIT"),!X||ae)j.getHeader("Cache-Control")||(p={revalidate:0,expire:void 0});else if(ag){let a=Y(i,"notFoundRevalidate");p={revalidate:void 0===a?0:a,expire:void 0}}else if(ah)p={revalidate:0,expire:void 0};else if(z.cacheControl)if("number"==typeof z.cacheControl.revalidate){if(z.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${z.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});p={revalidate:z.cacheControl.revalidate,expire:(null==(n=z.cacheControl)?void 0:n.expire)??Q.expireTime}}else p={revalidate:31536e3,expire:void 0};if(p&&!j.getHeader("Cache-Control")&&j.setHeader("Cache-Control",aE(p)),!z.value)return(Z(i,"notFoundRevalidate",null==(o=z.cacheControl)?void 0:o.revalidate),j.statusCode=404,af)?void j.end('{"notFound":true}'):await v();if(z.value.kind===ac.REDIRECT)if(!af)return await (a=>{let b,c={destination:a.pageProps.__N_REDIRECT,statusCode:a.pageProps.__N_REDIRECT_STATUS,basePath:a.pageProps.__N_REDIRECT_BASE_PATH},d=c.statusCode||(c.permanent?aF.PermanentRedirect:aF.TemporaryRedirect),{basePath:e}=Q;e&&!1!==c.basePath&&c.destination.startsWith("/")&&(c.destination=`${e}${c.destination}`),c.destination.startsWith("/")&&(b=c.destination.split("?"),c.destination=b[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(b[1]?`?${b.slice(1).join("?")}`:"")),j.statusCode=d,j.setHeader("Location",c.destination),d===aF.PermanentRedirect&&j.setHeader("Refresh",`0;url=${c.destination}`),j.end(c.destination)})(z.value.props),null;else{j.setHeader("content-type",aj),j.end(JSON.stringify(z.value.props));return}if(z.value.kind!==ac.PAGES)throw Object.defineProperty(Error("Invariant: received non-pages cache entry in pages handler"),"__NEXT_ERROR_CODE",{value:"E695",enumerable:!1,configurable:!0});if(d.isDev&&j.setHeader("Cache-Control","no-store, must-revalidate"),I&&j.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),Y(i,"customErrorRender")||ak&&u&&500===j.statusCode)return null;await aI({req:i,res:j,result:!af||ak||ah?z.value.html:new aC(Buffer.from(JSON.stringify(z.value.pageData)),{contentType:aj,metadata:z.value.html.metadata}),generateEtags:Q.generateEtags,poweredByHeader:Q.poweredByHeader,cacheControl:d.isDev?void 0:p})}};ao?await m():await an.withPropagatedContext(i.headers,()=>an.trace(s.handleRequest,{spanName:`${a} ${q}`,kind:L.SERVER,attributes:{"http.method":a,"http.target":i.url}},m))}catch(a){throw a instanceof aJ.NoFallbackError||await d.onRequestError(i,a,{routerKind:"Pages Router",routePath:q,routeType:"render",revalidateReason:$({isStaticGeneration:X,isOnDemandRevalidate:J})},P),a}}],73295)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__b87cf431._.js.map