@scrabble-solver/scrabble-solver 2.7.1 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (945) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +28 -34
  3. package/.next/cache/.tsbuildinfo +1 -0
  4. package/.next/cache/eslint/.cache_8dgz12 +1 -0
  5. package/.next/cache/next-server.js.nft.json +1 -0
  6. package/.next/cache/webpack/client-production/0.pack +0 -0
  7. package/.next/cache/webpack/client-production/index.pack +0 -0
  8. package/.next/cache/webpack/server-production/0.pack +0 -0
  9. package/.next/cache/webpack/server-production/index.pack +0 -0
  10. package/.next/images-manifest.json +1 -1
  11. package/.next/next-server.js.nft.json +1 -0
  12. package/.next/package.json +1 -0
  13. package/.next/prerender-manifest.json +1 -1
  14. package/.next/required-server-files.json +1 -1
  15. package/.next/routes-manifest.json +1 -1
  16. package/.next/server/chunks/206.js +47704 -0
  17. package/.next/server/chunks/413.js +3461 -0
  18. package/.next/server/chunks/50.js +12466 -0
  19. package/.next/server/chunks/515.js +5508 -0
  20. package/.next/server/chunks/664.js +2821 -0
  21. package/.next/server/chunks/676.js +32 -0
  22. package/.next/server/chunks/859.js +750 -0
  23. package/.next/server/chunks/865.js +19832 -0
  24. package/.next/server/chunks/907.js +2171 -0
  25. package/.next/server/chunks/font-manifest.json +1 -0
  26. package/.next/server/font-manifest.json +1 -0
  27. package/.next/server/middleware-build-manifest.js +1 -0
  28. package/.next/server/middleware-manifest.json +6 -0
  29. package/.next/server/middleware-react-loadable-manifest.js +1 -0
  30. package/.next/server/pages/404.html +1 -1
  31. package/.next/server/pages/404.js.nft.json +1 -0
  32. package/.next/server/pages/500.html +12 -0
  33. package/.next/server/pages/_app.js +169 -1736
  34. package/.next/server/pages/_app.js.nft.json +1 -0
  35. package/.next/server/pages/_document.js +173 -921
  36. package/.next/server/pages/_document.js.nft.json +1 -0
  37. package/.next/server/pages/_error.js +122 -208
  38. package/.next/server/pages/_error.js.nft.json +1 -0
  39. package/.next/server/pages/api/dictionary/[locale]/[word].js +630 -344
  40. package/.next/server/pages/api/dictionary/[locale]/[word].js.nft.json +1 -0
  41. package/.next/server/pages/api/solve.js +1934 -389
  42. package/.next/server/pages/api/solve.js.nft.json +1 -0
  43. package/.next/server/pages/api/visit.js +81 -364
  44. package/.next/server/pages/api/visit.js.nft.json +1 -0
  45. package/.next/server/pages/index.html +1 -1
  46. package/.next/server/pages/index.js +417 -8598
  47. package/.next/server/pages/index.js.nft.json +1 -0
  48. package/.next/server/pages/index.json +1 -1
  49. package/.next/server/pages-manifest.json +3 -3
  50. package/.next/server/webpack-api-runtime.js +172 -0
  51. package/.next/server/webpack-runtime.js +229 -0
  52. package/.next/static/FeCcjSAzIKZxQujNkfp2q/_buildManifest.js +1 -0
  53. package/.next/static/{FFAhmftgC9dAORkC7Ob65 → FeCcjSAzIKZxQujNkfp2q}/_ssgManifest.js +0 -0
  54. package/.next/static/chunks/195-fcadef5c6eed8338.js +1 -0
  55. package/.next/static/chunks/758-f333b1dcdb941547.js +1 -0
  56. package/.next/static/chunks/framework-4556c45dd113b893.js +1 -0
  57. package/.next/static/chunks/main-a75cf611e061d8f8.js +1 -0
  58. package/.next/static/chunks/pages/404-02d949d2fe59e960.js +1 -0
  59. package/.next/static/chunks/pages/_app-f4030148d742bcd2.js +1 -0
  60. package/.next/static/chunks/pages/_error-a4ba2246ff8fb532.js +1 -0
  61. package/.next/static/chunks/pages/index-75517525489ab316.js +1 -0
  62. package/.next/static/chunks/polyfills-c67a75d1b6f99dc8.js +1 -0
  63. package/.next/static/chunks/webpack-5752944655d749a0.js +1 -0
  64. package/.next/static/css/3159cfe62ff742a3.css +1 -0
  65. package/.next/static/css/6a9e5ba3f77c27f2.css +1 -0
  66. package/.next/static/css/d676d43c6b9c9a57.css +1 -0
  67. package/.next/trace +42 -0
  68. package/next-env.d.ts +5 -2
  69. package/next.config.js +2 -2
  70. package/package.json +36 -36
  71. package/src/@types/scss.d.ts +4 -0
  72. package/src/@types/svg.d.ts +4 -15
  73. package/src/components/Board/components/Cell/CellPure.tsx +2 -4
  74. package/src/components/Board/hooks/useGrid.ts +1 -1
  75. package/src/components/Button/Button.tsx +4 -5
  76. package/src/components/Checkbox/Checkbox.tsx +2 -4
  77. package/src/components/EmptyState/EmptyState.tsx +2 -2
  78. package/src/components/KeyMap/keys.tsx +5 -6
  79. package/src/components/NavButtons/NavButtons.tsx +6 -6
  80. package/src/components/NotFound/NotFound.tsx +2 -3
  81. package/src/components/Results/HeaderButton.tsx +5 -3
  82. package/src/components/Results/SolveButton.tsx +2 -2
  83. package/src/components/Settings/components/ConfigSetting/types.ts +2 -1
  84. package/src/components/Settings/components/LocaleSetting/LocaleSetting.tsx +2 -3
  85. package/src/components/Settings/components/LocaleSetting/options.ts +9 -8
  86. package/src/components/Settings/components/LocaleSetting/types.ts +2 -1
  87. package/src/components/Sidebar/Sidebar.tsx +2 -2
  88. package/src/components/SquareButton/Link.tsx +4 -5
  89. package/src/components/SquareButton/SquareButton.tsx +4 -5
  90. package/src/components/Tile/Tile.tsx +0 -1
  91. package/src/components/Tooltip/useTooltip.tsx +19 -6
  92. package/src/components/index.ts +0 -1
  93. package/src/icons/{arrowDown.svg → ArrowDown.svg} +0 -0
  94. package/src/icons/{arrowLeft.svg → ArrowLeft.svg} +0 -0
  95. package/src/icons/{arrowRight.svg → ArrowRight.svg} +0 -0
  96. package/src/icons/{arrowUp.svg → ArrowUp.svg} +0 -0
  97. package/src/icons/{checkboxChecked.svg → CheckboxChecked.svg} +0 -0
  98. package/src/icons/{checkboxEmpty.svg → CheckboxEmpty.svg} +0 -0
  99. package/src/icons/{cog.svg → Cog.svg} +0 -0
  100. package/src/icons/{cross.svg → Cross.svg} +0 -0
  101. package/src/icons/{dashCircleFill.svg → DashCircleFill.svg} +0 -0
  102. package/src/icons/{eraser.svg → Eraser.svg} +0 -0
  103. package/src/icons/{flagDe.svg → FlagDe.svg} +0 -0
  104. package/src/icons/FlagEs.svg +4 -0
  105. package/src/icons/{flagFr.svg → FlagFr.svg} +0 -0
  106. package/src/icons/{flagGb.svg → FlagGb.svg} +0 -0
  107. package/src/icons/{flagPl.svg → FlagPl.svg} +0 -0
  108. package/src/icons/{flagUs.svg → FlagUs.svg} +9 -9
  109. package/src/icons/{github.svg → Github.svg} +0 -0
  110. package/src/icons/{keyboard.svg → Keyboard.svg} +0 -0
  111. package/src/icons/{play.svg → Play.svg} +0 -0
  112. package/src/icons/{sack.svg → Sack.svg} +0 -0
  113. package/src/icons/{sortDown.svg → SortDown.svg} +0 -0
  114. package/src/icons/{sortUp.svg → SortUp.svg} +0 -0
  115. package/src/icons/index.ts +22 -22
  116. package/src/lib/createNullMovingComparator.ts +13 -11
  117. package/src/lib/reverseComparator.ts +3 -1
  118. package/src/pages/index.tsx +2 -4
  119. package/src/state/sagas.ts +15 -10
  120. package/src/styles/global.scss +1 -0
  121. package/tsconfig.json +3 -3
  122. package/.next/cache/next-babel-loader/content-v2/sha512/00/24/e69ca49997d9084010fc720141adfa35a909487c700e67ace71e29db5254e8c3bb98955673779d55ed14c1e81964dfd58e026a6770d90f858a679c0a3c4b +0 -1
  123. package/.next/cache/next-babel-loader/content-v2/sha512/00/83/0fb34d350141a478fb1092e409c4238b67cb792650463e5a908c37560c3741d7141ac4e2d37024bd24aeae73623289ba151acb71aaf22114a3d75d1b4b26 +0 -1
  124. package/.next/cache/next-babel-loader/content-v2/sha512/02/47/37c2ee5c256ff53e397b7046937f008eda8619d19ac94eb5a59cca88dc216f21393cae2dc9981ecee6f033e465a3bf494142beb5d821bd65e26b6df04df1 +0 -1
  125. package/.next/cache/next-babel-loader/content-v2/sha512/04/23/af3d40c03ff30579f3809877f515103e38ea7fdd5498ab2e1ee7128f1677e0f58bf6682c3885e0c0eb2876cf71795eb9bfc4e1a78c9f4b37b7a722d4f003 +0 -1
  126. package/.next/cache/next-babel-loader/content-v2/sha512/04/bd/8f88a45f3ec7c4581eaf3374854943b463bbec78cb3421fa4e3ed354c7c54198bafddae1094d58ab65be26a9ffa470123258930be54f03fe473707055364 +0 -1
  127. package/.next/cache/next-babel-loader/content-v2/sha512/05/30/84f21d466b1653fa983581c1000c4e144b600af7efa6d789c17b5f0e8706b96b16bbc1dda826e42f429b00fa7a5b2b803fb42aedeca2f622abdc0219ddf0 +0 -1
  128. package/.next/cache/next-babel-loader/content-v2/sha512/05/5f/87abe1da1c085bc26b980b184eb3131061bd081b459d11f393451a5bb88738def10c75b892275ccf01d5ae72c9555c49aa5184bfd40f30f1920ac2ec1cc9 +0 -1
  129. package/.next/cache/next-babel-loader/content-v2/sha512/05/5f/ea2e9f0dc52f3d43511820ad4a0dd0a048675a8cb127cd280061e1c7dadf303186aec20bf38e56fd8edab81c18a34ec3546d1aed832e15a8472385e1efe6 +0 -1
  130. package/.next/cache/next-babel-loader/content-v2/sha512/05/c3/77e0adf5c43463382cbab903e644bf97e4fb69e1300a22effd1d7cd41bcb4a13814d159c90e79df32e5fb00822b5b0f685cbc447ea651f214f90dd3c99f2 +0 -1
  131. package/.next/cache/next-babel-loader/content-v2/sha512/06/c4/e03fbcfc1a5605fde54ab3df726d56770e89e4c62eb19a02282ecad178af1c222c7f30a10274408e03157a7f781d6d00416f1c7faa668bad7f488d567eda +0 -1
  132. package/.next/cache/next-babel-loader/content-v2/sha512/07/7e/08dd02b2302aca119d5daf405496bbf05a104f2f3cae2deb0ae49368003499080072ca18e422aee045ff977b1cd6a27c2332629ff482d5004dbbbe40ec38 +0 -1
  133. package/.next/cache/next-babel-loader/content-v2/sha512/08/8f/1e080f787a24d3e3d738aa64c3e67bac938e1ebceb815a905433667baeac42e051b26fba315ad3edb70f62fbca6af52ef709671be3ccfe1789ecdd661d62 +0 -1
  134. package/.next/cache/next-babel-loader/content-v2/sha512/08/97/b5bcca8cc146341725b1a3299112515a19545f2d2e57db8b68bad837db4c29f90a79aa45bfc84c3de48b6723607d9f73a8b3f268ad83722cd0b10bb8b71f +0 -1
  135. package/.next/cache/next-babel-loader/content-v2/sha512/0a/2e/80465ade35276ccef5289f6469992cd38bd11962bbae9cad0e5ddddcc344c924296d623673f4dd8daf47cadb4aa0d234cc67ef72b4ce5a1604aa4abd6c83 +0 -1
  136. package/.next/cache/next-babel-loader/content-v2/sha512/0a/e0/9fbfb96d2197a1e7bbab02dc4edf57b3cd74aead8a19005f002c8830769894ddf85d5ed5648fbbd32e3b53ce04b5876a06d6c3eb9bfc792778f9ce7de641 +0 -1
  137. package/.next/cache/next-babel-loader/content-v2/sha512/0b/0b/7b90aed37b5e1c786bf2955a515f10a42352c4db9dabb3c2c5c2ac4440a6dfc7e67aeab40aff5450f4599e739fa8aa3bd760beddc3e414222126c3bb0906 +0 -1
  138. package/.next/cache/next-babel-loader/content-v2/sha512/0b/0c/722ca2c49a4822fbffe03579747ad1aadf35daa6ad64cf15fb95720dd3f05b04d6eb0b349130bc5ad7cec28ec55d5e5f5e54615974eba6d1e1f0ba9b0050 +0 -1
  139. package/.next/cache/next-babel-loader/content-v2/sha512/0b/5c/a82e305fe6cd2f69b05d44cd265199bbe93818d9a3702b55390d648b831453e04946a5fc6a9dc973091169ac775c49e8f79b223168252345dabfe2096c9a +0 -1
  140. package/.next/cache/next-babel-loader/content-v2/sha512/0c/8f/5406b15a7181fc33fa30e6702806a5cc08b0e74285eb3661eb8b483ac8372c414b32b0cddab466e4f954a1729c0738b6989489a0211a57949a140655744d +0 -1
  141. package/.next/cache/next-babel-loader/content-v2/sha512/0d/e9/4a7ff61ce2cfe374c96a1ff81cd8170c478e56f892db51ae9392394defb57cdc2da25b8bfb9b708eb227b6e846d4d1d5e81cc2e641b4e3b7e7b850800875 +0 -1
  142. package/.next/cache/next-babel-loader/content-v2/sha512/0e/2f/9cb518a6f9e8f3b30fb101ceb26e9f65d28dd7f31c86862b7236862a189db394d09cf69a672dbd501fcfd619b75d0e810c756fcfee3f5a40ace5df36bd19 +0 -1
  143. package/.next/cache/next-babel-loader/content-v2/sha512/0e/3a/5c016f5a0bc98601525f032eb9ec7ef4d9864abc3413b80ab19702e83e62cb878ae9291476f283ebef1a89a18d0c70e57d6dfbdc1c018f30097d93a75263 +0 -1
  144. package/.next/cache/next-babel-loader/content-v2/sha512/0e/4e/6ed7b36078b8d73163540c49c8015a6e0a7ee0d0d85d4ffc2314bb7669a1dc5f1e1fb7e1b9b69a38fd08772096e62992e6c672c04f0d8e0c7bce67866615 +0 -1
  145. package/.next/cache/next-babel-loader/content-v2/sha512/0e/aa/15a364e056643db9ffd1e5a830b48aa367508e9b186d17760a9d824ed7a7d30323acf6a99c2edfc3021a000393245a651c54ea424f7d745231842cfd5447 +0 -1
  146. package/.next/cache/next-babel-loader/content-v2/sha512/11/2d/d65b617f6e9e31f457a8d648f5fd924405ad956667da6e4e0c8760948d679959dba56033839f58e26c1f6c3b6c7516a00f27ba70378a758cfd2833021f02 +0 -1
  147. package/.next/cache/next-babel-loader/content-v2/sha512/14/9f/0ad0ae4c48426e79ce6099872f6f275dad4855c2f5a3b178896f27b2a7c5718b879e79a4897ba250a84b4920e0afbef2ed009fff2d553d93d0dae121e62e +0 -1
  148. package/.next/cache/next-babel-loader/content-v2/sha512/14/c2/ed2d01b5d5c11fddc82358932f3cb445881425934f504d41b8d1bc7f5f6b0faa6ad19fad66e89b9e07faaa81b7b61a4d441d20031691b3ffa8321969173b +0 -1
  149. package/.next/cache/next-babel-loader/content-v2/sha512/16/2b/d5eefc82dec7413d163ca3a009663424358544494d67e576f72f0f782efa14ecd82d228516a26d159b9e52e1669da035aad7c830c431164d0bbcb2dc3611 +0 -1
  150. package/.next/cache/next-babel-loader/content-v2/sha512/16/d8/69708fd7715b6aa325680f3d008daf3366d799726e621ac5b0822fb988d54c656ae941931e93ec19a7d17d1c2fb468e9d0c0fa22380d8aa9593a68dc6e0b +0 -1
  151. package/.next/cache/next-babel-loader/content-v2/sha512/17/72/c3e23e70496d6d559b83a7b55aa8469bea51f44a19b00ba59274001f338d1365c298cb1a875842bdc71d273e26cc91abd849d1e523e6d57b90387a4574d6 +0 -1
  152. package/.next/cache/next-babel-loader/content-v2/sha512/17/8a/a287f0a9f13f853a29236df7417f0402f872a07ac3bbc96da0c84f6ca52ba20d11257430ccc041eca2fda04366341a4666cc8f6ac36e34cbfc91a6ee7748 +0 -1
  153. package/.next/cache/next-babel-loader/content-v2/sha512/18/39/d83c85beadefb459e2284048bee804b5524375fb56f41f5d1e94510ad727b1fe0a5f4dbad1aea3dc65d43c0b3336393bd2fac72b59d9201cbe7880ead3e5 +0 -1
  154. package/.next/cache/next-babel-loader/content-v2/sha512/1a/7b/93435c97316e831422c992ecad3483d4ecb3b9508408356e3eb8467d921d5a61fcc18dd6fc8c3858e17eac3630a9372cee2ca85e10260437b15c42ffb352 +0 -1
  155. package/.next/cache/next-babel-loader/content-v2/sha512/1a/a2/bf70fd7c9ad4b982f9d774d23f725b22208cb84f795a1735eaed9d69c995bee8ef90ffe881c7b2709fce800795a27e4549dac1babe5539ac5458d578e2e2 +0 -1
  156. package/.next/cache/next-babel-loader/content-v2/sha512/1a/fa/dabf1a7a9edcdc835ae6430f5b6c52ab90f04b000a82cda98d302072b38a5084ffcecc5e5e25d54695074415446fef1821859370c1215a5452ce8dfb3ba4 +0 -1
  157. package/.next/cache/next-babel-loader/content-v2/sha512/1b/5d/94aba9db5002f7ad862d4d9813b3c0eedf58c2515f5034fb8fe2d5addc601107037306d3da6cefd5d96861fb400a68d7bb9e83d2e4c6046aa9d9e5fc1463 +0 -1
  158. package/.next/cache/next-babel-loader/content-v2/sha512/1c/0b/f9f8b5992fb05edc674a7ae5bcd232d821e345827713dc3b48ce223c0bc284c158a1980904c9b00088c849334bffeb5d4e4a770befad91ae041bfd700354 +0 -1
  159. package/.next/cache/next-babel-loader/content-v2/sha512/1c/58/32da068d600bb1ce12734589bc1843331e32153742c01b5437bca9a85fe0be28eb4c33f7e0d15dcaa10d785237002e8d2ff57cfedd0faa4cf6f3a9c060f0 +0 -1
  160. package/.next/cache/next-babel-loader/content-v2/sha512/1c/bf/77e45cba187a36ce836d804e0f56c1662634d7cdcbaa4629258a4255ea902dbd83817d5cd5ec546c54547bcf2be0247e9461e0784984f984c1cec71c8a63 +0 -1
  161. package/.next/cache/next-babel-loader/content-v2/sha512/1d/19/d6bbc6bc4b3ee538fa4f9661de58fb00d13b5ab572b88cf116a99cd727517bfaef4ae36852e04894bad7f8e87d6261fa8bfb9570e7bb0b484e878a66c28a +0 -1
  162. package/.next/cache/next-babel-loader/content-v2/sha512/1d/ef/eb4882a9e12cead295bbd9d0536eeb94b75a68d0863eacba4149186dce29d586dc3041dceb8d9f9e8129f30f49fff6b0a4ad8b7b327bd541b5583bc0b495 +0 -1
  163. package/.next/cache/next-babel-loader/content-v2/sha512/1d/f2/f50e83aad1ffd41a95ba9276aa6c32aaddeacf3d2a5133d6567e0d36cc1ef8cd65bdec293316ebe2677bafe8c99938e056cc354d613992865dcd21ccc489 +0 -1
  164. package/.next/cache/next-babel-loader/content-v2/sha512/1e/ce/f707544d41285ef283d74c32a37fe93a76bbf4a99eee1ca0a9a502e22085879fd693d0d23eec562ad18931e5ad53fe5119360133a8e6d924a260fd6847da +0 -1
  165. package/.next/cache/next-babel-loader/content-v2/sha512/1e/e9/cba3fb077001090075d700f199ec4a7875b522fce0e5183aca71808ce047762905365722d6e107ae83cac295291cf4264e43e369fa297e8835d9fadebfdd +0 -1
  166. package/.next/cache/next-babel-loader/content-v2/sha512/1f/da/979c43a5aa8bdfbceb117f0336a315f9404ae7b09f3a4d57fa71db8609c8846faa42373af6c2e34d9884c7af189c68fae9c12e26b83e1efca2804b9bcdcb +0 -1
  167. package/.next/cache/next-babel-loader/content-v2/sha512/1f/ed/97aad54ecd1dee9cdfd26172f9ffb8fc9448f7dad8d0100646c918b83d50438141377140e64e82d143ad1bf9e2b9aaea15c3e58fd15d87ed39b05c5ebe5d +0 -1
  168. package/.next/cache/next-babel-loader/content-v2/sha512/20/e3/49df96113317f602235d83caf41b0598b79c9f7a215044df8b6a5ccf495cb72b78b62def091bb02b20f2f0cacc06b7adbc942b5b61a2adea25288063c070 +0 -1
  169. package/.next/cache/next-babel-loader/content-v2/sha512/21/69/c5e524a20276503b3264a1b0dc59e463b2ab085661b292b3028fab46f281adacbe5a9fdaaa595ef248bf8e4ac66fd3d161cacd615f14059073f17c93576f +0 -1
  170. package/.next/cache/next-babel-loader/content-v2/sha512/21/ac/c79c130de7629203483c03acde4a4879f45c50c66fa9aec1a8c580cba546986c6d34471d7c694f1a8900d8d5943e47c8cdec61ecc838d849d3193c534f04 +0 -1
  171. package/.next/cache/next-babel-loader/content-v2/sha512/22/ea/ceee559569cebd5e57d9e0fecfc3337ef4d9d7be38cc85db3bbcbed22bee043c069841c16e20e98df54ac3f630b4fa8474caa660b7a2f887396d32dc852e +0 -1
  172. package/.next/cache/next-babel-loader/content-v2/sha512/24/3c/ccd22ce7785223bace5aeeeadf9c5794944945307753e40b69b52b57d61188c9f770a7fd1307bdb7fadc251ebffb1e5cd6234f3e37590d2c9dd8b1e3e2ca +0 -1
  173. package/.next/cache/next-babel-loader/content-v2/sha512/25/0f/0f1181c40c9d156d345b948f58aa7ebc37854f1f76b8effb852d60061ae89c4ae1020caa6720a16dcfc64281bceb775c5c39972c855a2716d26c5d43bdd9 +0 -1
  174. package/.next/cache/next-babel-loader/content-v2/sha512/25/45/a6ea569379af5efbca98d3d6edb15b1a84cf8eb9614f88df474d66443622680823054504faa4b9405a846b5fbda61a43bb27f9f74a4b5a84e61334365d36 +0 -1
  175. package/.next/cache/next-babel-loader/content-v2/sha512/26/0a/1cfddc328a5f3606fb8de499d1dd261ff78fb76fdd03327d9ffda51fbf01d6a7835a6392bf7cc59097be400e0156336c9461b851c5b50e24511e7fffce17 +0 -1
  176. package/.next/cache/next-babel-loader/content-v2/sha512/26/ad/33141d81d2a138b784e1c3e83249a6a0bbff2fd24f680cb7597eacf3ce7f6c5cadcbd8245e16f6b7644a8a4936516b95d3c31e35698b383c82518a23a969 +0 -1
  177. package/.next/cache/next-babel-loader/content-v2/sha512/27/9a/69e7cac9d3819db08d1df350d227352ae84fa16edfd7d60a4287f7ad2e5e72045d84e9f311ccb117b6fc2a30ac6905fbe954fe4d088b33a282a5a1c1d4bb +0 -1
  178. package/.next/cache/next-babel-loader/content-v2/sha512/27/b5/4ca78b367ffafc53d01219f3075f82c2d92f767d3e586333e3faab70368e9d75a79dc504a735fe7fd637e829dcbadae69cb04c35a654daac90945bbe5459 +0 -1
  179. package/.next/cache/next-babel-loader/content-v2/sha512/27/fb/af890b991ab4db7e11d14350c5278b70a53d112b875270624daefb56c249268b218232de167e15b92ba8b693bdb3b2fd95da59c4b291c01185d0406d1b4f +0 -1
  180. package/.next/cache/next-babel-loader/content-v2/sha512/28/32/dc8202827196e6dde879ffbe1d572489148728409ca746deabc5ebb69cdcc54207e39cb1cce1521bda1a0765d53262ac9e9b4632ee305a7deaf4d3db30b6 +0 -1
  181. package/.next/cache/next-babel-loader/content-v2/sha512/28/f3/b59ef4c59e466df0bb0bc91eaf011298f140ea84e48f088c5448c3055f6940a1843545b36f574ff70f79ffcbe432b63e1e9151bb09d0c6fc75617b2a94b4 +0 -1
  182. package/.next/cache/next-babel-loader/content-v2/sha512/29/be/b9b11998c52a1c64ab2d8ce446f134caff8a4cddfa1844c3f3524948028b2cdb82e67df3d390ecd7c9367a2efc3faf70f6c261fb752a5825b5f989246381 +0 -1
  183. package/.next/cache/next-babel-loader/content-v2/sha512/2a/90/2445c39ff36a036525bf2a6f306166bb86fd5161e22d823fd0f09d903d09a95feb7885ea68acc6fbf9e59e0773a342ab5b1c4f67fe2192ea0a34d3ea4ab4 +0 -1
  184. package/.next/cache/next-babel-loader/content-v2/sha512/2b/1f/d00d960aae363d6b0b5b760c9755329366cd60fadb997ee70e22b01d413c3d78c0e6042620ffd51ebd21792fddc4a4a296e648a7e27ee42d47ad07e7edfd +0 -1
  185. package/.next/cache/next-babel-loader/content-v2/sha512/2c/01/45ebc871347ea842a0698dc2005a4f82e369a6ae8532e50a5bb6ca9084c8082eef279cad1bd16ef88b54a6fe2013e134eed8f4bb530ebf04cdf179934bf1 +0 -1
  186. package/.next/cache/next-babel-loader/content-v2/sha512/2c/02/875288c301c0ef9c5c4c8d28a06248d3053b2d92f49f5ac9ab97980bc083106c2842c2e36ee8ff14c7c8b8f828ac09f266d44b2ef7e7c81e10e33efcd183 +0 -1
  187. package/.next/cache/next-babel-loader/content-v2/sha512/2d/0d/d892674e173866b78e53d2a1158c6cc6da585a8f30cf4229645f0052a8954e4dc5e1253a2f51a8374fc3d73fe1f6ccbcf945287b122d54833bfd7db9512e +0 -1
  188. package/.next/cache/next-babel-loader/content-v2/sha512/2f/2f/fcb3e108ac115334d81ceae0f6538d4260139d377b236a211f031e1b09f0ecc7612cd1f18082b735f6a2f5ef55bea0ee2da76eadbb712b16724f014461bf +0 -1
  189. package/.next/cache/next-babel-loader/content-v2/sha512/30/f2/ffb3487b91db91f34c0e23851a3a814890edcf05823aff39e23956bfcbe69c023c0768e7a6d3c5feff5b5d40b183eb27f50506eacadb55ccd9c47660b901 +0 -1
  190. package/.next/cache/next-babel-loader/content-v2/sha512/31/68/21acb09977ab6ab09214f54ffde93aed90f131e6059541e888db4eacd0b7663ec2349c3eb387fb8cdba97b51d62be536bbcc3d931d640b2b679fbbb3418a +0 -1
  191. package/.next/cache/next-babel-loader/content-v2/sha512/32/d4/ac5f9359172d76507e4c8a8b918bee4425adb8453568f1b34bf3409af1c04b56565d3cb9b22fb14844525a70b5bc9cd3d9f08d91d5fe82660ef6142b6d73 +0 -1
  192. package/.next/cache/next-babel-loader/content-v2/sha512/33/2b/19d862e6e0992c48d5bd7fb18ecdc3a9aa7e609fe8036b5c2debe4c33a9d4072cfb443f401c7eeffa7d98e931d9307d668530d42082219233b2986ffdd0b +0 -1
  193. package/.next/cache/next-babel-loader/content-v2/sha512/36/dd/f946d0ec6e76ef562f0d89a0c4dafc18a3202d11a2b44665880485def171490c99476fb842775b8069f9bb2d028bc6497f1310f2f03bc881d462a8d05459 +0 -1
  194. package/.next/cache/next-babel-loader/content-v2/sha512/37/4e/04e1c3cc9c5c90b2fa29e68f894db65de5267b8cfbd9760bc0a0b9ae24e0abfb512852e31e8ca9da47b4273131593affdf17d3ca5d5b78f87d6ab4ed164d +0 -1
  195. package/.next/cache/next-babel-loader/content-v2/sha512/37/86/584434fa9e16305b4330afdb53b728b3b4af9fd294982eb27984138b98ca67b7be8d1289d971a545b7ae0139b5766bd583d6e82c224bc5c6c68e4d84163f +0 -1
  196. package/.next/cache/next-babel-loader/content-v2/sha512/37/93/19b1c359086f2ebca42977c05d04a15f141771ec3bbf7b8b29962be300068f805d8bc9333c04edb2c1365e0a36a59f84c15c2400f0fe07c665f99107ec9f +0 -1
  197. package/.next/cache/next-babel-loader/content-v2/sha512/37/c3/05172c7b1eb01889f3625c139830b6a275f835c329bfd4ab3494dc45d600b403c2a4e1b7a01829e7216de25d26afbb2357073fb0d4aee019ea3357018535 +0 -1
  198. package/.next/cache/next-babel-loader/content-v2/sha512/38/f3/7e03088e800acdbbaec8a5a6b2ca96a12a3e723b6f88cf841567e8a7ed02a678258b12ff6e440db8922bffa47937fafdba8750d3ff7bb42d4556d7dd31ad +0 -1
  199. package/.next/cache/next-babel-loader/content-v2/sha512/3a/92/29d48b41c2029f302f14a7dc892b5c1b6c4f8fa9afb776229747bb76b59074cd52178d72dc5d4cccca82cad51a5202c2b83e018a966acd32fc1fcd2cab0f +0 -1
  200. package/.next/cache/next-babel-loader/content-v2/sha512/3a/a6/6ad33bf1dae847598b8b4b348fbe3e6f3d729f59b61729b8f51dbb73fa77f181217ca026ffafc78a5428aa9279f4f221b52b2e6d60373c4dc186e7c5c814 +0 -1
  201. package/.next/cache/next-babel-loader/content-v2/sha512/3a/c3/8f9e53c2827c947f2846bda94c8a618a3a18c8c5e7f3c29e2f540d95249d227f5926a73330af209a3f2ad7116d8cee94d45a07dcdc0f78ca517ca9027de8 +0 -1
  202. package/.next/cache/next-babel-loader/content-v2/sha512/3b/89/70b8d1189fe4977ff6e5277ae9affb46078aff905e25d327b37abbef9f576733664605ce1484d62397fbe1b6da5f52ba787887b757b0807831e1d105b499 +0 -1
  203. package/.next/cache/next-babel-loader/content-v2/sha512/3b/f7/459680773ec82a3957f331877003fa04c83c6fd37a6ed52598be49e50fc097a255b0f17284c1290273db065636301c29944002d2e8b22c7f109af3b3f8e0 +0 -1
  204. package/.next/cache/next-babel-loader/content-v2/sha512/3c/eb/e5e290037b88cd7f9c3e936f3e5bac1da16817af2076e7ee69ccd002f0bf9eb415a58256e1898490d2afaa226ddc0c20493fddcafe9baa6af60a75bcf443 +0 -1
  205. package/.next/cache/next-babel-loader/content-v2/sha512/3c/f4/cf9ce8072ab5e786ead1f374286340dbfed8c2919658217b5e3dd0aa07d99a727f8d83cd236e73a052a5c4cf36d98c6dcfc49b1cd2117a8ceeb2a89d9741 +0 -1
  206. package/.next/cache/next-babel-loader/content-v2/sha512/3d/90/df35d3a14cd9730c00d2008e2a77e18fedd6c19b2dbc814f687eb17f92963b9c5b086a1c7689388aef5fc85a0267b707132fc465230988ffd71b47ff7263 +0 -1
  207. package/.next/cache/next-babel-loader/content-v2/sha512/3f/30/7c073c9bd2a8716a5f421d4d0d374ae5a5523c76dd39d45f32a068474f8c1b69ec0d9685a25b6c34160ad9aede66b5e8b6b37d72b6cbe3a40f8c112c6927 +0 -1
  208. package/.next/cache/next-babel-loader/content-v2/sha512/3f/f3/2e9d5f4ddc848976cdd6ff58b15fc8ef8b3c423bc9e9cd3535b8501afcd47957b1285eae573d06110fa940c1f42410576cd862ff73476b1319bf5982fc8e +0 -1
  209. package/.next/cache/next-babel-loader/content-v2/sha512/40/24/ac3800caa7200b29380c81d5fe9667a4260f1679912bfaf75fabda5c2f87dec4fc4b21684e91d9bf162d70b2b05c85ac3fb45425192eedd0e9a1c7617a67 +0 -1
  210. package/.next/cache/next-babel-loader/content-v2/sha512/40/9e/d60654a7a78fa547073e35f37ad551b878a1702138099b5b0bfb3c0ae25f522594c2d94b1d70d53f24224374d6bd40eaffe97bf987a793e3283382cbc040 +0 -1
  211. package/.next/cache/next-babel-loader/content-v2/sha512/41/12/7a4e6c0fb40940577a9e7522f307209695ab55ca0502fabd38c6927409e25d723300a11f9e1ca38d490d354519962cf5e38c515523f6d83c2008782dab49 +0 -1
  212. package/.next/cache/next-babel-loader/content-v2/sha512/41/ae/a62b15634223acbb83344c00fddd8e61562abac0212fd6784e6b61cca40a3cc75948205eccfd4b17dc823c10f6cdf2e8f62bc340009fed897dd98b58729f +0 -1
  213. package/.next/cache/next-babel-loader/content-v2/sha512/42/43/7628243f2264ef7db951bc48a0e5f3ec0179124223c6146798a19651693eea6fbd4fa4feec375be1e2028d90ad7ca461e3a79c5bb6ad78ceda001ad6a233 +0 -1
  214. package/.next/cache/next-babel-loader/content-v2/sha512/42/b5/f32548be69023153e5a9a88a3a02bd6448eb808902e586df40cab3d276323edc2c9b64dbf195517ae2f3d21ba072584794525b23601dd1cb2986d65f7376 +0 -1
  215. package/.next/cache/next-babel-loader/content-v2/sha512/43/ae/776cd21dfa1073edaf6fc56e487cf30f8638b569681c4b7a70d2ee180ba387e590aec2705c330d3f6e7be7ef62107286b4bdbeb8a60e314fce2a118bbd89 +0 -1
  216. package/.next/cache/next-babel-loader/content-v2/sha512/43/d9/ea36ec51b7da513de73ab4bc1ed29ac68ab6108e436c4a76b470fe7758d8357ce2fc3f494763c6e0a8fc28e07cb6fd4b619ac29036e1d64518f09203cbd2 +0 -1
  217. package/.next/cache/next-babel-loader/content-v2/sha512/44/8f/94c9bd1b10c058ea39ed428a0c7e7490aa682939b4b99f4082b3192af84c39065321acafd80d0090b63f919879bc7e00483743c78a79960c7c21d1737d87 +0 -1
  218. package/.next/cache/next-babel-loader/content-v2/sha512/45/f8/2f9e866b4c7829eee5e7f72826372691e9ea618c9732639e70178b8c06ab7428802d8dd1a40c57579350b0753d837fc28fb93704c0a8b8f3a3bbffb83a3f +0 -1
  219. package/.next/cache/next-babel-loader/content-v2/sha512/46/51/0175b602a507e87a71d3940e158b5328b30c17f36a03730f23d9fea3e8898bb17c0e12505daad477dae59d4b972c0f78e0ece1eaf237ea014a0932039fda +0 -1
  220. package/.next/cache/next-babel-loader/content-v2/sha512/46/5d/c9a5f89322fb645253ea3ef1c700c8455f10ae77dc42d2023f47ed0006459d5d046891a33324c1422ebcb1dc9fe202a994481e9babf5aa276131597ded70 +0 -1
  221. package/.next/cache/next-babel-loader/content-v2/sha512/47/a2/bc5cf3041fdc7c8cfd855b6e6db532b6d283831e2565eab046a969d5ef5d7edb1832329aee877aa3369c0cd01b80b66f479e5c5f3734c8133c4e629c683d +0 -1
  222. package/.next/cache/next-babel-loader/content-v2/sha512/47/aa/e7cfb3a6f69996bd0d16f73ae7d76cca77dc05fa8988c55f055bb56ca690dd79c5af7a01ae4c5a65a5afead166a2d044266555b16e67aa547ffbe3c44c91 +0 -1
  223. package/.next/cache/next-babel-loader/content-v2/sha512/48/58/634edf8031ae94dabe112d94fb04fb20ec94ee4ca797da417f7042c40d6ec2be3255782589b9034f19bf6c9439d67fe218811d3d36f0edece742ce0498e4 +0 -1
  224. package/.next/cache/next-babel-loader/content-v2/sha512/49/ef/d285ca068d473ce1a83a74f8451df9f33b89a57d1f0b79c10240f07e390afaf7e1b34d2fd3829d2b742b61b14cb03f0fbe1bd1a8b355eb7724c94aa7ba8b +0 -1
  225. package/.next/cache/next-babel-loader/content-v2/sha512/4a/2b/2dbc75049e5735fffdaba14493425f14824b242a099b1a1d36ecde195b357d84fd6d96ebd9a3abc72c092a8b267f02f6696818d9784bedc86b259504b57f +0 -1
  226. package/.next/cache/next-babel-loader/content-v2/sha512/4a/8e/d94582493c226f9a32bd4d0c5c63218fa1c14cef472fe06866e1dc53aa67545c17bb1599c45cdf4b2bf4f73d2fb353030c82262a2bf45b4b1e09ac394032 +0 -1
  227. package/.next/cache/next-babel-loader/content-v2/sha512/4b/01/ce7dbcbf57696ff2854632b0fa3bad1712152b25d0117956385a943c8a2d48fd044d2d79e35da65c68711377208154396e949cee00f760b5788203b71ab3 +0 -1
  228. package/.next/cache/next-babel-loader/content-v2/sha512/4b/2d/ddd4a74d414606f43d714f2a01383b9b7d37c7e7460a8a75b07018d65a9d0e1c2940c3d113234a204975cf34b4bc4791fcddf6f88bb54195a33e179ee506 +0 -1
  229. package/.next/cache/next-babel-loader/content-v2/sha512/4c/17/dc9dbbee45c5c85dc63d792cfb0711ad167cee23eac75cf4343adf7e51373f80ab2264b6e306169fad1fb07e51f6efda03c73f353fb0d4f2ce7b33334bb5 +0 -1
  230. package/.next/cache/next-babel-loader/content-v2/sha512/4c/a1/b98cdcf87a0effad3b15ae31ff063430f0825524f204fb555063e26373fd42bdeef6c39d4df567bdea7af5a9959e8a4e6c5b47e1f06f313ad8949a5c2a67 +0 -1
  231. package/.next/cache/next-babel-loader/content-v2/sha512/4d/1b/096c6583ee72b592770f0f4cf385bba356ab67abb47c9303da8ff1a86946f89ac9f9cbc017833870fcea5e7979ea3e3f189602d48c49417b971b453d205d +0 -1
  232. package/.next/cache/next-babel-loader/content-v2/sha512/4d/74/3a2dd6f4da9d7f522597d7ba00fb5f911444c066cf0b8262f0a51e036c78a09fc86115c6e89ce7fc9a6744210ba3e37d6cb708a40d37039de36d2484606d +0 -1
  233. package/.next/cache/next-babel-loader/content-v2/sha512/4e/d9/c31fcaf91d2dbe2302e5c0ce63988bfebe91c530db0d2e9e85c3d31a45dbb686f006ebec9d062c6d63b0c66524fd2a95039ceade93afc57b2c6e67282d03 +0 -1
  234. package/.next/cache/next-babel-loader/content-v2/sha512/4f/79/7421732f7dd6cfb8f61b28299dd44f293e348a94d65cc37aa1439ab2eb0f29daea7e5c5a975deb747afa8693e1f450d030f5766eabbd926d289c397d7ed1 +0 -1
  235. package/.next/cache/next-babel-loader/content-v2/sha512/4f/9a/5d8bc638605a2e0bb7832664ab91da3469b597eafff99418b85c683db0a7070c8a0817dbbf26a967671f5df9899a72e632dcdb5836df8f8d281ac61ba487 +0 -1
  236. package/.next/cache/next-babel-loader/content-v2/sha512/4f/ee/1667fabad697d03129af7b4febe6b8139aa140a5b02f9fe6ebb7c8298b72abbc35550c898d2761cfbe9b2a258b6b7e61bb57133f2a0bc9c83217427752c0 +0 -1
  237. package/.next/cache/next-babel-loader/content-v2/sha512/50/52/131d4b0942a16faa23416e5d3ee3dd1c94983c6865af31517d927c48280d146786518a02ede2af525c4c5178fb51400678a1b3071914508d568495f62648 +0 -1
  238. package/.next/cache/next-babel-loader/content-v2/sha512/50/84/9b01bc12603ba75b0a59ae95a7978d1b212c2d3fa09098d42356bdebccbaa341f16f1ee7136e4874c37da32e124f9e476f33cd325a385a5564ab1bb29e65 +0 -1
  239. package/.next/cache/next-babel-loader/content-v2/sha512/50/c6/edd9769a3a9be8eda4b081efe3e8dc1452c3c99703564f888e043a34f7de0614c7890bf021655dde89aba33cfc6bcf6fce9190b3c452497eb872e7633e3e +0 -1
  240. package/.next/cache/next-babel-loader/content-v2/sha512/50/f9/f4fcbc578160d24933ee03afd9cef2ba93b54e7c468cbd7abea7dc0519ce87b3a71c81c29b3c297d0045f2dd284a18e7a63aa6764ab5135f8ee45fa5398e +0 -1
  241. package/.next/cache/next-babel-loader/content-v2/sha512/51/5d/6831d4496816b972f38db3f71733591cfdc037005af99771e09f6f817c27c5a9af92236e2fdaabc694855db214d4ba0a07d0539a80ba691c670893ed1a98 +0 -1
  242. package/.next/cache/next-babel-loader/content-v2/sha512/53/3a/6db53fb8e874ee4baf9ed52d32536b5f2056d224d83dda79ce471df41da13a143962641c07f89d45440511c405809a493ea1deabfe8732a1da7339e225fe +0 -1
  243. package/.next/cache/next-babel-loader/content-v2/sha512/55/4e/77dbfdcaebc850e64ceb9865b9e813672857e90404c6eb6ae34153eb9edad2d1c064703b94d1b3b009b1a599d4df48e9b29fa8de47eb36d48bce0dfedffb +0 -1
  244. package/.next/cache/next-babel-loader/content-v2/sha512/55/fd/a0e721d9e153dd4d9ace2f976a176fe1812487a0e5840d89a08b21658efd587be22fdd04bcd937c4f02afde78d851d09933a53ce83fec13ae68b005ac74c +0 -1
  245. package/.next/cache/next-babel-loader/content-v2/sha512/56/34/6049193111fbe8a793dde6103cf20c38f0d4555f96f19957274dcb74aef287d108edf16244208aa53960b285e406f740c1480e1a14c596d4bf7adced21f8 +0 -1
  246. package/.next/cache/next-babel-loader/content-v2/sha512/58/8f/9e13c86ab3ef3918d27fed835d48466131cc561086743dfda157032e22e6d51bcdd377c745e1d9a8495f8f992cb90ca92527a4edb300b4ab229b4502099a +0 -1
  247. package/.next/cache/next-babel-loader/content-v2/sha512/58/ad/689e1b94a45ce677f626bc53fb6fe81a940b8bd1e7b806201c4bdd91744486989a6b137b221e360d3cbc81865aa9628903a782cbc1612017ce6da13a7235 +0 -1
  248. package/.next/cache/next-babel-loader/content-v2/sha512/59/05/d5336ede5daf46442ae48da6abdffa1b581d0fc1a3e9290be242e1e5f3b9dcb1772cd247b91e00ff7628139d7b4d76624c7ed54be6a53a1cd8ec5cd5fddc +0 -1
  249. package/.next/cache/next-babel-loader/content-v2/sha512/5a/17/292d7e5b9ac2b37c65fa999926112ae239994631acfa312df82a5da4c7e8e34a8e7776ae07ea8106a4dd11414bdaeb7f0b453d2728d12e6a46577d30f1f1 +0 -1
  250. package/.next/cache/next-babel-loader/content-v2/sha512/5a/49/3fd68edba4a9ee73e93659097a3d94a2cb63973292f6d1632a48892f023a4096ce07ee2a2200a860e5fb9c724671771c7625f55ec61e78a72b474d883495 +0 -1
  251. package/.next/cache/next-babel-loader/content-v2/sha512/5a/6e/7cc68c53240f1a840f9f04ff5cefd59363d9c1d137a41acf6e4da03e511cb29ccb7333e15ddd963e3aa87912fd7219af8e9269a3ac775f78676ee86bd64e +0 -1
  252. package/.next/cache/next-babel-loader/content-v2/sha512/5a/95/9be5303b3e4f91ae70d22ec55107edea9b70fb5ecd41a4545c4024815a3b192adeb6ec5e7ae76092e3f7feac0284263db32d7769b59cdb9f6eb64104fbdc +0 -1
  253. package/.next/cache/next-babel-loader/content-v2/sha512/5a/a4/7f73be745a3a87f5a91b96ea80d07bc0533277fd2094fd1454ecd2289d2d862153669a480de88bf2d6af8c8d774077ffdbc1be4c46ca5d4b6bc0d90c53c4 +0 -1
  254. package/.next/cache/next-babel-loader/content-v2/sha512/5a/a6/d5f8b97f4c4f31a7572a711bce28cf259098c21b00848b2cce4471fd56e94d79b36bdf589b85ed97abaf47b37b52cc3913796399ce043a9e9a49f80832e0 +0 -1
  255. package/.next/cache/next-babel-loader/content-v2/sha512/5b/01/5b9b30fbf8675d2b1f4cc4feb16e18692f6b5d70f617cb547cdc62dd67701853a9fc23852403f622a72f4bca0afa0db8aaf410b71a9a15c0aa05cb6f6eeb +0 -1
  256. package/.next/cache/next-babel-loader/content-v2/sha512/5b/93/e3fbfe2728e1651ca08c93c082f3ed615d8052558f8fa299a175b1363d6c8e793f4036d6cb458bef73fdee9b1ac080c3fdb938e7bb2cae19c34fca0211db +0 -1
  257. package/.next/cache/next-babel-loader/content-v2/sha512/5b/9d/f5b071c6c9e251486a33016c96fd0e86d5f06ece9ff682049c183ad29fd31f715933303bab493073f8cc653a60cc34d0b5ba7ec359e69ca58664d81c24ef +0 -1
  258. package/.next/cache/next-babel-loader/content-v2/sha512/5b/e2/598d769b6f9ce48ed1bd8207cf1545d83e001e41f3c292cd6e694309a3eb7bd1bbec190c9ee4686730a33cfb980f388bac01da28acf2350eb82a7f59d5ed +0 -1
  259. package/.next/cache/next-babel-loader/content-v2/sha512/5c/27/4724a46f7a197ed00f7541bc26262813e841843961d45addfa6641a9663638fe6cde71859040b4ab490c30f97c994405b421b479ad3c544b0d46118b7376 +0 -1
  260. package/.next/cache/next-babel-loader/content-v2/sha512/5c/4c/d72ea4da7fdd9dcd53a16369cc2582e8ae4ab53bf6182937585d9eb31c36962daae8451363cf06839bb283663cb1dfb28e7a7d2f062f5681557c5eb1622b +0 -1
  261. package/.next/cache/next-babel-loader/content-v2/sha512/5c/a5/6559955ece4bc63969ddcc04b02635ffb8dc97768d506fc9ff32640f31ef5fb355b90bb72bdc68ed284645731baa2ca3266069e6d679b83e1aa6fc5db1d6 +0 -1
  262. package/.next/cache/next-babel-loader/content-v2/sha512/5d/18/b88d12ed7f4ba286ad0d87924ea95dcd83118ed7637c10242fffaa426cbdbdc3dcbe585fb8a4ee2f94663ed3754fbb5b210a33acab3478f1ebdf90499822 +0 -1
  263. package/.next/cache/next-babel-loader/content-v2/sha512/5e/0b/3520355c9d37ef2955708b35fa1f4745fb8b4fa48c891050b90f6064541f540fb5f5ce094c93e6adbb8b505aa77a23ecb96ca1a70cd0b63f4ee3e337dabc +0 -1
  264. package/.next/cache/next-babel-loader/content-v2/sha512/5e/6a/5ae81347b55ead32e86e07674b045370341e0d4777bd328988cb441bf7bb8a8950ff34dc0f100e8df01b9958dfa2b45617845c930342838e979d4ed4b1fd +0 -1
  265. package/.next/cache/next-babel-loader/content-v2/sha512/5e/8f/0643f3c54653802a0db1506032968345ff91ceeb3e97deb46dc005f59a0125720e37f97b2ef7fbde6340ba1b728b6ddbe926b81f3dd65f92f6ad24833a7a +0 -1
  266. package/.next/cache/next-babel-loader/content-v2/sha512/5e/e3/f15683bd6f0fb005ef89d2aa35873a34e76355ca89ae667caf06de777f07917e7820ca13af31a29bc9c6a6aac773427652570625109ed3489a1b636d62e1 +0 -1
  267. package/.next/cache/next-babel-loader/content-v2/sha512/60/1d/3505d4044dbfcbd19ea6e493da6cc5562a0221593bbb85c3a3395bd4c544d951856a34c741f01dafd5c38348a463f3ac49220bb3e1016327f85a0a49b301 +0 -1
  268. package/.next/cache/next-babel-loader/content-v2/sha512/61/cc/1e37a56ff07d9808c83c49b40af671e84d9b4ef0b59615c7f75c28479333784605492c8763481208a0a82c6f933644fb166224f4e64e806aa5fd7fc97beb +0 -1
  269. package/.next/cache/next-babel-loader/content-v2/sha512/62/c0/f172ad0c53289b7fa2ea4b792a3f48b586849da5dd3d00b3054ea2555b6e3855f6bebfe8d09b702ff0e2a276f676acaab23294cab304ba29ba858b29e08f +0 -1
  270. package/.next/cache/next-babel-loader/content-v2/sha512/65/34/f4ef718dace7966d0da464109a3a99879da398782b8ec13f94d62e474f9933ab22d774fd42a09fe9ef8268957c5ba77e6c0649ac39c22eb2bb120e4ed641 +0 -1
  271. package/.next/cache/next-babel-loader/content-v2/sha512/65/92/bcc47ac56f87afdc096314a3acfefb1123edff7070adcea67d62348001eda39f1555ca2e086924ebec613c57eda4a95e0cedffad6c820516d9814123fc1a +0 -1
  272. package/.next/cache/next-babel-loader/content-v2/sha512/66/c1/95b8fd29451d9173d91adffa5b0e5cb793862b4e7cd53ec95ebb44b7e2c4a8f9ea75c34010308a3be3110a7f25cbd9d4789a3a0731969745f3a7bd5abaff +0 -1
  273. package/.next/cache/next-babel-loader/content-v2/sha512/67/ba/df1ce8807e260c36f7a2bd26837073aa6cc8a8dcdf322b440a86d9837b533064f497144047d997f82f1d1f298992b99ec226c07863843a4504395366f1a5 +0 -1
  274. package/.next/cache/next-babel-loader/content-v2/sha512/67/e6/daa65ad62094645f9793b807530082172183795298055f893852777871ea1c590f559236b63e1933e8e85bb53032832acbeded27922552045ea212fd2705 +0 -1
  275. package/.next/cache/next-babel-loader/content-v2/sha512/68/5e/b2b9337f74a340b8be6075d3a6e7bfbcbfb23da63d9631072dfbe12983f36d7f3612bdee7daac8083970e36ebfcbce361c579881b285389408bbca9f43d7 +0 -1
  276. package/.next/cache/next-babel-loader/content-v2/sha512/68/ac/7fd24d6a9fa4013b151db260cc91ec2d0123f8653a7165eee4fb60689e765a28622317d6fc82ed0990ad1bbe33bf6baf4e894ac74cd6a8fd798f2bed557c +0 -1
  277. package/.next/cache/next-babel-loader/content-v2/sha512/69/86/b8852a06a5a8657e7876c21e84413a1c5bf3827eb4a52097e3d4d787380b0189839c4961e9f1fe30c89533542e4f6dcd4efc15d1553fbe4a7affe3e79324 +0 -1
  278. package/.next/cache/next-babel-loader/content-v2/sha512/6a/ee/edf2fc98f51d9befc3b3a6132ff386fc0658d51d25d0c12a55e0a7c15b272b8bee706929a4fb6db720866f8e30fbcef02f52af90b8bdc75246d76f1b9ca0 +0 -1
  279. package/.next/cache/next-babel-loader/content-v2/sha512/6b/1f/1f6c8c6bdbf4681940caa0f6de3e94d96590aca0da7f4d96743258684fa8d6cc91e054ac5975272738fc4321c1ceb340a2abbd00c0fe7e9a386d128ef32c +0 -1
  280. package/.next/cache/next-babel-loader/content-v2/sha512/6b/eb/b3128afa83d8c9e6088dcd5de7aaf9d0188838bb3deb0d3b1481f2dae9b275487acd429958f38d14ee27daf5bcfc8ebd59944b669d7b7ab53950ba2d55d4 +0 -1
  281. package/.next/cache/next-babel-loader/content-v2/sha512/6c/42/3bb760caa4746ee856959d01af12c2edb9f420924d4bfcb70b9ee8078e66566069118c2598bded29f83750ff66e974ffc544e71b2ec8fa35fb0ce2326888 +0 -1
  282. package/.next/cache/next-babel-loader/content-v2/sha512/6d/a2/3fdd35b7cf9203d53a849cb4442d7d1f52cb451e3a64428ef4148093b6b3bc011b7a87623aeed208ea0e1cc2abe8cdadbd6f90f3b300aa53d36f38fd65e9 +0 -1
  283. package/.next/cache/next-babel-loader/content-v2/sha512/6d/c3/9fa0cc672274b1f3f85a4a88cb6d09af0a173906d15b44ec97223b4912651130e60432898445726c1274644df81ca462ea1604bcf1b79950918e33e011ba +0 -1
  284. package/.next/cache/next-babel-loader/content-v2/sha512/6e/88/e3734dfd8d08a823418ffb2d79a02ba946fabdfb8408c139b82abf251dc4817790878a73c929c27b778bf399bfc015ffbd98553b87d73899926e67bc3b13 +0 -1
  285. package/.next/cache/next-babel-loader/content-v2/sha512/6e/ee/e6e4a2b41907818ce42d003f477748a4ff380f39fedc529edff4098ed45bd97aae279bbdec9b1be0f3d2ac92e50cb410c7565c5bf94848cd549bdff81ab3 +0 -1
  286. package/.next/cache/next-babel-loader/content-v2/sha512/6f/06/9ce806865d681d0a86294806c0c684e04d5ad1578f4a10fda5ed3b9f1491d9d089c0058682112a2a80c64aae45edaf1bf31715867a7d9638ce1c0b30e4e6 +0 -1
  287. package/.next/cache/next-babel-loader/content-v2/sha512/71/3d/eb56843fd2e80ad904bf84e41f09af08aa67dace8798b52d592ef635a1b0973037fae9b5349080ba8edea6bb790153ea91bd203815e616bcf17a11c317ba +0 -1
  288. package/.next/cache/next-babel-loader/content-v2/sha512/72/91/ccbaef1ca261ba62746c6f20ac1dbca0186e6e3a6d19c4b2003b8078c6dd438c79f72751d3066257cdce5c10b920e963736ff013493655b57adcaa5ff3ad +0 -1
  289. package/.next/cache/next-babel-loader/content-v2/sha512/72/a2/3ed155c1f0af423f84041de5b20d65ba6c663d7f2023889a183df76f54d9aaa356438442af9c9c1a79515d0db28574a2cacefd364bba52e10c6e44f72e59 +0 -1
  290. package/.next/cache/next-babel-loader/content-v2/sha512/73/1d/f0958ae44992f2a4891557a290264d10661fc225e64cf9782bace89f29258f26238341935899a90126e22677cf0d978cb84b0fcac2675abf150cbec87e24 +0 -1
  291. package/.next/cache/next-babel-loader/content-v2/sha512/73/2c/ed398a5ca3de8277a5d0483327caf6b45f2c3a8cc002c4876c206ce6ed1ff3e964e93735427469daa8f71d383c38056235f48da6ab5862619a4a77308b1d +0 -1
  292. package/.next/cache/next-babel-loader/content-v2/sha512/73/90/c7fdb40d4dda9706e5777724bea6979044b4f24863d8bbd314eace686ef5aa4a549a1d09299818c0e131c30839ed4436ec0427f12ecac0ef4d7db5e7d186 +0 -1
  293. package/.next/cache/next-babel-loader/content-v2/sha512/73/fa/2f72e240cb7841c0a30ec325bea569b229973c09da550bfa7f4ed95e74ea87d838799cf333bc2be0055f88b5c713bcb985f4ab1c5c3373a78f966ddfb624 +0 -1
  294. package/.next/cache/next-babel-loader/content-v2/sha512/76/21/c572289a2db050147adc4e8f9630213e0bd2f81e694e930fac3d3966725f45f884d3382cdabe32b28a373b2989710e0cbe005e7aa182c640a9cd5a96d156 +0 -1
  295. package/.next/cache/next-babel-loader/content-v2/sha512/76/54/959168ffef42435735be9748b469c7c53ed2bed55bfa1327fca0c3d649ddd4a0883a0832a68050956e02494d35897a5a2762b679b1da9e50244ef00b3637 +0 -1
  296. package/.next/cache/next-babel-loader/content-v2/sha512/76/7d/6c1294c789025cef7b86b08c1ec9cf280966b579d6d941d2e9c2ea5ae209c05fdf2108ae5f96de02cfd34058c6e98a0daf56ce69f27a5209458caf3b5942 +0 -1
  297. package/.next/cache/next-babel-loader/content-v2/sha512/76/83/ece58b717e753712aedf07a55405f26d457d144d0496b19f4ca0548d7193632dc7cb23a8c487bba944970dde89b014a0a0265b3750ae7ed62673cae29890 +0 -1
  298. package/.next/cache/next-babel-loader/content-v2/sha512/77/3e/7c4307f1e6f944ff1a7bfcdc60cfd700a959d1d59145977ac80185910523645e0a8d8485b1ab87408bd6605365e393fd5ddaecf51cf93232aac69d59f90f +0 -1
  299. package/.next/cache/next-babel-loader/content-v2/sha512/77/64/e68ea7a01cd5440886d9a894948e9e525b89373b1e341ca72428eaafddc166aa7061451b954142783f6c8b1e7b5d39e72178edbbd37288690fc1777a9a2c +0 -1
  300. package/.next/cache/next-babel-loader/content-v2/sha512/77/94/2012df62ab8078f25212bd3495d8294a7c7df07c99cba3ea43e2ce0099558630e00b3affe3de59710a9678f499e8f202b69e6ad7e74b4fecac72ba8d58db +0 -1
  301. package/.next/cache/next-babel-loader/content-v2/sha512/77/f3/99487c523ec4f2eb672ea8a6abd08268ddcd5b33e6249d8719041d7f98195542823b14c98d82afce1eca1afc963fd2134266c422168011a6ad9963557ba8 +0 -1
  302. package/.next/cache/next-babel-loader/content-v2/sha512/78/5e/66f7d46854f544267ff94314586ecd57b17e035e008515e06dc645a37180468071098067b828699811d8b5c039b63d8814b3748ec7f55a766b7c67662591 +0 -1
  303. package/.next/cache/next-babel-loader/content-v2/sha512/79/e7/316eeac074bcdf96a173c7ae83f223bf3458d82ea48f1019dc9716fa11f896d1771afc4e8251f22dbd3e424c45288b62ea5e52018a7bfcabc51fcb7aa680 +0 -1
  304. package/.next/cache/next-babel-loader/content-v2/sha512/79/f4/223d81b07a9716ce77cfac898d0209269be5546b10c55d4328bdd1649b4bb374e9554a1c4b3fa260bdd005b70972d5ac9233b3293b85279590f00fe57573 +0 -1
  305. package/.next/cache/next-babel-loader/content-v2/sha512/7b/4e/9817aae36f29ba6d890ae906cb8068c1e92bb0b0b322d1a3bf1eb0ffb07aaaabf3ef13b0804ce2c645353b7b41871448bcd78a5283779998e19304db27e7 +0 -1
  306. package/.next/cache/next-babel-loader/content-v2/sha512/7c/03/2d05318c32efde8c5f66ed1e4d62dcf6d039a4be83dc4cc4add525359d337cb41465db44942df686b2096fd4f63e9329079373d39fd5b157b99e9d1dd939 +0 -1
  307. package/.next/cache/next-babel-loader/content-v2/sha512/7c/8b/de3242d6afc4ce99416136904c38f5b95a41494af7128b8360cbfd5feaf80524b5916ae368d99b0b9481de69f6627eb773086a8ac466132d47b9c994f658 +0 -1
  308. package/.next/cache/next-babel-loader/content-v2/sha512/7c/b4/bff851952f97160ff4a89633c075afe373cac7238d01d2ba78ecd2e7a13977068f58a8ef714fd6700583269b4957b8d07ae9d2d68b4f3ea409892ac3a9ca +0 -1
  309. package/.next/cache/next-babel-loader/content-v2/sha512/7c/d7/15fdb6f8f61999f382e5fc108ffaf65e9ef5a45816305026cb558f7012c7051505245641a3433ccb06d1949d50eacfd86eb0b2512b18cc10441c0c2210a6 +0 -1
  310. package/.next/cache/next-babel-loader/content-v2/sha512/7c/e9/20bddf6e6c0ef077cd3ff4ed6cd5e5f9f182e433aadfbad480e6b597077d56d07fc8d4f17b1009ecdcf520c91ed12fcc0adaa85f5b25c26d0aba3accb2fc +0 -1
  311. package/.next/cache/next-babel-loader/content-v2/sha512/7d/18/ffccd64e2a31bc666371409746172420a6b17417096375dee56c5d2f729b0675045c77e46505d3958ff917e882d7612f4eed81d079cc119130f39f4efbe1 +0 -1
  312. package/.next/cache/next-babel-loader/content-v2/sha512/7d/78/dbf63428036eaeedfedbcee1084a9afa9029d2bf2d28879f300fbd26d0889d8e26904d7f898d9e6cadb2ea773f85dc1970a8bc95d637278f50934bc26894 +0 -1
  313. package/.next/cache/next-babel-loader/content-v2/sha512/7d/9a/0feb409999ebc22d9ac648aa0fcc80cdd084ea8ea1ba432d6e1f03def9adb3e63db2d6f148ed262bfa9fd1b52b9b6b268b1df04341ded04c04e7a5551cb4 +0 -1
  314. package/.next/cache/next-babel-loader/content-v2/sha512/7d/e1/b43e11bea3f16f96f9fc5504674cb52509dfc564116603dbefad1841168c130b6479f3f697d58a963474f43c97c49fc2e16c9a6466a3caf4956b8d9e88e5 +0 -1
  315. package/.next/cache/next-babel-loader/content-v2/sha512/7e/70/5b7f269d6cc98d249ffc7c8bd6347c88ab6a68e7fce4df187a55e5e7f97504e42ba9409afb33c11ecaa892c1e3dac08334045bc8fe74e8a2140dbfd7e0e6 +0 -1
  316. package/.next/cache/next-babel-loader/content-v2/sha512/7f/17/6e2cb5642d7bff31311ddbe19e637d87cc14330923c93c2d8c1e56a6ccffed9ae2b6222a97ef3ad827d12f39bd84c05461531f074a5b8013c839ff2c07e3 +0 -1
  317. package/.next/cache/next-babel-loader/content-v2/sha512/7f/84/7a315b21ba975aded6e5159a25380d9f4172942e3a986c899253223a7a48ee20078a6a795e229517de7a3f2b51300e1026cf05becc0ff60963b7b47416be +0 -1
  318. package/.next/cache/next-babel-loader/content-v2/sha512/80/c4/5f1f680c58286932aedef65486a16511107b8e7d9c06af6a306dbaa77b0f882111b39026f074cd27e3c42f4d34797c7386d45cead1b856db728254438ed7 +0 -1
  319. package/.next/cache/next-babel-loader/content-v2/sha512/81/af/b31bab2be49f115dcd2f738bec747162ac347554003a447865910719c8f91ff3c08acdddeab9303bd5d602ab91c7bebcc52803d0927b686e191ce4c60dca +0 -1
  320. package/.next/cache/next-babel-loader/content-v2/sha512/81/d8/a5d8fa37ec2e56253d8f08a3dcc342d59408ff3e8d7221e588a8eb4983c9af192153c6c773857996a4b9b432b753d661ddd5b15e00e7a55f375f2bae10ae +0 -1
  321. package/.next/cache/next-babel-loader/content-v2/sha512/81/f2/62ab09f0c55893deeb36eb2bad9684a9bb544ce5080a95d284aa473ac7c2af2c56f4f069821a58b4c1b43d49fbf7dbb42a2d091e2737bc9a19b6f3c9bdf9 +0 -1
  322. package/.next/cache/next-babel-loader/content-v2/sha512/82/f3/96f15f5c21c3659be35016ebb2c090e8b653c0257a5a66febbca93941fd5988e63a4569d015459e14e7dd739b0c597d473039e7b7e119b146fc7b691cb40 +0 -1
  323. package/.next/cache/next-babel-loader/content-v2/sha512/83/57/7f791c94055bb091c882949280a881ab5333d3863820a1ad369f1167e3ebf6b5e18dccd2c0dbe12a7aebdaf4c592f11dabab18b5988dd731a5cfe4796dfc +0 -1
  324. package/.next/cache/next-babel-loader/content-v2/sha512/83/c3/c5db4c9c2b414989acbb6602177000eaf5dc8f26700d2a73234b23807b9cce607b953a00544833b7ea81326291baaf9630222198aa5e79ec91f6ae4f0d47 +0 -1
  325. package/.next/cache/next-babel-loader/content-v2/sha512/84/eb/7ecf232da8fce3e1052447ce1280321784ec78ff14c31699260f8858f87231239a035ed74ba7ed3d0bdcfc42ef3665f260dc51ba0b95dbb879d1a0835563 +0 -1
  326. package/.next/cache/next-babel-loader/content-v2/sha512/85/7d/2d5814ac102e7d3b0bbdd51f9a1081bf61b7543116658d4d20012281609c1bfa840ad200e5e91a3b05b3aa78d805e1567895f62eb8d7fca9694f1e89787b +0 -1
  327. package/.next/cache/next-babel-loader/content-v2/sha512/86/05/759d5d1c2cb03d70b4a14dda389257f77515cd0ac87531b789edea84865e74352a9414ba7c8f5b15d31ae72dbdc42467659d58aaba63090dd6db5595c46e +0 -1
  328. package/.next/cache/next-babel-loader/content-v2/sha512/86/33/cf8fb5b31a6eaa1838ad293f574aa697d7a2b442b90973f06c7c82c364effef00536e5e3b58261dd9313fcc74cdfbc4fdea33c32f69295e6505b42651fef +0 -1
  329. package/.next/cache/next-babel-loader/content-v2/sha512/86/95/02f3b1d6d1f9a17e2c0faa7eaee39ef1e59b0b6f566b9b5bc51d41341239349ef91eb1ee7ea12de4af7f724dfdf4853a6f33aeac5be7794cc96399c44743 +0 -1
  330. package/.next/cache/next-babel-loader/content-v2/sha512/88/62/b611075f91c538293542cc3335c87f527924a729ba7251248bd5e5c3bb431c8ece4821fc30784e5a47f82bc35f73760c0ef5be58c46477e409273c8694a6 +0 -1
  331. package/.next/cache/next-babel-loader/content-v2/sha512/88/78/2318c51f4898f7a78a196c81dd1cda9fb26cb23bb03effd591613d74bf0304d583148c6713921b55d95b1a9022d240355cab75e489e9772756bac6f7566c +0 -1
  332. package/.next/cache/next-babel-loader/content-v2/sha512/88/ed/81b5a6a99b195424c88151286816dfdcf33e1f647e9074c5e67b4ed7617ca972fc1c2638fc0bf35e6328663b2a63828be899f57b20c1188c0c07061a40cf +0 -1
  333. package/.next/cache/next-babel-loader/content-v2/sha512/89/5c/d078ff7ef3ed5aca015124ff89484f509064130a7ffab378bc14299e4226f8845d9f7c31e5af617dfd94e1e821184488a3f08ac223fd8c31528afbd5b527 +0 -1
  334. package/.next/cache/next-babel-loader/content-v2/sha512/89/8e/af626dff97d45d45946e130223dcd8a71afbf8617752b30be85d4f7fb7dd610fd00221b19f2fc27de045697454dd9847a198ef8b74592a541095796bbdb8 +0 -1
  335. package/.next/cache/next-babel-loader/content-v2/sha512/89/e6/825273fd81e84ef0036df57000002ebadb6705bd3b89ab7ac51c3c0aebfe35c8b6bf02347cfc5532f6367b0c037562ef4f506d393a0911f8ae085b3f8b6d +0 -1
  336. package/.next/cache/next-babel-loader/content-v2/sha512/8b/45/49e955bc7b27014212c563b62f76dd0fc9956dcabe0a4510f3afb2d059603a25f612ac4944e9d1bb1b3043f4320c705d64a94ee0761804be234f38fea2be +0 -1
  337. package/.next/cache/next-babel-loader/content-v2/sha512/8c/25/f90ef4f34dd5dd217ed9ff38fe57984c7073529264050179a3011879b209b346dfc4a8a47a1d7d659c5746ef827822c10db1d33e7b0fbe620b631186bc7a +0 -1
  338. package/.next/cache/next-babel-loader/content-v2/sha512/8c/4a/8d72a0d646b9d98269679a7258470f230c6bb5f9773ffa6913ff094c57266840a8b40a35e5a4baf0ac3ede44a18b2aec4909c7a712a5b720151d34781c55 +0 -1
  339. package/.next/cache/next-babel-loader/content-v2/sha512/8c/fb/ee82a1d2c20d609bddb2ea3dbae13b000ef73954d06366d3fed89e4ca70a845f19985d0e9153d1067a2d2611e181ce5ded375182a8326874d1a9a3f1bc17 +0 -1
  340. package/.next/cache/next-babel-loader/content-v2/sha512/8e/52/fa189b5813aa7b667e5c98ef2c4ea0f8ff8a84a44a1e6bceb536ad51c535b710a2ea1aee277e231890c9fc31a804c28adeb5ebc8fcf96370d15939614f66 +0 -1
  341. package/.next/cache/next-babel-loader/content-v2/sha512/8e/68/482ec84b876acec62d312334aea0dbe29b2756f07938c4b835a52469971e72c4d0dbb81326a599e6fdb939d3c38cdf79cd30c96635c215fccd77569e6fd7 +0 -1
  342. package/.next/cache/next-babel-loader/content-v2/sha512/8e/85/7766b606e140606478b5a596ad8f423f564c201d759926b15d5ecdeaf042a597b82e744421793ed175cd6a4e8ae5d0e601c2367ae1bce15ff80fbb4e9aa4 +0 -1
  343. package/.next/cache/next-babel-loader/content-v2/sha512/90/3c/ecc921833dedadfd73bcb34ea9dd9c3c08e448e00b91907e3949ff757bdcb2f90d9a86cd7ac424dfc8e2d5561551d228fbfaceb67739740b2a0b00dc863a +0 -1
  344. package/.next/cache/next-babel-loader/content-v2/sha512/93/94/51e8f8edf7fbc1f2bfc02b82fff619e6faf7f457e08099b13e94b83d190bf6c8805d641339aef4e890905f9f1b67badcdc3fda79125782beed36c01997fc +0 -1
  345. package/.next/cache/next-babel-loader/content-v2/sha512/93/dc/afef4f7e83dceb21d71abfb99353eedf70c84d895a8916e68fe9540598d2bea74e72322ecc541ef907232c450c7f55e747c0bf6e2342ca916e37a4a2b5d8 +0 -1
  346. package/.next/cache/next-babel-loader/content-v2/sha512/94/7f/90f1fdfa5efd6312e18efed3f0dfdff32d5237176c9d786321d67a079a2b9403838bdc63de460d33f7a2f750fee7d2ffc9c54d541633b8c486757a1d9c48 +0 -1
  347. package/.next/cache/next-babel-loader/content-v2/sha512/95/c2/dd1ba2675aa55d2354580826664c7eb845f82a4888497bb2352502d2d8e1e7a8a619c96559b2e715d6169dc989e4cb9094ca9bf7355064a520231b985fee +0 -1
  348. package/.next/cache/next-babel-loader/content-v2/sha512/96/69/e727fe95fa130dbd6066a28f86faf7e78c263418aa44af195f6dc382385aca773143a0c5c5ffbda99fe0aad1ede405bd0967e464a6a1d4584e4803aae487 +0 -1
  349. package/.next/cache/next-babel-loader/content-v2/sha512/96/a1/6b06518f49a39483bc53acb90d269a38c228a3fa1d3b143049652005bd45d3551c97ac773fd2646c98d0fb4dba1a834aec30399621ddade4a1f296d4d4ae +0 -1
  350. package/.next/cache/next-babel-loader/content-v2/sha512/97/62/ad7abb08451752a5239f45416ec17002190ad9c0f9bfcee50f1599e9c1c838abb9d055db857f794b8a206913e1c781429b6cb5bd6065556bc8bc81d1a055 +0 -1
  351. package/.next/cache/next-babel-loader/content-v2/sha512/98/06/c842c62ee631466f68a574c0ffe5de676a39bde2812a50fe28eee6a2063c55bbb3c1347c286b654c227e8a35cb5da7d645f120dd069bc00b51123259b0d8 +0 -1
  352. package/.next/cache/next-babel-loader/content-v2/sha512/98/6d/2bcbf199dc5fef160ce1aa1fe3fb6a9aaa10e2ef147ab7c8b14a250be5d7fff9a93676a6752a19c28e372b65efbabb477f690fa28fe74f3b7258a9fa36ab +0 -1
  353. package/.next/cache/next-babel-loader/content-v2/sha512/98/f4/170ead8162d6c6a5a41c9c1457cea4720f7c7e0757aeed2285764854103a108a1ccd08bb0d7bcc02bb7e38517eb4df09c723ceffa1a98132b39879b47b3e +0 -1
  354. package/.next/cache/next-babel-loader/content-v2/sha512/9b/1a/77e8e0b00e7acebc85e9ac61cc5dcce571c041f562ba0dd0a84569ad0cb40229e0e37e100dca26beefda8c56717fd42afb28b679afd6f7120133d0808780 +0 -1
  355. package/.next/cache/next-babel-loader/content-v2/sha512/9b/49/5e2517e4129bccd654ef3d498b858572ee0727edb4b6474e3e4bb5c47d51d4033f3ae0945149aa73aa97e330e199968de1bed85cc08dbfd595114ff25f9c +0 -1
  356. package/.next/cache/next-babel-loader/content-v2/sha512/9c/1c/500364d99af4c1d7638d63a68315df4600f7ed453173f4c5420eafe47388862e36b9bf371cd73963d7ad491c0c800679905f85815b5726a791ee14da3da0 +0 -1
  357. package/.next/cache/next-babel-loader/content-v2/sha512/9c/63/077864c89419015f6c244b7334590de18fa48168bcd9b203cfe934aa1b01369204aa49cac01013b54cc6757a515514026d27b9112692e59c6c89e279c5e3 +0 -1
  358. package/.next/cache/next-babel-loader/content-v2/sha512/9c/dc/88aea0e6ac4cb6cccfe15ed7b3cf3edbcc2a7bbd8074e5dd8ea7c0883f51227fa1d37fec8ec86ce34fe425e31e5f5b59f019983785521ff094251badda49 +0 -1
  359. package/.next/cache/next-babel-loader/content-v2/sha512/9c/e7/e6f2e8f77a4c47bc51d4be847f9aba6024da6c59cb87c3d6b12c5d99b12fa9c3becc18b00b6bf1d709a65ffff991e57e26b0fe2d892fe303104f347111f1 +0 -1
  360. package/.next/cache/next-babel-loader/content-v2/sha512/9c/ec/149320c84558ff142d874201a6855a267dad56fc5dd46b6a19b89a5de46d6ad4fbbb0632a3937ebd6b3924092d9fd78f112d65ec3c483f4faeef12fb2646 +0 -1
  361. package/.next/cache/next-babel-loader/content-v2/sha512/9e/91/8cf88a0e9e42362da2191b45c2e47f42d60b2bee08cbdcdf8554ae69e29e539922edd1df6399d5d39c70fdac3ee634a746d5ee1a3057f7a39671b5b602d2 +0 -1
  362. package/.next/cache/next-babel-loader/content-v2/sha512/9e/aa/e239158b95cd2591fe2266fcdaf1aaee446e324f84528c8775586fb387fcb706ccbfb5450f7d5ae9720eee32168e7c661508fa18f3039245d2758c062721 +0 -1
  363. package/.next/cache/next-babel-loader/content-v2/sha512/a1/30/8b0e5aed1299cbfe5c2a6e9bee9de1e2c270cc4411b3416e4a63c9a228f6d491610cfae16c2e27d8e1a447106bcfd370853cc1ce2d8fc83aef630ff3bade +0 -1
  364. package/.next/cache/next-babel-loader/content-v2/sha512/a1/ce/4c60480a95b30372f36a6cd1f499782b384aa7f808d34fa9d6664ac5eddd21d4e4a50e021af0f51b8a63ce50a893fd88bed94271455698db66db00a5ce13 +0 -1
  365. package/.next/cache/next-babel-loader/content-v2/sha512/a3/75/d240094d7cdeb503a1e9231c2b4ab671eb8f87af2d67c10c8113fd190ffdca0b1875bed1e1b911d4cfe4f7aa63a78ef7e18a234a93d3588e3cba48fb07a0 +0 -1
  366. package/.next/cache/next-babel-loader/content-v2/sha512/a4/81/4779e871841bdb92f6324aab7d87880609b27dd82cc393911a30fffe8a9ef5e2b9c93920272844311b731a2bcb61eb6c6bdafe35b66da5df6c9b5024a78f +0 -1
  367. package/.next/cache/next-babel-loader/content-v2/sha512/a4/a7/7a82109e4ca9108decec8e1f3cd5832d3bc3a284c9ca1bd21c87814481668034be0abb599530cfbbc7ebc746ed5e3692cd90df62e57d2328e0b743791cfb +0 -1
  368. package/.next/cache/next-babel-loader/content-v2/sha512/a5/10/1292d382201ed3a55e250dcdd5ec5e32349e6961a1e2ae0fcc6c5f3d755b443741dd2ed3dd66e4563a09d2be95a86fc25e98907728733ebff3fa90fdcf74 +0 -1
  369. package/.next/cache/next-babel-loader/content-v2/sha512/a6/82/cb7864a1d818267d71e28a3558d2f3bc100c0f9cbc721f66fb9eadcebde1e83183187c61f54eabcc2b1d35e377509233a280847f741ff591d93a91480fbc +0 -1
  370. package/.next/cache/next-babel-loader/content-v2/sha512/a6/85/92d95d8aa980b1bd74f64ac6d2fcfcbec66826ee8b5bd30111363e3f90ce391a02597cba4a86af14f3d41e86a064ba4bc114b2eb2334a435992bcb9721b4 +0 -1
  371. package/.next/cache/next-babel-loader/content-v2/sha512/a8/83/c12710da0056276af5d35b6284c8288ca8587af0484fa83dd521de77fffdf7282b3f46c16fd06c0343b3bb2f53dd363aeafa3bd18430611f1a2b253ac29f +0 -1
  372. package/.next/cache/next-babel-loader/content-v2/sha512/a8/f7/27eac8a9ce84cced2a81e39e15051fe3f321a9b03ec110ba92fb640ae13061d723775eee2aa9d0f2747ac8863a6c1531bc54a9667f83c556450e69dc0217 +0 -1
  373. package/.next/cache/next-babel-loader/content-v2/sha512/a9/d3/c53ecdf70eb6f14aa403236150769123a14d2f64549be9fad62c6c557f2ff4fc1b65290c7805465101e912f7bc297b9a6e106f7fae568b6a8f19081fe0a3 +0 -1
  374. package/.next/cache/next-babel-loader/content-v2/sha512/a9/f5/bf26bd6034bd0f0098342e89feb6d2ff35e33a2ddde716285d2f9c3f9938a5efd5960c8d8435d34d28f3455c79e9fc352afb1d3cef4c45d001fcd70ef154 +0 -1
  375. package/.next/cache/next-babel-loader/content-v2/sha512/aa/8a/58f8cf378ce3731167c15e102a1e653d37251c62c87f15cc64a0f9fecd369c06a512f15687d5049ab7459ec99a89a1e5dc3d768dab62ed5feeb37b8676ef +0 -1
  376. package/.next/cache/next-babel-loader/content-v2/sha512/aa/c0/0b8d77dd239073a499180ec97c4358b76d240ad0024d2cfe7fc8ad32b87e1abbe0fabdcdd25c832074e42a231c3ee7dd2ab6870ae53d7286fe779b41b32a +0 -1
  377. package/.next/cache/next-babel-loader/content-v2/sha512/aa/d6/e2fb2fca40897085f912b68290820bef1c71da50cb2a384b4357e288c15a16675f42cf31da2f3d04ab5084df9beb7cfd561da34553885bea69e0e00bad19 +0 -1
  378. package/.next/cache/next-babel-loader/content-v2/sha512/aa/fa/edf03f6a671d55f77dd0bd6ec7fe9c6f9c1ecf340042e9bc24e387b31207fc45dbea537a860911aae75aef1da77a925e3c91bac8c76d17e0d58fd1f3c6c0 +0 -1
  379. package/.next/cache/next-babel-loader/content-v2/sha512/ab/2f/b63744977ba1a23498758ce84f4c54b78058f70b03d1888d4ec7ef19171f3057fd2c8a9ea8c913f44ddb7cf1df98c7050b48a9eb418705e1c785b0bfa5e9 +0 -1
  380. package/.next/cache/next-babel-loader/content-v2/sha512/ac/00/6202f312a959aac60652806cc54bfce9fbb81586edf1d908355d3763452e11468e3ef8796d31f50d126ebf9238ff705fff65cec3ee7127352dcc612535a6 +0 -1
  381. package/.next/cache/next-babel-loader/content-v2/sha512/ad/99/fdd6dac6b6228f14f3a784b225182a4cbfe2020ab7590e6da9ad177539cbef63e7566386bc22cdd565b1983f2866c144c19017ae5f3db13401b06636c836 +0 -1
  382. package/.next/cache/next-babel-loader/content-v2/sha512/af/67/61aa7f72bf89d7ad2410aa58f8717e09cf98e48ccac65a59f570b6bf3c5f31cf7ce6a9006cfff0db9d9b3439be246528172430f82f48b442aa9665280334 +0 -1
  383. package/.next/cache/next-babel-loader/content-v2/sha512/af/75/fcdcce8d3f0e80eac083dd3c3041e536582c50a5b70b1b8d8eea68ca6ebafcf19a91f33ffa7f6a55bc4d71073ddf485f314216a43afd5068288e003e6c30 +0 -1
  384. package/.next/cache/next-babel-loader/content-v2/sha512/af/e4/0461e9599a4631d21588cda774f0253b931dcd280a0b88a8b8b31b684441a17acfa8a36ca42aabd6c0b497081c5f75a486c4b08170884c26578ad684de88 +0 -1
  385. package/.next/cache/next-babel-loader/content-v2/sha512/b0/69/e9abe00219c2dd041faa30f585f8e00b298991746da9a3f9b7ff1d158f9427b743778f19a18a7c324fc3ceced146421a1045ed7f855678929234b1cf264f +0 -1
  386. package/.next/cache/next-babel-loader/content-v2/sha512/b0/cd/29aa6d59b13c400425f4adb77d1d452772f1edca392edee8063c73c276a87d228d0e832190d0e9816d896fdf413a3854e4b2f08f4e17b2edacd40eeea30a +0 -1
  387. package/.next/cache/next-babel-loader/content-v2/sha512/b1/37/fd174d0fda5d48240e53be0c463f766c5b25cef6e139501da517e0139658ab9350131ad498b00743350eeef70cd240a271716307c22bfe41300c19dd676c +0 -1
  388. package/.next/cache/next-babel-loader/content-v2/sha512/b2/b3/eeb0cada5f67c400798a0ae1cb52846d4530001ffa8cc25883555316f054e6b3fa8abc5e326f3c5c75a24aefa1dea1f4db03d13e3b9a28aab266aaad87ff +0 -1
  389. package/.next/cache/next-babel-loader/content-v2/sha512/b2/d3/879ca309d085b5156621183f987abd2ae6f0d5c04545c8ef21010f59593e9ef75512aa3ad3b5f5294d8d3bce1660fe896ab68ba5d6185d082b468c959aa5 +0 -1
  390. package/.next/cache/next-babel-loader/content-v2/sha512/b3/3b/4d5a075d0be827c443e59c91fcb8b774c6c16e3ed8aaa1b40645e7b7a6e517764aadba36d91b326a61f2bdcc0757c0a74a71e6e392552a1e03821cdf9052 +0 -1
  391. package/.next/cache/next-babel-loader/content-v2/sha512/b3/db/dfd05ef37cd4039db060545724b1e7bfc8a06ce73ff54e505cd749375fc5e8b30864021766143c38036b0bac31936d027a74f92cd1f08f0708f88a85fddc +0 -1
  392. package/.next/cache/next-babel-loader/content-v2/sha512/b4/12/03696fb9785c74c77bd4aa22e0ba7ba833f773ebae22722b1b0e8f218d6a134041bd303c6ec1764fc9408dbbc182d2a49cb712e36b3a0d4b05a791c6d97b +0 -1
  393. package/.next/cache/next-babel-loader/content-v2/sha512/b4/df/e8b87f04be3297fdeab8fd5907f5fae37022e3cf8c7e2f2853299bd2cb7e84c1a427f7fe4d0f2410face1712e6936f28c09addbed85916747451df605248 +0 -1
  394. package/.next/cache/next-babel-loader/content-v2/sha512/b5/74/5b5075ef633d45a64b7e213a84c9105155fbe6d50dbcef5547975f1a7d1763eae1bc3da62c091823c2ca14033fd1b9926ebc048d60851347c4d42c7f53d6 +0 -1
  395. package/.next/cache/next-babel-loader/content-v2/sha512/b6/1a/a0202fb926896a4a3e078c0787924a6a042ce65bcdef6d2f6f363d7cdff10b69fefa36094666870aa9c881766c597f88879c2a389780574927c4662ddb26 +0 -1
  396. package/.next/cache/next-babel-loader/content-v2/sha512/b6/39/03853d7b3dc52254df263c3e87998d5fd2305526f8ab339707fd3ea0a4fc45523339f468583aca9e0773cd8a2007c60c8ddfa9d5baa3b90d9e02fef332c3 +0 -1
  397. package/.next/cache/next-babel-loader/content-v2/sha512/b7/9c/ac9c39cdf64abcf63370860c34cfe1efd8d42d84c4b0f3ba6af37cee02b2d15e9a1d201a71435929ab90966fed9a2b37e54bfc86f017178b39f8786c0571 +0 -1
  398. package/.next/cache/next-babel-loader/content-v2/sha512/b7/b2/217beb9b66056f0d42939ace5d43ebf6b27cdb9474aa78c189a656aef3ec54a563a75f0632e367b688b63186428e947e6faac3680be41d3a36e4f103b410 +0 -1
  399. package/.next/cache/next-babel-loader/content-v2/sha512/ba/08/47253fe366af4ed15fe4b25c616dd8f46104a645a2956dfd5110220b61137b9104f1ceb019ba0df9652db55e97d7800a3ad073d19f0c80af1337d574adc6 +0 -1
  400. package/.next/cache/next-babel-loader/content-v2/sha512/ba/17/828cdfae6056100f3088a0b3c3adf44d24cd7aa6b9d5d26490dee56d35642870116bdc3ffd9854d0ba4cf178b67afc74d48bc921fa1124d820a28d2aaa88 +0 -1
  401. package/.next/cache/next-babel-loader/content-v2/sha512/ba/59/ab5c260a28ff240190aa5207b0273053efc32b90774ab005706c4af9a3216eda96d2bc7e63eb4cfd09da65efc8e8c51c670d71bd81eaab39dba53835e97f +0 -1
  402. package/.next/cache/next-babel-loader/content-v2/sha512/ba/cf/8c6c9ec2874be03035d5da70f1ef97b3f03169f62c19e4e5ea8971de93444f5911588940aa2d6df6fc3214db3848a85f1b66c4d07a7e5c14724281f938a3 +0 -1
  403. package/.next/cache/next-babel-loader/content-v2/sha512/bc/6e/46cbcfe959fbab7c98834cf76a00777be7f0d875dd76d28e216aa35ca9a0acfd1c0661b09bdfb19c8f4b91ae69875f57f497ce207a9d8a55ba128c5eda22 +0 -1
  404. package/.next/cache/next-babel-loader/content-v2/sha512/bd/77/3489b3a2debc42a891c433ed60d24da2b1a14740a7891d60fd6df24d9e6b735db22a74993b024666560a14683f1b75446b376739a1b8da3f553797b7ea1f +0 -1
  405. package/.next/cache/next-babel-loader/content-v2/sha512/be/1e/09228aaa7894635450423349b8b3ab7eb69767aa725578745fa6dea9f89e0c36d9087a768d430febca9b2365d64be8a44d98bc7525de856100da1a6d3234 +0 -1
  406. package/.next/cache/next-babel-loader/content-v2/sha512/be/b3/9d38381cc77e7f7e64324368f315c8f523b4c42ec583dc182f0009585af6f2c9573c842aff06b693dc5a18814857820522d19a2768d2399df1f356518a6f +0 -1
  407. package/.next/cache/next-babel-loader/content-v2/sha512/c0/90/0447166c26a31ced1f0670289acec6ff74eff0052f0d6cf8e93ede9c599d880b1e40998e792b924ae5ea2547ca8f0a936d24c3db4b80c9d3f85d95c18281 +0 -1
  408. package/.next/cache/next-babel-loader/content-v2/sha512/c1/41/d75ca59802ea9476274ce72e8be202d576465e3bd26677ade1b049eb7449b6ff3bb9dac95d713c45cf90740efba0a09ea7b9ec9461667d1cac34862e205c +0 -1
  409. package/.next/cache/next-babel-loader/content-v2/sha512/c1/9a/a80912dac3aee1f405890d9ebe97df7b788824801361a40cee33ae24d30c074348592c0a3571fde3550ae223698eafaa4ff44e72f4aa857cd2cf47feb9f7 +0 -1
  410. package/.next/cache/next-babel-loader/content-v2/sha512/c2/e2/03c67ba80bbbb70cb785394521fc5aee7c3b03efa72289ebcb14f5a0bebbbb54e51abdce6c4568719bc4d14094c4d873b025b64de5545fa59cc465fac47b +0 -1
  411. package/.next/cache/next-babel-loader/content-v2/sha512/c3/53/951211b60541009dcc15653fd873fdb099e526ee3f5b6ccd4a2c62b16eecb24ae0391b7c43c1cb9b9ad513f327d5eef623863924c41b85d7e223b4c936dd +0 -1
  412. package/.next/cache/next-babel-loader/content-v2/sha512/c3/dc/f99661655c3ad674eb233b701f445037ddb66142e8f814d794cefdf66d93ea6d80d87a73bfc541873e36309e0cebfd6972cf2ec3cbe30a360fcda5402eaa +0 -1
  413. package/.next/cache/next-babel-loader/content-v2/sha512/c3/e3/4749868f019012dbed78739e0970f42ea128b578e7c3d31de5221315c005161c6788fa44d0c8cbea13dced1f96d3e653068410fa5c26097571b53a8bafb1 +0 -1
  414. package/.next/cache/next-babel-loader/content-v2/sha512/c4/0a/bc9e64625be6438a9d5dfb73687de22e4b98e5d814ecb1726f6d5d9e05e0623a05e8826ac56dc29f32d68cbf790f1b7f89b43b3c2547f921dd8c0c91f934 +0 -1
  415. package/.next/cache/next-babel-loader/content-v2/sha512/c4/b3/4783a4965417cc6e149f85499b3bd8634229d30b189e1122b6a4253ad557c750cacda3bec89df38c889d75b862d9054486889d46da2a031b9c1eb33e8e22 +0 -1
  416. package/.next/cache/next-babel-loader/content-v2/sha512/c5/20/c8a74e6fbcb4e26902861cc914f3068d263606de323b403e16a380964ef15f2fdb64c5085605d4529ab0419421cdc60a9a832d3f98a6e0f9d18b7f4dbad1 +0 -1
  417. package/.next/cache/next-babel-loader/content-v2/sha512/c5/37/6568488409c41880d14330f1a3f4f7d23994dc5594b12600a99b47cd4fcc80ae753a45c32208b3f534d995e9bd44f5e2a001e8d3a2293e562e36ea0f3eff +0 -1
  418. package/.next/cache/next-babel-loader/content-v2/sha512/c6/05/d3b7453c55a6b13a51b85e80e6b6c747e06574ba25e406feb59478745dbbeff1bf0a7552ea386ec2ad9e45e4452e72efa611ce113f0581c01d16a6dc8309 +0 -1
  419. package/.next/cache/next-babel-loader/content-v2/sha512/c6/29/8b228582ec476bbbf4711cf343ab899e20b092c79434bf1d6d78fdaaa2119d0036b0d3c19133f70c6891a712a1644f7791d55a44eb12b6f3b5e0317a9895 +0 -1
  420. package/.next/cache/next-babel-loader/content-v2/sha512/c7/46/f2b01d9e67ccbe3e84e2cd9142538793297cb28012f15a85bd1eb699f23b95d83c979743895b2d7190d2411aefa3ae3d740d3435febac5c72e486547f0ef +0 -1
  421. package/.next/cache/next-babel-loader/content-v2/sha512/c8/3d/29953961d93a6d053a5f5051f737b4f6297b2f769c5c13e89965f21cade4c09f95d18edc0569718e90305658e81b1de072373c9eac5aa832fe9ca286bd18 +0 -1
  422. package/.next/cache/next-babel-loader/content-v2/sha512/c8/ef/31cf593d75c54cd754a8a9f95bf735e9dbbae7573fe06c851add846eeaa91384ba4cb38a69e0a6377d856e6fcbafbd684eceddda011d125d25a27ab71438 +0 -1
  423. package/.next/cache/next-babel-loader/content-v2/sha512/c9/27/cadfc6d25c516c6744591a5b1da440929d371b02c0640d4db0550aef9966c59f9101af691dc2343ec79df18429e98b83bc3067080dc27e0b90f502e6723b +0 -1
  424. package/.next/cache/next-babel-loader/content-v2/sha512/ca/2b/0a1f81dbd303c6a945a38cee9a8bec32aec5e386adc894c97c01136e11bfd88b921f6dd0ca6d9f1b73237b432efd1d521fb570bbaf17cc110cdaa9692587 +0 -1
  425. package/.next/cache/next-babel-loader/content-v2/sha512/ca/72/6fa7dfa9e80e767f98effb27148fbd25465956af163b0aa30f46b68a48c59485c96d49cee0370c2b5ab4b6f426e5a767802e5f73d7cc8743a4a7232bc06b +0 -1
  426. package/.next/cache/next-babel-loader/content-v2/sha512/cb/31/ee443a8ff8926469d242d85abb3c9c6a409e280966ce11d6004fc0922dcc17246ebeacdb4cba73a8552e5e9397c9bfb01dda6bbcd83f0a928803a775833f +0 -1
  427. package/.next/cache/next-babel-loader/content-v2/sha512/cb/33/220289617cfd63b965194d2d7854a71f4c7756bae56a3c4cea61e5c46d0e0a7d73916bb286e3a8aed21d646be0c2cd5a4f14964a7671adbd5033a92d431f +0 -1
  428. package/.next/cache/next-babel-loader/content-v2/sha512/cb/6b/914a1e74a4879728cc091e14bfbb972a32694db33d0bb21d87fd6a333bfbca8452a9de84363a414d451a36f22284f624ad5067e5932356add8915c6428e9 +0 -1
  429. package/.next/cache/next-babel-loader/content-v2/sha512/cd/89/baa1c026e3075d74c6d0a86c888aa4eca2e9e1de3bdf42f00413a120016bb55481161c8ae884854f5db9a27e1a182b86e679a385fe93e026ceea89b8617b +0 -1
  430. package/.next/cache/next-babel-loader/content-v2/sha512/cd/d7/df12e02663470fde8f94d96e5922b80d8ad2c75c47723afc0ed5d4df33fb1d64bac81e7e1adc3e58a40e39149d069a69e8f3fd75013d082d2ba260e27509 +0 -1
  431. package/.next/cache/next-babel-loader/content-v2/sha512/ce/83/fab858cd4777a1c726826cfdd59c59af897dee7c1da81940ba2aee130e69526770640c9633994570e2c6f726d39b169ab0d18c0b12c86e2e8a5a69ca0c95 +0 -1
  432. package/.next/cache/next-babel-loader/content-v2/sha512/cf/54/f66098f63aea55a80562f74545f2882ed8640f411d6e80c5790ae2b61e269a7cd55d0590c90da2149d7d72e36c4f41f5e0c538349ec5c080f2778117e177 +0 -1
  433. package/.next/cache/next-babel-loader/content-v2/sha512/cf/5a/db8c91551bb9208cafd7db0902dbfdd65eac08b05994908d29f0ac9d5c358e5d30446392a8b6e28352615b8311e8a35029bd6e79a3bbb80f13ba9b738aaa +0 -1
  434. package/.next/cache/next-babel-loader/content-v2/sha512/cf/e3/64462c2ffe065becb51a1ba268f6a80f825de2e66c535a3897ff4b5b253da0eb28111ba1f2b7e9728fccc21fa9e4e4bd4c697950aa3617e16c87c7f2c03e +0 -1
  435. package/.next/cache/next-babel-loader/content-v2/sha512/d1/0b/401a27211102f0e23e92763631cd040dc1630ae66ae5338131bc58d63f40f2d5ed586ec7e0ff4f65f7fecd6edcd0b5b0b26e254d5cf59a8c31b36e7a18ea +0 -1
  436. package/.next/cache/next-babel-loader/content-v2/sha512/d1/97/a11da39d92fd3625de785871b81a2735073d7960c4c70c8f3adbe351f577f187bca572ed6bb2e490c12d1f848434c60bc1cf39a28e465e21381be4ffcba2 +0 -1
  437. package/.next/cache/next-babel-loader/content-v2/sha512/d3/a1/8ec327bd3962f8cb32513ae8afbbf26a274e2dcb792ab9c0b59bd204d3bdba6362135ec6575ecb245b7ecf058096bc44dc04bc3bc0bc487d1554e90682b2 +0 -1
  438. package/.next/cache/next-babel-loader/content-v2/sha512/d4/bc/5458ce5ebae53c157cdecf7aec460b20bdfb7dfc03102d35a8efb6d394f35c0715fb67b4d3e02f424539033dfe3d171e99501910c20697eb7192bbeade15 +0 -1
  439. package/.next/cache/next-babel-loader/content-v2/sha512/d5/16/54f022522ecd7b7884efd6c01e614a209e42e7e17f3dbccb585e32c3ad5cc7921d1935780deb27c900cf0a472aec6fb67c7cc245e092f06a9929bf6c7a01 +0 -1
  440. package/.next/cache/next-babel-loader/content-v2/sha512/d5/c1/dac357e6921043435b5a8f19dadfc5a487def42403531284717910672c550e8db5e4251c916ae54bc303e0412007899cdf32d7f3db687a8c2d01db9be8f4 +0 -1
  441. package/.next/cache/next-babel-loader/content-v2/sha512/d6/f0/57169d4bbe32bb77e2b39555eba884bc3aeaedf071b44b0239921a34d4ef22cd4e6494408b2c540bac9f74845cd064aed93e8eb711a78921adca23b16491 +0 -1
  442. package/.next/cache/next-babel-loader/content-v2/sha512/d7/ea/6a2e15843aacb691d39a68f67aa288950c65612d8a566f4a24b112809fdb27b9c0ddab7a33aefd3523509fe3dbb03440184e70ebd60cd6b459a6d6e2c3f0 +0 -1
  443. package/.next/cache/next-babel-loader/content-v2/sha512/db/66/3a6a81494b90317a827e6c329fff407d0ed779ab090452ba5f06e7760dd2786d437a1bba3f89f9f240ad06ee7a454f6ead7c092c0e7a8129531a33f07ee3 +0 -1
  444. package/.next/cache/next-babel-loader/content-v2/sha512/db/83/32167e140629a576e8fb07721219469976bcfdda029dfe01b3f11abd9921e85bd95a180b454e515d24a8aff9a9ba2452fb9ccf0425c3a6592f6599b5ba43 +0 -1
  445. package/.next/cache/next-babel-loader/content-v2/sha512/dc/51/539648f8e219b991e3d44ef32a4f03c19a0097264c4dcb70ca531bf1d8644116796ea464abf6812a2969f9d9c346ba53b1b38520c31261626146e28adece +0 -1
  446. package/.next/cache/next-babel-loader/content-v2/sha512/dd/12/7bd165e9bdf890227ccf20ffe9b65595547a53af4f68d227e8a27bebe66e5d72f12b0f7b1f40af8baa9f1cda1839a149b28b7a47abf8ab99c8f46af1b4b4 +0 -1
  447. package/.next/cache/next-babel-loader/content-v2/sha512/dd/d7/41c30b5e06b3c068d861112456745b3b6672a363e71de1651f9dd07b638f6d225e84b47394cc8f9f73e055b1a1615f649e61e48ac277215588f204f5ccb1 +0 -1
  448. package/.next/cache/next-babel-loader/content-v2/sha512/de/65/f8a71255cb5f0b0f7facc5d112c92f7eedea1d0f7bdef9c0dd2db4281593996b970fb22c007e8f5c0dd8bb43f16bf0329128fe6f6dd4051e31de2f3e0eb2 +0 -1
  449. package/.next/cache/next-babel-loader/content-v2/sha512/de/8e/fdbb7133d88bf878f6f3326f3d14247abf5fb9c8581edf00ef6829329ba094077d9c504141978b0e356739129015b971834784503d737492371be99527e1 +0 -1
  450. package/.next/cache/next-babel-loader/content-v2/sha512/de/dd/152572e3d9d43a97bae18825a6d1a5f0b0f89a8d2f8ede6f25dd4b0654bb5c3404aeee2b6abf8dd20fb17f298e0932ad5c11b6fb44319cba48913cded0cd +0 -1
  451. package/.next/cache/next-babel-loader/content-v2/sha512/df/44/1449ee13f32c9d6bdcbe349256b0fa32e2845d5bd95aa74cac2b79c5042e18cf1a282592a1a00e603876ea11207c47cc41d06e6c560d051de0984ddb41a4 +0 -1
  452. package/.next/cache/next-babel-loader/content-v2/sha512/df/e4/69d46b4fb6f7dc6e658a1af0b3511d9d50702781d6ca93c1f86b205063efb1034277e848dda201ea7ed65869159b17d97a0da962aeb91ca95de6d48ce79d +0 -1
  453. package/.next/cache/next-babel-loader/content-v2/sha512/e1/3a/a10b918cd000afdc58fcec3d798bec3b453bfd6a833355547ff639950cbccdb628a168be49ab42a152e436ca80056202d75f8790b17f2a6d4fe96f9f5327 +0 -1
  454. package/.next/cache/next-babel-loader/content-v2/sha512/e1/fc/85b24fbcc7f038365593f513903981225c2b73ba4cec29b88cf0bc4c5f8d920f54fd40d8ccd9a02d9a72e6b432af6ac5522cb61a1730af6c38ff28c43483 +0 -1
  455. package/.next/cache/next-babel-loader/content-v2/sha512/e2/69/82af180acfe21d795ddf54318218fc96d18960e0d19893f204f64e7d37c3dec9116888108df72abcce8da261bb5d63feb5218b71db854e3a847c58f77b18 +0 -1
  456. package/.next/cache/next-babel-loader/content-v2/sha512/e2/85/0fea3ea9c3b37b175f49748465d2ebf1857a2f8e5cb16c9914ec4751a67ba6cc920ec4329c9bba44bc00f25ae8670d7a11a33800490e56fe6d837e54527a +0 -1
  457. package/.next/cache/next-babel-loader/content-v2/sha512/e2/d9/e7f2bf54bbe9f8816d2db3656a94ac41eb1e02cab3a9b0e1f092b340a4c35f830177f6f460128359831b351eb68444529661050bb47da6167a9e17f559f8 +0 -1
  458. package/.next/cache/next-babel-loader/content-v2/sha512/e4/2c/2a79ca22310b5531557deb0c161a83f3efd898d6abffeb4bfab43e6f7fbe47d8dae1d5d74cd9e388170877e7d8eeb6c98b2d1e0115be2174fa3ca8c760df +0 -1
  459. package/.next/cache/next-babel-loader/content-v2/sha512/e4/4e/3a9effee6bd3e87a7df5ff7bd56ce8f06542251267f9b292752ea80903f709ae6c8988807553278ead0d1473a5bf4484b7e35652d5e263cf12325113e6a4 +0 -1
  460. package/.next/cache/next-babel-loader/content-v2/sha512/e8/86/914291ef199f0870b8c87fee830550fa1f1ebcf638d095ee4c910f6fbbaa0c0062365aebc0645fe0570c714b75ddecba333cd0affe602d9837ec1428a21d +0 -1
  461. package/.next/cache/next-babel-loader/content-v2/sha512/e8/eb/3ff2f76d23d1013924ee776bc69faa998981407b96a537b529533af251f474340789c623c76f522724a413afc2b0ad7f7a52b42c4bcc7929248ff93a3faf +0 -1
  462. package/.next/cache/next-babel-loader/content-v2/sha512/e9/94/0857dd0cf93769b6f6f7706faa27ae8b423c9d4dfe33086f7becacb6baa83fec98d412fef7aa3435808f8bdbbebf38547a1c8feb4b0eb472b4336cc31754 +0 -1
  463. package/.next/cache/next-babel-loader/content-v2/sha512/ed/c1/d67b98cbb0d93a613a0ab66a861dab47175c6a21186f57c6d185f6f0a524046122e1ff45eb28b55c3404722ed788f0c0e427a15912b5aa0fe86a3478668d +0 -1
  464. package/.next/cache/next-babel-loader/content-v2/sha512/f1/ab/54d478fc6f078b28feff7a282b59caefa25eae2ca3bd700ec482349ce2907ada68a4e49d1a1e6addb699fa41282a8b7cb0c524ce5201ace5b089f6c1c88a +0 -1
  465. package/.next/cache/next-babel-loader/content-v2/sha512/f3/e1/8535dbc2abad04cc4725d53581cf22640d29f076286059d354c59cfb05bf32318456c8a1ccf8883229e2106d48726f47bbe8e67ee5ef2f24843c1583e06a +0 -1
  466. package/.next/cache/next-babel-loader/content-v2/sha512/f4/3a/01b540b76a6dc0dba78e4a96e06f7cda3c9587d5c991d4d1be2ad0a829f653a44b1ff1710742df42208a3aa35b9ae57ad3c1705b4ea4fe775d17ddb5b438 +0 -1
  467. package/.next/cache/next-babel-loader/content-v2/sha512/f4/6d/85d74232ea674f18a73251e14d2a3c2f850d3eab36f76f50a6316c7a80a468d9b7352135390af6c6d1f88b076024345c7ccc908e593157091782fd1018c9 +0 -1
  468. package/.next/cache/next-babel-loader/content-v2/sha512/f4/75/b3844220a0b3b2c2573fd0de894394e55d26bfab40c54a6485e1b7119146a6369537a4999e0d63a95adfefc4aaf09b4a87a4a94239a03d427db3d6872714 +0 -1
  469. package/.next/cache/next-babel-loader/content-v2/sha512/f5/87/414ec9ac0c1008d2e40461af83650846508629b3c8bae187620eb67c9fce55f6bdd7ab99354098c44d3a463c79b2df2e688a887402509355fcdabd846daa +0 -1
  470. package/.next/cache/next-babel-loader/content-v2/sha512/f6/5b/4baaa384caf58eefc1b2a529e966b685d04d23b27413dd4f06006d0712ac3c291895ddfd6a327d2ad1935e0a88b31948f8ebd5cc87f9bf79e78c0d8a24e3 +0 -1
  471. package/.next/cache/next-babel-loader/content-v2/sha512/f6/fd/476100e67a3ebbdb0fdbdd0987d1fc545ff1881135cd96b259fa5d63593ed6725e98359be998bafe3129defe46087cddbb3bde435f6f3838b3055bdf1d4b +0 -1
  472. package/.next/cache/next-babel-loader/content-v2/sha512/f7/15/4f37056edd14626a8138c90e970c12ea876d1f943af46bc5f63e76885268227d32c32b2f3c4e80511de0b8b39e7b527baaa25fe6930e42766485a5a065f8 +0 -1
  473. package/.next/cache/next-babel-loader/content-v2/sha512/f7/1e/b96edb754643786354564476d4424ecb436c9e4cd5660b68a745504812f422a859ccfc33b8ccbabd73181bb3709ed074f912f18abea39bb11b8541bec103 +0 -1
  474. package/.next/cache/next-babel-loader/content-v2/sha512/f7/db/0da92bf85e41d538ab5b13f5986ae19d4fd4a8acb20e4a3549fa7644cf5d5e2ae8bbc4df2dbe6299971398fb802ed7a28d0d6efbc37418f7556d55661641 +0 -1
  475. package/.next/cache/next-babel-loader/content-v2/sha512/f8/b5/9b284b6d19cd9b1ec7ba2020175ae396fc0327e78676d3729f735c5423f9946b56e3cd8ad097b496380062bf111944fd71ff70ea8a5147436601aa306474 +0 -1
  476. package/.next/cache/next-babel-loader/content-v2/sha512/f9/86/da37b34d1501f11ac05920063a964c406e17c1adc8a96677a80373945e4533f0b80b1f0649afb0a78f47b504a0a8e96b63bc1800c9d1d195333656a4b632 +0 -1
  477. package/.next/cache/next-babel-loader/content-v2/sha512/f9/f5/26b08eeb0b2554d41f8e7da47e051f54293935092e5f9e3777dc7220b1a56a31792a580d4bd3a4ca46aab2a9398a02f757c44379a02744287cd2ffa74c66 +0 -1
  478. package/.next/cache/next-babel-loader/content-v2/sha512/fa/ec/2a14760502ba5fc99a8668b3b5bd555fdecd7a64de404ee137deccc1f7f22ac915f313c44e8a9427c025874d9af53f4a379789581e3cc02e440ad5cfe43f +0 -1
  479. package/.next/cache/next-babel-loader/content-v2/sha512/fb/88/58a4b913db892a7ba51df444a4826f7a00db8634a7586fb6e272e78c2859f9627a212867e26738a4885aeadffb083ba0b57b037afada02a128f4fa2bf45d +0 -1
  480. package/.next/cache/next-babel-loader/content-v2/sha512/fb/d0/c7dfc56da604be82ed329114808ad570ba2ab2ea32ca55987f587aa21a8fb7c1540f67b10c4e379ced49b6d9d9ad9438e23fb49ca68759f7ef4b1eb4e281 +0 -1
  481. package/.next/cache/next-babel-loader/content-v2/sha512/fc/2e/88e32bb285e8ab472ee674f8c9cd2ac3d74b14d2a18d77c7aff32e46e801a48eb499fb04a66df476d6f700ddf8fca9c5ae1a531fbbd2549cc6a9d9b3e12b +0 -1
  482. package/.next/cache/next-babel-loader/content-v2/sha512/fd/d4/299c0b63ead1519cadd67f3ceebc9567f4e54cd17ae125c9b018d2778da5b8214eb4d0eef9226fd9b0bfcc9a958074731f9f16d53e80987d2ba28b124d6b +0 -1
  483. package/.next/cache/next-babel-loader/content-v2/sha512/fe/4e/52daec701d8e0b36d067b18ec04894638b2ac0649bbe9d2dbbe3f5b06d676c88eec70774f7ea477ab2ebbbece311247ac60506df9d18f9eb2a3d134e934a +0 -1
  484. package/.next/cache/next-babel-loader/content-v2/sha512/ff/30/bb6eca7d9650aca5a542ccd89d7365c48fc9cbf3e7012a55f083170ff9eb2890d27f464e69ce7805c55d4487238a8456edff38e642d25a5ccb6a4c7eb85b +0 -1
  485. package/.next/cache/next-babel-loader/content-v2/sha512/ff/6a/ebfa54f0e7f6c105b4e7e86f32a489869c399de07e04d13fda44eda46fba9e64c0004d377d81b71d9c2ea71cd41c3bbc0f9df472d052c3b877dc6ec8e51b +0 -1
  486. package/.next/cache/next-babel-loader/index-v5/00/94/4d5db52a9f76737fe32f48071c838500c336d30dfba7ad73f93f4330c1ec +0 -2
  487. package/.next/cache/next-babel-loader/index-v5/01/49/9b3804def80f8a2a63a61cb2c7b69b32aab7967fcf4b494039268ff484f2 +0 -2
  488. package/.next/cache/next-babel-loader/index-v5/01/e2/05eebed421de35c6768e8af36e28912e54d866595844ff0133bb81369698 +0 -2
  489. package/.next/cache/next-babel-loader/index-v5/03/67/a5df64bbfb45106726d40355c1047301600543a21b53b22bdabecec45a14 +0 -2
  490. package/.next/cache/next-babel-loader/index-v5/06/50/ed5306f3dfc88283aeac431ed5efaff43b1b54f2e79d53e9f01dde397413 +0 -2
  491. package/.next/cache/next-babel-loader/index-v5/06/78/4b6accbdd717ce6e4f73d01051a926bfa5b4e0181de0122e2d6088b2838b +0 -2
  492. package/.next/cache/next-babel-loader/index-v5/06/ab/29ad42cca1281514a4c90709cce849bdbb3e0bdaa96497d73eb200522ca8 +0 -2
  493. package/.next/cache/next-babel-loader/index-v5/09/0f/d672ad8b7df0bf15c19bdc508538e2c794660be9a769a02722579f1e60e9 +0 -2
  494. package/.next/cache/next-babel-loader/index-v5/0a/05/466082e340b1a9a6d3409333a8bf899d9b9936a7b04699cbd88b36bd582f +0 -2
  495. package/.next/cache/next-babel-loader/index-v5/0d/9b/6f54a03631c376ad57089280cefb59aac07ea7b0527d01f2f7d75038e643 +0 -2
  496. package/.next/cache/next-babel-loader/index-v5/0d/d4/b6893e5c7846b782004938d2a87355a2a49bce47f6825258504485915604 +0 -2
  497. package/.next/cache/next-babel-loader/index-v5/0e/1a/c3e0b5bcf9d586f98e030c98446ad5d3ac3e652e821ebbf57fd131cece0d +0 -2
  498. package/.next/cache/next-babel-loader/index-v5/0e/4e/adc5f2033c75a34861747319f2b8d2dc9c905288e2a515cffc8220d461d0 +0 -2
  499. package/.next/cache/next-babel-loader/index-v5/0e/71/7d14c93c242a3e5d2a18105908d92afb004df30305a5c3e1b2f203d8fa70 +0 -2
  500. package/.next/cache/next-babel-loader/index-v5/0e/af/43e1b86d6ab5b887c008ff08f167c0fcecc49840ef622ff94979af8eb893 +0 -2
  501. package/.next/cache/next-babel-loader/index-v5/0f/00/e50d6da87e3bb3cff9faed9624c481ce07d07f1bd7ba292c24de68cba597 +0 -2
  502. package/.next/cache/next-babel-loader/index-v5/0f/2d/db7b698fe86c26fbf5279057e9978b7f16a4f18bb2e106ef667ea8318c2b +0 -2
  503. package/.next/cache/next-babel-loader/index-v5/10/03/d8b8ceace6a539787599be45cfe79b8ad33c12ed5548405cc44acef5ffc9 +0 -2
  504. package/.next/cache/next-babel-loader/index-v5/10/10/b154984b2fa06c1dc05ffc89624a5c1c1ba843b30cf6d64bb22ec701bbc8 +0 -2
  505. package/.next/cache/next-babel-loader/index-v5/10/3c/260ac6de3dade3335c8f982c89ebac4e4308306c3c1f29839b0b2d788983 +0 -2
  506. package/.next/cache/next-babel-loader/index-v5/11/23/7896e97e0ec2514fee8d81b14a43e28ddcc1d630847871155abdff88ea75 +0 -2
  507. package/.next/cache/next-babel-loader/index-v5/11/60/0279b915d43be35a1bdceeba64e3c842d373ca96026476b549ffb7d3f43f +0 -2
  508. package/.next/cache/next-babel-loader/index-v5/12/d1/afa2045635bdda48827d0ee1a952ad40857f8c69314e2c69389a9fb67706 +0 -2
  509. package/.next/cache/next-babel-loader/index-v5/13/8b/aab116211f078dc78f85ef2d41cf468352090505e3b14fbb1754b7795a42 +0 -2
  510. package/.next/cache/next-babel-loader/index-v5/13/ba/c5a6fd4a15bf61d2d3fd24ab2eac59884b5c96e2d4fdfc75b35841006dec +0 -2
  511. package/.next/cache/next-babel-loader/index-v5/13/e3/16a76db2ae3e8810c2bd4c49472d0197d36d977c109a106002fed8bf6e47 +0 -2
  512. package/.next/cache/next-babel-loader/index-v5/14/85/5f3549f235d9b7face938046f98e073e7bc2d5c36cc7bc5e1a6d30815ca7 +0 -2
  513. package/.next/cache/next-babel-loader/index-v5/15/5c/740d8642f1686b31b7c8647f2d500697ea784ac1bf80e3568f15c19c2430 +0 -2
  514. package/.next/cache/next-babel-loader/index-v5/15/89/9e8fc989982d195689e54707b854763a6197fb43531eb6be4dbe54786e86 +0 -2
  515. package/.next/cache/next-babel-loader/index-v5/15/ed/b5bd4dc3ba7140b2298b9c66818574232264cd01f3ed111bbccc88417a96 +0 -2
  516. package/.next/cache/next-babel-loader/index-v5/16/62/36a54635ca85f353efaa27eb2fefd1bcf53f78d1a8c6c1d13bfed0688aee +0 -2
  517. package/.next/cache/next-babel-loader/index-v5/16/f5/2e82055d37ac763b5e3b2b7b5275c356d217a3e7f020449a371c8af81d55 +0 -2
  518. package/.next/cache/next-babel-loader/index-v5/17/31/9fc0833a4cd58fb072d8c52edc9a716e4776ea32381b294e0b9b85a159f3 +0 -2
  519. package/.next/cache/next-babel-loader/index-v5/17/94/1005b6c3d458f270d35674573f843729d7d5d9895f0dddadfcfac459cc2d +0 -2
  520. package/.next/cache/next-babel-loader/index-v5/19/0f/7f9f46019a311473323b7f2ec82b8e2f65625d7f4154b53a38969ced45b4 +0 -2
  521. package/.next/cache/next-babel-loader/index-v5/19/4f/ca962707f9956951bf86900d1f887d445d30da7e66037688efd03bbba5a3 +0 -2
  522. package/.next/cache/next-babel-loader/index-v5/19/68/4aeb66fa4d97666b4a17f8063347b0abd6b4a2199ed10d6fdb568dda14d7 +0 -2
  523. package/.next/cache/next-babel-loader/index-v5/1b/05/580f8285cce7aadab82e6cbeb9d46bd2a42148491be4d4489f1ce5d054d8 +0 -2
  524. package/.next/cache/next-babel-loader/index-v5/1b/e1/72830b7805f950091a54a168ac06b604231f8a39c5876c886214e4ce3362 +0 -2
  525. package/.next/cache/next-babel-loader/index-v5/1b/fb/6764bd232b0eb0b5dddf9086ba8d65551713600c72aa9bd7f7cdd74d6a84 +0 -2
  526. package/.next/cache/next-babel-loader/index-v5/1c/66/976cf0b1a286c9dbe91c6cca55ab5732a92004126d7d5ba8be966de196cc +0 -2
  527. package/.next/cache/next-babel-loader/index-v5/1c/71/3050226c9e44afb3b145a8ff838d9a9efe68924c80c2a2b0b5c2a919c7c6 +0 -2
  528. package/.next/cache/next-babel-loader/index-v5/1c/7a/9b525663917c884edc95858e27e46899faca361f7be45d2d1ad3b3b1c6ec +0 -2
  529. package/.next/cache/next-babel-loader/index-v5/1c/be/705d8168be63dae991c86bf195500cf97ccfdde530861e758cbeeb45da00 +0 -2
  530. package/.next/cache/next-babel-loader/index-v5/1e/7f/ed2115d67579a9ab24de682604312ea59ee49963bd6c4a1a794b88665f3e +0 -2
  531. package/.next/cache/next-babel-loader/index-v5/1e/8d/e658578e60698e7093e46b062274d4d792faf732c4aa6b7b386fd592e710 +0 -2
  532. package/.next/cache/next-babel-loader/index-v5/1e/bf/b2df4a53e0817ee8a0b8cc38bc110c0e429ccdbb3e99740dcac4b5096d5a +0 -2
  533. package/.next/cache/next-babel-loader/index-v5/20/36/96c62b7cd2702b69a115c273291f1f3883847b1f21b22d71028aa329c999 +0 -2
  534. package/.next/cache/next-babel-loader/index-v5/21/32/40d29592f813e1329e42a4f25405c7a28f78af43fa1b4577423fa88cc735 +0 -2
  535. package/.next/cache/next-babel-loader/index-v5/24/28/713274b7a00e5d71b70a37f2d3593b41ae056aa8a82deb4d9520c020ee9e +0 -2
  536. package/.next/cache/next-babel-loader/index-v5/25/a2/de32afda140f610465d72f3f7e49bd76e457c61d176b924512c75e6d7343 +0 -2
  537. package/.next/cache/next-babel-loader/index-v5/27/03/3b0f17670a8d2c132d657d5c7872caf13ca4ee6709291e4857b47df3b3b5 +0 -2
  538. package/.next/cache/next-babel-loader/index-v5/27/b6/84d82abc1a27a664f865e19c0b0352cb9c1f2bcab8dbca19cdebad353d33 +0 -2
  539. package/.next/cache/next-babel-loader/index-v5/27/fe/d3f27aa05f0a887c6acad756b37217228bc6b552cd051641696b47337221 +0 -2
  540. package/.next/cache/next-babel-loader/index-v5/28/de/b08352c5c0a66a9b68c19ab2e9037cc007edb4ff9bc89322d666541e5493 +0 -2
  541. package/.next/cache/next-babel-loader/index-v5/29/53/2ab5fcc7eeeb66f029f06376532d1d9e2b98737f52b862ee8da27b0c471b +0 -2
  542. package/.next/cache/next-babel-loader/index-v5/2a/0a/d2d75ca509b3fa60023011ae9feefa3f045d27a8a482e69d155c4fa800fe +0 -2
  543. package/.next/cache/next-babel-loader/index-v5/2b/25/8b58780fed89537e533b10ba41e334c0d3dad85f5d959a99723013edd381 +0 -2
  544. package/.next/cache/next-babel-loader/index-v5/2d/0c/03be4da1c1527a40afeaca3745133757e18a74fdd5d56869a9af2d489437 +0 -2
  545. package/.next/cache/next-babel-loader/index-v5/2d/92/7eb6c7605a7599157b61e3d67541ae716b36ae19ec5b9f11610370ebc743 +0 -2
  546. package/.next/cache/next-babel-loader/index-v5/2e/38/3ba270044d47c0b30e8f2c2bd820e8f3f7e03a726fd1bbb75c697f9a6f8b +0 -2
  547. package/.next/cache/next-babel-loader/index-v5/2e/42/7486ccfe6d15c630b6d181c4f2ffad8303d0dad471d77e4f37be41fd8c40 +0 -2
  548. package/.next/cache/next-babel-loader/index-v5/2e/c2/95af5ff69d04644ac440944b9a74d2e8f2edcc1c5c7c1c3b4e9161d0e820 +0 -2
  549. package/.next/cache/next-babel-loader/index-v5/2f/32/7427cb04325fdec0c74fa74967eb7503d34a8e7d909cd9bd4103c04b2e01 +0 -2
  550. package/.next/cache/next-babel-loader/index-v5/30/41/eb088bb5ca818ea9e1baabcc1c0ccc9dec4bb99b74575ecbb2645cac3531 +0 -2
  551. package/.next/cache/next-babel-loader/index-v5/31/f0/18947e9965f6285df649597d946bc6ae2f1720a113ae8ffc7495eecc2e29 +0 -2
  552. package/.next/cache/next-babel-loader/index-v5/32/41/6fe1fba2de42038289b187ea0f2e30d957823a6d7f4ee3ba0b37909d4436 +0 -2
  553. package/.next/cache/next-babel-loader/index-v5/33/e6/8dad7b80504cd3f0625a12405ac97baaa1e86060c7fc308ce93602f8e546 +0 -2
  554. package/.next/cache/next-babel-loader/index-v5/34/02/d60fe680a0f1da7f9d3f2963bf34d54c824df2527e0885aff15181eac3c5 +0 -2
  555. package/.next/cache/next-babel-loader/index-v5/34/4a/3c7f94e8fdcfe458dfcbb8c6f7819c2c39358467b4fdf8ff5c408fe33085 +0 -2
  556. package/.next/cache/next-babel-loader/index-v5/34/76/ada35908c858ec95b9b3098f40a45d41b43225898d3705577988b0401f7c +0 -2
  557. package/.next/cache/next-babel-loader/index-v5/34/b4/eed975f466c888560db90af0767536ab7f13014f05a5d6a36cf8ac337537 +0 -2
  558. package/.next/cache/next-babel-loader/index-v5/35/0c/e18a7cec1a8c9f77c387ef2d26bc6b01711df23b0040a3d898e585d76652 +0 -2
  559. package/.next/cache/next-babel-loader/index-v5/35/55/a473700e333748567405040751c0deffe5752d56adbcf496d2cd1c54a00c +0 -2
  560. package/.next/cache/next-babel-loader/index-v5/35/f8/895e09f5abc3581613ee187457cedde4ef660b1e028406cac06d911bb588 +0 -2
  561. package/.next/cache/next-babel-loader/index-v5/36/c9/0e25b9202933c3ee3d91bd9c08a21663b8eba7c7504c9278b93308ad53f0 +0 -2
  562. package/.next/cache/next-babel-loader/index-v5/37/f2/5bd3440bf7074b86b985a7eeb8acef8ea41716f0dad85b5b3b3fae3194dc +0 -2
  563. package/.next/cache/next-babel-loader/index-v5/38/6d/90e8306fcc2fc166e08f586518fe468548c45ca31bfa39c58f8db71e383b +0 -2
  564. package/.next/cache/next-babel-loader/index-v5/38/8e/261d3b9e2f7c1e7877598ddac3f10a7c2790873f8c7eeb00b90b8421dca9 +0 -2
  565. package/.next/cache/next-babel-loader/index-v5/38/d5/eee0dd4033051ba838187c19ba6682cdb38773331e5faa920ac01cab4e1d +0 -2
  566. package/.next/cache/next-babel-loader/index-v5/39/93/e044d3da0741ee97aadfbb63175823c48306fcdb859fc31225778db7e704 +0 -2
  567. package/.next/cache/next-babel-loader/index-v5/3a/f1/95d4a0cfd966a6426b97486e64a51d339a7b89003f7d093496081a0862bc +0 -2
  568. package/.next/cache/next-babel-loader/index-v5/3c/9b/01a235909e84608b077aa28e774f70ddfb81a03bde21dbac0eb09806e790 +0 -2
  569. package/.next/cache/next-babel-loader/index-v5/3d/08/2613c2949cb9412b4f7e70519f8b8c504bfd7c46bc795af8276911a1749d +0 -2
  570. package/.next/cache/next-babel-loader/index-v5/3d/41/52136952e5ee4f00bedad6508bde8adfd6f1eee47bea426fad7290aefc9b +0 -2
  571. package/.next/cache/next-babel-loader/index-v5/3d/c7/672a0d0d27379bde1169c9fd82ca01268f353135232314720a0d1515471b +0 -2
  572. package/.next/cache/next-babel-loader/index-v5/3e/88/085b7103a1527b1e8bb9825fd694c84c59375898a4c0183d49621a1f954f +0 -2
  573. package/.next/cache/next-babel-loader/index-v5/3e/c1/6f035ea4b7f64a7e384bcdc2e5d810c312a2b28d235421151d7c7fe43cf3 +0 -2
  574. package/.next/cache/next-babel-loader/index-v5/3f/ef/cfe887a419d6f10b507e1da38ed613fb34686b6e1ad8b18ec70bf788b1e0 +0 -2
  575. package/.next/cache/next-babel-loader/index-v5/40/fa/163b1c4ba44c79d4c04af952d30bf0005f006e8f01a4e7259e00bae66591 +0 -2
  576. package/.next/cache/next-babel-loader/index-v5/41/1e/cdde57436ba9641c590ba844d002f45e9571195ca47cbb78779e6cb0b795 +0 -2
  577. package/.next/cache/next-babel-loader/index-v5/41/5f/6ebf77d0a62a28ffc42e6b0355c07a4dd475f635daf6789fb47b573ec5ca +0 -2
  578. package/.next/cache/next-babel-loader/index-v5/42/b2/da83733dbf10fe5d7e273fc9c61406e6d38860c6f1908f0351552f1d243c +0 -2
  579. package/.next/cache/next-babel-loader/index-v5/44/75/4c70641ed90c07374f143b8f8f7d18ef3f0e444a1fbb0d6e13178d61953b +0 -2
  580. package/.next/cache/next-babel-loader/index-v5/44/e8/126766a55a5adbe1b25eb9249d2a07af1c637bf0420f0556e0be5e1ab767 +0 -2
  581. package/.next/cache/next-babel-loader/index-v5/45/19/de416837ca82df6148d4a44d3ab8cb6cc0cff001c28f83a28247001e63f8 +0 -2
  582. package/.next/cache/next-babel-loader/index-v5/45/41/dfc4cc31400776ce4a97820facfef00023ab3e15b9c5efc9904bcfb007c5 +0 -2
  583. package/.next/cache/next-babel-loader/index-v5/45/4a/4f08bc119fa1c4278204d4cbae23ccf96cd1394f098f0f25b11f6501f9fb +0 -2
  584. package/.next/cache/next-babel-loader/index-v5/45/f8/d869fecec5f0352a491bb223f9498fb4ca25438f1de40d66416d67f6ecad +0 -2
  585. package/.next/cache/next-babel-loader/index-v5/46/29/d08f396fd0dd0603e68ede9578ba7e757ba55b6df5dc5cab1928c9f110b9 +0 -2
  586. package/.next/cache/next-babel-loader/index-v5/46/cc/59fa8d50e21ded1478e6810d57a3f4197d358d53e252092e5e3634114f12 +0 -2
  587. package/.next/cache/next-babel-loader/index-v5/4a/b8/ed716050830ca0112d790f866ba7a028ec64ab6a9cc8064e58e6ce2e4e66 +0 -2
  588. package/.next/cache/next-babel-loader/index-v5/4a/ee/317cecea6c6358fae9a18181b341aade394cee83425f1b6cb1b9f27fb828 +0 -2
  589. package/.next/cache/next-babel-loader/index-v5/4b/37/49b7a287224a51c2702772f6995e7f1c54475afda557e230e29bdadb8f1a +0 -2
  590. package/.next/cache/next-babel-loader/index-v5/4d/3f/0704de9c40f598810ea99efab4f70ba3d93f6918db1c31ccc2efb23ea9ae +0 -2
  591. package/.next/cache/next-babel-loader/index-v5/4d/de/363edd2c2c43a4e9b0e65edfe3b7d2fcdc58436710d0b898cacadca6f876 +0 -2
  592. package/.next/cache/next-babel-loader/index-v5/4e/56/59065f6bc6be314924e403ea449fc660096b80a0b0127f1f2b7ff002fc15 +0 -2
  593. package/.next/cache/next-babel-loader/index-v5/4e/a0/7cc23c295f1381660445a83b1c50a7cd923786e1b8f1e354058a80cbf08c +0 -2
  594. package/.next/cache/next-babel-loader/index-v5/4e/c4/a4b7c6dcc0a48a4784c9fbbea40f752fea08286954c180b1e88cbe08aa8d +0 -2
  595. package/.next/cache/next-babel-loader/index-v5/4f/69/3a47bf8a865767798bee7c5b12f59a4251b60fda27051bbf1a208307e56d +0 -2
  596. package/.next/cache/next-babel-loader/index-v5/50/7e/3223a845a9948dc37f5c08efaf9efcc2f431ce7a791979bd2bf8ebf1dd3d +0 -2
  597. package/.next/cache/next-babel-loader/index-v5/51/54/ca7eb824e0d04c3eed9fb84c2cb3a1a2eb75c5d5118266eae5751c9a701b +0 -2
  598. package/.next/cache/next-babel-loader/index-v5/52/06/bb1a2d4655d7fc2345eb7426b87430d2fb21ae5a63fcaa75b851dc7a25b9 +0 -2
  599. package/.next/cache/next-babel-loader/index-v5/53/5d/0c02053ccb2725f00d526e221b6ef6fddfbb07d72dc763c131986bc94452 +0 -2
  600. package/.next/cache/next-babel-loader/index-v5/53/7f/dcfb15776127fe04f0e6833012132f351d897f3c107564b69bf6dae0801a +0 -2
  601. package/.next/cache/next-babel-loader/index-v5/54/92/46cd05459df7abaae4525acc7c9b7b36b1f615eebddf52357f8e3f1b5d91 +0 -2
  602. package/.next/cache/next-babel-loader/index-v5/55/d8/a2ab66010fe28fc9f470c0e535c338bcb16777044e71f5ce4a620c9c929c +0 -2
  603. package/.next/cache/next-babel-loader/index-v5/56/22/4918b223244cf1c9d67ffb929ef2cf99ab5bfcfb271cfc2cddc5fadec265 +0 -2
  604. package/.next/cache/next-babel-loader/index-v5/56/8d/9b6c2ee06305bbaedaff84807d5f2bc5eca1e9bee9233e4ae27eade19612 +0 -2
  605. package/.next/cache/next-babel-loader/index-v5/58/c0/10ffd288e26d50014a87fe10896ec639009b21dabe6403afda5b90d13187 +0 -2
  606. package/.next/cache/next-babel-loader/index-v5/58/d7/d493f8e91cbf11a08a7b2618b7f228fe4a31956de26c3a24c3523ddc1edf +0 -2
  607. package/.next/cache/next-babel-loader/index-v5/59/87/c4f53c6152e5f788c5409128974f5f764b7893f27f1a76b54205152af51e +0 -2
  608. package/.next/cache/next-babel-loader/index-v5/59/b3/f814fb37900d550d958daaf1c6288b09616e4532e8e04ef0b7bc051d2cc0 +0 -2
  609. package/.next/cache/next-babel-loader/index-v5/5a/14/0310386a942b00d285bd413a0d2f57386f7d7bde84d98b86241583c71e3c +0 -2
  610. package/.next/cache/next-babel-loader/index-v5/5a/33/4ae5db0c9bef1b0da744cd7f389d8fb3a9a592e7862f1f9fff9ef6ca8428 +0 -2
  611. package/.next/cache/next-babel-loader/index-v5/5a/fd/4c35333d95fbb79792b4cac77ee2ec6817172db4e8039d7431c4429bfa48 +0 -2
  612. package/.next/cache/next-babel-loader/index-v5/5c/15/bbd258aafcab6f903d7c3f7bedc5d8eabf83222a51afc88a333c43a86973 +0 -2
  613. package/.next/cache/next-babel-loader/index-v5/5c/19/d47c9fea248e67c5bb1a612eb5d3ff19eae1279e03001a3630fc28afd7e6 +0 -2
  614. package/.next/cache/next-babel-loader/index-v5/5d/0a/1b842999294adefd7202afdf4b9e65c517b28be42e032be9034eeeb065f4 +0 -2
  615. package/.next/cache/next-babel-loader/index-v5/5d/65/58d3a07cba4adf7cbe4fd0178b3ed39fe772a8ee938b21f6d3090d1f206e +0 -2
  616. package/.next/cache/next-babel-loader/index-v5/5f/6d/a1ae534a0fa66a2a875e33ee07da174f26b3d89c88b0b8ca2c555becd3c9 +0 -2
  617. package/.next/cache/next-babel-loader/index-v5/60/7f/2df2b2645507d7acf348d52a263ba1f53dacbf3e9c2845fb25d646684753 +0 -2
  618. package/.next/cache/next-babel-loader/index-v5/60/dd/687bb2d41a2b769fbf016b07120e437a597b3f0e3e20ebdf2617d1f58e1d +0 -2
  619. package/.next/cache/next-babel-loader/index-v5/62/5b/dbd4b223b7e563ef1be3dc25335f1875a4854ecb255567b75e51255e5b11 +0 -2
  620. package/.next/cache/next-babel-loader/index-v5/62/a9/20bd5d1d4a6b190f54ca2c30bc4c831b58fbc05a181dcd0f0a34b3fd2bc3 +0 -2
  621. package/.next/cache/next-babel-loader/index-v5/62/d6/43389e468c6e0a9025e70b016dfc3f106e814b9a4053cd4cb39eec031359 +0 -2
  622. package/.next/cache/next-babel-loader/index-v5/62/f1/5cf8eba882c49b79d05a8534fd13d080dad22351e766f53b8d32f5302039 +0 -2
  623. package/.next/cache/next-babel-loader/index-v5/64/13/3f14af704a5cdfd82af3f5019ecb20b1fbca90d11ab2ee3b6fe75503746a +0 -2
  624. package/.next/cache/next-babel-loader/index-v5/64/c8/980ca1e6abec3cc6c00de707e7267e711e0337de20a8d42103d8b76b71a1 +0 -2
  625. package/.next/cache/next-babel-loader/index-v5/64/ee/2279d90fbffc200cbe071d2d57603ae37ce8c7850a31999b3ad37deedc74 +0 -2
  626. package/.next/cache/next-babel-loader/index-v5/65/3d/29328a5a8d42c85b60fabd78712068fec78dfa31b11d9e20a221c167cb27 +0 -2
  627. package/.next/cache/next-babel-loader/index-v5/66/b2/a19df6f96847ab89c279be6baad7e94b226ca5fe1d597502681a9b2e9382 +0 -2
  628. package/.next/cache/next-babel-loader/index-v5/67/48/91d96161684a6195ed3672e214ae1bd8219c8f7459fd6b8d5097c99b968f +0 -2
  629. package/.next/cache/next-babel-loader/index-v5/67/56/a2d965133f75d4c5c92cff50411b27de0f0ae58ee794fe2319bfeeda95a4 +0 -2
  630. package/.next/cache/next-babel-loader/index-v5/67/63/011b231ae4d26ea38d1ee3471c8a5020f0b0769cdfacaa4aedef766290be +0 -2
  631. package/.next/cache/next-babel-loader/index-v5/67/d6/63f56360090751069dffb01154b48c1ef423fde297437e0b8b1a66272818 +0 -2
  632. package/.next/cache/next-babel-loader/index-v5/67/da/adfb02e589b87789402df51a5b9361ce46e305670dbf2cf012745a655a19 +0 -2
  633. package/.next/cache/next-babel-loader/index-v5/68/18/e733dd79b5376eaf68713551396feb31346f5c3baba5b744a5b227f77eb6 +0 -2
  634. package/.next/cache/next-babel-loader/index-v5/69/32/887998e1d78cf502b7e5621158201ebecbd9dfe7a826fc2b5d35ec2d94f2 +0 -2
  635. package/.next/cache/next-babel-loader/index-v5/69/6d/659dcdb66b6d898db97a38ee70dad71532df3e27983101e192a208118a07 +0 -2
  636. package/.next/cache/next-babel-loader/index-v5/69/d8/f68117796366d01f4571ac04cbae214283ac08fa04099e4dd82fb8c9b9fb +0 -2
  637. package/.next/cache/next-babel-loader/index-v5/6a/48/6a9cdc9a132b0ef5e60f4b9edcd46772f5a26ef74e87fabc42c2b4475454 +0 -2
  638. package/.next/cache/next-babel-loader/index-v5/6a/51/23a1ba1d4ae3cc528182f37921d8c337df70f55bde1cd5a94c1d6959c795 +0 -2
  639. package/.next/cache/next-babel-loader/index-v5/6a/6b/648ca642176a00bca964dd16f21c20a9c67c15c254c88e649950395be831 +0 -2
  640. package/.next/cache/next-babel-loader/index-v5/6b/91/5599d498c791ed9f584a8ebd08fc34ebb6ba991683436d78fbdf08e9ec4f +0 -2
  641. package/.next/cache/next-babel-loader/index-v5/6c/20/43c9e1dfe1019a7c9e8481ee147e09874530507c54a0a568e89b4d0dd2f2 +0 -2
  642. package/.next/cache/next-babel-loader/index-v5/6c/57/887dd481390e27bd78e05f5230b990f86be3e7b6243e27c794afbacef0c5 +0 -2
  643. package/.next/cache/next-babel-loader/index-v5/6d/29/adde1ff2b67b37c70b9759efd6439f6fd2c7276716bc3a43666c1dfc5f5d +0 -2
  644. package/.next/cache/next-babel-loader/index-v5/6f/58/92d617e09e2cd9f58580fe454c84e21b3ad03553e4c969e9c10a0c7693c9 +0 -2
  645. package/.next/cache/next-babel-loader/index-v5/70/51/834e057543c9be70d866a337cc1258e8c0a3dc09436bc76fdbfaf0833a64 +0 -2
  646. package/.next/cache/next-babel-loader/index-v5/70/ee/9a035fe21f1c176d5ecc7c84f6d866060067fb113680b06f8a82340a0c3f +0 -2
  647. package/.next/cache/next-babel-loader/index-v5/71/82/0a1e7172ea51c9d3beb9057fa9a4a71159a019e04ac77a901b394eb7fdec +0 -2
  648. package/.next/cache/next-babel-loader/index-v5/71/82/50e9be1e490607a6dc229abb34aa78becffac8941125e064b00de3066439 +0 -2
  649. package/.next/cache/next-babel-loader/index-v5/71/ba/d41b3a1db26dc368a452a756e472872e38e57e38ace2c77550fc94269886 +0 -2
  650. package/.next/cache/next-babel-loader/index-v5/72/a9/752e35fe5a1f37be59c5d0ad25d5bfa536329ff932fe86fcf02bc4cf1fc3 +0 -2
  651. package/.next/cache/next-babel-loader/index-v5/73/39/328e3fc6c382eef07a8afd37dbad656c224481eb7692f739dfd4443fe484 +0 -2
  652. package/.next/cache/next-babel-loader/index-v5/73/80/3688ada981fd86666bb481124edc42d507fb592e8736b33fe6f0c1fd09c7 +0 -2
  653. package/.next/cache/next-babel-loader/index-v5/73/f6/829ae5cff5b256afa87ef687abadb55a643a3ebad68ab052e05f36542d85 +0 -2
  654. package/.next/cache/next-babel-loader/index-v5/74/62/56766ed1a11a8f5cc37e7bffbba52a0eea90fc05b61346011601d7bd2143 +0 -2
  655. package/.next/cache/next-babel-loader/index-v5/76/47/11da3dbb6e0197e53409ee38abee4657b3e54a163d9df58f8c6d26a47751 +0 -2
  656. package/.next/cache/next-babel-loader/index-v5/76/60/a950556302b779da33b72335b0497edff7d887d31eee38f2b37385eb06c0 +0 -2
  657. package/.next/cache/next-babel-loader/index-v5/76/bb/e57d049a7aac00919a17b3955a747000480b3a9696b414b3245123926739 +0 -2
  658. package/.next/cache/next-babel-loader/index-v5/77/6f/04aaa5ca553e2d97a219dcfa085bbb1c0aa16824e6e2b96537720f5fe4af +0 -2
  659. package/.next/cache/next-babel-loader/index-v5/78/18/effdf573e37a2e50ee8be012efaa6015e36e04b3b009fbd53be94734ffc6 +0 -2
  660. package/.next/cache/next-babel-loader/index-v5/78/a6/7ccab0599d5fca9de5d78ca910a327bb09f6c850bd8269944d88c30bd9ff +0 -2
  661. package/.next/cache/next-babel-loader/index-v5/79/29/2f4ee8380a20ffec794ac3b5bfbb25ab68cd538dc65743057fbfab07025d +0 -2
  662. package/.next/cache/next-babel-loader/index-v5/79/73/7e0d9a603139f1bec787ca04b632da07ec77a7d6cd74b64221c3a578daea +0 -2
  663. package/.next/cache/next-babel-loader/index-v5/79/b8/b452e324ca1765ceff1d74c06d04b28e8a30048d92c7ddeebd20c2935638 +0 -2
  664. package/.next/cache/next-babel-loader/index-v5/79/d6/c837fe28e1aa21a16f80c488d6cab2143b47e61803254b68d8f454a26838 +0 -2
  665. package/.next/cache/next-babel-loader/index-v5/7a/17/cdc3b1b75861df022cac152f11deeb659769011fcff7f7b74e2c18b449d2 +0 -2
  666. package/.next/cache/next-babel-loader/index-v5/7a/c8/0edf73d192b657a893e50480e850e2e8e8ee168d33bf8198194ce40cc87e +0 -2
  667. package/.next/cache/next-babel-loader/index-v5/7a/e1/d20da983c3f463d52e30b6e32724a27b1e7ece82996161cfee89315e23da +0 -2
  668. package/.next/cache/next-babel-loader/index-v5/7b/5e/8e029aa40262739f78281bdf25623be1318cfe18174e9968cdf39fa6a1e8 +0 -2
  669. package/.next/cache/next-babel-loader/index-v5/7b/f1/e847ae697b0b5e81888507500616509032d032a7e14b6c078964da7043cb +0 -2
  670. package/.next/cache/next-babel-loader/index-v5/7d/7a/43311354187883320ff234750668bd54d30905c2d7fa527dde0fbc47a66e +0 -2
  671. package/.next/cache/next-babel-loader/index-v5/7d/80/150df045c7c04743d9e12e543fadca886fb94d926110bd4d5fecdb8209c0 +0 -2
  672. package/.next/cache/next-babel-loader/index-v5/7e/5a/45c5c05bb6b09802267265c91ce9ad2525ff3e7bfe9b3a6dceb5b3bac77b +0 -2
  673. package/.next/cache/next-babel-loader/index-v5/7e/fa/e14514dabdcaff483840bcd7cc0c7246716d996d0587af87f6e5f5bf5add +0 -2
  674. package/.next/cache/next-babel-loader/index-v5/7f/1c/afbd5dc9a4e111381613b974d16fe06b6fccce20eaa1950309f9990e8b36 +0 -2
  675. package/.next/cache/next-babel-loader/index-v5/80/11/1ef583ffa6b8fa720edae24ce9036b1cfb980972de658e5fb6e827ac7c99 +0 -2
  676. package/.next/cache/next-babel-loader/index-v5/83/5e/7c91ed3d1f4fc52ae1775b4c1a7d41ea854220b230a39feeafdecd5a79c7 +0 -2
  677. package/.next/cache/next-babel-loader/index-v5/83/99/eba11c8a438de70476d6cdcd226f0e66951d5ebe3713677611f49ff6d92b +0 -2
  678. package/.next/cache/next-babel-loader/index-v5/83/fd/3e81b89044f0e9750020da5dc50c87b5d1acf0e87be368b48e87e381cf4d +0 -2
  679. package/.next/cache/next-babel-loader/index-v5/84/6b/0c3841ee84642673eab95b436b9eb7b1d51e247254b229e04efe9a49aecd +0 -2
  680. package/.next/cache/next-babel-loader/index-v5/84/a4/2186bcb4b2b09a09ed5844c16e13657baa63ff45fb67fd91235c5d8069f1 +0 -2
  681. package/.next/cache/next-babel-loader/index-v5/85/30/37c63782fab6ca0857c06a09cdb55937336285fbe62b2cce8e3835fdac6a +0 -2
  682. package/.next/cache/next-babel-loader/index-v5/85/8d/1fa79838630d81c95a043c07c75fd33485de79717cb0fa278e39a309d274 +0 -2
  683. package/.next/cache/next-babel-loader/index-v5/86/b1/0b4e1d0f15f354e0792870029eb18326c2730e81dd3a04c69fecbc1a0ea2 +0 -2
  684. package/.next/cache/next-babel-loader/index-v5/86/db/42420d5923ad213eab7dff03a4e5b0fbb51f85838bd76c20914a1d5ed3b3 +0 -2
  685. package/.next/cache/next-babel-loader/index-v5/87/57/de5e5f56c9ad67777d1921ec04d3e310d6ce3023226cefbcc8bb0dc887ee +0 -2
  686. package/.next/cache/next-babel-loader/index-v5/88/14/3a3e5eba3d2fdcb59aa00d578ebdb1e4956dfcab6f02feaa8b298bca11c5 +0 -2
  687. package/.next/cache/next-babel-loader/index-v5/88/68/6793b38b74b65bd164d1b8fc9317aa45324246421f93a8efb506c0b76785 +0 -2
  688. package/.next/cache/next-babel-loader/index-v5/89/1b/897633b232572688f81dfc15ff2a51ffb3cd938cd1c797682057f673fdee +0 -2
  689. package/.next/cache/next-babel-loader/index-v5/89/c0/dc5b2c0a17b47b581c61d0e3263b9a30eff7da462656a1e7a20f2113c041 +0 -2
  690. package/.next/cache/next-babel-loader/index-v5/89/d3/cb85860a712e42f39ee5d9ff50edbbc9bbcbee147b4c656562066decb770 +0 -2
  691. package/.next/cache/next-babel-loader/index-v5/8a/41/07a3a2b639bc92eaa39295745df4d4a93e60da42f75b5ea25bead9c8db15 +0 -2
  692. package/.next/cache/next-babel-loader/index-v5/8b/3c/b7e3288f48862b191247776aa06a2291eaca87aafda744e6bf67c956c2c0 +0 -2
  693. package/.next/cache/next-babel-loader/index-v5/8b/40/287e53bc45ef2bcfb31892f5be8298abc45e50318109a2536b32aceb4e64 +0 -2
  694. package/.next/cache/next-babel-loader/index-v5/8b/7e/826c8b64afb169b6a22db8f13e09dd2d8a8340087508c1cf49f0725d9ba4 +0 -2
  695. package/.next/cache/next-babel-loader/index-v5/8b/a5/a798796fd1c1c752d27171aa149cfd8de85e4d628d16c6b359df3beda072 +0 -2
  696. package/.next/cache/next-babel-loader/index-v5/8c/6e/624c49f904d2c5d1d64a865100bbc884a185e484d39eed3861339ac6ccfd +0 -2
  697. package/.next/cache/next-babel-loader/index-v5/8d/40/da3795199846021996eb58afac906b88edd2dea7dc98e7d27dd79939d69a +0 -2
  698. package/.next/cache/next-babel-loader/index-v5/8e/d0/c7a48ab7f5ebf74ba8b0913f7973244bc7d6ca33d511a00e72f2edb24893 +0 -2
  699. package/.next/cache/next-babel-loader/index-v5/8f/4b/7bf80e1a08d1e62785079158657714da36428759894aa738bc9fbac56d66 +0 -2
  700. package/.next/cache/next-babel-loader/index-v5/91/61/6c897f904fec70c2e974a117368833e67824cacd9e654454067c568c46ea +0 -2
  701. package/.next/cache/next-babel-loader/index-v5/91/63/e817e58fbb82fc43b665084b8a0948fcd6c223a57473400003f353065b3c +0 -2
  702. package/.next/cache/next-babel-loader/index-v5/91/95/4fcaba3e80cc757643fa4a2d945881ded7dc41164efa64bd919ab3007690 +0 -2
  703. package/.next/cache/next-babel-loader/index-v5/92/1b/26fed5f1f86dd34f3f57ad6173be22337ccc87a3def150bb28dc246410aa +0 -2
  704. package/.next/cache/next-babel-loader/index-v5/93/82/5ae7f651790c03ab94668a4dc4596d566d5ca3821e1801edabd3cc6fed15 +0 -2
  705. package/.next/cache/next-babel-loader/index-v5/93/d2/6bbb554020f5486563e2369a1838ea99e68f2ce4319ce42907eac4018169 +0 -2
  706. package/.next/cache/next-babel-loader/index-v5/94/97/6d920786cbd3ee68942b30b36995ea8d026ef235cfd1f5fd4af270c67aaa +0 -2
  707. package/.next/cache/next-babel-loader/index-v5/94/e1/56c11f5f4c1f360a9f3e9ae0a84f05f5315fa97e94e217c0381885b2070f +0 -2
  708. package/.next/cache/next-babel-loader/index-v5/95/04/78f59cc5bda9e5d6df739876f3e2feabb75e20833399248afef19f29a533 +0 -2
  709. package/.next/cache/next-babel-loader/index-v5/95/10/9060e5f736f1ac2faa07b8d62bed7934c667098827caf73becdd99c35511 +0 -2
  710. package/.next/cache/next-babel-loader/index-v5/95/95/2eeefd5ef95028cc3109cf933864c5be88ebbdac918d76df878148091006 +0 -2
  711. package/.next/cache/next-babel-loader/index-v5/95/b8/eb33b56488a4a359ba8466fa73f93fc5afc4da643c0d829ff00143a2de31 +0 -2
  712. package/.next/cache/next-babel-loader/index-v5/96/bf/cef16f6f1d1dfb3fa1703dc56fe40938b298545f6ed1fb6cee51b858dbc4 +0 -2
  713. package/.next/cache/next-babel-loader/index-v5/96/c7/b5a96b1a414904d7d1f8a5259a60610a53c42ca3ce3b6507dcfa83d512b7 +0 -2
  714. package/.next/cache/next-babel-loader/index-v5/97/d6/58ace9efe0a848dd6afc46985c259aa6483d42d38dc74fced1a03d576230 +0 -2
  715. package/.next/cache/next-babel-loader/index-v5/98/71/42fb47d894d6df791318d9c0101d72d60a83d7ced39f59cb5c8c94c6ceaa +0 -2
  716. package/.next/cache/next-babel-loader/index-v5/98/cc/186b38759e71bbabac70e3ece6344c0cf4f0245edf2756ea91c161a88ed6 +0 -2
  717. package/.next/cache/next-babel-loader/index-v5/99/22/ba483a8876923ef057816bfcc58fa571e6f710699e1d93dfdc5ea206ed77 +0 -2
  718. package/.next/cache/next-babel-loader/index-v5/99/2b/0b6fae928f091c81fd7982f772d69e0837918e7d5ac379848582cba48b14 +0 -2
  719. package/.next/cache/next-babel-loader/index-v5/99/5a/2e6d74f2385547a28e298460c4eb44022b5eb5e0f08b731f109bb28ba7f1 +0 -2
  720. package/.next/cache/next-babel-loader/index-v5/99/ee/d44ec7e992235e57b41c868a9dc2ea01a99f9e0779eb6f69527e737254e0 +0 -2
  721. package/.next/cache/next-babel-loader/index-v5/99/ff/a1a00d34a108af16a63262ccbe95e625dc2d91567a8b6b47d0b2e3225b82 +0 -2
  722. package/.next/cache/next-babel-loader/index-v5/9a/b1/b47aaced70436879ca78ffd58bc67e710206f3b19019ae88b752c07ec82c +0 -2
  723. package/.next/cache/next-babel-loader/index-v5/9a/be/35d9dc026bb5e524d01e3f9a2f7b2d096b0b61840ad96b7e6523b8bc1a37 +0 -2
  724. package/.next/cache/next-babel-loader/index-v5/9b/7c/efdbd363999e24447af03d7338b02fdcc07fded8672ab09847a0e78a7033 +0 -2
  725. package/.next/cache/next-babel-loader/index-v5/9d/00/e3070a80a69ee96c293dca627f71d608de84fd1e55de1e41168cff85a0b3 +0 -2
  726. package/.next/cache/next-babel-loader/index-v5/9d/5c/cdc15a0b2c4111ad5822ac12a47a7bedf0b2e4b9c2183552b16e49d3959e +0 -2
  727. package/.next/cache/next-babel-loader/index-v5/9d/e1/534d74a96e6ee4772a0d870aad3f9f0a472c6d06ac8b2e70e5a504dee007 +0 -2
  728. package/.next/cache/next-babel-loader/index-v5/9e/c8/edd6363bfe15c0373b0f59f544bbb2d7ec6f32acc22013e2809c9caeb7a6 +0 -2
  729. package/.next/cache/next-babel-loader/index-v5/9e/d8/f4b305bb1348b790b7335d06d799d3c375a82a3e5cbab869f60a95cbebcc +0 -2
  730. package/.next/cache/next-babel-loader/index-v5/9e/e1/3ab16bbebdb4c8351d99b3da802f2c1a1d16d984b0cb0b3b2a2f907742fe +0 -2
  731. package/.next/cache/next-babel-loader/index-v5/9e/ed/8aea4e365a4ca34e3232dceec8e3be0fb67c457cf6224e07acb078b8f3fa +0 -2
  732. package/.next/cache/next-babel-loader/index-v5/9f/c0/dde66fec8a1457ee0e5b5243842952e1bbd0606550c6c14c5b80bf6e806c +0 -2
  733. package/.next/cache/next-babel-loader/index-v5/a0/43/80007fbd0492ec38e2fb54fca3e805a588e9ea9518e0925e080b5da5fdb1 +0 -2
  734. package/.next/cache/next-babel-loader/index-v5/a0/9b/cd95f72156d61c8137c968ec105ebe6aa09c2d38794528971b4a5f45e886 +0 -2
  735. package/.next/cache/next-babel-loader/index-v5/a1/0f/fb56bd2f56954ed98b1b5ab3706c199e8186a05d4c6c77dda3590a304463 +0 -2
  736. package/.next/cache/next-babel-loader/index-v5/a1/cf/5cc355652b7fea2c8d5b47224783cf85b2759faeec2174942288633891af +0 -2
  737. package/.next/cache/next-babel-loader/index-v5/a1/d9/2d11156f6a2469b1c345745a60236ba9820e6ef6871e8c65bd6bb875cb72 +0 -2
  738. package/.next/cache/next-babel-loader/index-v5/a3/b2/2aa2a385857a6784818b0034e396d6c4a5fb0689d7018fe5fe8474d50468 +0 -2
  739. package/.next/cache/next-babel-loader/index-v5/a4/34/bb281e69244b369a3f28cd2f5b0d224af97fcf322a7f7547b309557ac06a +0 -2
  740. package/.next/cache/next-babel-loader/index-v5/a4/62/e05b4122f0779ea84ac0a64f3967e1bbae07a84d5e3d15c2db3dcd7f8bf4 +0 -2
  741. package/.next/cache/next-babel-loader/index-v5/a5/f9/58c6bb9c34861f0e71ee3fb3cd18ea38e34ada6b24442bc4aa642da5d123 +0 -2
  742. package/.next/cache/next-babel-loader/index-v5/a6/38/a317960b978afa407446303c0936ecc5be8396aabf711a12194a493ba231 +0 -2
  743. package/.next/cache/next-babel-loader/index-v5/a6/51/41d4ca1bc7b2f6e49b91d09553e9d85d43db926045becc3f6e576b45836c +0 -2
  744. package/.next/cache/next-babel-loader/index-v5/a7/3c/949479eb679662755cee417615840eec9d470015fcdab9750af7ec0d2e2b +0 -2
  745. package/.next/cache/next-babel-loader/index-v5/a7/e1/afd0a19b2c10b1dbd0d4180c97d96fa56c85441158445d1774335494eacf +0 -2
  746. package/.next/cache/next-babel-loader/index-v5/a8/02/b8a550541d0b592f39c69f90af2b39d5780f607beb38decd7dc649d8cb4f +0 -2
  747. package/.next/cache/next-babel-loader/index-v5/a8/25/9f4c1ecadcaf6ae7c8db9162ce63276403046949c3c81c359dbae95af944 +0 -2
  748. package/.next/cache/next-babel-loader/index-v5/a8/4b/e65c0308fc91cce41cf309006741be7e8ff567ff255ca53134e3cd8f288c +0 -2
  749. package/.next/cache/next-babel-loader/index-v5/a8/6c/b4e887078c83f33545ea5d17b7d52adfe8a12fdb160717c8c798060042c1 +0 -2
  750. package/.next/cache/next-babel-loader/index-v5/a8/70/ad7a247d766d2663710872f9664c508821b0b438c0f6ec764021267a9def +0 -2
  751. package/.next/cache/next-babel-loader/index-v5/aa/f0/ed9737fef7e388937558d839e83c3ca70cfd8f4138c91dc923c91215f580 +0 -2
  752. package/.next/cache/next-babel-loader/index-v5/aa/fd/5a3822eee57fce786622e2dbd5b39102f57305e8578f24c34d87bf8f17dc +0 -2
  753. package/.next/cache/next-babel-loader/index-v5/ab/17/3e78ac5505cdc90b1507116d724c4cb2cb18d34766e8b4d8b8409e291019 +0 -2
  754. package/.next/cache/next-babel-loader/index-v5/ab/9f/cc49742e5f6bf3752452f3701b7bcf74fc4d71835f744f8ba723a4fa1dd0 +0 -2
  755. package/.next/cache/next-babel-loader/index-v5/ab/bf/fda00c620f4f701aebe4090f4d81b7d74a5cec26fa1f25dd1fae6f69c2e4 +0 -2
  756. package/.next/cache/next-babel-loader/index-v5/ab/fe/4e1a32d6b370cbf1f8cf19f598513d13492ea5cc529830f1536aab654905 +0 -2
  757. package/.next/cache/next-babel-loader/index-v5/ac/66/dde5689a4b98eac4ca37e45f1b9cfa9a260e078252888050bfa85746e059 +0 -2
  758. package/.next/cache/next-babel-loader/index-v5/ac/7f/e8441e5d69baa1fca289455c5cf699b6c2383f6ff9efbb388c7c5f964777 +0 -2
  759. package/.next/cache/next-babel-loader/index-v5/ad/3f/53c57a78a9f43cdd19179b6d329bf418eb5879a9ac62319e5fcf86c35fc7 +0 -2
  760. package/.next/cache/next-babel-loader/index-v5/ae/1a/e68abc4e07b9627e13a33a51d13854d0425c103da241bb570aac2feb3549 +0 -2
  761. package/.next/cache/next-babel-loader/index-v5/af/45/f38f5aa147af1a50c1dfcc99265da09edf4b52c5215161467711dc375809 +0 -2
  762. package/.next/cache/next-babel-loader/index-v5/b0/a9/3aefabf578961e7ed6ad851f82014c91343eec8bcd5353a8c6057ae7f6eb +0 -2
  763. package/.next/cache/next-babel-loader/index-v5/b0/d9/571147dc8db24b00c793d1b7115e1287635b579cfb2bf4fbfd20d695d6db +0 -2
  764. package/.next/cache/next-babel-loader/index-v5/b1/83/547d6a4df05c9ac39520f699ff3ce0d5a8854ff8ff76b470a89e62e84ab6 +0 -2
  765. package/.next/cache/next-babel-loader/index-v5/b1/bc/762924ce1ad5e87396cb0f84796bdc3b72e006386db764ae4fe98a0da6e4 +0 -2
  766. package/.next/cache/next-babel-loader/index-v5/b2/3f/52a4cf8c19b21f3e799391b041dde04dc205ce18d34415505b01dedf6464 +0 -2
  767. package/.next/cache/next-babel-loader/index-v5/b3/ab/abe917958d4eedeebefb9ea7a511dd0b0b869f5ed8c2b1220ac5c2b0ccdc +0 -2
  768. package/.next/cache/next-babel-loader/index-v5/b3/b4/122b9305443e55a254170a7b3e3c2fbb59cd855d97ab215b8d3e75d5fbe6 +0 -2
  769. package/.next/cache/next-babel-loader/index-v5/b5/47/f244c35b3254be89ff79029dbf3127ab725b4dbc3f80a61b481066746ece +0 -2
  770. package/.next/cache/next-babel-loader/index-v5/b5/a8/6e2f1c60bc00926945ec73afa5947e2c7d24f221778ab61332c8842b8c14 +0 -2
  771. package/.next/cache/next-babel-loader/index-v5/b5/ec/6cf053296cc37210c9e1091a21e07e2a0c6c026112d8df9be9d643118620 +0 -2
  772. package/.next/cache/next-babel-loader/index-v5/b6/40/376a672bf272dbe3c5f5b020a2939137536505502a154d3612da872c2faf +0 -2
  773. package/.next/cache/next-babel-loader/index-v5/b6/e5/9e2be32815bcbf4a6273c63e2c6cfe5956e4b404fb9ac27900b6d115dd1b +0 -2
  774. package/.next/cache/next-babel-loader/index-v5/b7/26/151b3fd35df768c531c1144d531d19efb64260ce425048f47bd9aa38a0c7 +0 -2
  775. package/.next/cache/next-babel-loader/index-v5/b7/f2/caef3a51df6f28768b82d4bfef45c958c106e9d5845c0c1519465dbd0156 +0 -2
  776. package/.next/cache/next-babel-loader/index-v5/b8/bb/c3902e2ff607c249d331c217ae5a46996ce24bccf990df256bdc7a7d96be +0 -2
  777. package/.next/cache/next-babel-loader/index-v5/b9/2f/0ea654e700472ed2fc7634e57c457bee1adb7bef3e3e4855f51a51f71d6c +0 -2
  778. package/.next/cache/next-babel-loader/index-v5/b9/58/af707350b0c2097cd968f920aeee5e6a64c85e484913c60158bef86377fa +0 -2
  779. package/.next/cache/next-babel-loader/index-v5/ba/14/244934761ecf2e2954a2eb3e9cdaf715cc6f8ae28c120f8be4916abd0ff8 +0 -2
  780. package/.next/cache/next-babel-loader/index-v5/ba/1b/ee4c5c6a8228f6299b6366225b83cfc226dc96cd3a9d9ff533fd05090cb5 +0 -2
  781. package/.next/cache/next-babel-loader/index-v5/ba/bf/6a6442351d7303ccd31a9590adc0dc0af1a7b790f7f922b2ea9fb0aa2d70 +0 -2
  782. package/.next/cache/next-babel-loader/index-v5/bb/47/1831644c32e0d7f066faa5c556a3eefb5b6b84d10057977ecb7f4f9adc5f +0 -2
  783. package/.next/cache/next-babel-loader/index-v5/bb/90/2f56d16bbab0eda1e1447de97633c11077e22d0ce80ac8eec1982a403d97 +0 -2
  784. package/.next/cache/next-babel-loader/index-v5/bd/f3/a990f78f2e3a155c60259f5269a1e6fdf82fbe419acb2941aa09647b3698 +0 -2
  785. package/.next/cache/next-babel-loader/index-v5/be/0c/a534c18acd388d6f7fd88b1f3240b5e83a3801a50b41be71dc6e92d30d52 +0 -2
  786. package/.next/cache/next-babel-loader/index-v5/be/d9/929948718335af74d98234e7bbbcad9c817bf3c2486a69a3aa786fa69bd6 +0 -2
  787. package/.next/cache/next-babel-loader/index-v5/bf/22/a3b995885d74589a633b7db67696565dc9671a09b0f5412b63c238c368c0 +0 -2
  788. package/.next/cache/next-babel-loader/index-v5/bf/53/4e7a61fd4278929ac813c786a2e9a2b28e46be8bd6beae5e80d4c262d641 +0 -2
  789. package/.next/cache/next-babel-loader/index-v5/bf/97/933fd5401621186ee78029a834f87b5d24531cf7396897b2da3ff4843a28 +0 -2
  790. package/.next/cache/next-babel-loader/index-v5/c0/2a/d660d4cc68f0eb04f74889b5b09ff0c423555f893e0a0f3acdfa13c5d032 +0 -2
  791. package/.next/cache/next-babel-loader/index-v5/c0/89/1fcc2df3bd78215f9b9af7a6cbea271b486f1554d894e5f79283e231de3e +0 -2
  792. package/.next/cache/next-babel-loader/index-v5/c1/57/c6e82f9a1c9a1eff6af5406c764611d0030c6a442c50b31bad7dae8bbce6 +0 -2
  793. package/.next/cache/next-babel-loader/index-v5/c2/8a/9602673ec8103968e22c88ff666ac7f3125fda65033b70ca5c1919e9ed2b +0 -2
  794. package/.next/cache/next-babel-loader/index-v5/c2/ae/6dbb798132963d6cbdea74779c58738fbb76292ecf76dc250250a7fe9191 +0 -2
  795. package/.next/cache/next-babel-loader/index-v5/c2/d2/a5982245034ce5bf60e0e20234f761cfd9ab2266e03cfd17bb7e28c4629a +0 -2
  796. package/.next/cache/next-babel-loader/index-v5/c4/38/84ae45ef7ea11c24ec343fc568eb2b08482830d92dd9acae72da5ad208ed +0 -2
  797. package/.next/cache/next-babel-loader/index-v5/c4/79/14ff201fa6ce0c14eb02eb56e1a4fa39da8be3de10c547789596877f40a2 +0 -2
  798. package/.next/cache/next-babel-loader/index-v5/c6/16/307db6c11093360729f3aaa9682f457548e650fc22130560e0d100bac003 +0 -2
  799. package/.next/cache/next-babel-loader/index-v5/c6/ee/b41074d5b6133fb75f01c3d937d106c4b0425d97f62fcd3a075d7397a029 +0 -2
  800. package/.next/cache/next-babel-loader/index-v5/c8/a8/e79c26edc5e4f325d66460a3e972b40e900ac511f1443b676a2868f24d5a +0 -2
  801. package/.next/cache/next-babel-loader/index-v5/c8/d7/1c61fa3949074a3326da820fbe1a56b97d2828e448d299049cb77cc35ee2 +0 -2
  802. package/.next/cache/next-babel-loader/index-v5/c9/31/8b93e021b0d0296de3281307d46e0ed144bb07f40fd3a90d7da1f5427697 +0 -2
  803. package/.next/cache/next-babel-loader/index-v5/c9/78/f56f5f8035e9bfe505644acab5056d0a2c715a508092c5fbbccdb130b6a6 +0 -2
  804. package/.next/cache/next-babel-loader/index-v5/ca/0b/aab9288e15727fcf895af6cfc8a5465e238a1c4a3789d5c0a2db08e18a9d +0 -2
  805. package/.next/cache/next-babel-loader/index-v5/ca/11/bce6305b2119f80cff46ce7d9ebb978d188c55790930ff794707b84d87e1 +0 -2
  806. package/.next/cache/next-babel-loader/index-v5/cb/61/d25b411e6556fcf011cf0b9b937ddfa9779a004962b9f5a3a8f62e14b1c8 +0 -2
  807. package/.next/cache/next-babel-loader/index-v5/cb/b1/98a671eb9bf43205c880311202fa4b2cb33544a14e4487d02aa1b53f0236 +0 -2
  808. package/.next/cache/next-babel-loader/index-v5/cb/b2/80cb0dad9c12a49f4453355d80480dc8f7cd23ec69f5f8ad12949930d629 +0 -2
  809. package/.next/cache/next-babel-loader/index-v5/cb/dd/e144492d854078b98b45a3f6d91d6256381abd6c6e2ad1332b7fc2b52b73 +0 -2
  810. package/.next/cache/next-babel-loader/index-v5/cc/fe/1ce64b86912936bc2c3db7a4616c86e8e8311a3a120cc29f605d967c9618 +0 -2
  811. package/.next/cache/next-babel-loader/index-v5/cd/52/bae438375a8a5ff4eb6beab8d3fe956acf28cd5bb7fd9a828c65713309be +0 -2
  812. package/.next/cache/next-babel-loader/index-v5/ce/2a/04816eafe983d2ab8b05a33433eee6198898a8e9475555bc2a61f21137ca +0 -2
  813. package/.next/cache/next-babel-loader/index-v5/ce/9b/52d653bf4db3dc124d6310e5798741b0c9802bc1d28f284da62dc8351564 +0 -2
  814. package/.next/cache/next-babel-loader/index-v5/ce/e2/85927cd5b2377347f82f9e48af22bbf552b99f1f11241a4696219e82e031 +0 -2
  815. package/.next/cache/next-babel-loader/index-v5/cf/37/a9d24eeafbb6d6e1e3655f2688d9e9e749356c986e69883a0b07d2220564 +0 -2
  816. package/.next/cache/next-babel-loader/index-v5/cf/69/5c6ed94c361b3bb917410ec6b17c89a48e4cab919f560eabfbb41658c5bb +0 -2
  817. package/.next/cache/next-babel-loader/index-v5/d0/f8/5b946ab7c83065ae2213f20de67aa9f993f8d19f7ec9e3a5f65ecf795371 +0 -2
  818. package/.next/cache/next-babel-loader/index-v5/d1/22/d870485777fab69eaa7f36d202f65c0d60b2da4e83303784c89fdd263f75 +0 -2
  819. package/.next/cache/next-babel-loader/index-v5/d1/cb/692f9aa48ea673cbe8cec13bebec360531b8072ea2b558fdc37c5b1ded45 +0 -2
  820. package/.next/cache/next-babel-loader/index-v5/d1/fa/443534db86414f4263fdcdf2a4be6eb8b6f131b6030beb38427aa1cecd94 +0 -2
  821. package/.next/cache/next-babel-loader/index-v5/d4/36/f03dce208edbd61de8533f03b15857745ab8a079469a35089c414e06d4d7 +0 -2
  822. package/.next/cache/next-babel-loader/index-v5/d4/fa/8c77bf40c4a32eb242d6232af1a9609888b7005f701e1d31b5b19f43982e +0 -2
  823. package/.next/cache/next-babel-loader/index-v5/d5/26/eba5f9f861a79a36d2241acc44733a6166169939e15e880852b74a7d4170 +0 -2
  824. package/.next/cache/next-babel-loader/index-v5/d5/59/b7edf00de3def29c539fd16a30ce3fa2d235e23b0b1ccf547be255242358 +0 -2
  825. package/.next/cache/next-babel-loader/index-v5/d5/5c/8ee569a8f571b008cb7f8266e72629d6f840b007bbb31e552539772b1d56 +0 -2
  826. package/.next/cache/next-babel-loader/index-v5/d5/a4/f04e5e18d63f17cf5a47a1c7149eac7cb4dd93921898562b08d3ea5360a1 +0 -2
  827. package/.next/cache/next-babel-loader/index-v5/d6/64/ae09623474dc37923386fb6995a14ffc162d4ed9429d46cf2814af8f3925 +0 -2
  828. package/.next/cache/next-babel-loader/index-v5/d6/9c/e8056e7750446ea239fe7f9ed0db5590944a2b1e71d60d97b8c5ea080561 +0 -2
  829. package/.next/cache/next-babel-loader/index-v5/d7/d6/5cd7e4d4a9764475e49d2b697f6ef2bc4bc495584aed6189b7f8f4e289a0 +0 -2
  830. package/.next/cache/next-babel-loader/index-v5/d7/e5/e388c871a63f34a8c0e2d960dd6d1bfa8307212f12f9e5746ab4bb8a5b49 +0 -2
  831. package/.next/cache/next-babel-loader/index-v5/d8/7c/2f83dba592a60beaac58630da02c9ef693c6a5d03a585ee94ac936adea5d +0 -2
  832. package/.next/cache/next-babel-loader/index-v5/d9/09/11081cfa482876e66ca88c58f39a1f343925b0744d0d0f3268e5329c8cd3 +0 -2
  833. package/.next/cache/next-babel-loader/index-v5/d9/48/0ca6f9e792c4f352537b27ba92b983962a9dd3e5090a0a66e67801096702 +0 -2
  834. package/.next/cache/next-babel-loader/index-v5/d9/57/b21143144c7d2592539c6ab2c2892c24af7a359cd7ad8b529251a4928d31 +0 -2
  835. package/.next/cache/next-babel-loader/index-v5/d9/b6/fefa612e2c50ae95e9e3470b915fc9e6505482e558841b7f795f5a21dcbc +0 -2
  836. package/.next/cache/next-babel-loader/index-v5/d9/d1/f9936da0e37321b52db16609ffe41fa81886de62faf9084b10453fe74137 +0 -2
  837. package/.next/cache/next-babel-loader/index-v5/da/0b/da5e3309c3237063682f21dd4c9c0e5106b17f3a67216aebbc4444ee2fc7 +0 -2
  838. package/.next/cache/next-babel-loader/index-v5/da/93/9e6760444e8c717f3410139c6ff4911965203dafa50a653c2b4d6b694190 +0 -2
  839. package/.next/cache/next-babel-loader/index-v5/da/f2/f921d8aaa507aad953161cd16234c2b6a8fe896330f8e7fb155c698200a5 +0 -2
  840. package/.next/cache/next-babel-loader/index-v5/dc/2d/c874ec17bd932c6fb0e84296f7c8132e029f265d3fb60c7be934aa21590e +0 -2
  841. package/.next/cache/next-babel-loader/index-v5/dc/d6/cf8a6e67171ba5d079b05242c0cbae95290c78233e09383b4fe1a95067b9 +0 -2
  842. package/.next/cache/next-babel-loader/index-v5/dd/5d/6b66f651c28d16d6498dd282c24a7b5a66ada29f53bbd9f33f52985963ee +0 -2
  843. package/.next/cache/next-babel-loader/index-v5/dd/91/fc45ab00b22ea7d2ef37837f4a874c26be0a3093e453ad3bd8837e46ac73 +0 -2
  844. package/.next/cache/next-babel-loader/index-v5/de/43/61b45e92b6610901cb9a00b43807fcd5e7580a3c68508d0417a62e6d08fa +0 -2
  845. package/.next/cache/next-babel-loader/index-v5/de/8f/2a1bdb8e55fb1d8d904a7c714ecd5d3546e36bdbdcb13bd5ac6d16308be5 +0 -2
  846. package/.next/cache/next-babel-loader/index-v5/df/c5/f52bb6bd30948c2aa956695a0b8c5698d2321b392ed21cce1a9dc13dfd72 +0 -2
  847. package/.next/cache/next-babel-loader/index-v5/e0/2e/6cb0c1c26a409b4833f40ed50fcb5663b568de90b662ef81ea7bfcad6dc5 +0 -2
  848. package/.next/cache/next-babel-loader/index-v5/e0/3c/2df169cfeeef6b2a1e56cdcb63df95528ad8e03604c887540e2f4cad023b +0 -2
  849. package/.next/cache/next-babel-loader/index-v5/e0/cc/60f6264c212f48146f0030656402ad96813741afcc5071b37da08db4bb65 +0 -2
  850. package/.next/cache/next-babel-loader/index-v5/e3/12/06a383404f96d98af57cee590286a9ab9cd8329a8153a21aca1eaee9784e +0 -2
  851. package/.next/cache/next-babel-loader/index-v5/e3/34/d044874e6f6e796348bc6e7f025668403f6bc358287150a3eda8ce480866 +0 -2
  852. package/.next/cache/next-babel-loader/index-v5/e5/55/7d50f26e423b468e87ff6b4c963dde2708504f475945ba15212ba23ca091 +0 -2
  853. package/.next/cache/next-babel-loader/index-v5/e5/f3/ea7cde3d342757bf3a862930821b5cae095d933b88d12a2918a6c44e6448 +0 -2
  854. package/.next/cache/next-babel-loader/index-v5/e6/0e/517380b0b652ab140e06e969f4bc9a034ca2ea94fe515c90326dbf0d0284 +0 -2
  855. package/.next/cache/next-babel-loader/index-v5/e7/2f/310e9879bd68a0ff6c036e589d7f7f5ea37e98c6029392c22747657301b8 +0 -2
  856. package/.next/cache/next-babel-loader/index-v5/e7/3b/0c70670e96f37d8a76c949fa9d4428b9ce80f1e8cd1c43826c0559731bcb +0 -2
  857. package/.next/cache/next-babel-loader/index-v5/e9/c5/c95a745aab17dcb55fb8e872458e5c13265f6884d2f99aacef119383b10e +0 -2
  858. package/.next/cache/next-babel-loader/index-v5/ea/17/ad823f90697a7499231796a8a181e7cc29da8bf0aa277c3421740e9fd16e +0 -2
  859. package/.next/cache/next-babel-loader/index-v5/ea/6e/232612dae36ca4ed3e832f812962fbf1be66592bad72280ee61a56b5a6df +0 -2
  860. package/.next/cache/next-babel-loader/index-v5/ea/ee/cfbde17dc8f4095d91db23ff75a536be6a5b3a79ef05fe162cf90cf1991b +0 -2
  861. package/.next/cache/next-babel-loader/index-v5/eb/16/75d3fc0562e756a861e4f95aa18f5df4a415177e6c38cf7bc738f6e40eff +0 -2
  862. package/.next/cache/next-babel-loader/index-v5/eb/45/4094bc61c3c532e80b8e3c37a6d8533cc2e8e1977afbfd50737b24959197 +0 -2
  863. package/.next/cache/next-babel-loader/index-v5/eb/f3/f069bb5d03b747954a9a531dc55ea1f23511445a2c7dedd52cf8ad059c17 +0 -2
  864. package/.next/cache/next-babel-loader/index-v5/eb/fe/89891102097458f0c65fb13014c8ff557d0224500e9c2812002caa9fcaf7 +0 -2
  865. package/.next/cache/next-babel-loader/index-v5/ec/d5/cf960ab003ecc859e6131d2b4c5893f3c24cab569163cf1d65b6eb3248c7 +0 -2
  866. package/.next/cache/next-babel-loader/index-v5/ed/48/c4b94861e52c655aee39939f86b64c6778e9a349d5d861a3d0a96b7f740c +0 -2
  867. package/.next/cache/next-babel-loader/index-v5/ee/9a/75c58542144e441fd3b9e556fd709c741f222d5c56af004f0d95a9bc9a88 +0 -2
  868. package/.next/cache/next-babel-loader/index-v5/ee/a2/8370d6b1bc098a7b0aaee605d982a91d23ebd80b17873d5db9447b4caed4 +0 -2
  869. package/.next/cache/next-babel-loader/index-v5/ee/bb/96772bcc40c3b54b8188dd032baa06b3a73b54e574f100a0fdc2fa5899cd +0 -2
  870. package/.next/cache/next-babel-loader/index-v5/f0/3e/03bd52f942c93b0da3ea1ac1630b8a3c1beed82495259c4d5f0d3fe8dadd +0 -2
  871. package/.next/cache/next-babel-loader/index-v5/f0/61/a87606ba275ee2cc9b926d9e29290b09d03a37a91ea2af7e5baf2a39b402 +0 -2
  872. package/.next/cache/next-babel-loader/index-v5/f0/89/59adc63d4882a653c899a17ca102404198b424b6d378c8ce7191b947e7d5 +0 -2
  873. package/.next/cache/next-babel-loader/index-v5/f1/8f/38316215d0701c175563d0212fbfef71d8a3d321e9e09e8a34b0ca65b635 +0 -2
  874. package/.next/cache/next-babel-loader/index-v5/f3/0b/edd7107f19e7dd8a05e104b5cb4383ed50a51b0c2ccc41913671027125c5 +0 -2
  875. package/.next/cache/next-babel-loader/index-v5/f3/b2/87c6d978e889308075141db91155cfe48db23376a39df0bda271246fc6df +0 -2
  876. package/.next/cache/next-babel-loader/index-v5/f4/13/bddbe42f66ba4420ec05692712256ac2eeab7ac1f9c8d67a78a1dece4a0a +0 -2
  877. package/.next/cache/next-babel-loader/index-v5/f4/48/b81a103882eb20c08b8339c55cb71da25a2c017d42c40b78a51145e28da9 +0 -2
  878. package/.next/cache/next-babel-loader/index-v5/f5/74/a938f3b00e9dab57a659bd31094607cca5169b32a7692105e34bd63d74ce +0 -2
  879. package/.next/cache/next-babel-loader/index-v5/f5/8f/e4328e1ab1c7614a657ac2ed7972aa8d1a8a99cfa52aaab6d8231cdab8d4 +0 -2
  880. package/.next/cache/next-babel-loader/index-v5/f5/f0/ad761754570de5aabfe6d8e01ff80b2925e08e39a7e6ce59da8ff994ce35 +0 -2
  881. package/.next/cache/next-babel-loader/index-v5/f6/59/729fd94f2ceb3fdb8f5c12f6ab80b4fb0f2cdd83dbaef839359271283fb5 +0 -2
  882. package/.next/cache/next-babel-loader/index-v5/f6/9e/93ca597d6237876ebdc8e02916b0946067ddee077e8e78eae135d89ee49c +0 -2
  883. package/.next/cache/next-babel-loader/index-v5/f6/b2/dd10784f87e1c841bbfc71baeaa5aabaf254c605fc82c145627a718ef805 +0 -2
  884. package/.next/cache/next-babel-loader/index-v5/f6/d4/49cb58288e2119cc1f1947fe9fad7e6f61141c4e0f343156ef8fb626bd73 +0 -2
  885. package/.next/cache/next-babel-loader/index-v5/f7/3c/00f63331086baeef2c1b7ceff69252d0eee1a8009387a9be7a368ca82d0b +0 -2
  886. package/.next/cache/next-babel-loader/index-v5/f7/66/2bd294f733a3b90272872f929f4999ebef6b89f356dcffb1e9a4a37849e1 +0 -2
  887. package/.next/cache/next-babel-loader/index-v5/f7/68/f7d5743454c8019b38d85c5d099ad62cc35a44328aa2b504196ff2ac113b +0 -2
  888. package/.next/cache/next-babel-loader/index-v5/f7/7b/00ab5eb5f012c63a78582f5df760b33b006f8d3ef055424bfef21292421f +0 -2
  889. package/.next/cache/next-babel-loader/index-v5/f7/fe/b89e1bc71482bbd976a2ac2d05000aecade244e526c8ab444acb72350615 +0 -2
  890. package/.next/cache/next-babel-loader/index-v5/fa/d1/0db9d9e49174b7fed15c72417fbf02602c44795c484ffcb6685725e95d7a +0 -2
  891. package/.next/cache/next-babel-loader/index-v5/fb/65/b950a8c5a13eefcadd22fc800c41943a5e0688e83b2649230cb465e75043 +0 -2
  892. package/.next/cache/next-babel-loader/index-v5/fb/6a/0cc2d2593b2f744013fe1107e4c66a24322f22dee4cb841a63e6d8e8fbd8 +0 -2
  893. package/.next/cache/next-babel-loader/index-v5/fb/b1/919ec916fdc235ddcf1bec1471694f314656a3f446f7d22b685c1587a832 +0 -2
  894. package/.next/cache/next-babel-loader/index-v5/fc/67/f96baa49fa8a53177bc1f5a176fcbe895ca33453125d29a739d1e1d4b4d0 +0 -2
  895. package/.next/cache/next-babel-loader/index-v5/fd/87/214f05df0163e0f376fbc9f0f004db7a388e782268c84d37e7d9338ec1dd +0 -2
  896. package/.next/cache/next-babel-loader/index-v5/fd/89/d41f7ca04a2f1fdbfe38013c4d3ee7e5dbf6c98bb0b640839ff727ab0b98 +0 -2
  897. package/.next/cache/next-babel-loader/index-v5/fe/24/410c861bc7b03d634a02e8ed8c897109ec35610e4b38dcd84a0515245458 +0 -2
  898. package/.next/cache/next-babel-loader/index-v5/ff/7b/f6a1bed78d01f4123891fd8da71efe7f1e03084dedf3d0a15498a4fe9fa0 +0 -2
  899. package/.next/cache/next-babel-loader/index-v5/ff/87/e785c7e8138074842ffb705addc7e7e0660eaf5730bfd9acfb929311b2f7 +0 -2
  900. package/.next/cache/next-minifier/content-v2/sha512/03/cc/27eb90edb1e77781c1c6d037115825c4d2b637f351818b2c5a3636bbf46c01efecea8db0802433be279ee0e1996c820ebde0a40bb53f156ef1f8b2d7ef94 +0 -1
  901. package/.next/cache/next-minifier/content-v2/sha512/09/d9/3c743da751cfd09447046eb31c0e7a9f3d8e8e3005525e381914c57f1c7cbdc7531223347f50687208eb41a498ce2e12563977597a15ff3295dd6b40bdfb +0 -1
  902. package/.next/cache/next-minifier/content-v2/sha512/33/cf/09dc9d1ce52d291fd2add7aefdaaef4b31018aaabd96ce42fb36148b507f8ada3a225652b877d8de086d38fa62f05712d928877bde223a265e4f0ff76166 +0 -1
  903. package/.next/cache/next-minifier/content-v2/sha512/5c/7b/4d575258cc1a5dbfc8902932d26f4649579d6bb68b94d8d7f8083fec2cbacfc6b7bdc72ed750596ff0cc9e7d0033b3c1a43afae6d2d5588eb21aa90a815c +0 -1
  904. package/.next/cache/next-minifier/content-v2/sha512/68/9e/126263862116b8cfb0b6176291647962569fbe9ad460455dbb4ae4fa08753d89e81e150e0c2baec0c2964ea6e7e932f2ff64b66ab66c4d767a977f947db6 +0 -1
  905. package/.next/cache/next-minifier/content-v2/sha512/69/dd/9a3872044750469229a3b7dfe3377148882753499a433a5a5c365fef1da94c8713bbc7d18bb359164cd4b0d488979b06e76ca0b098ab1d2e2621d0701801 +0 -1
  906. package/.next/cache/next-minifier/content-v2/sha512/89/fe/ba6e55585ba1c3c775a7b7ed402f566aa494585eb69138c88f276e04ffb21ef0bfb51a66a4512ff386d1194a43c29acc2b5643cd17b2fb6cee044b04ca54 +0 -1
  907. package/.next/cache/next-minifier/content-v2/sha512/95/3c/7eb9afd0984dadc7f92bd7921ab3f1ece29251d4a2eb2199da44e58e90de3ac96261539211a82bb3ecee6aa52a7399e3f97023ce9baffdea739eed2f2683 +0 -1
  908. package/.next/cache/next-minifier/content-v2/sha512/9d/f5/819c885e81e35a140a1cf9ff23d724f7e53de7a98665a02f7bf018f812816c64c18f87c2aac220699ddb6151d0cdb2c78bb53729de0493c4a2f444605326 +0 -1
  909. package/.next/cache/next-minifier/content-v2/sha512/c6/2a/02f2934c374ad360350e1d48b251a2ac1116704e4ff2c40b83c7f85aef976b2d44be3512a1b17a465632ad8a7e174e4928d878114ff689de3c75eebf0b50 +0 -1
  910. package/.next/cache/next-minifier/content-v2/sha512/cc/e4/1818919ae3576067c8d138a274c96ceee1eb5a5f6bf0326cec0b4ee43f77e51e0b92ddb80c8e87b3823ea19b66d4c14eabf573b8f15ccd8dc307c0f64f24 +0 -1
  911. package/.next/cache/next-minifier/content-v2/sha512/e8/bb/f37f127e45778d2a05462ea4dd47698610949d72b4aef57544f8fadebdbea0836a693d5e0bbde4217485214333b497186a257d305d5536e0a7b2548392a3 +0 -1
  912. package/.next/cache/next-minifier/index-v5/01/65/3fd4d53ac6bf3be1ce060354d4d6799fa1451269e201272a3e777f4151bd +0 -2
  913. package/.next/cache/next-minifier/index-v5/30/46/3bb994f67e4f1439ddb483d00fa762011785b465807e8082e07e57a8d818 +0 -2
  914. package/.next/cache/next-minifier/index-v5/37/4d/616defc6dc0a87885935627f4b00f77d1b818564f4aea7e2626325592654 +0 -2
  915. package/.next/cache/next-minifier/index-v5/37/dd/771686f18c78942997a8503bd00ab66948d3af5ad4909d88251f28841e18 +0 -2
  916. package/.next/cache/next-minifier/index-v5/3f/b5/076a4a10e17d103711e65d32b25af501f088ed7e60fdb5077a6e8c694628 +0 -2
  917. package/.next/cache/next-minifier/index-v5/75/ff/d39de98ecfeac118b8d8d1b7d677442bfed0aecce0dec59d7aa2699e1b76 +0 -2
  918. package/.next/cache/next-minifier/index-v5/9b/a8/71cc88696ce83447c4ba0d33054aa0c028b68a11330401685612045561ed +0 -2
  919. package/.next/cache/next-minifier/index-v5/9c/b7/134fef6709fc1917d780038abbfcf876bf98b2ef4eca395b61e099e88519 +0 -2
  920. package/.next/cache/next-minifier/index-v5/c0/66/6e4662c1d725613355ccd5b4a6cb6e1d01ca4907bc68ed5de7186b76e4e8 +0 -2
  921. package/.next/cache/next-minifier/index-v5/c5/dc/eb2bbd87e191535f81403d4e9a647a0699f39e253dececa55de9474c95a4 +0 -2
  922. package/.next/cache/next-minifier/index-v5/f7/d0/fe7fd9cb9dd8a2309dd26449f1a35c94ed4db0812fb43f1ffbce35678859 +0 -2
  923. package/.next/cache/next-minifier/index-v5/f9/19/c8354607b7c542c0eef183095ad58a023c0c6adbe1cbb1f689ebf7284421 +0 -2
  924. package/.next/server/init-server.js.js +0 -111
  925. package/.next/server/on-error-server.js.js +0 -111
  926. package/.next/server/ssr-module-cache.js +0 -4
  927. package/.next/static/FFAhmftgC9dAORkC7Ob65/_buildManifest.js +0 -1
  928. package/.next/static/chunks/9173c43c67b8e6b6863c872190b4ad904108d7de.705974da58bafedb05a6.js +0 -1
  929. package/.next/static/chunks/9173c43c67b8e6b6863c872190b4ad904108d7de_CSS.210d3c80a2b0e2401248.js +0 -1
  930. package/.next/static/chunks/9ce9955a8bcc07a8fd1a36edfefd3f331a5795a5.4360b6ac25781f339d0d.js +0 -1
  931. package/.next/static/chunks/commons.f6669c970394ada2e4bf.js +0 -1
  932. package/.next/static/chunks/framework.29f9e2f3d4a33bafbaa5.js +0 -1
  933. package/.next/static/chunks/main-ae763c694935b5b982c8.js +0 -1
  934. package/.next/static/chunks/pages/404-a78979d74ede8ec03fd0.js +0 -1
  935. package/.next/static/chunks/pages/_app-ee510b5b1605015e3c60.js +0 -1
  936. package/.next/static/chunks/pages/_error-901cfb873acbc7f2ad52.js +0 -1
  937. package/.next/static/chunks/pages/index-0698b6ffc46ed4a90feb.js +0 -1
  938. package/.next/static/chunks/polyfills-514edf498b3bf9f3a6df.js +0 -1
  939. package/.next/static/chunks/webpack-245f049e565ebf942e09.js +0 -1
  940. package/.next/static/css/c6c0e4ce9c9eb2e61c9b.css +0 -1
  941. package/.next/static/css/cce34aac673a34325009.css +0 -2
  942. package/.next/static/css/df0fedf96cb88babdefb.css +0 -1
  943. package/src/components/SvgIcon/SvgIcon.tsx +0 -13
  944. package/src/components/SvgIcon/index.ts +0 -1
  945. package/src/icons/flagEs.svg +0 -26
@@ -1 +0,0 @@
1
- {"code":"(window.webpackJsonp_N_E=window.webpackJsonp_N_E||[]).push([[3],{\"/MKj\":function(e,t,r){\"use strict\";r.d(t,\"a\",(function(){return l})),r.d(t,\"b\",(function(){return m})),r.d(t,\"c\",(function(){return O}));var n=r(\"q1tI\"),o=r.n(n),c=(r(\"17x9\"),o.a.createContext(null));var i=function(e){e()},a={notify:function(){}};function u(){var e=i,t=null,r=null;return{clear:function(){t=null,r=null},notify:function(){e((function(){for(var e=t;e;)e.callback(),e=e.next}))},get:function(){for(var e=[],r=t;r;)e.push(r),r=r.next;return e},subscribe:function(e){var n=!0,o=r={callback:e,next:null,prev:r};return o.prev?o.prev.next=o:t=o,function(){n&&null!==t&&(n=!1,o.next?o.next.prev=o.prev:r=o.prev,o.prev?o.prev.next=o.next:t=o.next)}}}}var s=function(){function e(e,t){this.store=e,this.parentSub=t,this.unsubscribe=null,this.listeners=a,this.handleChangeWrapper=this.handleChangeWrapper.bind(this)}var t=e.prototype;return t.addNestedSub=function(e){return this.trySubscribe(),this.listeners.subscribe(e)},t.notifyNestedSubs=function(){this.listeners.notify()},t.handleChangeWrapper=function(){this.onStateChange&&this.onStateChange()},t.isSubscribed=function(){return Boolean(this.unsubscribe)},t.trySubscribe=function(){this.unsubscribe||(this.unsubscribe=this.parentSub?this.parentSub.addNestedSub(this.handleChangeWrapper):this.store.subscribe(this.handleChangeWrapper),this.listeners=u())},t.tryUnsubscribe=function(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null,this.listeners.clear(),this.listeners=a)},e}();var l=function(e){var t=e.store,r=e.context,i=e.children,a=Object(n.useMemo)((function(){var e=new s(t);return e.onStateChange=e.notifyNestedSubs,{store:t,subscription:e}}),[t]),u=Object(n.useMemo)((function(){return t.getState()}),[t]);Object(n.useEffect)((function(){var e=a.subscription;return e.trySubscribe(),u!==t.getState()&&e.notifyNestedSubs(),function(){e.tryUnsubscribe(),e.onStateChange=null}}),[a,u]);var l=r||c;return o.a.createElement(l.Provider,{value:a},i)},f=(r(\"wx14\"),r(\"zLVn\"),r(\"2mql\"),r(\"TOwV\"),\"undefined\"!==typeof window&&\"undefined\"!==typeof window.document&&\"undefined\"!==typeof window.document.createElement?n.useLayoutEffect:n.useEffect);r(\"ANjH\");function p(){return Object(n.useContext)(c)}function d(e){void 0===e&&(e=c);var t=e===c?p:function(){return Object(n.useContext)(e)};return function(){return t().store}}var y=d();function h(e){void 0===e&&(e=c);var t=e===c?y:d(e);return function(){return t().dispatch}}var m=h(),b=function(e,t){return e===t};function v(e){void 0===e&&(e=c);var t=e===c?p:function(){return Object(n.useContext)(e)};return function(e,r){void 0===r&&(r=b);var o=t(),c=function(e,t,r,o){var c,i=Object(n.useReducer)((function(e){return e+1}),0)[1],a=Object(n.useMemo)((function(){return new s(r,o)}),[r,o]),u=Object(n.useRef)(),l=Object(n.useRef)(),p=Object(n.useRef)(),d=Object(n.useRef)(),y=r.getState();try{c=e!==l.current||y!==p.current||u.current?e(y):d.current}catch(h){throw u.current&&(h.message+=\"\\nThe error may be correlated with this previous error:\\n\"+u.current.stack+\"\\n\\n\"),h}return f((function(){l.current=e,p.current=y,d.current=c,u.current=void 0})),f((function(){function e(){try{var e=l.current(r.getState());if(t(e,d.current))return;d.current=e}catch(h){u.current=h}i()}return a.onStateChange=e,a.trySubscribe(),e(),function(){return a.tryUnsubscribe()}}),[r,a]),c}(e,r,o.store,o.subscription);return Object(n.useDebugValue)(c),c}}var g,O=v(),w=r(\"i8i4\");g=w.unstable_batchedUpdates,i=g},\"/VMF\":function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=function(){function e(e){var t=e.board,r=e.cells;this.board=t,this.cells=r}return e.prototype.canBePlaced=function(e){var t=this.getNumberOfEmptyCells();return t>=1&&t<=e.maximumNumberOfCharacters&&(this.hasAtLeast1NonEmptyCell()||this.collides()||this.goesThroughBoardCenter()&&this.board.isEmpty())},e.prototype.clone=function(){return new e({board:this.board,cells:this.cells.map((function(e){return e.clone()}))})},e.prototype.collides=function(){var e=this;return this.cells.some((function(t){return t.isEmpty&&e.board.collides(t)}))},e.prototype.getIndexOfFirstCellWithoutTile=function(){return this.cells.findIndex((function(e){return!e.hasTile()}))},e.prototype.getNumberOfEmptyCells=function(){return this.cells.filter((function(e){return e.isEmpty})).length},e.prototype.goesThroughBoardCenter=function(){var e=this;return this.cells.some((function(t){return t.x===e.board.center.x&&t.y===e.board.center.y&&t.isEmpty}))},e.prototype.hasAtLeast1EmptyCell=function(){return this.cells.some((function(e){return e.isEmpty}))},e.prototype.hasAtLeast1NonEmptyCell=function(){return this.cells.some((function(e){return!e.isEmpty}))},e.prototype.getCollisions=function(){return[]},e.prototype.toJson=function(){return{cells:this.cells.map((function(e){return e.toJson()})),collisions:this.getCollisions().map((function(e){return e.toJson()})),word:this.toString()}},e.prototype.toString=function(){return this.cells.map(String).join(\"\")},e}();t.default=n},\"10rO\":function(e,t,r){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.tilesDe=t.tilesPl=t.tilesFr=t.tilesEs=t.tilesEn=void 0;var o=r(\"3/hz\");Object.defineProperty(t,\"tilesEn\",{enumerable:!0,get:function(){return n(o).default}});var c=r(\"KFH4\");Object.defineProperty(t,\"tilesEs\",{enumerable:!0,get:function(){return n(c).default}});var i=r(\"87Kc\");Object.defineProperty(t,\"tilesFr\",{enumerable:!0,get:function(){return n(i).default}});var a=r(\"2q6C\");Object.defineProperty(t,\"tilesPl\",{enumerable:!0,get:function(){return n(a).default}});var u=r(\"5x6p\");Object.defineProperty(t,\"tilesDe\",{enumerable:!0,get:function(){return n(u).default}})},\"2QrI\":function(e){e.exports=JSON.parse('{\"cell.set-blank\":\"Marcar como en blanco\",\"cell.set-not-blank\":\"Marcar como no en blanco\",\"cell.toggle-direction\":\"Direcci\\xf3n de escritura: haga clic para alternar\",\"common.blanks\":\"Blancos\",\"common.clear\":\"Borrar\",\"common.close\":\"Cerrar\",\"common.consonants\":\"Consonantes\",\"common.loading\":\"Cargando\",\"common.points\":\"Puntos\",\"common.tiles\":\"Longitud\",\"common.two-letter-tiles\":\"Dos letras\",\"common.vowels\":\"Vocales\",\"common.word\":\"Palabra\",\"common.words\":\"Palabras\",\"dictionary.empty-state.no-definitions\":\"La palabra existe en el diccionario pero no tiene una definici\\xf3n.\",\"dictionary.empty-state.no-results\":\"No se puede encontrar la definici\\xf3n de palabra en el diccionario.\",\"dictionary.empty-state.not-allowed\":\"Esta palabra no es aceptable.\",\"dictionary.empty-state.uninitialized\":\"Aqu\\xed se mostrar\\xe1 la definici\\xf3n del diccionario de la \\xfaltima palabra resaltada.\",\"dictionary.input.placeholder\":\"Busca el diccionario...\",\"empty-state.error\":\"Error\",\"empty-state.info\":\"Info\",\"empty-state.success\":\"S\\xed!\",\"empty-state.warning\":\"Vaya!\",\"github\":\"Ver este proyecto en GitHub\",\"keyMap\":\"Atajos de teclado\",\"keyMap.board\":\"Tablero\",\"keyMap.board.toggle-blank\":\"Marcar / desmarcar un espacio en blanco\",\"keyMap.board.toggle-direction\":\"Alternar direcci\\xf3n de escritura\",\"keyMap.board-and-rack\":\"Tablero y estante\",\"keyMap.board-and-rack.insert-two-letter-tile\":\"Insertar mosaico de dos letras\",\"keyMap.board-and-rack.navigate\":\"Navegar\",\"keyMap.board-and-rack.remove-tile\":\"Quitar Letra\",\"keyMap.board-and-rack.submit\":\"Empezar a resolver\",\"keyMap.rack\":\"Estante\",\"keyMap.rack.insert-blank\":\"Insertar espacio en blanco (barra espaciadora)\",\"rack.placeholder\":\"Letras\\u2026\",\"remaining-tiles\":\"Casillas restantes\",\"results.empty-state.no-filtered-results\":\"Ning\\xfan resultado coincide con esta consulta.\",\"results.empty-state.no-results\":\"No hay resultados; no se pueden generar palabras\",\"results.empty-state.outdated\":\"Los resultados est\\xe1n desactualizados. Haga clic a continuaci\\xf3n para actualizar.\",\"results.empty-state.uninitialized\":\"Aqu\\xed se mostrar\\xe1n las palabras generadas a partir de sus letras.\",\"results.input.placeholder\":\"Busque una soluci\\xf3n... (RegExp)\",\"results.solve\":\"Resolver\",\"settings\":\"Configuraci\\xf3n\",\"settings.autoGroupTiles\":\"Agrupar casillas restantes\",\"settings.autoGroupTiles.left\":\"A la izquierda\",\"settings.autoGroupTiles.right\":\"A la derecha\",\"settings.autoGroupTiles.null\":\"No agrupar\",\"settings.game\":\"Juego\",\"settings.language\":\"Idioma\"}')},\"2mql\":function(e,t,r){\"use strict\";var n=r(\"TOwV\"),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},c={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},a={};function u(e){return n.isMemo(e)?i:a[e.$$typeof]||o}a[n.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},a[n.Memo]=i;var s=Object.defineProperty,l=Object.getOwnPropertyNames,f=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,d=Object.getPrototypeOf,y=Object.prototype;e.exports=function e(t,r,n){if(\"string\"!==typeof r){if(y){var o=d(r);o&&o!==y&&e(t,o,n)}var i=l(r);f&&(i=i.concat(f(r)));for(var a=u(t),h=u(r),m=0;m<i.length;++m){var b=i[m];if(!c[b]&&(!n||!n[b])&&(!h||!h[b])&&(!a||!a[b])){var v=p(r,b);try{s(t,b,v)}catch(g){}}}}return t}},\"2q6C\":function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});t.default=[{character:\"a\",count:9,score:1},{character:\"\\u0105\",count:1,score:5},{character:\"b\",count:2,score:3},{character:\"c\",count:3,score:2},{character:\"\\u0107\",count:1,score:5},{character:\"d\",count:3,score:2},{character:\"e\",count:7,score:1},{character:\"\\u0119\",count:1,score:5},{character:\"f\",count:1,score:5},{character:\"g\",count:2,score:3},{character:\"h\",count:2,score:3},{character:\"i\",count:8,score:1},{character:\"j\",count:2,score:3},{character:\"k\",count:3,score:2},{character:\"l\",count:3,score:2},{character:\"\\u0142\",count:2,score:3},{character:\"m\",count:3,score:2},{character:\"n\",count:5,score:1},{character:\"\\u0144\",count:1,score:5},{character:\"o\",count:6,score:1},{character:\"\\xf3\",count:1,score:5},{character:\"p\",count:3,score:2},{character:\"r\",count:4,score:1},{character:\"s\",count:4,score:1},{character:\"\\u015b\",count:1,score:5},{character:\"t\",count:3,score:2},{character:\"u\",count:2,score:3},{character:\"w\",count:4,score:1},{character:\"y\",count:4,score:2},{character:\"z\",count:5,score:1},{character:\"\\u017a\",count:1,score:5},{character:\"\\u017c\",count:1,score:5}]},\"2yzE\":function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});t.default=[{character:\"a\",count:9,score:1},{character:\"\\u0105\",count:1,score:5},{character:\"b\",count:2,score:3},{character:\"c\",count:3,score:2},{character:\"\\u0107\",count:1,score:6},{character:\"d\",count:3,score:2},{character:\"e\",count:7,score:1},{character:\"\\u0119\",count:1,score:5},{character:\"f\",count:1,score:5},{character:\"g\",count:2,score:3},{character:\"h\",count:2,score:3},{character:\"i\",count:8,score:1},{character:\"j\",count:2,score:3},{character:\"k\",count:3,score:2},{character:\"l\",count:3,score:2},{character:\"\\u0142\",count:2,score:3},{character:\"m\",count:3,score:2},{character:\"n\",count:5,score:1},{character:\"\\u0144\",count:1,score:7},{character:\"o\",count:6,score:1},{character:\"\\xf3\",count:1,score:5},{character:\"p\",count:3,score:2},{character:\"r\",count:4,score:1},{character:\"s\",count:4,score:1},{character:\"\\u015b\",count:1,score:5},{character:\"t\",count:3,score:2},{character:\"u\",count:2,score:3},{character:\"w\",count:4,score:1},{character:\"y\",count:4,score:2},{character:\"z\",count:5,score:1},{character:\"\\u017a\",count:1,score:9},{character:\"\\u017c\",count:1,score:5}]},\"3/hz\":function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});t.default=[{character:\"a\",count:9,score:1},{character:\"b\",count:2,score:3},{character:\"c\",count:2,score:3},{character:\"d\",count:4,score:2},{character:\"e\",count:12,score:1},{character:\"f\",count:2,score:4},{character:\"g\",count:3,score:2},{character:\"h\",count:2,score:4},{character:\"i\",count:9,score:1},{character:\"j\",count:1,score:8},{character:\"k\",count:1,score:5},{character:\"l\",count:4,score:1},{character:\"m\",count:2,score:3},{character:\"n\",count:6,score:1},{character:\"o\",count:8,score:1},{character:\"p\",count:2,score:3},{character:\"q\",count:1,score:10},{character:\"r\",count:6,score:1},{character:\"s\",count:4,score:1},{character:\"t\",count:6,score:1},{character:\"u\",count:4,score:1},{character:\"v\",count:2,score:4},{character:\"w\",count:2,score:4},{character:\"x\",count:1,score:8},{character:\"y\",count:2,score:4},{character:\"z\",count:1,score:10}]},\"3UD+\":function(e,t){e.exports=function(e){if(!e.webpackPolyfill){var t=Object.create(e);t.children||(t.children=[]),Object.defineProperty(t,\"loaded\",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,\"id\",{enumerable:!0,get:function(){return t.i}}),Object.defineProperty(t,\"exports\",{enumerable:!0}),t.webpackPolyfill=1}return t}},\"4+01\":function(e,t,r){\"use strict\";var n,o=this&&this.__assign||function(){return(o=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},c=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var i=r(\"v/x1\"),a=c(r(\"ASA0\")),u=r(\"10rO\"),s={allTilesBonusScore:50,blankScore:0,boardHeight:15,boardWidth:15,bonuses:a.default,id:\"literaki\",maximumNumberOfCharacters:7,name:\"Literaki\",numberOfBlanks:2},l=((n={id:s.id,name:s.name})[i.Locale.DE_DE]=i.Config.fromJson(o(o({},s),{tiles:u.tilesDe})),n[i.Locale.EN_GB]=i.Config.fromJson(o(o({},s),{tiles:u.tilesEn})),n[i.Locale.EN_US]=i.Config.fromJson(o(o({},s),{tiles:u.tilesEn})),n[i.Locale.ES_ES]=i.Config.fromJson(o(o({},s),{tiles:u.tilesEs})),n[i.Locale.FR_FR]=i.Config.fromJson(o(o({},s),{tiles:u.tilesFr})),n[i.Locale.PL_PL]=i.Config.fromJson(o(o({},s),{tiles:u.tilesPl})),n);t.default=l},\"4Ign\":function(e){e.exports=JSON.parse('{\"cell.set-blank\":\"Mark it a blank\",\"cell.set-not-blank\":\"Mark it not a blank\",\"cell.toggle-direction\":\"Typing direction - click to toggle\",\"common.blanks\":\"Blanks\",\"common.clear\":\"Clear\",\"common.close\":\"Close\",\"common.consonants\":\"Consonants\",\"common.loading\":\"Loading\",\"common.points\":\"Points\",\"common.tiles\":\"Tiles\",\"common.two-letter-tiles\":\"Two-letter\",\"common.vowels\":\"Vowels\",\"common.word\":\"Word\",\"common.words\":\"Words\",\"dictionary.empty-state.no-definitions\":\"Word exists in the dictionary but it does not have a definition.\",\"dictionary.empty-state.no-results\":\"Unable to find word definition in dictionary.\",\"dictionary.empty-state.not-allowed\":\"This word is not allowed.\",\"dictionary.empty-state.uninitialized\":\"Dictionary definition of the last highlighted word will be shown here.\",\"dictionary.input.placeholder\":\"Search dictionary...\",\"empty-state.error\":\"Error\",\"empty-state.info\":\"Info\",\"empty-state.success\":\"Yeah!\",\"empty-state.warning\":\"Oops!\",\"github\":\"See this project on GitHub\",\"keyMap\":\"Keyboard shortcuts\",\"keyMap.board\":\"Board\",\"keyMap.board.toggle-blank\":\"Mark/unmark tile as a blank\",\"keyMap.board.toggle-direction\":\"Toggle typing direction\",\"keyMap.board-and-rack\":\"Board & rack\",\"keyMap.board-and-rack.insert-two-letter-tile\":\"Insert two-letter tile\",\"keyMap.board-and-rack.navigate\":\"Navigate\",\"keyMap.board-and-rack.remove-tile\":\"Remove tile\",\"keyMap.board-and-rack.submit\":\"Start solving\",\"keyMap.rack\":\"Rack\",\"keyMap.rack.insert-blank\":\"Insert blank (spacebar)\",\"rack.placeholder\":\"Letters\",\"remaining-tiles\":\"Remaining tiles\",\"results.empty-state.no-filtered-results\":\"No result matches this query.\",\"results.empty-state.no-results\":\"No results - unable to generate any words.\",\"results.empty-state.outdated\":\"Results are outdated. Click below to update.\",\"results.empty-state.uninitialized\":\"Words generated from your letters will be shown here.\",\"results.input.placeholder\":\"Search results... (RegExp)\",\"results.solve\":\"Solve\",\"settings\":\"Settings\",\"settings.autoGroupTiles\":\"Group remaining tiles\",\"settings.autoGroupTiles.left\":\"On the left\",\"settings.autoGroupTiles.right\":\"On the right\",\"settings.autoGroupTiles.null\":\"Do not group\",\"settings.game\":\"Game\",\"settings.language\":\"Language\"}')},\"4VI5\":function(e,t,r){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.scrabble=t.literaki=t.isConfigId=t.getLocaleConfig=t.getConfig=void 0;var o=r(\"bIQe\");Object.defineProperty(t,\"getConfig\",{enumerable:!0,get:function(){return n(o).default}});var c=r(\"aMA8\");Object.defineProperty(t,\"getLocaleConfig\",{enumerable:!0,get:function(){return n(c).default}});var i=r(\"8rf8\");Object.defineProperty(t,\"isConfigId\",{enumerable:!0,get:function(){return n(i).default}});var a=r(\"LzO6\");Object.defineProperty(t,\"literaki\",{enumerable:!0,get:function(){return n(a).default}});var u=r(\"t4n0\");Object.defineProperty(t,\"scrabble\",{enumerable:!0,get:function(){return n(u).default}})},\"5NMP\":function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=function(){function e(e){var t=e.definitions,r=e.isAllowed,n=e.word;this.definitions=t,this.isAllowed=r,this.word=n}return e.fromJson=function(t){return t?new e({definitions:t.definitions,isAllowed:t.isAllowed,word:t.word}):e.Null},e.prototype.toJson=function(){return{definitions:this.definitions,isAllowed:this.isAllowed,word:this.word}},e.Null=Object.freeze({definitions:[],isAllowed:!1,word:\"\",toJson:function(){return null}}),e}();t.default=n},\"5vez\":function(e,t,r){\"use strict\";var n=this&&this.__extends||function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var c=r(\"U5qN\"),i=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=c.BONUS_CHARACTER,t}return n(t,e),t.prototype.canApply=function(t,r){return e.prototype.canApply.call(this,t,r)&&this.matchesCellTileScore(t,r)},t.prototype.matchesCellTileScore=function(e,t){return\"undefined\"===typeof this.score||this.score===e.pointsMap[t.tile.character]},Object.defineProperty(t.prototype,\"value\",{get:function(){return{characterMultiplier:this.multiplier,wordMultiplier:1}},enumerable:!1,configurable:!0}),t}(o(r(\"nSrw\")).default);t.default=i},\"5x6p\":function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});t.default=[{character:\"a\",count:5,score:1},{character:\"\\xe4\",count:1,score:6},{character:\"b\",count:2,score:3},{character:\"c\",count:2,score:4},{character:\"d\",count:4,score:1},{character:\"e\",count:15,score:1},{character:\"f\",count:2,score:4},{character:\"g\",count:3,score:2},{character:\"h\",count:4,score:2},{character:\"i\",count:6,score:1},{character:\"j\",count:1,score:6},{character:\"k\",count:2,score:4},{character:\"l\",count:3,score:2},{character:\"m\",count:4,score:3},{character:\"n\",count:9,score:1},{character:\"o\",count:3,score:2},{character:\"\\xf6\",count:1,score:8},{character:\"p\",count:1,score:4},{character:\"q\",count:1,score:10},{character:\"r\",count:6,score:1},{character:\"s\",count:7,score:1},{character:\"t\",count:6,score:1},{character:\"u\",count:6,score:1},{character:\"\\xfc\",count:1,score:6},{character:\"v\",count:1,score:6},{character:\"w\",count:1,score:3},{character:\"x\",count:1,score:8},{character:\"y\",count:1,score:10},{character:\"z\",count:1,score:3}]},\"6+LV\":function(e,t,r){\"use strict\";var n,o;r.d(t,\"b\",(function(){return n})),r.d(t,\"a\",(function(){return o})),function(e){e.Ascending=\"ascending\",e.Descending=\"descending\"}(n||(n={})),function(e){e.BlanksCount=\"blanks-count\",e.ConsonantsCount=\"consonants-count\",e.Points=\"points\",e.TilesCount=\"tiles-count\",e.VowelsCount=\"vowels-count\",e.Word=\"word\",e.WordsCount=\"words-count\"}(o||(o={}))},\"8+rz\":function(e,t,r){\"use strict\";function n(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];throw Error(\"[Immer] minified error nr: \"+e+(r.length?\" \"+r.map((function(e){return\"'\"+e+\"'\"})).join(\",\"):\"\")+\". Find the full error at: https://bit.ly/3cXEKWf\")}function o(e){return!!e&&!!e[G]}function c(e){return!!e&&(function(e){if(!e||\"object\"!=typeof e)return!1;var t=Object.getPrototypeOf(e);return!t||t===Object.prototype}(e)||Array.isArray(e)||!!e[K]||!!e.constructor[K]||p(e)||d(e))}function i(e,t,r){void 0===r&&(r=!1),0===a(e)?(r?Object.keys:V)(e).forEach((function(n){r&&\"symbol\"==typeof n||t(n,e[n],e)})):e.forEach((function(r,n){return t(n,r,e)}))}function a(e){var t=e[G];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:p(e)?2:d(e)?3:0}function u(e,t){return 2===a(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function s(e,t){return 2===a(e)?e.get(t):e[t]}function l(e,t,r){var n=a(e);2===n?e.set(t,r):3===n?(e.delete(t),e.add(r)):e[t]=r}function f(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function p(e){return z&&e instanceof Map}function d(e){return q&&e instanceof Set}function y(e){return e.o||e.t}function h(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=$(e);delete t[G];for(var r=V(t),n=0;n<r.length;n++){var o=r[n],c=t[o];!1===c.writable&&(c.writable=!0,c.configurable=!0),(c.get||c.set)&&(t[o]={configurable:!0,writable:!0,enumerable:c.enumerable,value:e[o]})}return Object.create(Object.getPrototypeOf(e),t)}function m(e,t){return void 0===t&&(t=!1),v(e)||o(e)||!c(e)||(a(e)>1&&(e.set=e.add=e.clear=e.delete=b),Object.freeze(e),t&&i(e,(function(e,t){return m(t,!0)}),!0)),e}function b(){n(2)}function v(e){return null==e||\"object\"!=typeof e||Object.isFrozen(e)}function g(e){var t=Y[e];return t||n(18,e),t}function O(e,t){Y[e]||(Y[e]=t)}function w(){return I}function _(e,t){t&&(g(\"Patches\"),e.u=[],e.s=[],e.v=t)}function S(e){C(e),e.p.forEach(A),e.p=null}function C(e){e===I&&(I=e.l)}function x(e){return I={p:[],l:I,h:e,m:!0,_:0}}function A(e){var t=e[G];0===t.i||1===t.i?t.j():t.g=!0}function j(e,t){t._=t.p.length;var r=t.p[0],o=void 0!==e&&e!==r;return t.h.O||g(\"ES5\").S(t,e,o),o?(r[G].P&&(S(t),n(4)),c(e)&&(e=R(t,e),t.l||k(t,e)),t.u&&g(\"Patches\").M(r[G],e,t.u,t.s)):e=R(t,r,[]),S(t),t.u&&t.v(t.u,t.s),e!==F?e:void 0}function R(e,t,r){if(v(t))return t;var n=t[G];if(!n)return i(t,(function(o,c){return E(e,n,t,o,c,r)}),!0),t;if(n.A!==e)return t;if(!n.P)return k(e,n.t,!0),n.t;if(!n.I){n.I=!0,n.A._--;var o=4===n.i||5===n.i?n.o=h(n.k):n.o;i(3===n.i?new Set(o):o,(function(t,c){return E(e,n,o,t,c,r)})),k(e,o,!1),r&&e.u&&g(\"Patches\").R(n,r,e.u,e.s)}return n.o}function E(e,t,r,n,i,a){if(o(i)){var s=R(e,i,a&&t&&3!==t.i&&!u(t.D,n)?a.concat(n):void 0);if(l(r,n,s),!o(s))return;e.m=!1}if(c(i)&&!v(i)){if(!e.h.N&&e._<1)return;R(e,i),t&&t.A.l||k(e,i)}}function k(e,t,r){void 0===r&&(r=!1),e.h.N&&e.m&&m(t,r)}function N(e,t){var r=e[G];return(r?y(r):e)[t]}function P(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}function B(e){e.P||(e.P=!0,e.l&&B(e.l))}function T(e){e.o||(e.o=h(e.t))}function U(e,t,r){var n=p(t)?g(\"MapSet\").T(t,r):d(t)?g(\"MapSet\").F(t,r):e.O?function(e,t){var r=Array.isArray(e),n={i:r?1:0,A:t?t.A:w(),P:!1,I:!1,D:{},l:t,t:e,k:null,o:null,j:null,C:!1},o=n,c=Q;r&&(o=[n],c=X);var i=Proxy.revocable(o,c),a=i.revoke,u=i.proxy;return n.k=u,n.j=a,u}(t,r):g(\"ES5\").J(t,r);return(r?r.A:w()).p.push(n),n}function M(e){return o(e)||n(22,e),function e(t){if(!c(t))return t;var r,n=t[G],o=a(t);if(n){if(!n.P&&(n.i<4||!g(\"ES5\").K(n)))return n.t;n.I=!0,r=D(t,o),n.I=!1}else r=D(t,o);return i(r,(function(t,o){n&&s(n.t,t)===o||l(r,t,e(o))})),3===o?new Set(r):r}(e)}function D(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return h(e)}function L(){function e(e,t){var r=c[e];return r?r.enumerable=t:c[e]=r={configurable:!0,enumerable:t,get:function(){var t=this[G];return Q.get(t,e)},set:function(t){var r=this[G];Q.set(r,e,t)}},r}function t(e){for(var t=e.length-1;t>=0;t--){var o=e[t][G];if(!o.P)switch(o.i){case 5:n(o)&&B(o);break;case 4:r(o)&&B(o)}}}function r(e){for(var t=e.t,r=e.k,n=V(r),o=n.length-1;o>=0;o--){var c=n[o];if(c!==G){var i=t[c];if(void 0===i&&!u(t,c))return!0;var a=r[c],s=a&&a[G];if(s?s.t!==i:!f(a,i))return!0}}var l=!!t[G];return n.length!==V(t).length+(l?0:1)}function n(e){var t=e.k;if(t.length!==e.t.length)return!0;var r=Object.getOwnPropertyDescriptor(t,t.length-1);return!(!r||r.get)}var c={};O(\"ES5\",{J:function(t,r){var n=Array.isArray(t),o=function(t,r){if(t){for(var n=Array(r.length),o=0;o<r.length;o++)Object.defineProperty(n,\"\"+o,e(o,!0));return n}var c=$(r);delete c[G];for(var i=V(c),a=0;a<i.length;a++){var u=i[a];c[u]=e(u,t||!!c[u].enumerable)}return Object.create(Object.getPrototypeOf(r),c)}(n,t),c={i:n?5:4,A:r?r.A:w(),P:!1,I:!1,D:{},l:r,t:t,k:o,o:null,g:!1,C:!1};return Object.defineProperty(o,G,{value:c,writable:!0}),o},S:function(e,r,c){c?o(r)&&r[G].A===e&&t(e.p):(e.u&&function e(t){if(t&&\"object\"==typeof t){var r=t[G];if(r){var o=r.t,c=r.k,a=r.D,s=r.i;if(4===s)i(c,(function(t){t!==G&&(void 0!==o[t]||u(o,t)?a[t]||e(c[t]):(a[t]=!0,B(r)))})),i(o,(function(e){void 0!==c[e]||u(c,e)||(a[e]=!1,B(r))}));else if(5===s){if(n(r)&&(B(r),a.length=!0),c.length<o.length)for(var l=c.length;l<o.length;l++)a[l]=!1;else for(var f=o.length;f<c.length;f++)a[f]=!0;for(var p=Math.min(c.length,o.length),d=0;d<p;d++)void 0===a[d]&&e(c[d])}}}}(e.p[0]),t(e.p))},K:function(e){return 4===e.i?r(e):n(e)}})}r.d(t,\"d\",(function(){return de})),r.d(t,\"g\",(function(){return ye})),r.d(t,\"b\",(function(){return po})),r.d(t,\"e\",(function(){return wo})),r.d(t,\"p\",(function(){return dn})),r.d(t,\"j\",(function(){return yn})),r.d(t,\"s\",(function(){return hn})),r.d(t,\"k\",(function(){return mn})),r.d(t,\"o\",(function(){return bn})),r.d(t,\"n\",(function(){return vn})),r.d(t,\"w\",(function(){return On})),r.d(t,\"x\",(function(){return wn})),r.d(t,\"y\",(function(){return _n})),r.d(t,\"B\",(function(){return Sn})),r.d(t,\"A\",(function(){return Cn})),r.d(t,\"v\",(function(){return jn})),r.d(t,\"z\",(function(){return Rn})),r.d(t,\"l\",(function(){return En})),r.d(t,\"m\",(function(){return kn})),r.d(t,\"C\",(function(){return Nn})),r.d(t,\"t\",(function(){return Bn})),r.d(t,\"r\",(function(){return Mn})),r.d(t,\"i\",(function(){return Hn})),r.d(t,\"q\",(function(){return Wn})),r.d(t,\"u\",(function(){return zn})),r.d(t,\"a\",(function(){return vr})),r.d(t,\"c\",(function(){return _r})),r.d(t,\"f\",(function(){return Ar})),r.d(t,\"h\",(function(){return Pr})),r.d(t,\"D\",(function(){return Ur})),r.d(t,\"E\",(function(){return Lr})),r.d(t,\"F\",(function(){return Co})),r.d(t,\"G\",(function(){return So}));var H,I,W=\"undefined\"!=typeof Symbol&&\"symbol\"==typeof Symbol(\"x\"),z=\"undefined\"!=typeof Map,q=\"undefined\"!=typeof Set,J=\"undefined\"!=typeof Proxy&&void 0!==Proxy.revocable&&\"undefined\"!=typeof Reflect,F=W?Symbol.for(\"immer-nothing\"):((H={})[\"immer-nothing\"]=!0,H),K=W?Symbol.for(\"immer-draftable\"):\"__$immer_draftable\",G=W?Symbol.for(\"immer-state\"):\"__$immer_state\",V=(\"undefined\"!=typeof Symbol&&Symbol.iterator,\"undefined\"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames),$=Object.getOwnPropertyDescriptors||function(e){var t={};return V(e).forEach((function(r){t[r]=Object.getOwnPropertyDescriptor(e,r)})),t},Y={},Q={get:function(e,t){if(t===G)return e;var r=y(e);if(!u(r,t))return function(e,t,r){var n,o=P(t,r);return o?\"value\"in o?o.value:null===(n=o.get)||void 0===n?void 0:n.call(e.k):void 0}(e,r,t);var n=r[t];return e.I||!c(n)?n:n===N(e.t,t)?(T(e),e.o[t]=U(e.A.h,n,e)):n},has:function(e,t){return t in y(e)},ownKeys:function(e){return Reflect.ownKeys(y(e))},set:function(e,t,r){var n=P(y(e),t);if(null==n?void 0:n.set)return n.set.call(e.k,r),!0;if(!e.P){var o=N(y(e),t),c=null==o?void 0:o[G];if(c&&c.t===r)return e.o[t]=r,e.D[t]=!1,!0;if(f(r,o)&&(void 0!==r||u(e.t,t)))return!0;T(e),B(e)}return e.o[t]=r,e.D[t]=!0,!0},deleteProperty:function(e,t){return void 0!==N(e.t,t)||t in e.t?(e.D[t]=!1,T(e),B(e)):delete e.D[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=y(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n?{writable:!0,configurable:1!==e.i||\"length\"!==t,enumerable:n.enumerable,value:r[t]}:n},defineProperty:function(){n(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){n(12)}},X={};i(Q,(function(e,t){X[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}})),X.deleteProperty=function(e,t){return Q.deleteProperty.call(this,e[0],t)},X.set=function(e,t,r){return Q.set.call(this,e[0],t,r,e[0])};var Z=new(function(){function e(e){this.O=J,this.N=!0,\"boolean\"==typeof(null==e?void 0:e.useProxies)&&this.setUseProxies(e.useProxies),\"boolean\"==typeof(null==e?void 0:e.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),this.produce=this.produce.bind(this),this.produceWithPatches=this.produceWithPatches.bind(this)}var t=e.prototype;return t.produce=function(e,t,r){if(\"function\"==typeof e&&\"function\"!=typeof t){var o=t;t=e;var i=this;return function(e){var r=this;void 0===e&&(e=o);for(var n=arguments.length,c=Array(n>1?n-1:0),a=1;a<n;a++)c[a-1]=arguments[a];return i.produce(e,(function(e){var n;return(n=t).call.apply(n,[r,e].concat(c))}))}}var a;if(\"function\"!=typeof t&&n(6),void 0!==r&&\"function\"!=typeof r&&n(7),c(e)){var u=x(this),s=U(this,e,void 0),l=!0;try{a=t(s),l=!1}finally{l?S(u):C(u)}return\"undefined\"!=typeof Promise&&a instanceof Promise?a.then((function(e){return _(u,r),j(e,u)}),(function(e){throw S(u),e})):(_(u,r),j(a,u))}if(!e||\"object\"!=typeof e){if((a=t(e))===F)return;return void 0===a&&(a=e),this.N&&m(a,!0),a}n(21,e)},t.produceWithPatches=function(e,t){var r,n,o=this;return\"function\"==typeof e?function(t){for(var r=arguments.length,n=Array(r>1?r-1:0),c=1;c<r;c++)n[c-1]=arguments[c];return o.produceWithPatches(t,(function(t){return e.apply(void 0,[t].concat(n))}))}:[this.produce(e,t,(function(e,t){r=e,n=t})),r,n]},t.createDraft=function(e){c(e)||n(8),o(e)&&(e=M(e));var t=x(this),r=U(this,e,void 0);return r[G].C=!0,C(t),r},t.finishDraft=function(e,t){var r=(e&&e[G]).A;return _(r,t),j(void 0,r)},t.setAutoFreeze=function(e){this.N=e},t.setUseProxies=function(e){e&&!J&&n(20),this.O=e},t.applyPatches=function(e,t){var r;for(r=t.length-1;r>=0;r--){var n=t[r];if(0===n.path.length&&\"replace\"===n.op){e=n.value;break}}var c=g(\"Patches\").$;return o(e)?c(e,t):this.produce(e,(function(e){return c(e,t.slice(r+1))}))},e}()),ee=Z.produce,te=(Z.produceWithPatches.bind(Z),Z.setAutoFreeze.bind(Z),Z.setUseProxies.bind(Z),Z.applyPatches.bind(Z),Z.createDraft.bind(Z),Z.finishDraft.bind(Z),ee),re=r(\"ANjH\");function ne(e,t){return e===t}function oe(e,t,r){if(null===t||null===r||t.length!==r.length)return!1;for(var n=t.length,o=0;o<n;o++)if(!e(t[o],r[o]))return!1;return!0}function ce(e){var t=Array.isArray(e[0])?e[0]:e;if(!t.every((function(e){return\"function\"===typeof e}))){var r=t.map((function(e){return typeof e})).join(\", \");throw new Error(\"Selector creators expect all input-selectors to be functions, instead received the following types: [\"+r+\"]\")}return t}var ie=function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return function(){for(var t=arguments.length,n=Array(t),o=0;o<t;o++)n[o]=arguments[o];var c=0,i=n.pop(),a=ce(n),u=e.apply(void 0,[function(){return c++,i.apply(null,arguments)}].concat(r)),s=e((function(){for(var e=[],t=a.length,r=0;r<t;r++)e.push(a[r].apply(null,arguments));return u.apply(null,e)}));return s.resultFunc=i,s.dependencies=a,s.recomputations=function(){return c},s.resetRecomputations=function(){return c=0},s}}((function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ne,r=null,n=null;return function(){return oe(t,r,arguments)||(n=e.apply(null,arguments)),r=arguments,n}}));function ae(e){return function(t){var r=t.dispatch,n=t.getState;return function(t){return function(o){return\"function\"===typeof o?o(r,n,e):t(o)}}}}var ue=ae();ue.withExtraArgument=ae;function se(){return(se=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}\"undefined\"!==typeof window&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;function le(e,t){function r(){if(t){var r=t.apply(void 0,arguments);if(!r)throw new Error(\"prepareAction did not return an object\");return se({type:e,payload:r.payload},\"meta\"in r&&{meta:r.meta},{},\"error\"in r&&{error:r.error})}return{type:e,payload:arguments.length<=0?void 0:arguments[0]}}return r.toString=function(){return\"\"+e},r.type=e,r.match=function(t){return t.type===e},r}function fe(e){var t,r={},n=[],o={addCase:function(e,t){var n=\"string\"===typeof e?e:e.type;if(n in r)throw new Error(\"addCase cannot be called with two reducers for the same action type\");return r[n]=t,o},addMatcher:function(e,t){return n.push({matcher:e,reducer:t}),o},addDefaultCase:function(e){return t=e,o}};return e(o),[r,n,t]}function pe(e){var t=e.name,r=e.initialState;if(!t)throw new Error(\"`name` is a required option for createSlice\");var n=e.reducers||{},i=\"undefined\"===typeof e.extraReducers?[]:\"function\"===typeof e.extraReducers?fe(e.extraReducers):[e.extraReducers],a=i[0],u=void 0===a?{}:a,s=i[1],l=void 0===s?[]:s,f=i[2],p=void 0===f?void 0:f,d=Object.keys(n),y={},h={},m={};d.forEach((function(e){var r,o,c=n[e],i=t+\"/\"+e;\"reducer\"in c?(r=c.reducer,o=c.prepare):r=c,y[e]=r,h[i]=r,m[e]=o?le(i,o):le(i)}));var b=function(e,t,r,n){void 0===r&&(r=[]);var i=\"function\"===typeof t?fe(t):[t,r,n],a=i[0],u=i[1],s=i[2];return function(t,r){void 0===t&&(t=e);var n=[a[r.type]].concat(u.filter((function(e){return(0,e.matcher)(r)})).map((function(e){return e.reducer})));return 0===n.filter((function(e){return!!e})).length&&(n=[s]),n.reduce((function(e,t){if(t){if(o(e)){var n=t(e,r);return\"undefined\"===typeof n?e:n}if(c(e))return te(e,(function(e){return t(e,r)}));var i=t(e,r);if(\"undefined\"===typeof i){if(null===e)return e;throw Error(\"A case reducer on a non-draftable value must not return undefined\")}return i}return e}),t)}}(r,se({},u,{},h),l,p);return{name:t,reducer:b,actions:m,caseReducers:y}}\"undefined\"!==typeof Symbol&&(Symbol.iterator||(Symbol.iterator=Symbol(\"Symbol.iterator\"))),\"undefined\"!==typeof Symbol&&(Symbol.asyncIterator||(Symbol.asyncIterator=Symbol(\"Symbol.asyncIterator\")));L();var de=le(\"initialize\"),ye=le(\"reset\"),he=function(e){return\"@@redux-saga/\"+e},me=he(\"CANCEL_PROMISE\"),be=he(\"CHANNEL_END\"),ve=he(\"IO\"),ge=he(\"MATCH\"),Oe=he(\"MULTICAST\"),we=he(\"SAGA_ACTION\"),_e=he(\"SELF_CANCELLATION\"),Se=he(\"TASK\"),Ce=he(\"TASK_CANCEL\"),xe=he(\"TERMINATE\"),Ae=he(\"LOCATION\"),je=r(\"wx14\"),Re=r(\"zLVn\"),Ee=function(e){return null===e||void 0===e},ke=function(e){return null!==e&&void 0!==e},Ne=function(e){return\"function\"===typeof e},Pe=function(e){return\"string\"===typeof e},Be=Array.isArray,Te=function(e){return e&&Ne(e.then)},Ue=function(e){return e&&Ne(e.next)&&Ne(e.throw)},Me=function e(t){return t&&(Pe(t)||He(t)||Ne(t)||Be(t)&&t.every(e))},De=function(e){return e&&Ne(e.take)&&Ne(e.close)},Le=function(e){return Ne(e)&&e.hasOwnProperty(\"toString\")},He=function(e){return Boolean(e)&&\"function\"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype};var Ie=function(e,t){var r;void 0===t&&(t=!0);var n=new Promise((function(n){r=setTimeout(n,e,t)}));return n[me]=function(){clearTimeout(r)},n},We=function(e){return function(){return e}}(!0),ze=function(){};var qe=function(e){return e};\"function\"===typeof Symbol&&Symbol.asyncIterator&&Symbol.asyncIterator;var Je=function(e,t){Object(je.a)(e,t),Object.getOwnPropertySymbols&&Object.getOwnPropertySymbols(t).forEach((function(r){e[r]=t[r]}))};function Fe(e,t){var r=e.indexOf(t);r>=0&&e.splice(r,1)}function Ke(e){var t=!1;return function(){t||(t=!0,e())}}var Ge=function(e){throw e},Ve=function(e){return{value:e,done:!0}};function $e(e,t,r){void 0===t&&(t=Ge),void 0===r&&(r=\"iterator\");var n={meta:{name:r},next:e,throw:t,return:Ve,isSagaIterator:!0};return\"undefined\"!==typeof Symbol&&(n[Symbol.iterator]=function(){return n}),n}function Ye(e,t){var r=t.sagaStack;console.error(e),console.error(r)}var Qe=function(e){return Array.apply(null,new Array(e))},Xe=function(e){return function(t){return e(Object.defineProperty(t,we,{value:!0}))}},Ze=function(e){return e===xe},et=function(e){return e===Ce},tt=function(e){return Ze(e)||et(e)};function rt(e,t){var r=Object.keys(e),n=r.length;var o,c=0,i=Be(e)?Qe(n):{},a={};return r.forEach((function(e){var r=function(r,a){o||(a||tt(r)?(t.cancel(),t(r,a)):(i[e]=r,++c===n&&(o=!0,t(i))))};r.cancel=ze,a[e]=r})),t.cancel=function(){o||(o=!0,r.forEach((function(e){return a[e].cancel()})))},a}function nt(e){return{name:e.name||\"anonymous\",location:ot(e)}}function ot(e){return e[Ae]}function ct(e,t){void 0===e&&(e=10);var r=new Array(e),n=0,o=0,c=0,i=function(t){r[o]=t,o=(o+1)%e,n++},a=function(){if(0!=n){var t=r[c];return r[c]=null,n--,c=(c+1)%e,t}},u=function(){for(var e=[];n;)e.push(a());return e};return{isEmpty:function(){return 0==n},put:function(a){var s;if(n<e)i(a);else switch(t){case 1:throw new Error(\"Channel's Buffer overflow!\");case 3:r[o]=a,c=o=(o+1)%e;break;case 4:s=2*e,r=u(),n=r.length,o=r.length,c=0,r.length=s,e=s,i(a)}},take:a,flush:u}}var it=function(e){return ct(e,4)},at=\"TAKE\",ut=\"PUT\",st=\"CALL\",lt=\"FORK\",ft=\"CANCEL\",pt=\"SELECT\",dt=function(e,t){var r;return(r={})[ve]=!0,r.combinator=!1,r.type=e,r.payload=t,r};function yt(e,t){return void 0===e&&(e=\"*\"),Me(e)?dt(at,{pattern:e}):De(r=e)&&r[Oe]&&ke(t)&&Me(t)?dt(at,{channel:e,pattern:t}):De(e)?dt(at,{channel:e}):void 0;var r}function ht(e,t){return Ee(t)&&(t=e,e=void 0),dt(ut,{channel:e,action:t})}function mt(e,t){var r,n=null;return Ne(e)?r=e:(Be(e)?(n=e[0],r=e[1]):(n=e.context,r=e.fn),n&&Pe(r)&&Ne(n[r])&&(r=n[r])),{context:n,fn:r,args:t}}function bt(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return dt(st,mt(e,r))}function vt(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return dt(lt,mt(e,r))}function gt(e){return void 0===e&&(e=_e),dt(ft,e)}function Ot(e){void 0===e&&(e=qe);for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return dt(pt,{selector:e,args:r})}var wt=bt.bind(null,Ie);function _t(){var e={};return e.promise=new Promise((function(t,r){e.resolve=t,e.reject=r})),e}var St=_t,Ct=[],xt=0;function At(e){try{Et(),e()}finally{kt()}}function jt(e){Ct.push(e),xt||(Et(),Nt())}function Rt(e){try{return Et(),e()}finally{Nt()}}function Et(){xt++}function kt(){xt--}function Nt(){var e;for(kt();!xt&&void 0!==(e=Ct.shift());)At(e)}var Pt=function(e){return function(t){return e.some((function(e){return Dt(e)(t)}))}},Bt=function(e){return function(t){return e(t)}},Tt=function(e){return function(t){return t.type===String(e)}},Ut=function(e){return function(t){return t.type===e}},Mt=function(){return We};function Dt(e){var t=\"*\"===e?Mt:Pe(e)?Tt:Be(e)?Pt:Le(e)?Tt:Ne(e)?Bt:He(e)?Ut:null;if(null===t)throw new Error(\"invalid pattern: \"+e);return t(e)}var Lt={type:be},Ht=function(e){return e&&e.type===be};function It(e){void 0===e&&(e=it());var t=!1,r=[];return{take:function(n){t&&e.isEmpty()?n(Lt):e.isEmpty()?(r.push(n),n.cancel=function(){Fe(r,n)}):n(e.take())},put:function(n){if(!t){if(0===r.length)return e.put(n);r.shift()(n)}},flush:function(r){t&&e.isEmpty()?r(Lt):r(e.flush())},close:function(){if(!t){t=!0;var e=r;r=[];for(var n=0,o=e.length;n<o;n++){(0,e[n])(Lt)}}}}}function Wt(){var e=function(){var e,t=!1,r=[],n=r,o=function(){n===r&&(n=r.slice())},c=function(){t=!0;var e=r=n;n=[],e.forEach((function(e){e(Lt)}))};return(e={})[Oe]=!0,e.put=function(e){if(!t)if(Ht(e))c();else for(var o=r=n,i=0,a=o.length;i<a;i++){var u=o[i];u[ge](e)&&(u.cancel(),u(e))}},e.take=function(e,r){void 0===r&&(r=Mt),t?e(Lt):(e[ge]=r,o(),n.push(e),e.cancel=Ke((function(){o(),Fe(n,e)})))},e.close=c,e}(),t=e.put;return e.put=function(e){e[we]?t(e):jt((function(){t(e)}))},e}function zt(e,t){var r=e[me];Ne(r)&&(t.cancel=r),e.then(t,(function(e){t(e,!0)}))}var qt,Jt=0,Ft=function(){return++Jt};function Kt(e){e.isRunning()&&e.cancel()}var Gt=((qt={}).TAKE=function(e,t,r){var n=t.channel,o=void 0===n?e.channel:n,c=t.pattern,i=t.maybe,a=function(e){e instanceof Error?r(e,!0):!Ht(e)||i?r(e):r(xe)};try{o.take(a,ke(c)?Dt(c):null)}catch(u){return void r(u,!0)}r.cancel=a.cancel},qt.PUT=function(e,t,r){var n=t.channel,o=t.action,c=t.resolve;jt((function(){var t;try{t=(n?n.put:e.dispatch)(o)}catch(i){return void r(i,!0)}c&&Te(t)?zt(t,r):r(t)}))},qt.ALL=function(e,t,r,n){var o=n.digestEffect,c=Jt,i=Object.keys(t);if(0!==i.length){var a=rt(t,r);i.forEach((function(e){o(t[e],c,a[e],e)}))}else r(Be(t)?[]:{})},qt.RACE=function(e,t,r,n){var o=n.digestEffect,c=Jt,i=Object.keys(t),a=Be(t)?Qe(i.length):{},u={},s=!1;i.forEach((function(e){var t=function(t,n){s||(n||tt(t)?(r.cancel(),r(t,n)):(r.cancel(),s=!0,a[e]=t,r(a)))};t.cancel=ze,u[e]=t})),r.cancel=function(){s||(s=!0,i.forEach((function(e){return u[e].cancel()})))},i.forEach((function(e){s||o(t[e],c,u[e],e)}))},qt.CALL=function(e,t,r,n){var o=t.context,c=t.fn,i=t.args,a=n.task;try{var u=c.apply(o,i);if(Te(u))return void zt(u,r);if(Ue(u))return void rr(e,u,a.context,Jt,nt(c),!1,r);r(u)}catch(s){r(s,!0)}},qt.CPS=function(e,t,r){var n=t.context,o=t.fn,c=t.args;try{var i=function(e,t){Ee(e)?r(t):r(e,!0)};o.apply(n,c.concat(i)),i.cancel&&(r.cancel=i.cancel)}catch(a){r(a,!0)}},qt.FORK=function(e,t,r,n){var o=t.context,c=t.fn,i=t.args,a=t.detached,u=n.task,s=function(e){var t=e.context,r=e.fn,n=e.args;try{var o=r.apply(t,n);if(Ue(o))return o;var c=!1;return $e((function(e){return c?{value:e,done:!0}:(c=!0,{value:o,done:!Te(o)})}))}catch(i){return $e((function(){throw i}))}}({context:o,fn:c,args:i}),l=function(e,t){return e.isSagaIterator?{name:e.meta.name}:nt(t)}(s,c);Rt((function(){var t=rr(e,s,u.context,Jt,l,a,void 0);a?r(t):t.isRunning()?(u.queue.addTask(t),r(t)):t.isAborted()?u.queue.abort(t.error()):r(t)}))},qt.JOIN=function(e,t,r,n){var o=n.task,c=function(e,t){if(e.isRunning()){var r={task:o,cb:t};t.cancel=function(){e.isRunning()&&Fe(e.joiners,r)},e.joiners.push(r)}else e.isAborted()?t(e.error(),!0):t(e.result())};if(Be(t)){if(0===t.length)return void r([]);var i=rt(t,r);t.forEach((function(e,t){c(e,i[t])}))}else c(t,r)},qt.CANCEL=function(e,t,r,n){var o=n.task;t===_e?Kt(o):Be(t)?t.forEach(Kt):Kt(t),r()},qt.SELECT=function(e,t,r){var n=t.selector,o=t.args;try{r(n.apply(void 0,[e.getState()].concat(o)))}catch(c){r(c,!0)}},qt.ACTION_CHANNEL=function(e,t,r){var n=t.pattern,o=It(t.buffer),c=Dt(n),i=function t(r){Ht(r)||e.channel.take(t,c),o.put(r)},a=o.close;o.close=function(){i.cancel(),a()},e.channel.take(i,c),r(o)},qt.CANCELLED=function(e,t,r,n){r(n.task.isCancelled())},qt.FLUSH=function(e,t,r){t.flush(r)},qt.GET_CONTEXT=function(e,t,r,n){r(n.task.context[t])},qt.SET_CONTEXT=function(e,t,r,n){var o=n.task;Je(o.context,t),r()},qt);function Vt(e,t){return e+\"?\"+t}function $t(e){var t=e.name,r=e.location;return r?t+\" \"+Vt(r.fileName,r.lineNumber):t}function Yt(e){var t=function(e,t){var r;return(r=[]).concat.apply(r,t.map(e))}((function(e){return e.cancelledTasks}),e);return t.length?[\"Tasks cancelled due to error:\"].concat(t).join(\"\\n\"):\"\"}var Qt=null,Xt=[],Zt=function(){Qt=null,Xt.length=0},er=function(){var e=Xt[0],t=Xt.slice(1),r=e.crashedEffect?function(e){var t=ot(e);return t?t.code+\" \"+Vt(t.fileName,t.lineNumber):\"\"}(e.crashedEffect):null;return[\"The above error occurred in task \"+$t(e.meta)+(r?\" \\n when executing effect \"+r:\"\")].concat(t.map((function(e){return\" created by \"+$t(e.meta)})),[Yt(Xt)]).join(\"\\n\")};function tr(e,t,r,n,o,c,i){var a;void 0===i&&(i=ze);var u,s,l=0,f=null,p=[],d=Object.create(r),y=function(e,t,r){var n,o=[],c=!1;function i(e){t(),u(),r(e,!0)}function a(t){o.push(t),t.cont=function(a,u){c||(Fe(o,t),t.cont=ze,u?i(a):(t===e&&(n=a),o.length||(c=!0,r(n))))}}function u(){c||(c=!0,o.forEach((function(e){e.cont=ze,e.cancel()})),o=[])}return a(e),{addTask:a,cancelAll:u,abort:i,getTasks:function(){return o}}}(t,(function(){p.push.apply(p,y.getTasks().map((function(e){return e.meta.name})))}),h);function h(t,r){if(r){if(l=2,(c={meta:o,cancelledTasks:p}).crashedEffect=Qt,Xt.push(c),m.isRoot){var n=er();Zt(),e.onError(t,{sagaStack:n})}s=t,f&&f.reject(t)}else t===Ce?l=1:1!==l&&(l=3),u=t,f&&f.resolve(t);var c;m.cont(t,r),m.joiners.forEach((function(e){e.cb(t,r)})),m.joiners=null}var m=((a={})[Se]=!0,a.id=n,a.meta=o,a.isRoot=c,a.context=d,a.joiners=[],a.queue=y,a.cancel=function(){0===l&&(l=1,y.cancelAll(),h(Ce,!1))},a.cont=i,a.end=h,a.setContext=function(e){Je(d,e)},a.toPromise=function(){return f||(f=St(),2===l?f.reject(s):0!==l&&f.resolve(u)),f.promise},a.isRunning=function(){return 0===l},a.isCancelled=function(){return 1===l||0===l&&1===t.status},a.isAborted=function(){return 2===l},a.result=function(){return u},a.error=function(){return s},a);return m}function rr(e,t,r,n,o,c,i){var a=e.finalizeRunEffect((function(t,r,n){if(Te(t))zt(t,n);else if(Ue(t))rr(e,t,s.context,r,o,!1,n);else if(t&&t[ve]){(0,Gt[t.type])(e,t.payload,n,l)}else n(t)}));f.cancel=ze;var u={meta:o,cancel:function(){0===u.status&&(u.status=1,f(Ce))},status:0},s=tr(e,u,r,n,o,c,i),l={task:s,digestEffect:p};return i&&(i.cancel=s.cancel),f(),s;function f(e,r){try{var o;r?(o=t.throw(e),Zt()):et(e)?(u.status=1,f.cancel(),o=Ne(t.return)?t.return(Ce):{done:!0,value:Ce}):o=Ze(e)?Ne(t.return)?t.return():{done:!0}:t.next(e),o.done?(1!==u.status&&(u.status=3),u.cont(o.value)):p(o.value,n,f)}catch(c){if(1===u.status)throw c;u.status=2,u.cont(c,!0)}}function p(t,r,n,o){void 0===o&&(o=\"\");var c,i=Ft();function u(r,o){c||(c=!0,n.cancel=ze,e.sagaMonitor&&(o?e.sagaMonitor.effectRejected(i,r):e.sagaMonitor.effectResolved(i,r)),o&&function(e){Qt=e}(t),n(r,o))}e.sagaMonitor&&e.sagaMonitor.effectTriggered({effectId:i,parentEffectId:r,label:o,effect:t}),u.cancel=ze,n.cancel=function(){c||(c=!0,u.cancel(),u.cancel=ze,e.sagaMonitor&&e.sagaMonitor.effectCancelled(i))},a(t,i,u)}}function nr(e,t){var r=e.channel,n=void 0===r?Wt():r,o=e.dispatch,c=e.getState,i=e.context,a=void 0===i?{}:i,u=e.sagaMonitor,s=e.effectMiddlewares,l=e.onError,f=void 0===l?Ye:l;for(var p=arguments.length,d=new Array(p>2?p-2:0),y=2;y<p;y++)d[y-2]=arguments[y];var h=t.apply(void 0,d);var m,b=Ft();if(u&&(u.rootSagaStarted=u.rootSagaStarted||ze,u.effectTriggered=u.effectTriggered||ze,u.effectResolved=u.effectResolved||ze,u.effectRejected=u.effectRejected||ze,u.effectCancelled=u.effectCancelled||ze,u.actionDispatched=u.actionDispatched||ze,u.rootSagaStarted({effectId:b,saga:t,args:d})),s){var v=re.d.apply(void 0,s);m=function(e){return function(t,r,n){return v((function(t){return e(t,r,n)}))(t)}}}else m=qe;var g={channel:n,dispatch:Xe(o),getState:c,sagaMonitor:u,onError:f,finalizeRunEffect:m};return Rt((function(){var e=rr(g,h,a,b,nt(t),!0,void 0);return u&&u.effectResolved(b,e),e}))}var or=function(e){var t,r=void 0===e?{}:e,n=r.context,o=void 0===n?{}:n,c=r.channel,i=void 0===c?Wt():c,a=r.sagaMonitor,u=Object(Re.a)(r,[\"context\",\"channel\",\"sagaMonitor\"]);function s(e){var r=e.getState,n=e.dispatch;return t=nr.bind(null,Object(je.a)({},u,{context:o,channel:i,dispatch:n,getState:r,sagaMonitor:a})),function(e){return function(t){a&&a.actionDispatched&&a.actionDispatched(t);var r=e(t);return i.put(t),r}}}return s.run=function(){return t.apply(void 0,arguments)},s.setContext=function(e){Je(o,e)},s},cr=r(\"4VI5\"),ir=r(\"v/x1\"),ar={autoGroupTiles:\"left\",configId:cr.scrabble.id,locale:ir.Locale.EN_US},ur=ar.configId,sr=ar.locale,lr=Object(cr.getLocaleConfig)(ur,sr),fr=lr.boardHeight,pr=lr.boardWidth,dr=ir.Board.create(pr,fr),yr=r(\"rePB\"),hr=r(\"U5qN\");function mr(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function br(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?mr(Object(r),!0).forEach((function(t){Object(yr.a)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):mr(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var vr=pe({initialState:dr,name:\"board\",reducers:{applyResult:function(e,t){var r=e.clone();return t.payload.cells.forEach((function(e){r.updateCell(e.x,e.y,(function(){return new ir.Cell(br(br({},e),{},{isEmpty:!1}))}))})),r},changeCellValue:function(e,t){var r=e.clone(),n=t.payload,o=n.value,c=n.x,i=n.y,a=!o||o===hr.EMPTY_CELL,u=a?ir.Tile.Null:new ir.Tile({character:o});return r.updateCell(c,i,(function(e){return new ir.Cell(br(br({},e),{},{isEmpty:a,tile:u}))})),r},change:function(e,t){return t.payload},init:function(e,t){return t.payload},reset:function(){return dr},toggleCellIsBlank:function(e,t){var r=e.clone(),n=t.payload,o=n.x,c=n.y;return r.updateCell(o,c,(function(e){var t=e.isEmpty?e.tile:new ir.Tile(br(br({},e.tile),{},{isBlank:!e.tile.isBlank}));return new ir.Cell(br(br({},e),{},{tile:t}))})),r}}}),gr={definitions:[],input:\"\",isAllowed:null,isLoading:!1,word:void 0};function Or(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function wr(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Or(Object(r),!0).forEach((function(t){Object(yr.a)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Or(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var _r=pe({initialState:gr,name:\"dictionary\",reducers:{changeInput:function(e,t){return wr(wr({},e),{},{input:t.payload})},reset:function(){return gr},submit:function(e){return wr(wr({},e),{},{definitions:gr.definitions,isAllowed:gr.isAllowed,isLoading:!0,word:gr.word})},submitFailure:function(e){return wr(wr({},e),{},{definitions:gr.definitions,isAllowed:!1,isLoading:!1,word:e.input})},submitSuccess:function(e,t){return wr(wr({},e),{},{definitions:t.payload.definitions,isAllowed:t.payload.isAllowed,isLoading:!1,word:t.payload.word})}}}),Sr=[null,null,null,null,null,null,null],Cr=r(\"KQm4\"),xr=r(\"psLn\"),Ar=pe({initialState:Sr,name:\"rack\",reducers:{change:function(e,t){return t.payload},changeCharacter:function(e,t){var r=t.payload,n=r.character,o=r.index;return[].concat(Object(Cr.a)(e.slice(0,o)),[n],Object(Cr.a)(e.slice(o+1)))},groupTiles:function(e,t){var r=t.payload;if(null===r)return e;var n=Object(xr.e)(Object(xr.l)(r));return Object(Cr.a)(e).sort(n)},init:function(e,t){return t.payload},removeTiles:function(e,t){var r=t.payload;return Object(xr.s)(e,r).map((function(e){var t=e.character;return e.tile?null:t}))},reset:function(){return Sr}}}),jr=r(\"6+LV\"),Rr={candidate:null,query:\"\",results:void 0,sort:{column:jr.a.Points,direction:jr.b.Descending}};function Er(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function kr(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Er(Object(r),!0).forEach((function(t){Object(yr.a)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Er(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var Nr=function(e){return e===jr.b.Ascending?jr.b.Descending:jr.b.Ascending},Pr=pe({initialState:Rr,name:\"results\",reducers:{applyResult:function(e,t){return Rr},changeQuery:function(e,t){var r=t.payload;return kr(kr({},e),{},{query:r})},changeResultCandidate:function(e,t){var r=t.payload;return kr(kr({},e),{},{candidate:r})},changeResults:function(e,t){var r=t.payload;return kr(kr({},e),{},{candidate:Rr.candidate,query:Rr.query,results:r})},sort:function(e,t){var r=t.payload,n=e.sort,o=n.column,c=n.direction;return kr(kr({},e),{},{sort:{column:r,direction:o===r?Nr(c):c}})},reset:function(){return Rr}}});function Br(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Tr(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Br(Object(r),!0).forEach((function(t){Object(yr.a)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Br(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var Ur=pe({initialState:ar,name:\"settings\",reducers:{changeAutoGroupTiles:function(e,t){var r=t.payload;return Tr(Tr({},e),{},{autoGroupTiles:r})},changeConfigId:function(e,t){var r=t.payload;return Tr(Tr({},e),{},{configId:r})},changeLocale:function(e,t){var r=t.payload;return Tr(Tr({},e),{},{locale:r})},init:function(e,t){return Tr(Tr({},e),t.payload)}}});function Mr(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Dr(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Mr(Object(r),!0).forEach((function(t){Object(yr.a)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Mr(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var Lr=pe({initialState:{isLoading:!1,lastSolvedParameters:{board:dr,characters:[]}},name:\"solve\",reducers:{submit:function(e){return Dr(Dr({},e),{},{isLoading:!0})},submitFailure:function(e){return Dr(Dr({},e),{},{isLoading:!1})},submitSuccess:function(e,t){var r=t.payload;return Dr(Dr({},e),{},{isLoading:!1,lastSolvedParameters:r})}}}),Hr=Object(re.c)({board:vr.reducer,dictionary:_r.reducer,rack:Ar.reducer,results:Pr.reducer,settings:Ur.reducer,solve:Lr.reducer}),Ir=r(\"o0o1\"),Wr=r.n(Ir),zr=function(e){return{done:!0,value:e}},qr={};function Jr(e){return De(e)?\"channel\":Le(e)?String(e):Ne(e)?e.name:String(e)}function Fr(e,t,r){var n,o,c,i=t;function a(t,r){if(i===qr)return zr(t);if(r&&!o)throw i=qr,r;n&&n(t);var a=r?e[o](r):e[i]();return i=a.nextState,c=a.effect,n=a.stateUpdater,o=a.errorState,i===qr?zr(t):c}return $e(a,(function(e){return a(null,e)}),r)}function Kr(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),o=2;o<r;o++)n[o-2]=arguments[o];var c,i={done:!1,value:yt(e)},a=function(e){return{done:!1,value:vt.apply(void 0,[t].concat(n,[e]))}},u=function(e){return c=e};return Fr({q1:function(){return{nextState:\"q2\",effect:i,stateUpdater:u}},q2:function(){return{nextState:\"q1\",effect:a(c)}}},\"q1\",\"takeEvery(\"+Jr(e)+\", \"+t.name+\")\")}function Gr(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),o=2;o<r;o++)n[o-2]=arguments[o];var c,i,a={done:!1,value:yt(e)},u=function(e){return{done:!1,value:vt.apply(void 0,[t].concat(n,[e]))}},s=function(e){return{done:!1,value:gt(e)}},l=function(e){return c=e},f=function(e){return i=e};return Fr({q1:function(){return{nextState:\"q2\",effect:a,stateUpdater:f}},q2:function(){return c?{nextState:\"q3\",effect:s(c)}:{nextState:\"q1\",effect:u(i),stateUpdater:l}},q3:function(){return{nextState:\"q1\",effect:u(i),stateUpdater:l}}},\"q1\",\"takeLatest(\"+Jr(e)+\", \"+t.name+\")\")}function Vr(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),o=2;o<r;o++)n[o-2]=arguments[o];return vt.apply(void 0,[Kr,e,t].concat(n))}function $r(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),o=2;o<r;o++)n[o-2]=arguments[o];return vt.apply(void 0,[Gr,e,t].concat(n))}function Yr(e,t,r,n,o,c,i){try{var a=e[c](i),u=a.value}catch(s){return void r(s)}a.done?t(u):Promise.resolve(u).then(n,o)}var Qr,Xr=function(){var e,t=(e=Wr.a.mark((function e(t,r){var n,o;return Wr.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=\"/api/dictionary/\".concat(t,\"/\").concat(r),e.next=3,fetch(n).then((function(e){return e.json()}));case 3:return o=e.sent,e.abrupt(\"return\",ir.WordDefinition.fromJson(o));case 5:case\"end\":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var c=e.apply(t,r);function i(e){Yr(c,n,o,i,a,\"next\",e)}function a(e){Yr(c,n,o,i,a,\"throw\",e)}i(void 0)}))});return function(e,r){return t.apply(this,arguments)}}(),Zr=function(e){var t=e.board,r=e.characters,n=e.configId,o=e.locale;return fetch(\"/api/solve\",{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify({board:t,characters:r,configId:n,locale:o})}).then((function(e){return e.json()}))},en=function(){return fetch(\"/api/visit\",{method:\"PUT\"})},tn=r(\"JQii\"),rn=r(\"4Ign\"),nn=r(\"2QrI\"),on=r(\"I5Sk\"),cn=r(\"uJCx\"),an=(Qr={},Object(yr.a)(Qr,ir.Locale.DE_DE,tn),Object(yr.a)(Qr,ir.Locale.EN_GB,rn),Object(yr.a)(Qr,ir.Locale.EN_US,rn),Object(yr.a)(Qr,ir.Locale.ES_ES,nn),Object(yr.a)(Qr,ir.Locale.FR_FR,on),Object(yr.a)(Qr,ir.Locale.PL_PL,cn),Qr),un=function(e){return e.board},sn=function(e){return e.rack},ln=function(e){return e.results},fn=function(e){return e.settings},pn=function(e){return e.solve},dn=function(e){return e.dictionary},yn=ie([fn],(function(e){return e.autoGroupTiles})),hn=ie([fn],(function(e){return e.locale})),mn=un,bn=ie([fn],(function(e){return e.configId})),vn=ie([bn,hn],cr.getLocaleConfig),gn=ie([ln],(function(e){return e.results})),On=ie([ln],(function(e){return e.query})),wn=ie([ln],(function(e){return e.sort.column})),_n=ie([ln],(function(e){return e.sort.direction})),Sn=ie([gn,wn,_n],xr.q),Cn=ie([Sn,On],(function(e,t){return e&&0!==t.trim().length?e.filter((function(e){return new RegExp(t,\"gi\").test(e.word)})):e})),xn=ie([ln],(function(e){return e.candidate})),An=ie([xn],(function(e){return(null===e||void 0===e?void 0:e.cells)||[]})),jn=ie([xn],(function(e){return(null===e||void 0===e?void 0:e.tiles)||[]})),Rn=ie([un,An],(function(e,t){return e.rows.map((function(e,r){return e.map((function(e,n){return Object(xr.g)(t,n,r)||e}))}))})),En=ie([vn,function(e,t){return t}],(function(e,t){return e.getCellBonus(t)})),kn=ie([vn,function(e,t){return t}],(function(e,t){return e.getCharacterPoints(t)})),Nn=ie([vn,function(e,t){return t}],(function(e,t){return e.getTilePoints(t)})),Pn=ie([hn],(function(e){return an[e]})),Bn=(ie([Pn,hn,function(e,t){return t}],(function(e,t,r){var n=e[r];if(\"undefined\"===typeof n)throw new Error('Untranslated key \"'.concat(r,'\" in locale \"').concat(t,'\"'));return n})),sn),Tn=ie(sn,(function(e){return e.filter((function(e){return null!==e}))})),Un=ie([pn],(function(e){return e.lastSolvedParameters})),Mn=ie([pn],(function(e){return e.isLoading})),Dn=ie([Un,Tn],(function(e,t){return!Object(xr.r)(e.characters,t)})),Ln=ie([Un,un],(function(e,t){return!e.board.equals(t)})),Hn=ie([Ln,Dn],(function(e,t){return e||t})),In=ie([vn,un,Tn],xr.i),Wn=ie([In],(function(e){return e.some((function(e){var t=e.count;return e.usedCount>t}))})),zn=ie([In],xr.j),qn=Wr.a.mark(eo),Jn=Wr.a.mark(to),Fn=Wr.a.mark(ro),Kn=Wr.a.mark(no),Gn=Wr.a.mark(oo),Vn=Wr.a.mark(co),$n=Wr.a.mark(io),Yn=Wr.a.mark(ao),Qn=Wr.a.mark(uo),Xn=Wr.a.mark(so),Zn=Object(xr.o)(Xr);function eo(){return Wr.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Vr(Pr.actions.applyResult.type,to);case 2:return e.next=4,Vr(Pr.actions.changeResultCandidate.type,ao);case 4:return e.next=6,Vr(Ur.actions.changeConfigId.type,ro);case 6:return e.next=8,Vr(Ur.actions.changeLocale.type,io);case 8:return e.next=10,$r(_r.actions.submit.type,no);case 10:return e.next=12,$r(de.type,oo);case 12:return e.next=14,$r(ye.type,co);case 14:return e.next=16,$r(Lr.actions.submit.type,uo);case 16:case\"end\":return e.stop()}}),qn)}function to(e){var t,r;return Wr.a.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t=e.payload,n.next=3,Ot(yn);case 3:return r=n.sent,n.next=6,ht(vr.actions.applyResult(t));case 6:return n.next=8,ht(Ar.actions.removeTiles(t.tiles));case 8:return n.next=10,ht(Ar.actions.groupTiles(r));case 10:case\"end\":return n.stop()}}),Jn)}function ro(){return Wr.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ht(Pr.actions.reset());case 2:return e.next=4,ht(Lr.actions.submit());case 4:return e.delegateYield(so(),\"t0\",5);case 5:case\"end\":return e.stop()}}),Fn)}function no(){var e,t,r,n;return Wr.a.wrap((function(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,Ot(dn);case 2:return e=o.sent,t=e.input,o.next=6,Ot(hn);case 6:if(r=o.sent,Zn.hasCache(r,t)){o.next=10;break}return o.next=10,wt(150);case 10:return o.prev=10,o.next=13,bt(Zn,r,t);case 13:return n=o.sent,o.next=16,ht(_r.actions.submitSuccess(n));case 16:o.next=22;break;case 18:return o.prev=18,o.t0=o.catch(10),o.next=22,ht(_r.actions.submitFailure());case 22:case\"end\":return o.stop()}}),Kn,null,[[10,18]])}function oo(){return Wr.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,bt(en);case 2:return e.delegateYield(so(),\"t0\",3);case 3:case\"end\":return e.stop()}}),Gn)}function co(){return Wr.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ht(vr.actions.reset());case 2:return e.next=4,ht(_r.actions.reset());case 4:return e.next=6,ht(Ar.actions.reset());case 6:return e.next=8,ht(Pr.actions.reset());case 8:case\"end\":return e.stop()}}),Vn)}function io(){return Wr.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ht(Lr.actions.submit());case 2:return e.next=4,ht(Pr.actions.changeResultCandidate(null));case 4:return e.next=6,ht(_r.actions.reset());case 6:case\"end\":return e.stop()}}),$n)}function ao(e){var t;return Wr.a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(!(t=e.payload)){r.next=6;break}return r.next=4,ht(_r.actions.changeInput(t.word));case 4:return r.next=6,ht(_r.actions.submit());case 6:case\"end\":return r.stop()}}),Yn)}function uo(){var e,t,r,n,o,c;return Wr.a.wrap((function(i){for(;;)switch(i.prev=i.next){case 0:return i.next=2,Ot(mn);case 2:return e=i.sent,i.next=5,Ot(vn);case 5:return t=i.sent,r=t.config,i.next=9,Ot(hn);case 9:return n=i.sent,i.next=12,Ot(Tn);case 12:if(0!==(o=i.sent).length){i.next=19;break}return i.next=16,ht(Lr.actions.submitSuccess({board:e,characters:o}));case 16:return i.next=18,ht(Pr.actions.changeResults([]));case 18:return i.abrupt(\"return\");case 19:return i.prev=19,i.next=22,bt(Zr,{board:e.toJson(),characters:o,configId:r.id,locale:n});case 22:return c=i.sent,i.next=25,ht(Lr.actions.submitSuccess({board:e,characters:o}));case 25:return i.next=27,ht(Pr.actions.changeResults(c.map(ir.Result.fromJson)));case 27:i.next=35;break;case 29:return i.prev=29,i.t0=i.catch(19),i.next=33,ht(Pr.actions.changeResults([]));case 33:return i.next=35,ht(Lr.actions.submitFailure());case 35:case\"end\":return i.stop()}}),Qn,null,[[19,29]])}function so(){var e,t,r,n,o,c,i;return Wr.a.wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return a.next=2,Ot(vn);case 2:return e=a.sent,t=e.config,a.next=6,Ot(Tn);case 6:if(r=a.sent,!(t.maximumNumberOfCharacters>r.length)){a.next=13;break}return n=Math.abs(t.maximumNumberOfCharacters-r.length),a.next=11,ht(Ar.actions.init([].concat(Object(Cr.a)(r),Object(Cr.a)(Array(n).fill(null)))));case 11:a.next=23;break;case 13:if(!(t.maximumNumberOfCharacters<r.length)){a.next=23;break}return o=r.filter(Boolean).slice(0,t.maximumNumberOfCharacters),c=Math.abs(t.maximumNumberOfCharacters-o.length),a.next=18,Ot(yn);case 18:return i=a.sent,a.next=21,ht(Ar.actions.init([].concat(Object(Cr.a)(o),Object(Cr.a)(Array(c).fill(null)))));case 21:return a.next=23,ht(Ar.actions.groupTiles(i));case 23:case\"end\":return a.stop()}}),Xn)}var lo=or(),fo=function(){return Object(re.a)(lo)},po=function(){var e=Object(re.e)(Hr,undefined,fo());return lo.run(eo),e},yo=r(\"z/if\"),ho=\"board\",mo=\"config-id\",bo=\"has-visited\",vo=\"locale\",go=\"rack\",Oo=r.n(yo).a.namespace(\"scrabble-solver\"),wo={getBoard:function(){var e=Oo.get(ho);return e?ir.Board.fromJson(JSON.parse(e)):e},setBoard:function(e){var t=e?JSON.stringify(e.toJson()):e;Oo.set(ho,t,!0)},getConfigId:function(){return Oo.get(mo)},setConfigId:function(e){Oo.set(mo,e,!0)},getHasVisited:function(){return Boolean(Oo.get(bo))},setHasVisited:function(e){Oo.set(bo,e,!0)},getLocale:function(){return Oo.get(vo)},setLocale:function(e){Oo.set(vo,e,!0)},getRack:function(){return Oo.get(go)},setRack:function(e){Oo.set(go,e,!0)}},_o=r(\"q1tI\"),So=r(\"/MKj\").c,Co=function(){var e=So(Pn),t=So(hn);return Object(_o.useCallback)((function(r){var n=e[r];if(\"undefined\"===typeof n)throw new Error('Untranslated key \"'.concat(r,'\" in locale \"').concat(t,'\"'));return n}),[e,t])}},\"87Kc\":function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});t.default=[{character:\"a\",count:9,score:1},{character:\"b\",count:2,score:3},{character:\"c\",count:2,score:3},{character:\"d\",count:3,score:2},{character:\"e\",count:15,score:1},{character:\"f\",count:2,score:1},{character:\"g\",count:2,score:2},{character:\"h\",count:2,score:4},{character:\"i\",count:8,score:1},{character:\"j\",count:1,score:8},{character:\"k\",count:1,score:10},{character:\"l\",count:5,score:1},{character:\"m\",count:3,score:2},{character:\"n\",count:6,score:1},{character:\"o\",count:6,score:1},{character:\"p\",count:2,score:3},{character:\"q\",count:1,score:8},{character:\"r\",count:6,score:1},{character:\"s\",count:6,score:1},{character:\"t\",count:6,score:1},{character:\"u\",count:6,score:1},{character:\"v\",count:2,score:4},{character:\"w\",count:1,score:10},{character:\"x\",count:1,score:10},{character:\"y\",count:1,score:10},{character:\"z\",count:1,score:10}]},\"8rf8\":function(e,t,r){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(r(\"LzO6\")),c=n(r(\"t4n0\")),i=[o.default,c.default];t.default=function(e){return i.some((function(t){return t.id===e}))}},ANjH:function(e,t,r){\"use strict\";r.d(t,\"a\",(function(){return m})),r.d(t,\"b\",(function(){return f})),r.d(t,\"c\",(function(){return s})),r.d(t,\"d\",(function(){return h})),r.d(t,\"e\",(function(){return a}));var n=r(\"bCCX\"),o=function(){return Math.random().toString(36).substring(7).split(\"\").join(\".\")},c={INIT:\"@@redux/INIT\"+o(),REPLACE:\"@@redux/REPLACE\"+o(),PROBE_UNKNOWN_ACTION:function(){return\"@@redux/PROBE_UNKNOWN_ACTION\"+o()}};function i(e){if(\"object\"!==typeof e||null===e)return!1;for(var t=e;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function a(e,t,r){var o;if(\"function\"===typeof t&&\"function\"===typeof r||\"function\"===typeof r&&\"function\"===typeof arguments[3])throw new Error(\"It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function.\");if(\"function\"===typeof t&&\"undefined\"===typeof r&&(r=t,t=void 0),\"undefined\"!==typeof r){if(\"function\"!==typeof r)throw new Error(\"Expected the enhancer to be a function.\");return r(a)(e,t)}if(\"function\"!==typeof e)throw new Error(\"Expected the reducer to be a function.\");var u=e,s=t,l=[],f=l,p=!1;function d(){f===l&&(f=l.slice())}function y(){if(p)throw new Error(\"You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store.\");return s}function h(e){if(\"function\"!==typeof e)throw new Error(\"Expected the listener to be a function.\");if(p)throw new Error(\"You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api-reference/store#subscribelistener for more details.\");var t=!0;return d(),f.push(e),function(){if(t){if(p)throw new Error(\"You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api-reference/store#subscribelistener for more details.\");t=!1,d();var r=f.indexOf(e);f.splice(r,1),l=null}}}function m(e){if(!i(e))throw new Error(\"Actions must be plain objects. Use custom middleware for async actions.\");if(\"undefined\"===typeof e.type)throw new Error('Actions may not have an undefined \"type\" property. Have you misspelled a constant?');if(p)throw new Error(\"Reducers may not dispatch actions.\");try{p=!0,s=u(s,e)}finally{p=!1}for(var t=l=f,r=0;r<t.length;r++){(0,t[r])()}return e}function b(e){if(\"function\"!==typeof e)throw new Error(\"Expected the nextReducer to be a function.\");u=e,m({type:c.REPLACE})}function v(){var e,t=h;return(e={subscribe:function(e){if(\"object\"!==typeof e||null===e)throw new TypeError(\"Expected the observer to be an object.\");function r(){e.next&&e.next(y())}return r(),{unsubscribe:t(r)}}})[n.a]=function(){return this},e}return m({type:c.INIT}),(o={dispatch:m,subscribe:h,getState:y,replaceReducer:b})[n.a]=v,o}function u(e,t){var r=t&&t.type;return\"Given \"+(r&&'action \"'+String(r)+'\"'||\"an action\")+', reducer \"'+e+'\" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.'}function s(e){for(var t=Object.keys(e),r={},n=0;n<t.length;n++){var o=t[n];0,\"function\"===typeof e[o]&&(r[o]=e[o])}var i,a=Object.keys(r);try{!function(e){Object.keys(e).forEach((function(t){var r=e[t];if(\"undefined\"===typeof r(void 0,{type:c.INIT}))throw new Error('Reducer \"'+t+\"\\\" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.\");if(\"undefined\"===typeof r(void 0,{type:c.PROBE_UNKNOWN_ACTION()}))throw new Error('Reducer \"'+t+\"\\\" returned undefined when probed with a random type. Don't try to handle \"+c.INIT+' or other actions in \"redux/*\" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.')}))}(r)}catch(s){i=s}return function(e,t){if(void 0===e&&(e={}),i)throw i;for(var n=!1,o={},c=0;c<a.length;c++){var s=a[c],l=r[s],f=e[s],p=l(f,t);if(\"undefined\"===typeof p){var d=u(s,t);throw new Error(d)}o[s]=p,n=n||p!==f}return(n=n||a.length!==Object.keys(e).length)?o:e}}function l(e,t){return function(){return t(e.apply(this,arguments))}}function f(e,t){if(\"function\"===typeof e)return l(e,t);if(\"object\"!==typeof e||null===e)throw new Error(\"bindActionCreators expected an object or a function, instead received \"+(null===e?\"null\":typeof e)+'. Did you write \"import ActionCreators from\" instead of \"import * as ActionCreators from\"?');var r={};for(var n in e){var o=e[n];\"function\"===typeof o&&(r[n]=l(o,t))}return r}function p(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function d(e,t){var r=Object.keys(e);return Object.getOwnPropertySymbols&&r.push.apply(r,Object.getOwnPropertySymbols(e)),t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?d(r,!0).forEach((function(t){p(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):d(r).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function h(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return 0===t.length?function(e){return e}:1===t.length?t[0]:t.reduce((function(e,t){return function(){return e(t.apply(void 0,arguments))}}))}function m(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return function(e){return function(){var r=e.apply(void 0,arguments),n=function(){throw new Error(\"Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.\")},o={getState:r.getState,dispatch:function(){return n.apply(void 0,arguments)}},c=t.map((function(e){return e(o)}));return y({},r,{dispatch:n=h.apply(void 0,c)(r.dispatch)})}}}},ASA0:function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=r(\"U5qN\"),o=[{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:0,y:0},{multiplier:3,type:n.BONUS_WORD,x:2,y:0},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:5,y:0},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:7,y:0},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:9,y:0},{multiplier:3,type:n.BONUS_WORD,x:12,y:0},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:14,y:0},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:4,y:1},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:6,y:1},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:8,y:1},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:10,y:1},{multiplier:3,type:n.BONUS_WORD,x:0,y:2},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:3,y:2},{multiplier:2,type:n.BONUS_WORD,x:5,y:2},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:7,y:2},{multiplier:2,type:n.BONUS_WORD,x:9,y:2},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:11,y:2},{multiplier:3,type:n.BONUS_WORD,x:14,y:2},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:2,y:3},{multiplier:2,type:n.BONUS_WORD,x:4,y:3},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:6,y:3},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:8,y:3},{multiplier:2,type:n.BONUS_WORD,x:10,y:3},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:12,y:3},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:1,y:4},{multiplier:2,type:n.BONUS_WORD,x:3,y:4},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:5,y:4},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:9,y:4},{multiplier:2,type:n.BONUS_WORD,x:11,y:4},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:13,y:4},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:0,y:5},{multiplier:2,type:n.BONUS_WORD,x:2,y:5},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:4,y:5},{multiplier:3,score:3,type:n.BONUS_CHARACTER,x:7,y:5},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:10,y:5},{multiplier:2,type:n.BONUS_WORD,x:12,y:5},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:14,y:5},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:1,y:6},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:3,y:6},{multiplier:3,score:3,type:n.BONUS_CHARACTER,x:6,y:6},{multiplier:3,score:3,type:n.BONUS_CHARACTER,x:8,y:6},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:11,y:6},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:13,y:6},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:0,y:7},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:2,y:7},{multiplier:3,score:3,type:n.BONUS_CHARACTER,x:5,y:7},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:7,y:7},{multiplier:3,score:3,type:n.BONUS_CHARACTER,x:9,y:7},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:12,y:7},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:14,y:7},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:1,y:8},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:3,y:8},{multiplier:3,score:3,type:n.BONUS_CHARACTER,x:6,y:8},{multiplier:3,score:3,type:n.BONUS_CHARACTER,x:8,y:8},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:11,y:8},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:13,y:8},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:0,y:9},{multiplier:2,type:n.BONUS_WORD,x:2,y:9},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:4,y:9},{multiplier:3,score:3,type:n.BONUS_CHARACTER,x:7,y:9},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:10,y:9},{multiplier:2,type:n.BONUS_WORD,x:12,y:9},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:14,y:9},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:1,y:10},{multiplier:2,type:n.BONUS_WORD,x:3,y:10},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:5,y:10},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:9,y:10},{multiplier:2,type:n.BONUS_WORD,x:11,y:10},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:13,y:10},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:2,y:11},{multiplier:2,type:n.BONUS_WORD,x:4,y:11},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:6,y:11},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:8,y:11},{multiplier:2,type:n.BONUS_WORD,x:10,y:11},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:12,y:11},{multiplier:3,type:n.BONUS_WORD,x:0,y:12},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:3,y:12},{multiplier:2,type:n.BONUS_WORD,x:5,y:12},{multiplier:3,score:1,type:n.BONUS_CHARACTER,x:7,y:12},{multiplier:2,type:n.BONUS_WORD,x:9,y:12},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:11,y:12},{multiplier:3,type:n.BONUS_WORD,x:14,y:12},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:4,y:13},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:6,y:13},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:8,y:13},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:10,y:13},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:0,y:14},{multiplier:3,type:n.BONUS_WORD,x:2,y:14},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:5,y:14},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:7,y:14},{multiplier:3,score:2,type:n.BONUS_CHARACTER,x:9,y:14},{multiplier:3,type:n.BONUS_WORD,x:12,y:14},{multiplier:3,score:5,type:n.BONUS_CHARACTER,x:14,y:14}];t.default=o},BsWD:function(e,t,r){\"use strict\";r.d(t,\"a\",(function(){return o}));var n=r(\"a3WO\");function o(e,t){if(e){if(\"string\"===typeof e)return Object(n.a)(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return\"Object\"===r&&e.constructor&&(r=e.constructor.name),\"Map\"===r||\"Set\"===r?Array.from(e):\"Arguments\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Object(n.a)(e,t):void 0}}},Dkvj:function(e,t,r){\"use strict\";var n=this&&this.__extends||function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),o=this&&this.__read||function(e,t){var r=\"function\"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,c=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=c.next()).done;)i.push(n.value)}catch(a){o={error:a}}finally{try{n&&!n.done&&(r=c.return)&&r.call(c)}finally{if(o)throw o.error}}return i},c=this&&this.__spread||function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(o(arguments[t]));return e},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var a=i(r(\"/VMF\")),u=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n(t,e),t.prototype.clone=function(){return new t({board:this.board,cells:this.cells.map((function(e){return e.clone()}))})},t.prototype.getCollisions=function(){var e=this,t=[];return this.cells.filter((function(t){return t.isEmpty&&(e.board.collidesUp(t)||e.board.collidesDown(t))})).forEach((function(r){for(var n=e.board.getColumn(r.x),o=r.y-1;o>=0&&n[o].hasTile();)--o;var i=n.slice(o+1,r.y);for(o=r.y+1;o<n.length&&n[o].hasTile();)++o;var u=n.slice(r.y+1,o),s=c(i,[r],u);if(s.length>1){var l=new a.default({board:e.board,cells:s});t.push(l)}})),t},t}(a.default);t.default=u},I5Sk:function(e){e.exports=JSON.parse('{\"cell.set-blank\":\"Marquer comme vide\",\"cell.set-not-blank\":\"Marquer comme non vide\",\"cell.toggle-direction\":\"Direction d\\'\\xe9criture - cliquer pour changer\",\"common.blanks\":\"Cases vides\",\"common.clear\":\"Effacer\",\"common.close\":\"Fermer\",\"common.consonants\":\"Consonnes\",\"common.loading\":\"Chargement\",\"common.points\":\"Points\",\"common.tiles\":\"Cases\",\"common.two-letter-tiles\":\"Deux lettres\",\"common.vowels\":\"Voyelles\",\"common.word\":\"Mot\",\"common.words\":\"Mots\",\"dictionary.empty-state.no-definitions\":\"Le mot existe dans le dictionary mais n\\'a pas de d\\xe9finition.\",\"dictionary.empty-state.no-results\":\"Impossible de trouver une d\\xe9finition pour ce mot dans le dictionaire.\",\"dictionary.empty-state.not-allowed\":\"Ce mot n\\'est pas pas acceptable.\",\"dictionary.empty-state.uninitialized\":\"La d\\xe9finition dictionaire du dernier mot surlign\\xe9 sera affich\\xe9e ici.\",\"dictionary.input.placeholder\":\"Rechercher dans le dictionnaire...\",\"empty-state.error\":\"Erreur\",\"empty-state.info\":\"Info\",\"empty-state.success\":\"Ouais!\",\"empty-state.warning\":\"Oups!\",\"github\":\"Voir ce projet sur GitHub\",\"keyMap\":\"Raccourcis clavier\",\"keyMap.board\":\"Plateau\",\"keyMap.board.toggle-blank\":\"Marqu\\xe9/D\\xe9marqu\\xe9 la case en tant que vide\",\"keyMap.board.toggle-direction\":\"Faire basculer la direction d\\'\\xe9criture\",\"keyMap.board-and-rack\":\"Plateau & chevalet\",\"keyMap.board-and-rack.insert-two-letter-tile\":\"Ins\\xe9rer une tuile de deux lettres\",\"keyMap.board-and-rack.navigate\":\"Naviguer\",\"keyMap.board-and-rack.remove-tile\":\"Supprimer une case\",\"keyMap.board-and-rack.submit\":\"Commencer la r\\xe9solution\",\"keyMap.rack\":\"Chevalet\",\"keyMap.rack.insert-blank\":\"Inserer une case vide (spacebar)\",\"rack.placeholder\":\"Lettres\",\"remaining-tiles\":\"Cases restantes\",\"results.empty-state.no-filtered-results\":\"Aucun r\\xe9sultat ne correspond \\xe0 cette requ\\xeate\",\"results.empty-state.no-results\":\"Pas de r\\xe9sultats - impossible de g\\xe9n\\xe9rer des mots.\",\"results.empty-state.outdated\":\"Les r\\xe9sultats sont d\\xe9pass\\xe9. Cliquer ci-dessous pour mettre \\xe0 jour.\",\"results.empty-state.uninitialized\":\"Words generated from your letters will be shown here.\",\"results.input.placeholder\":\"Rechercher les r\\xe9sultats... (RegExp)\",\"results.solve\":\"R\\xe9soudre\",\"settings\":\"Options\",\"settings.autoGroupTiles\":\"Grouper les cases restantes\",\"settings.autoGroupTiles.left\":\"Vers la droite\",\"settings.autoGroupTiles.right\":\"Vers la gauche\",\"settings.autoGroupTiles.null\":\"Ne pas grouper\",\"settings.game\":\"Jeu\",\"settings.language\":\"Langue\"}')},JQii:function(e){e.exports=JSON.parse('{\"cell.set-blank\":\"Als Blanko markieren\",\"cell.set-not-blank\":\"Nicht als Blanko markieren\",\"cell.toggle-direction\":\"Schreibrichtung - klicken zum Wechseln\",\"common.blanks\":\"Blankos\",\"common.clear\":\"L\\xf6schen\",\"common.close\":\"Schlie\\xdfen\",\"common.consonants\":\"Konsonanten\",\"common.loading\":\"Laden\",\"common.points\":\"Punkte\",\"common.tiles\":\"Steine\",\"common.two-letter-tiles\":\"Zwei-Buchstaben\",\"common.vowels\":\"Vokale\",\"common.word\":\"Wort\",\"common.words\":\"W\\xf6rter\",\"dictionary.empty-state.no-definitions\":\"Wort existiert im W\\xf6rterbuch aber hat keine Definition.\",\"dictionary.empty-state.no-results\":\"Wort kann nicht im W\\xf6rterbuch gefunden werden.\",\"dictionary.empty-state.not-allowed\":\"Dieses Wort ist nicht erlaubt.\",\"dictionary.empty-state.uninitialized\":\"Die W\\xf6rterbuchdefinition des letzten markierten Wortes wird hier angezeigt.\",\"dictionary.input.placeholder\":\"Durchsuche W\\xf6rterbuch...\",\"empty-state.error\":\"Fehler\",\"empty-state.info\":\"Info\",\"empty-state.success\":\"Juhuu!\",\"empty-state.warning\":\"Oje!\",\"github\":\"Schau dieses Projekt auf GitHub an\",\"keyMap\":\"Tastaturk\\xfcrzel\",\"keyMap.board\":\"Brett\",\"keyMap.board.toggle-blank\":\"Als Blanko markieren / aufheben\",\"keyMap.board.toggle-direction\":\"Schreibrichtung umschalten\",\"keyMap.board-and-rack\":\"Brett & Ablage\",\"keyMap.board-and-rack.insert-two-letter-tile\":\"Zwei-Buchstaben Stein hinzuf\\xfcgen\",\"keyMap.board-and-rack.navigate\":\"Navigieren\",\"keyMap.board-and-rack.remove-tile\":\"Stein entfernen\",\"keyMap.board-and-rack.submit\":\"L\\xf6sen starten\",\"keyMap.rack\":\"Ablage\",\"keyMap.rack.insert-blank\":\"Blanko hinzuf\\xfcgen (Leertaste)\",\"rack.placeholder\":\"Steine\\u2026\",\"remaining-tiles\":\"Restliche Steine\",\"results.empty-state.no-filtered-results\":\"Keine Ergebnisse f\\xfcr diese Anfrage.\",\"results.empty-state.no-results\":\"Keine Ergebnisse - kein Wort konnte generiert werden.\",\"results.empty-state.outdated\":\"Ergebnisse sind alt. Klicken zum Aktualisieren.\",\"results.empty-state.uninitialized\":\"W\\xf6rter die aus deinen Buchstaben generiert wurden erscheinen hier.\",\"results.input.placeholder\":\"Suchergebnisse... (RegExp)\",\"results.solve\":\"L\\xf6sen\",\"settings\":\"Einstellungen\",\"settings.autoGroupTiles\":\"Restliche Steine gruppieren\",\"settings.autoGroupTiles.left\":\"Linke Seite\",\"settings.autoGroupTiles.right\":\"Rechte Seite\",\"settings.autoGroupTiles.null\":\"Nicht gruppieren\",\"settings.game\":\"Spiel\",\"settings.language\":\"Sprache\"}')},KFH4:function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});t.default=[{character:\"a\",count:12,score:1},{character:\"b\",count:2,score:3},{character:\"c\",count:4,score:3},{character:\"ch\",count:1,score:5},{character:\"d\",count:5,score:2},{character:\"e\",count:12,score:1},{character:\"f\",count:1,score:4},{character:\"g\",count:2,score:2},{character:\"h\",count:2,score:4},{character:\"i\",count:6,score:1},{character:\"j\",count:1,score:8},{character:\"ll\",count:1,score:8},{character:\"l\",count:4,score:1},{character:\"m\",count:2,score:3},{character:\"n\",count:5,score:1},{character:\"\\xf1\",count:1,score:8},{character:\"o\",count:9,score:1},{character:\"p\",count:2,score:3},{character:\"q\",count:1,score:5},{character:\"r\",count:5,score:1},{character:\"rr\",count:1,score:8},{character:\"s\",count:6,score:1},{character:\"t\",count:4,score:1},{character:\"u\",count:5,score:1},{character:\"v\",count:1,score:4},{character:\"x\",count:1,score:8},{character:\"y\",count:1,score:4},{character:\"z\",count:1,score:10}]},KQm4:function(e,t,r){\"use strict\";r.d(t,\"a\",(function(){return c}));var n=r(\"a3WO\");var o=r(\"BsWD\");function c(e){return function(e){if(Array.isArray(e))return Object(n.a)(e)}(e)||function(e){if(\"undefined\"!==typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||Object(o.a)(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}},KR0w:function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=r(\"U5qN\"),o=function(){function e(e){var t=e.character,r=e.isBlank,n=void 0!==r&&r;this.character=t,this.isBlank=n}return e.fromJson=function(t){return t?new e({character:t.character,isBlank:t.isBlank}):e.Null},e.prototype.clone=function(){return new e({character:this.character,isBlank:this.isBlank})},e.prototype.equals=function(e){return this.character===e.character&&this.isBlank===e.isBlank},e.prototype.toJson=function(){return{character:this.character,isBlank:this.isBlank}},e.prototype.toString=function(){return this.character},e.Null=Object.freeze({character:n.EMPTY_CELL,isBlank:!1,clone:function(){return e.Null},equals:function(t){return t===e.Null},toJson:function(){return null},toString:function(){return n.EMPTY_CELL}}),e}();t.default=o},Kxtj:function(e,t,r){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var o=r(\"U5qN\"),c=n(r(\"x6Yb\")),i=n(r(\"KR0w\")),a=function(){function e(e){var t=e.rows;this.rows=t,this.numberOfColumns=t[0].length,this.numberOfRows=t.length}return e.create=function(t,r){return e.fromStringArray(Array(r).fill(Array(t).fill(\" \").join(\"\")))},e.fromJson=function(t){return new e({rows:t.map((function(e){return e.map(c.default.fromJson)}))})},e.fromStringArray=function(t){return new e({rows:t.map((function(e,t){return e.split(\"\").map((function(e,r){return new c.default({isEmpty:!e||e===o.EMPTY_CELL,tile:e===o.EMPTY_CELL?i.default.Null:new i.default({character:e}),x:r,y:t})}))}))})},Object.defineProperty(e.prototype,\"center\",{get:function(){var e=Math.floor(this.numberOfColumns/2),t=Math.floor(this.numberOfRows/2);return this.rows[t][e]},enumerable:!1,configurable:!0}),e.prototype.clone=function(){return new e({rows:this.rows.map((function(e){return e.map((function(e){return e.clone()}))}))})},e.prototype.collides=function(e){return this.collidesUp(e)||this.collidesDown(e)||this.collidesLeft(e)||this.collidesRight(e)},e.prototype.collidesDown=function(e){var t=e.x,r=e.y;return r<this.numberOfRows-1&&!this.rows[r+1][t].isEmpty},e.prototype.collidesLeft=function(e){var t=e.x,r=e.y;return t>0&&!this.rows[r][t-1].isEmpty},e.prototype.collidesRight=function(e){var t=e.x,r=e.y;return t<this.numberOfColumns-1&&!this.rows[r][t+1].isEmpty},e.prototype.collidesUp=function(e){var t=e.x,r=e.y;return r>0&&!this.rows[r-1][t].isEmpty},e.prototype.equals=function(e){return this.numberOfColumns===e.numberOfColumns&&this.numberOfRows===e.numberOfRows&&this.rows.every((function(t,r){return t.every((function(t,n){return t.equals(e.rows[r][n])}))}))},e.prototype.getBlanksCount=function(){return this.rows.reduce((function(e,t){return e+t.reduce((function(e,t){return t.tile.isBlank?e+1:e}),0)}),0)},e.prototype.getColumn=function(e){return this.rows.map((function(t){return t[e]}))},e.prototype.getRow=function(e){return this.rows[e]},e.prototype.getTilesCount=function(){return this.rows.reduce((function(e,t){return e+t.reduce((function(e,t){return t.hasTile()?e+1:e}),0)}),0)},e.prototype.isEmpty=function(){return this.rows.every((function(e){return e.every((function(e){return e.isEmpty}))}))},e.prototype.toJson=function(){return this.rows.map((function(e){return e.map((function(e){return e.toJson()}))}))},e.prototype.toString=function(){return this.rows.map((function(e){return e.map(String)})).join(\"\\n\")},e.prototype.updateCell=function(e,t,r){this.rows[t][e]=r(this.rows[t][e])},e.prototype.updateRow=function(e,t){this.rows[e]=t(this.rows[e])},e}();t.default=a},LzO6:function(e,t,r){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var o=r(\"4+01\");Object.defineProperty(t,\"default\",{enumerable:!0,get:function(){return n(o).default}})},QLQB:function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});t.default=[{character:\"a\",count:9,score:1},{character:\"b\",count:2,score:3},{character:\"c\",count:2,score:3},{character:\"d\",count:4,score:2},{character:\"e\",count:12,score:1},{character:\"f\",count:2,score:4},{character:\"g\",count:3,score:2},{character:\"h\",count:2,score:4},{character:\"i\",count:9,score:1},{character:\"j\",count:1,score:8},{character:\"k\",count:1,score:5},{character:\"l\",count:4,score:1},{character:\"m\",count:2,score:3},{character:\"n\",count:6,score:1},{character:\"o\",count:8,score:1},{character:\"p\",count:2,score:3},{character:\"q\",count:1,score:10},{character:\"r\",count:6,score:1},{character:\"s\",count:4,score:1},{character:\"t\",count:6,score:1},{character:\"u\",count:4,score:1},{character:\"v\",count:2,score:4},{character:\"w\",count:2,score:4},{character:\"x\",count:1,score:8},{character:\"y\",count:2,score:4},{character:\"z\",count:1,score:10}]},QqGY:function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});t.default=[{character:\"a\",count:12,score:1},{character:\"b\",count:2,score:3},{character:\"c\",count:4,score:3},{character:\"ch\",count:1,score:5},{character:\"d\",count:5,score:2},{character:\"e\",count:12,score:1},{character:\"f\",count:1,score:4},{character:\"g\",count:2,score:2},{character:\"h\",count:2,score:4},{character:\"i\",count:6,score:1},{character:\"j\",count:1,score:8},{character:\"ll\",count:1,score:8},{character:\"l\",count:4,score:1},{character:\"m\",count:2,score:3},{character:\"n\",count:5,score:1},{character:\"\\xf1\",count:1,score:8},{character:\"o\",count:9,score:1},{character:\"p\",count:2,score:3},{character:\"q\",count:1,score:5},{character:\"r\",count:5,score:1},{character:\"rr\",count:1,score:8},{character:\"s\",count:6,score:1},{character:\"t\",count:4,score:1},{character:\"u\",count:5,score:1},{character:\"v\",count:1,score:4},{character:\"x\",count:1,score:8},{character:\"y\",count:1,score:4},{character:\"z\",count:1,score:10}]},SLVX:function(e,t,r){\"use strict\";function n(e){var t,r=e.Symbol;return\"function\"===typeof r?r.observable?t=r.observable:(t=r(\"observable\"),r.observable=t):t=\"@@observable\",t}r.d(t,\"a\",(function(){return n}))},TOwV:function(e,t,r){\"use strict\";e.exports=r(\"qT12\")},TP9X:function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});t.default=[{character:\"a\",count:5,score:1},{character:\"\\xe4\",count:1,score:6},{character:\"b\",count:2,score:3},{character:\"c\",count:2,score:4},{character:\"d\",count:4,score:1},{character:\"e\",count:15,score:1},{character:\"f\",count:2,score:4},{character:\"g\",count:3,score:2},{character:\"h\",count:4,score:2},{character:\"i\",count:6,score:1},{character:\"j\",count:1,score:6},{character:\"k\",count:2,score:4},{character:\"l\",count:3,score:2},{character:\"m\",count:4,score:3},{character:\"n\",count:9,score:1},{character:\"o\",count:3,score:2},{character:\"\\xf6\",count:1,score:8},{character:\"p\",count:1,score:4},{character:\"q\",count:1,score:10},{character:\"r\",count:6,score:1},{character:\"s\",count:7,score:1},{character:\"t\",count:6,score:1},{character:\"u\",count:6,score:1},{character:\"\\xfc\",count:1,score:6},{character:\"v\",count:1,score:6},{character:\"w\",count:1,score:3},{character:\"x\",count:1,score:8},{character:\"y\",count:1,score:10},{character:\"z\",count:1,score:3}]},U5qN:function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.VOWELS=t.CONSONANTS=t.NO_BONUS=t.EMPTY_CELL=t.BONUS_WORD=t.BONUS_CHARACTER=t.BLANK=void 0,t.BLANK=\" \",t.BONUS_CHARACTER=\"BONUS_CHARACTER\",t.BONUS_WORD=\"BONUS_WORD\",t.EMPTY_CELL=\" \",t.NO_BONUS={characterMultiplier:1,wordMultiplier:1},t.CONSONANTS=[\"b\",\"c\",\"\\u0107\",\"d\",\"f\",\"g\",\"h\",\"j\",\"k\",\"l\",\"\\u0142\",\"m\",\"n\",\"\\u0144\",\"p\",\"q\",\"r\",\"s\",\"\\u015b\",\"t\",\"v\",\"w\",\"x\",\"z\",\"\\u017a\",\"\\u017c\"],t.VOWELS=[\"a\",\"\\u0105\",\"\\xe4\",\"e\",\"\\u0119\",\"i\",\"o\",\"\\xf3\",\"\\xf6\",\"u\",\"\\xfc\",\"y\"]},XJoN:function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});t.default=[{character:\"a\",count:9,score:1},{character:\"b\",count:2,score:3},{character:\"c\",count:2,score:3},{character:\"d\",count:3,score:2},{character:\"e\",count:15,score:1},{character:\"f\",count:2,score:1},{character:\"g\",count:2,score:2},{character:\"h\",count:2,score:4},{character:\"i\",count:8,score:1},{character:\"j\",count:1,score:8},{character:\"k\",count:1,score:10},{character:\"l\",count:5,score:1},{character:\"m\",count:3,score:2},{character:\"n\",count:6,score:1},{character:\"o\",count:6,score:1},{character:\"p\",count:2,score:3},{character:\"q\",count:1,score:8},{character:\"r\",count:6,score:1},{character:\"s\",count:6,score:1},{character:\"t\",count:6,score:1},{character:\"u\",count:6,score:1},{character:\"v\",count:2,score:4},{character:\"w\",count:1,score:10},{character:\"x\",count:1,score:10},{character:\"y\",count:1,score:10},{character:\"z\",count:1,score:10}]},Yv4l:function(e,t,r){\"use strict\";var n=this&&this.__assign||function(){return(n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var c=r(\"U5qN\"),i=o(r(\"5vez\")),a=o(r(\"fIUM\")),u=function(){function e(e){this.bonuses=s(e),this.config=e,this.pointsMap=f(this.config)}return e.fromJson=function(t){return new e(t)},Object.defineProperty(e.prototype,\"allTilesBonusScore\",{get:function(){return this.config.allTilesBonusScore},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"alphabet\",{get:function(){return l(this.config)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"blankScore\",{get:function(){return this.config.blankScore},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"boardHeight\",{get:function(){return this.config.boardHeight},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"boardWidth\",{get:function(){return this.config.boardWidth},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"twoCharacterTiles\",{get:function(){return this.config.tiles.filter((function(e){return 2===e.character.length})).map((function(e){return e.character}))},enumerable:!1,configurable:!0}),e.prototype.getCellBonus=function(e){return this.bonuses.find((function(t){return t.matchesCellCoordinates(e)}))},e.prototype.getCellBonusValue=function(e){var t;return(null===(t=this.getCellBonus(e))||void 0===t?void 0:t.value)||c.NO_BONUS},e.prototype.getCharacterPoints=function(e){if(null!==e)return e===c.BLANK?this.blankScore:this.pointsMap[e]},e.prototype.getTwoCharacterTileByPrefix=function(e){if(1===e.length)return this.twoCharacterTiles.find((function(t){return t.startsWith(e)}))},e.prototype.getTilePoints=function(e){if(null!==e)return e.isBlank?this.blankScore:this.getCharacterPoints(e.character)},e.prototype.hasCharacter=function(e){return this.alphabet.includes(e)},e.prototype.isTwoCharacterTilePrefix=function(e){return\"undefined\"!==typeof this.getTwoCharacterTileByPrefix(e)},Object.defineProperty(e.prototype,\"maximumNumberOfCharacters\",{get:function(){return this.config.maximumNumberOfCharacters},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"numberOfBlanks\",{get:function(){return this.config.numberOfBlanks},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"tiles\",{get:function(){return this.config.tiles},enumerable:!1,configurable:!0}),e.prototype.toJson=function(){return this.config},e}(),s=function(e){return e.bonuses.map((function(e){if(e.type===c.BONUS_CHARACTER)return new i.default(e);if(e.type===c.BONUS_WORD)return new a.default(e);throw new Error('Unsupported Bonus type: \"'+e.type+'\"')}))},l=function(e){return e.tiles.map((function(e){return e.character}))},f=function(e){return e.tiles.reduce((function(e,t){var r,o=t.character,c=t.score;return n(n({},e),((r={})[o]=c,r))}),{})};t.default=u},ZJ2G:function(e,t,r){\"use strict\";var n,o=this&&this.__assign||function(){return(o=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},c=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var i=r(\"v/x1\"),a=c(r(\"s8jJ\")),u=r(\"eI4A\"),s={allTilesBonusScore:50,blankScore:0,boardHeight:15,boardWidth:15,bonuses:a.default,id:\"scrabble\",maximumNumberOfCharacters:7,name:\"Scrabble\",numberOfBlanks:2},l=((n={id:s.id,name:s.name})[i.Locale.EN_GB]=i.Config.fromJson(o(o({},s),{tiles:u.tilesEn})),n[i.Locale.DE_DE]=i.Config.fromJson(o(o({},s),{tiles:u.tilesDe})),n[i.Locale.EN_US]=i.Config.fromJson(o(o({},s),{tiles:u.tilesEn})),n[i.Locale.ES_ES]=i.Config.fromJson(o(o({},s),{tiles:u.tilesEs})),n[i.Locale.FR_FR]=i.Config.fromJson(o(o({},s),{tiles:u.tilesFr})),n[i.Locale.PL_PL]=i.Config.fromJson(o(o({},s),{tiles:u.tilesPl})),n);t.default=l},a3WO:function(e,t,r){\"use strict\";function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}r.d(t,\"a\",(function(){return n}))},aMA8:function(e,t,r){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(r(\"bIQe\"));t.default=function(e,t){return o.default(e)[t]}},bCCX:function(e,t,r){\"use strict\";(function(e,n){var o,c=r(\"SLVX\");o=\"undefined\"!==typeof self?self:\"undefined\"!==typeof window?window:\"undefined\"!==typeof e?e:n;var i=Object(c.a)(o);t.a=i}).call(this,r(\"yLpj\"),r(\"3UD+\")(e))},bIQe:function(e,t,r){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(r(\"LzO6\")),c=n(r(\"t4n0\")),i=[o.default,c.default];t.default=function(e){var t=i.find((function(t){return t.id===e}));if(!t)throw new Error('Invalid \"configId\" parameter: not one of '+i.map((function(e){return e.id})).join(\"/\"));return t}},d0vb:function(e,t,r){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var o=r(\"U5qN\"),c=n(r(\"x6Yb\")),i=function(){function e(e){var t=e.cells,r=e.id,n=e.numberOfCollisions,o=e.points,c=d(t);this.cells=t,this.id=r,this.length=t.length,this.numberOfCollisions=n,this.numberOfConsonants=s(c).length,this.numberOfBlanks=u(c).length,this.numberOfTiles=c.length,this.numberOfVowels=l(c).length,this.numberOfWords=1+this.numberOfCollisions,this.points=o,this.pointsRatio=p(c,o),this.tiles=c,this.tilesCharacters=y(c),this.word=h(t)}return e.fromJson=function(t){return new e({cells:t.cells.map(c.default.fromJson),id:t.id,numberOfCollisions:t.numberOfCollisions,points:t.points})},e.prototype.toJson=function(){return{cells:this.cells.map((function(e){return e.toJson()})),id:this.id,numberOfCollisions:this.numberOfCollisions,points:this.points}},e}(),a=function(e,t){return e.localeCompare(t)},u=function(e){return e.filter((function(e){return e.isBlank}))},s=function(e){return e.filter(m)},l=function(e){return e.filter(b)},f=function(e){return e.filter((function(e){return!e.isBlank}))},p=function(e,t){return t/e.length},d=function(e){return e.filter((function(e){return e.isEmpty})).map((function(e){return e.tile}))},y=function(e){return function(e){return f(e).map((function(e){return e.character}))}(e).sort(a).join(\"\")},h=function(e){return e.map(String).join(\"\")},m=function(e){var t=e.character,r=e.isBlank;return o.CONSONANTS.includes(t)&&!r},b=function(e){var t=e.character,r=e.isBlank;return o.VOWELS.includes(t)&&!r};t.default=i},dm5A:function(e,t,r){\"use strict\";r.d(t,\"m\",(function(){return n})),r.d(t,\"A\",(function(){return o})),r.d(t,\"f\",(function(){return c})),r.d(t,\"g\",(function(){return i})),r.d(t,\"h\",(function(){return a})),r.d(t,\"i\",(function(){return u})),r.d(t,\"j\",(function(){return s})),r.d(t,\"k\",(function(){return l})),r.d(t,\"a\",(function(){return f})),r.d(t,\"b\",(function(){return p})),r.d(t,\"c\",(function(){return d})),r.d(t,\"d\",(function(){return y})),r.d(t,\"e\",(function(){return h})),r.d(t,\"l\",(function(){return m})),r.d(t,\"z\",(function(){return b})),r.d(t,\"n\",(function(){return v})),r.d(t,\"o\",(function(){return g})),r.d(t,\"p\",(function(){return O})),r.d(t,\"q\",(function(){return w})),r.d(t,\"r\",(function(){return _})),r.d(t,\"s\",(function(){return S})),r.d(t,\"t\",(function(){return C})),r.d(t,\"u\",(function(){return x})),r.d(t,\"v\",(function(){return A})),r.d(t,\"w\",(function(){return j})),r.d(t,\"y\",(function(){return R})),r.d(t,\"x\",(function(){return E}));var n=\"https://github.com/kamilmielnik/scrabble-solver\",o=250,c=\"#c7d8f9\",i=\"#bae3ba\",a=\"#f7c2aa\",u=\"#efe3ae\",s=40,l=20,f=1,p=14,d=10,y=64,h=32,m=220,b=80,v=i,g=0,O=0,w={1:u,2:i,3:c,4:a,5:a,6:a,7:a,8:a,9:a,10:a},_=6,S=0,C=0,x=80,A=50,j=35,R=34,E=43},eI4A:function(e,t,r){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.tilesDe=t.tilesPl=t.tilesFr=t.tilesEs=t.tilesEn=void 0;var o=r(\"QLQB\");Object.defineProperty(t,\"tilesEn\",{enumerable:!0,get:function(){return n(o).default}});var c=r(\"QqGY\");Object.defineProperty(t,\"tilesEs\",{enumerable:!0,get:function(){return n(c).default}});var i=r(\"XJoN\");Object.defineProperty(t,\"tilesFr\",{enumerable:!0,get:function(){return n(i).default}});var a=r(\"2yzE\");Object.defineProperty(t,\"tilesPl\",{enumerable:!0,get:function(){return n(a).default}});var u=r(\"TP9X\");Object.defineProperty(t,\"tilesDe\",{enumerable:!0,get:function(){return n(u).default}})},fIUM:function(e,t,r){\"use strict\";var n=this&&this.__extends||function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var c=r(\"U5qN\"),i=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=c.BONUS_WORD,t}return n(t,e),Object.defineProperty(t.prototype,\"value\",{get:function(){return{characterMultiplier:1,wordMultiplier:this.multiplier}},enumerable:!1,configurable:!0}),t}(o(r(\"nSrw\")).default);t.default=i},fJ3d:function(e,t,r){\"use strict\";var n;Object.defineProperty(t,\"__esModule\",{value:!0}),function(e){e.EN_GB=\"en-GB\",e.EN_US=\"en-US\",e.ES_ES=\"es-ES\",e.FR_FR=\"fr-FR\",e.PL_PL=\"pl-PL\",e.DE_DE=\"de-DE\"}(n||(n={})),t.default=n},nSrw:function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=function(){function e(e){var t=e.multiplier,r=e.score,n=e.x,o=e.y;this.multiplier=t,this.score=r,this.x=n,this.y=o}return e.prototype.canApply=function(e,t){return t.isEmpty&&this.matchesCellCoordinates(t)},e.prototype.matchesCellCoordinates=function(e){return this.x===e.x&&this.y===e.y},e.prototype.toJson=function(){return{multiplier:this.multiplier,score:this.score,type:this.type,x:this.x,y:this.y}},Object.defineProperty(e.prototype,\"value\",{get:function(){return{characterMultiplier:1,wordMultiplier:1}},enumerable:!1,configurable:!0}),e}();t.default=n},psLn:function(e,t,r){\"use strict\";r.d(t,\"a\",(function(){return n})),r.d(t,\"b\",(function(){return a})),r.d(t,\"c\",(function(){return u})),r.d(t,\"d\",(function(){return l})),r.d(t,\"e\",(function(){return p})),r.d(t,\"f\",(function(){return y})),r.d(t,\"g\",(function(){return h})),r.d(t,\"h\",(function(){return b})),r.d(t,\"i\",(function(){return A})),r.d(t,\"j\",(function(){return E})),r.d(t,\"k\",(function(){return k})),r.d(t,\"l\",(function(){return N})),r.d(t,\"m\",(function(){return P})),r.d(t,\"n\",(function(){return B})),r.d(t,\"o\",(function(){return U})),r.d(t,\"p\",(function(){return s})),r.d(t,\"q\",(function(){return H})),r.d(t,\"r\",(function(){return I})),r.d(t,\"s\",(function(){return W}));var n=Boolean(window.document&&window.document.createElement),o=function(e,t){return e-t},c=function(e,t){return e.localeCompare(t)},i=function(e,t){return\"string\"===typeof e&&\"string\"===typeof t?c(e,t):\"number\"===typeof e&&\"number\"===typeof t?o(e,t):0},a=function(e){return Array.from({length:e})},u=function(e,t,r){return a(t).map((function(t,n){return a(e).map((function(e,t){return r(t,n)}))}))},s=function(){},l=function(e){var t=e.onArrowDown,r=void 0===t?s:t,n=e.onArrowLeft,o=void 0===n?s:n,c=e.onArrowRight,i=void 0===c?s:c,a=e.onArrowUp,u=void 0===a?s:a,l=e.onBackspace,f=void 0===l?s:l,p=e.onDelete,d=void 0===p?s:p,y=e.onEnter,h=void 0===y?s:y,m=e.onKeyDown,b=void 0===m?s:m,v={ArrowUp:u,ArrowDown:r,ArrowLeft:o,ArrowRight:i,Backspace:f,Delete:d,Enter:h};return function(e){(v[e.key]||s)(e),b(e)}},f=function(e){return function(t,r){var n=t[e],i=r[e];return\"string\"===typeof n&&\"string\"===typeof i?c(n,i):\"number\"===typeof n&&\"number\"===typeof i?o(n,i):0}},p=function(e){return function(t,r){return t===r?0:null===t?\"right\"===e?1:-1:null===r?\"right\"===e?-1:1:0}},d=r(\"v/x1\"),y=function(){return window.navigator.languages.includes(\"pl\")||window.navigator.languages.includes(\"pl-PL\")?d.Locale.PL_PL:window.navigator.languages.includes(\"en-GB\")?d.Locale.EN_GB:window.navigator.languages.includes(\"fr-FR\")?d.Locale.FR_FR:d.Locale.EN_US},h=function(e,t,r){return e.find((function(e){return e.x===t&&e.y===r}))},m=r(\"dm5A\"),b=function(e,t,r){var n=(t-m.a)/e.boardWidth-m.a,o=(r-m.a)/e.boardHeight-m.a,c=Math.min(n,o);return Math.floor(Math.min(Math.max(c,m.e),m.d))},v=r(\"KQm4\"),g=r(\"rePB\"),O=r(\"U5qN\");function w(e,t){var r;if(\"undefined\"===typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(r=function(e,t){if(!e)return;if(\"string\"===typeof e)return _(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===r&&e.constructor&&(r=e.constructor.name);if(\"Map\"===r||\"Set\"===r)return Array.from(e);if(\"Arguments\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return _(e,t)}(e))||t&&e&&\"number\"===typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var c,i=!0,a=!1;return{s:function(){r=e[Symbol.iterator]()},n:function(){var e=r.next();return i=e.done,e},e:function(e){a=!0,c=e},f:function(){try{i||null==r.return||r.return()}finally{if(a)throw c}}}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function S(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function C(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?S(Object(r),!0).forEach((function(t){Object(g.a)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):S(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var x,A=function(e,t,r){var n,o=t.rows.flat().filter((function(e){return!e.isEmpty})),c=o.filter((function(e){return!e.tile.isBlank})),i=Object.fromEntries(e.tiles.map((function(e){return[e.character,C(C({},e),{},{usedCount:0})]}))),a={character:O.BLANK,count:e.numberOfBlanks,score:e.blankScore,usedCount:o.filter((function(e){return e.tile.isBlank})).length+r.filter((function(e){return e===O.BLANK})).length},u=[].concat(Object(v.a)(c.map((function(e){return e.tile.character}))),Object(v.a)(r.filter((function(e){return e!==O.BLANK})))),s=w(u.filter((function(e){return\"undefined\"===typeof i[e]})));try{for(s.s();!(n=s.n()).done;){var l=n.value;i[l]={character:l,count:0,score:0,usedCount:0}}}catch(h){s.e(h)}finally{s.f()}var p,d=w(u);try{for(d.s();!(p=d.n()).done;){var y=p.value;++i[y].usedCount}}catch(h){d.e(h)}finally{d.f()}return[].concat(Object(v.a)(Object.values(i).sort(f(\"character\"))),[a])},j=function(e){return e.reduce((function(e,t){return e+t.count-t.usedCount}),0)},R=function(e){return e.reduce((function(e,t){return e+t.count}),0)},E=function(e){var t=e.filter((function(e){var t=e.character;return O.CONSONANTS.includes(t)})),r=e.filter((function(e){var t=e.character;return O.VOWELS.includes(t)})),n=e.filter((function(e){return 2===e.character.length})),o=e.filter((function(e){return e.character===O.BLANK}));return[{remainingCount:j(r),tiles:r,translationKey:\"common.vowels\",totalCount:R(r)},{remainingCount:j(t),tiles:t,translationKey:\"common.consonants\",totalCount:R(t)},{remainingCount:j(n),tiles:n,translationKey:\"common.two-letter-tiles\",totalCount:R(n)},{remainingCount:j(o),tiles:o,translationKey:\"common.blanks\",totalCount:R(o)}].filter((function(e){return e.totalCount>0}))},k=function(e){return{pointsFontSize:Math.max(Math.round(.25*e),m.c),tileFontSize:Math.max(Math.round(.6*e),m.b),tileSize:e}},N=function(e){return\"left\"===e?\"right\":\"left\"},P=function(e){return e.ctrlKey||e.metaKey},B=(Object.values(d.Locale),function(){return!!globalThis.navigator&&globalThis.navigator.platform.toLowerCase().includes(\"mac\")}),T=function(e,t){return e.length===t.length&&e.every((function(e,r){return e===t[r]}))},U=function(e){var t=[],r=function(e){var r;return null===(r=t.find((function(t){return T(t.parameters,e)})))||void 0===r?void 0:r.result},n=function(e,r){t.push({parameters:e,result:r})};return Object.assign((function(){for(var t=arguments.length,o=new Array(t),c=0;c<t;c++)o[c]=arguments[c];var i=r(o);if(i)return i;var a=e.apply(void 0,o);return n(o,a),a}),{hasCache:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return Boolean(r(t))}})},M=function(e){return function(t,r){return-e(t,r)}},D=r(\"6+LV\"),L=(x={},Object(g.a)(x,D.a.BlanksCount,f(\"numberOfBlanks\")),Object(g.a)(x,D.a.ConsonantsCount,f(\"numberOfConsonants\")),Object(g.a)(x,D.a.Points,f(\"points\")),Object(g.a)(x,D.a.TilesCount,f(\"numberOfTiles\")),Object(g.a)(x,D.a.VowelsCount,f(\"numberOfVowels\")),Object(g.a)(x,D.a.Word,f(\"word\")),Object(g.a)(x,D.a.WordsCount,f(\"numberOfWords\")),x),H=function(e,t,r){if(\"undefined\"===typeof e)return e;var n=L[t],o=r===D.b.Descending?M(n):n;return Object(v.a)(e).sort(o)},I=function(e,t){if(e.length!==t.length)return!1;var r=Object(v.a)(e).sort(i),n=Object(v.a)(t).sort(i);return r.every((function(e,t){return e===n[t]}))},W=function(e,t){var r=Object(v.a)(t);return e.map((function(e){var t=r.findIndex((function(t){return e===O.BLANK?t.isBlank:e===t.character}));if(t>=0){var n=r[t];return r=[].concat(Object(v.a)(r.slice(0,t)),Object(v.a)(r.slice(t+1))),{character:e,tile:n}}return{character:e,tile:null}}))}},qT12:function(e,t,r){\"use strict\";var n=\"function\"===typeof Symbol&&Symbol.for,o=n?Symbol.for(\"react.element\"):60103,c=n?Symbol.for(\"react.portal\"):60106,i=n?Symbol.for(\"react.fragment\"):60107,a=n?Symbol.for(\"react.strict_mode\"):60108,u=n?Symbol.for(\"react.profiler\"):60114,s=n?Symbol.for(\"react.provider\"):60109,l=n?Symbol.for(\"react.context\"):60110,f=n?Symbol.for(\"react.async_mode\"):60111,p=n?Symbol.for(\"react.concurrent_mode\"):60111,d=n?Symbol.for(\"react.forward_ref\"):60112,y=n?Symbol.for(\"react.suspense\"):60113,h=n?Symbol.for(\"react.suspense_list\"):60120,m=n?Symbol.for(\"react.memo\"):60115,b=n?Symbol.for(\"react.lazy\"):60116,v=n?Symbol.for(\"react.block\"):60121,g=n?Symbol.for(\"react.fundamental\"):60117,O=n?Symbol.for(\"react.responder\"):60118,w=n?Symbol.for(\"react.scope\"):60119;function _(e){if(\"object\"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case o:switch(e=e.type){case f:case p:case i:case u:case a:case y:return e;default:switch(e=e&&e.$$typeof){case l:case d:case b:case m:case s:return e;default:return t}}case c:return t}}}function S(e){return _(e)===p}t.AsyncMode=f,t.ConcurrentMode=p,t.ContextConsumer=l,t.ContextProvider=s,t.Element=o,t.ForwardRef=d,t.Fragment=i,t.Lazy=b,t.Memo=m,t.Portal=c,t.Profiler=u,t.StrictMode=a,t.Suspense=y,t.isAsyncMode=function(e){return S(e)||_(e)===f},t.isConcurrentMode=S,t.isContextConsumer=function(e){return _(e)===l},t.isContextProvider=function(e){return _(e)===s},t.isElement=function(e){return\"object\"===typeof e&&null!==e&&e.$$typeof===o},t.isForwardRef=function(e){return _(e)===d},t.isFragment=function(e){return _(e)===i},t.isLazy=function(e){return _(e)===b},t.isMemo=function(e){return _(e)===m},t.isPortal=function(e){return _(e)===c},t.isProfiler=function(e){return _(e)===u},t.isStrictMode=function(e){return _(e)===a},t.isSuspense=function(e){return _(e)===y},t.isValidElementType=function(e){return\"string\"===typeof e||\"function\"===typeof e||e===i||e===p||e===u||e===a||e===y||e===h||\"object\"===typeof e&&null!==e&&(e.$$typeof===b||e.$$typeof===m||e.$$typeof===s||e.$$typeof===l||e.$$typeof===d||e.$$typeof===g||e.$$typeof===O||e.$$typeof===w||e.$$typeof===v)},t.typeOf=_},rePB:function(e,t,r){\"use strict\";function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}r.d(t,\"a\",(function(){return n}))},s8jJ:function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=r(\"U5qN\"),o=[{multiplier:3,type:n.BONUS_WORD,x:0,y:0},{multiplier:2,type:n.BONUS_CHARACTER,x:3,y:0},{multiplier:3,type:n.BONUS_WORD,x:7,y:0},{multiplier:2,type:n.BONUS_CHARACTER,x:11,y:0},{multiplier:3,type:n.BONUS_WORD,x:14,y:0},{multiplier:2,type:n.BONUS_WORD,x:1,y:1},{multiplier:3,type:n.BONUS_CHARACTER,x:5,y:1},{multiplier:3,type:n.BONUS_CHARACTER,x:9,y:1},{multiplier:2,type:n.BONUS_WORD,x:13,y:1},{multiplier:2,type:n.BONUS_WORD,x:2,y:2},{multiplier:2,type:n.BONUS_CHARACTER,x:6,y:2},{multiplier:2,type:n.BONUS_CHARACTER,x:8,y:2},{multiplier:2,type:n.BONUS_WORD,x:12,y:2},{multiplier:2,type:n.BONUS_CHARACTER,x:0,y:3},{multiplier:2,type:n.BONUS_WORD,x:3,y:3},{multiplier:2,type:n.BONUS_CHARACTER,x:7,y:3},{multiplier:2,type:n.BONUS_WORD,x:11,y:3},{multiplier:2,type:n.BONUS_CHARACTER,x:14,y:3},{multiplier:2,type:n.BONUS_WORD,x:4,y:4},{multiplier:2,type:n.BONUS_WORD,x:10,y:4},{multiplier:3,type:n.BONUS_CHARACTER,x:1,y:5},{multiplier:3,type:n.BONUS_CHARACTER,x:5,y:5},{multiplier:3,type:n.BONUS_CHARACTER,x:9,y:5},{multiplier:3,type:n.BONUS_CHARACTER,x:13,y:5},{multiplier:2,type:n.BONUS_CHARACTER,x:2,y:6},{multiplier:2,type:n.BONUS_CHARACTER,x:6,y:6},{multiplier:2,type:n.BONUS_CHARACTER,x:8,y:6},{multiplier:2,type:n.BONUS_CHARACTER,x:12,y:6},{multiplier:3,type:n.BONUS_WORD,x:0,y:7},{multiplier:2,type:n.BONUS_CHARACTER,x:3,y:7},{multiplier:2,type:n.BONUS_WORD,x:7,y:7},{multiplier:2,type:n.BONUS_CHARACTER,x:11,y:7},{multiplier:3,type:n.BONUS_WORD,x:14,y:7},{multiplier:2,type:n.BONUS_CHARACTER,x:2,y:8},{multiplier:2,type:n.BONUS_CHARACTER,x:6,y:8},{multiplier:2,type:n.BONUS_CHARACTER,x:8,y:8},{multiplier:2,type:n.BONUS_CHARACTER,x:12,y:8},{multiplier:3,type:n.BONUS_CHARACTER,x:1,y:9},{multiplier:3,type:n.BONUS_CHARACTER,x:5,y:9},{multiplier:3,type:n.BONUS_CHARACTER,x:9,y:9},{multiplier:3,type:n.BONUS_CHARACTER,x:13,y:9},{multiplier:2,type:n.BONUS_WORD,x:4,y:10},{multiplier:2,type:n.BONUS_WORD,x:10,y:10},{multiplier:2,type:n.BONUS_CHARACTER,x:0,y:11},{multiplier:2,type:n.BONUS_WORD,x:3,y:11},{multiplier:2,type:n.BONUS_CHARACTER,x:7,y:11},{multiplier:2,type:n.BONUS_WORD,x:11,y:11},{multiplier:2,type:n.BONUS_CHARACTER,x:14,y:11},{multiplier:2,type:n.BONUS_WORD,x:2,y:12},{multiplier:2,type:n.BONUS_CHARACTER,x:6,y:12},{multiplier:2,type:n.BONUS_CHARACTER,x:8,y:12},{multiplier:2,type:n.BONUS_WORD,x:12,y:12},{multiplier:2,type:n.BONUS_WORD,x:1,y:13},{multiplier:3,type:n.BONUS_CHARACTER,x:5,y:13},{multiplier:3,type:n.BONUS_CHARACTER,x:9,y:13},{multiplier:2,type:n.BONUS_WORD,x:13,y:13},{multiplier:3,type:n.BONUS_WORD,x:0,y:14},{multiplier:2,type:n.BONUS_CHARACTER,x:3,y:14},{multiplier:3,type:n.BONUS_WORD,x:7,y:14},{multiplier:2,type:n.BONUS_CHARACTER,x:11,y:14},{multiplier:3,type:n.BONUS_WORD,x:14,y:14}];t.default=o},t4n0:function(e,t,r){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var o=r(\"ZJ2G\");Object.defineProperty(t,\"default\",{enumerable:!0,get:function(){return n(o).default}})},tHpn:function(e,t,r){\"use strict\";var n=this&&this.__extends||function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),o=this&&this.__read||function(e,t){var r=\"function\"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,c=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=c.next()).done;)i.push(n.value)}catch(a){o={error:a}}finally{try{n&&!n.done&&(r=c.return)&&r.call(c)}finally{if(o)throw o.error}}return i},c=this&&this.__spread||function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(o(arguments[t]));return e},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var a=i(r(\"/VMF\")),u=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n(t,e),t.prototype.clone=function(){return new t({board:this.board,cells:this.cells.map((function(e){return e.clone()}))})},t.prototype.getCollisions=function(){var e=this,t=[];return this.cells.filter((function(t){return t.isEmpty&&(e.board.collidesLeft(t)||e.board.collidesRight(t))})).forEach((function(r){for(var n=e.board.getRow(r.y),o=r.x-1;o>=0&&n[o].hasTile();)--o;var i=n.slice(o+1,r.x);for(o=r.x+1;o<n.length&&n[o].hasTile();)++o;var u=n.slice(r.x+1,o),s=c(i,[r],u);if(s.length>1){var l=new a.default({board:e.board,cells:s});t.push(l)}})),t},t}(a.default);t.default=u},uJCx:function(e){e.exports=JSON.parse('{\"cell.set-blank\":\"Oznacz jako blank\",\"cell.set-not-blank\":\"Oznacz jako nie blank\",\"cell.toggle-direction\":\"Kierunek wpisywania - kliknij aby zmieni\\u0107\",\"common.blanks\":\"Blanki\",\"common.clear\":\"Wyczy\\u015b\\u0107\",\"common.close\":\"Zamknij\",\"common.consonants\":\"Sp\\xf3\\u0142g\\u0142oski\",\"common.loading\":\"\\u0141adowanie\",\"common.points\":\"Punkty\",\"common.tiles\":\"P\\u0142ytki\",\"common.two-letter-tiles\":\"Dwuliterowe\",\"common.vowels\":\"Samog\\u0142oski\",\"common.word\":\"S\\u0142owo\",\"common.words\":\"S\\u0142owa\",\"dictionary.empty-state.no-definitions\":\"S\\u0142owo istnieje w s\\u0142owniku ale nie posiada definicji.\",\"dictionary.empty-state.no-results\":\"Nie uda\\u0142o si\\u0119 znale\\u017a\\u0107 definicji s\\u0142owa w s\\u0142owniku.\",\"dictionary.empty-state.not-allowed\":\"To s\\u0142owo nie jest dopuszczalne w grach.\",\"dictionary.empty-state.uninitialized\":\"Tu zostanie wy\\u015bwietlona s\\u0142ownikowa definicja ostatnio pod\\u015bwietlonego s\\u0142owa.\",\"dictionary.input.placeholder\":\"Szukaj w s\\u0142owniku...\",\"empty-state.error\":\"B\\u0142\\u0105d\",\"empty-state.info\":\"Info\",\"empty-state.success\":\"Hurra!\",\"empty-state.warning\":\"Ups!\",\"github\":\"Zobacz ten projekt na GitHubie\",\"keyMap\":\"Skr\\xf3ty klawiszowe\",\"keyMap.board\":\"Plansza\",\"keyMap.board.toggle-blank\":\"Oznacz/odznacz p\\u0142ytk\\u0119 jako blank\",\"keyMap.board.toggle-direction\":\"Zmie\\u0144 kierunek wpisywania\",\"keyMap.board-and-rack\":\"Plansza i stojak\",\"keyMap.board-and-rack.insert-two-letter-tile\":\"Wstaw dwuliterow\\u0105 p\\u0142ytk\\u0119\",\"keyMap.board-and-rack.navigate\":\"Nawigacja\",\"keyMap.board-and-rack.remove-tile\":\"Zdejmij p\\u0142ytk\\u0119\",\"keyMap.board-and-rack.submit\":\"Rozpocznij wyszukiwanie\",\"keyMap.rack\":\"Stojak\",\"keyMap.rack.insert-blank\":\"Wstaw blanka (spacja)\",\"rack.placeholder\":\"Literki\",\"remaining-tiles\":\"Pozosta\\u0142e p\\u0142ytki\",\"results.empty-state.no-filtered-results\":\"\\u017baden wynik nie pasuje do tej kwerendy.\",\"results.empty-state.no-results\":\"Brak wynik\\xf3w - nie mo\\u017cna wygenerowa\\u0107 \\u017cadnego s\\u0142owa.\",\"results.empty-state.outdated\":\"Wyniki s\\u0105 nieaktualne. Kliknij poni\\u017cej, aby zaktualizowa\\u0107.\",\"results.empty-state.uninitialized\":\"Tu zostan\\u0105 wy\\u015bwietlone s\\u0142owa wygenerowane z Twoich liter.\",\"results.input.placeholder\":\"Szukaj rozwi\\u0105zania... (RegExp)\",\"results.solve\":\"Rozwi\\u0105\\u017c\",\"settings\":\"Opcje\",\"settings.autoGroupTiles\":\"Grupuj pozosta\\u0142e p\\u0142ytki\",\"settings.autoGroupTiles.left\":\"Po lewej\",\"settings.autoGroupTiles.right\":\"Po prawej\",\"settings.autoGroupTiles.null\":\"Nie grupuj\",\"settings.game\":\"Gra\",\"settings.language\":\"J\\u0119zyk\"}')},\"v/x1\":function(e,t,r){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.WordDefinition=t.WordBonus=t.VerticalPattern=t.Tile=t.Result=t.Pattern=t.Locale=t.HorizontalPattern=t.Config=t.CharacterBonus=t.Cell=t.Bonus=t.Board=void 0;var o=r(\"Kxtj\");Object.defineProperty(t,\"Board\",{enumerable:!0,get:function(){return n(o).default}});var c=r(\"nSrw\");Object.defineProperty(t,\"Bonus\",{enumerable:!0,get:function(){return n(c).default}});var i=r(\"x6Yb\");Object.defineProperty(t,\"Cell\",{enumerable:!0,get:function(){return n(i).default}});var a=r(\"5vez\");Object.defineProperty(t,\"CharacterBonus\",{enumerable:!0,get:function(){return n(a).default}});var u=r(\"Yv4l\");Object.defineProperty(t,\"Config\",{enumerable:!0,get:function(){return n(u).default}});var s=r(\"Dkvj\");Object.defineProperty(t,\"HorizontalPattern\",{enumerable:!0,get:function(){return n(s).default}});var l=r(\"fJ3d\");Object.defineProperty(t,\"Locale\",{enumerable:!0,get:function(){return n(l).default}});var f=r(\"/VMF\");Object.defineProperty(t,\"Pattern\",{enumerable:!0,get:function(){return n(f).default}});var p=r(\"d0vb\");Object.defineProperty(t,\"Result\",{enumerable:!0,get:function(){return n(p).default}});var d=r(\"KR0w\");Object.defineProperty(t,\"Tile\",{enumerable:!0,get:function(){return n(d).default}});var y=r(\"tHpn\");Object.defineProperty(t,\"VerticalPattern\",{enumerable:!0,get:function(){return n(y).default}});var h=r(\"fIUM\");Object.defineProperty(t,\"WordBonus\",{enumerable:!0,get:function(){return n(h).default}});var m=r(\"5NMP\");Object.defineProperty(t,\"WordDefinition\",{enumerable:!0,get:function(){return n(m).default}})},wx14:function(e,t,r){\"use strict\";function n(){return(n=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}r.d(t,\"a\",(function(){return n}))},x6Yb:function(e,t,r){\"use strict\";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});var o=n(r(\"KR0w\")),c=function(){function e(e){var t=e.isEmpty,r=void 0===t||t,n=e.tile,c=void 0===n?o.default.Null:n,i=e.x,a=e.y;this.isEmpty=r,this.tile=c,this.x=i,this.y=a}return e.fromJson=function(t){return t?new e({isEmpty:t.isEmpty,tile:o.default.fromJson(t.tile),x:t.x,y:t.y}):e.Null},e.prototype.clone=function(){return new e({isEmpty:this.isEmpty,tile:this.tile.clone(),x:this.x,y:this.y})},e.prototype.equals=function(e){return this.x===e.x&&this.y===e.y&&this.isEmpty===e.isEmpty&&this.tile.equals(e.tile)},e.prototype.hasTile=function(){return this.tile!==o.default.Null},e.prototype.isCandidate=function(){return this.isEmpty&&this.hasTile()},e.prototype.toJson=function(){return{isEmpty:this.isEmpty,tile:this.tile.toJson(),x:this.x,y:this.y}},e.prototype.toString=function(){return String(this.tile)},e.Null=Object.freeze({isEmpty:!0,tile:o.default.Null,x:0,y:0,clone:function(){return e.Null},equals:function(t){return t===e.Null},hasTile:function(){return!1},isCandidate:function(){return!1},toString:function(){return\"\"},toJson:function(){return null}}),e}();t.default=c},\"z/if\":function(e,t,r){!function(t,r){var n={version:\"2.12.0\",areas:{},apis:{},inherit:function(e,t){for(var r in e)t.hasOwnProperty(r)||Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r));return t},stringify:function(e){return void 0===e||\"function\"===typeof e?e+\"\":JSON.stringify(e)},parse:function(e,t){try{return JSON.parse(e,t||n.revive)}catch(r){return e}},fn:function(e,t){for(var r in n.storeAPI[e]=t,n.apis)n.apis[r][e]=t},get:function(e,t){return e.getItem(t)},set:function(e,t,r){e.setItem(t,r)},remove:function(e,t){e.removeItem(t)},key:function(e,t){return e.key(t)},length:function(e){return e.length},clear:function(e){e.clear()},Store:function(e,t,r){var o=n.inherit(n.storeAPI,(function(e,t,r){return 0===arguments.length?o.getAll():\"function\"===typeof t?o.transact(e,t,r):void 0!==t?o.set(e,t,r):\"string\"===typeof e||\"number\"===typeof e?o.get(e):\"function\"===typeof e?o.each(e):e?o.setAll(e,t):o.clear()}));o._id=e;try{var c=\"__store2_test\";t.setItem(c,\"ok\"),o._area=t,t.removeItem(c)}catch(i){o._area=n.storage(\"fake\")}return o._ns=r||\"\",n.areas[e]||(n.areas[e]=o._area),n.apis[o._ns+o._id]||(n.apis[o._ns+o._id]=o),o},storeAPI:{area:function(e,t){var r=this[e];return r&&r.area||(r=n.Store(e,t,this._ns),this[e]||(this[e]=r)),r},namespace:function(e,t){if(!e)return this._ns?this._ns.substring(0,this._ns.length-1):\"\";var r=e,o=this[r];if((!o||!o.namespace)&&(o=n.Store(this._id,this._area,this._ns+r+\".\"),this[r]||(this[r]=o),!t))for(var c in n.areas)o.area(c,n.areas[c]);return o},isFake:function(){return\"fake\"===this._area.name},toString:function(){return\"store\"+(this._ns?\".\"+this.namespace():\"\")+\"[\"+this._id+\"]\"},has:function(e){return this._area.has?this._area.has(this._in(e)):!!(this._in(e)in this._area)},size:function(){return this.keys().length},each:function(e,t){for(var r=0,o=n.length(this._area);r<o;r++){var c=this._out(n.key(this._area,r));if(void 0!==c&&!1===e.call(this,c,this.get(c),t))break;o>n.length(this._area)&&(o--,r--)}return t||this},keys:function(e){return this.each((function(e,t,r){r.push(e)}),e||[])},get:function(e,t){var r,o=n.get(this._area,this._in(e));return\"function\"===typeof t&&(r=t,t=null),null!==o?n.parse(o,r):null!=t?t:o},getAll:function(e){return this.each((function(e,t,r){r[e]=t}),e||{})},transact:function(e,t,r){var n=this.get(e,r),o=t(n);return this.set(e,void 0===o?n:o),this},set:function(e,t,r){var o=this.get(e);return null!=o&&!1===r?t:n.set(this._area,this._in(e),n.stringify(t),r)||o},setAll:function(e,t){var r,n;for(var o in e)n=e[o],this.set(o,n,t)!==n&&(r=!0);return r},add:function(e,t){var r=this.get(e);if(r instanceof Array)t=r.concat(t);else if(null!==r){var o=typeof r;if(o===typeof t&&\"object\"===o){for(var c in t)r[c]=t[c];t=r}else t=r+t}return n.set(this._area,this._in(e),n.stringify(t)),t},remove:function(e,t){var r=this.get(e,t);return n.remove(this._area,this._in(e)),r},clear:function(){return this._ns?this.each((function(e){n.remove(this._area,this._in(e))}),1):n.clear(this._area),this},clearAll:function(){var e=this._area;for(var t in n.areas)n.areas.hasOwnProperty(t)&&(this._area=n.areas[t],this.clear());return this._area=e,this},_in:function(e){return\"string\"!==typeof e&&(e=n.stringify(e)),this._ns?this._ns+e:e},_out:function(e){return this._ns?e&&0===e.indexOf(this._ns)?e.substring(this._ns.length):void 0:e}},storage:function(e){return n.inherit(n.storageAPI,{items:{},name:e})},storageAPI:{length:0,has:function(e){return this.items.hasOwnProperty(e)},key:function(e){var t=0;for(var r in this.items)if(this.has(r)&&e===t++)return r},setItem:function(e,t){this.has(e)||this.length++,this.items[e]=t},removeItem:function(e){this.has(e)&&(delete this.items[e],this.length--)},getItem:function(e){return this.has(e)?this.items[e]:null},clear:function(){for(var e in this.items)this.removeItem(e)}}},o=n.Store(\"local\",function(){try{return localStorage}catch(e){}}());o.local=o,o._=n,o.area(\"session\",function(){try{return sessionStorage}catch(e){}}()),o.area(\"page\",n.storage(\"page\")),\"function\"===typeof r&&void 0!==r.amd?r(\"store2\",[],(function(){return o})):e.exports?e.exports=o:(t.store&&(n.conflict=t.store),t.store=o)}(this,this&&this.define)},zLVn:function(e,t,r){\"use strict\";function n(e,t){if(null==e)return{};var r,n,o={},c=Object.keys(e);for(n=0;n<c.length;n++)r=c[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}r.d(t,\"a\",(function(){return n}))}}]);","map":{"version":3,"sources":["static/chunks/9ce9955a8bcc07a8fd1a36edfefd3f331a5795a5.4360b6ac25781f339d0d.js"],"names":["window","push","/MKj","module","__webpack_exports__","__webpack_require__","d","components_Provider","useDispatch","useSelector_useSelector","react","react_default","n","ReactReduxContext","a","createContext","batch_batch","callback","nullListeners","notify","createListenerCollection","batch","first","last","clear","listener","next","get","listeners","subscribe","isSubscribed","prev","Subscription","store","parentSub","this","unsubscribe","handleChangeWrapper","bind","_proto","prototype","addNestedSub","trySubscribe","notifyNestedSubs","onStateChange","Boolean","tryUnsubscribe","_ref","context","children","contextValue","Object","subscription","previousState","getState","Context","createElement","Provider","value","useIsomorphicLayoutEffect","document","useReduxContext_useReduxContext","createStoreHook","useReduxContext","useStore_useStore","createDispatchHook","useStore","dispatch","refEquality","b","createSelectorHook","selector","equalityFn","_useReduxContext","selectedState","contextSub","forceRender","s","latestSubscriptionCallbackError","latestSelector","latestStoreState","latestSelectedState","storeState","current","err","message","stack","undefined","checkForUpdates","newSelectedState","useSelectorWithStoreAndSubscription","newBatch","react_dom","/VMF","exports","defineProperty","Pattern","_a","board","cells","canBePlaced","config","numberOfEmptyCells","getNumberOfEmptyCells","maximumNumberOfCharacters","hasAtLeast1NonEmptyCell","collides","goesThroughBoardCenter","isEmpty","clone","map","cell","_this","some","getIndexOfFirstCellWithoutTile","findIndex","hasTile","filter","length","x","center","y","hasAtLeast1EmptyCell","getCollisions","toJson","collisions","collision","word","toString","String","join","default","10rO","__importDefault","mod","__esModule","tilesDe","tilesPl","tilesFr","tilesEs","tilesEn","tilesEn_1","enumerable","tilesEs_1","tilesFr_1","tilesPl_1","tilesDe_1","2QrI","JSON","parse","2mql","reactIs","REACT_STATICS","childContextTypes","contextType","contextTypes","defaultProps","displayName","getDefaultProps","getDerivedStateFromError","getDerivedStateFromProps","mixins","propTypes","type","KNOWN_STATICS","name","caller","callee","arguments","arity","MEMO_STATICS","$$typeof","compare","TYPE_STATICS","getStatics","component","isMemo","ForwardRef","render","Memo","getOwnPropertyNames","getOwnPropertySymbols","getOwnPropertyDescriptor","getPrototypeOf","objectPrototype","hoistNonReactStatics","targetComponent","sourceComponent","blacklist","inheritedComponent","keys","concat","targetStatics","sourceStatics","i","key","descriptor","e","2q6C","character","count","score","2yzE","3/hz","3UD+","originalModule","webpackPolyfill","create","l","4+01","__assign","assign","t","p","hasOwnProperty","call","apply","types_1","bonuses_1","tiles_1","base","allTilesBonusScore","blankScore","boardHeight","boardWidth","bonuses","id","numberOfBlanks","literaki","Locale","DE_DE","Config","fromJson","tiles","EN_GB","EN_US","ES_ES","FR_FR","PL_PL","4Ign","4VI5","scrabble","isConfigId","getLocaleConfig","getConfig","getConfig_1","getLocaleConfig_1","isConfigId_1","literaki_1","scrabble_1","5NMP","WordDefinition","definitions","isAllowed","json","Null","freeze","5vez","__extends","extendStatics","setPrototypeOf","__proto__","Array","__","constructor","constants_1","CharacterBonus","_super","BONUS_CHARACTER","canApply","matchesCellTileScore","pointsMap","tile","characterMultiplier","multiplier","wordMultiplier","configurable","5x6p","6+LV","SortDirection","ResultColumn","8+rz","immer_esm_t","r","Error","Q","isArray","L","v","immer_esm_i","o","Z","forEach","u","has","immer_esm_a","f","set","delete","add","c","X","Map","q","Set","slice","tt","writable","immer_esm_y","h","isFrozen","nt","m","_","U","j","g","w","S","O","P","M","immer_esm_x","H","A","I","k","R","D","N","z","E","T","F","C","rt","et","Proxy","revocable","revoke","proxy","J","K","from","Math","min","initialize","actions_reset","state_createAppStore","state_localStorage","selectDictionary","selectAutoGroupTiles","selectLocale","selectBoard","selectConfigId","selectConfig","selectResultsQuery","selectResultsSortColumn","selectResultsSortDirection","selectSortedResults","selectSortedFilteredResults","selectResultCandidateTiles","selectRowsWithCandidate","selectCellBonus","selectCharacterPoints","selectTilePoints","selectRack","selectIsLoading","selectAreResultsOutdated","selectHasOverusedTiles","selectRemainingTilesGroups","slices_boardSlice","slices_dictionarySlice","slices_rackSlice","slices_resultsSlice","slices_settingsSlice","slices_solveSlice","state_useTranslate","state_useTypedSelector","G","W","Symbol","B","Reflect","for","iterator","ownKeys","getOwnPropertyDescriptors","deleteProperty","ot","useProxies","setUseProxies","autoFreeze","setAutoFreeze","produce","produceWithPatches","Promise","then","createDraft","finishDraft","applyPatches","path","op","$","ut","immer_esm","redux","defaultEqualityCheck","areArgumentsShallowlyEqual","equalityCheck","getDependencies","funcs","dependencies","every","dep","dependencyTypes","createSelector","memoize","_len","memoizeOptions","_key","_len2","_key2","recomputations","resultFunc","pop","memoizedResultFunc","params","resetRecomputations","createSelectorCreator","func","lastArgs","lastResult","createThunkMiddleware","extraArgument","action","es_thunk","withExtraArgument","_extends","target","source","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","createAction","prepareAction","actionCreator","prepared","payload","meta","error","match","executeReducerBuilderCallback","builderCallback","defaultCaseReducer","actionsMap","actionMatchers","builder","addCase","typeOrActionCreator","reducer","addMatcher","matcher","addDefaultCase","createSlice","options","initialState","reducers","extraReducers","_ref$","_ref$2","_ref$3","reducerNames","sliceCaseReducersByName","sliceCaseReducersByType","actionCreators","reducerName","caseReducer","prepareCallback","maybeReducerWithPrepare","prepare","mapOrBuilderCallback","finalActionMatchers","finalDefaultCaseReducer","state","caseReducers","_ref2","_ref3","cr","reduce","result","draft","_result","createReducer","actions","asyncIterator","createSymbol","CANCEL","CHANNEL_END_TYPE","IO","MATCH","MULTICAST","SAGA_ACTION","SELF_CANCELLATION","TASK","TASK_CANCEL","TERMINATE","SAGA_LOCATION","esm_extends","objectWithoutPropertiesLoose","undef","notUndef","string","array","redux_saga_is_esm_promise","redux_saga_is_esm_iterator","it","throw","redux_saga_is_esm_pattern","pattern","pat","symbol","redux_saga_is_esm_channel","ch","take","close","stringableFunc","sym","redux_saga_delay_p_esm","ms","val","timeoutId","promise","resolve","setTimeout","clearTimeout","kTrue","konst","noop","identity","io_6de156f3_assignWithSymbols","remove","item","index","indexOf","splice","once","fn","called","kThrow","kReturn","done","makeIterator","thro","return","isSagaIterator","logError","sagaStack","console","createEmptyArray","io_6de156f3_wrapSagaDispatch","io_6de156f3_shouldTerminate","res","io_6de156f3_shouldCancel","shouldComplete","createAllStyleChildCallbacks","shape","parentCallback","totalCount","completed","completedCount","results","childCallbacks","chCbAtKey","isErr","cancel","getMetaInfo","location","getLocation","instrumented","ringBuffer","limit","overflowAction","arr","pushIndex","popIndex","flush","items","put","doubledLimit","expanding","initialSize","TAKE","PUT","CALL","FORK","io_6de156f3_CANCEL","SELECT","io_6de156f3_makeEffect","combinator","io_6de156f3_take","patternOrChannel","multicastPattern","channel","io_6de156f3_put","channel$1","getFnCallDescriptor","fnDescriptor","args","fork","_len3","_key3","io_6de156f3_cancel","taskOrTasks","io_6de156f3_select","_len5","_key5","delay","deferred","def","reject","redux_saga_deferred_esm","redux_saga_core_esm_queue","semaphore","exec","task","suspend","release","asap","redux_saga_core_esm_flush","immediately","shift","redux_saga_core_esm_array","patterns","input","redux_saga_core_esm_matcher","predicate","_predicate","redux_saga_core_esm_string","redux_saga_core_esm_symbol","redux_saga_core_esm_wildcard","matcherCreator","END","redux_saga_core_esm_isEnd","redux_saga_core_esm_channel","buffer$1","closed","takers","cb","len","taker","stdChannel","chan","currentTakers","nextTakers","ensureCanMutateNextTakers","multicastChannel","resolvePromise","cancelPromise","_effectRunnerMap","nextSagaId","cancelSingleTask","taskToCancel","isRunning","effectRunnerMap","env","_ref3$channel","maybe","takeCb","effects","_ref11","digestEffect","effectId","_ref12","response","childCbs","_ref4","_ref5","proc","_ref6","cpsCb","_ref7","_ref8","detached","parent","taskIterator","resolved","arg","createTaskIterator","getIteratorMetaInfo","child","queue","addTask","isAborted","abort","_ref9","joinSingleTask","taskToJoin","joiner","joiners","_ref10","_ref13","_ref14","buffer","data","_ref15","isCancelled","prop","_ref16","props","_ref17","formatLocation","fileName","lineNumber","sagaLocationAsString","sagaMeta","cancelledTasksAsString","cancelledTasks","mapper","flatMap","crashedEffect","redux_saga_core_esm_sagaStack","redux_saga_core_esm_toString","firstSaga","otherSagas","crashedEffectLocation","effect","code","effectLocationAsString","newTask","mainTask","parentContext","parentEffectId","isRoot","cont","_task","taskResult","taskError","status","deferredEnd","cancelledDueToErrorTasks","onAbort","tasks","cancelAll","getTasks","forkQueue","end","frame","onError","setContext","toPromise","iterator$1","finalRunEffect","finalizeRunEffect","currCb","effectRunner","executingContext","label","effectSettled","sagaMonitor","effectRejected","effectResolved","setCrashedEffect","effectTriggered","effectCancelled","runSaga","saga","_ref$channel","_ref$context","effectMiddlewares","_ref$onError","rootSagaStarted","actionDispatched","middleware","runEffect","eff","redux_saga_core_npm_proxy_esm","_temp","boundRunSaga","sagaMiddleware","run","build","types_build","slices_settingsInitialState","autoGroupTiles","configId","locale","boardInitialState_locale","_getLocaleConfig","slices_boardInitialState","constants_build","object","enumerableOnly","symbols","_objectSpread","defineProperties","applyResult","newBoard","updateCell","changeCellValue","_action$payload","change","_state","init","reset","toggleCellIsBlank","_action$payload2","isBlank","slices_dictionaryInitialState","isLoading","dictionarySlice_ownKeys","dictionarySlice_objectSpread","changeInput","submit","submitFailure","submitSuccess","slices_rackInitialState","toConsumableArray","lib","changeCharacter","groupTiles","direction","nullMovingComparator","sort","removeTiles","tilesToRemove","types","slices_resultsInitialState","candidate","query","column","Points","Descending","resultsSlice_ownKeys","resultsSlice_objectSpread","resultsSlice_toggleDirection","Ascending","_action","changeQuery","newQuery","changeResultCandidate","changeResults","newResults","columndId","_state$sort","settingsSlice_ownKeys","settingsSlice_objectSpread","changeAutoGroupTiles","changeConfigId","changeLocale","solveSlice_ownKeys","solveSlice_objectSpread","lastSolvedParameters","characters","state_rootReducer","dictionary","rack","settings","solve","regenerator","regenerator_default","qEnd","safeName","fsmIterator","fsm","startState","stateUpdater","errorState","nextState","currentState","takeEvery","worker","yTake","yFork","ac","setAction","q1","q2","takeLatest","yCancel","setTask","q3","takeEvery$1","takeLatest$1","asyncGeneratorStep","gen","_next","_throw","info","_i18n","sdk_findWordDefinition","mark","_callee","url","wrap","_context","fetch","sent","abrupt","stop","self","_x","_x2","sdk_solve","method","headers","Content-Type","body","stringify","sdk_visit","de","en","i18n_es","fr","pl","src_i18n","selectBoardRoot","selectRackRoot","selectResultsRoot","selectSettingsRoot","selectSolveRoot","selectResults","trim","RegExp","test","selectResultCandidate","selectResultCandidateCells","resultCandidate","rows","row","getCellBonus","getCharacterPoints","getTilePoints","selectTranslations","translations","translation","selectCharacters","selectLastSolvedParameters","selectHaveCharactersChanged","selectHasBoardChanged","equals","hasBoardChanged","haveCharactersChanged","selectRemainingTiles","remainingTiles","usedCount","_marked","rootSaga","_marked2","onApplyResult","_marked3","onConfigIdChange","_marked4","onDictionarySubmit","_marked5","onInitialize","_marked6","onReset","_marked7","onLocaleChange","_marked8","onResultCandidateChange","_marked9","onSubmit","_marked10","ensureProperTilesCount","memoizedFindWordDefinition","_context2","_context3","delegateYield","_yield$select","wordDefinition","_context4","hasCache","t0","_context5","_context6","_context7","_context8","_yield$select2","_context9","_yield$select3","differenceCount","nonNulls","_differenceCount","_context10","abs","fill","createAppStore_sagaMiddleware","createAppStore_createEnhancer","store2","BOARD","CONFIG_ID","HAS_VISITED","LOCALE","RACK","localStorage_store","namespace","getBoard","serialized","setBoard","getConfigId","setConfigId","getHasVisited","setHasVisited","hasVisited","getLocale","setLocale","getRack","setRack","87Kc","8rf8","configs","ANjH","applyMiddleware","bindActionCreators","combineReducers","compose","createStore","symbol_observable__WEBPACK_IMPORTED_MODULE_0__","randomString","random","substring","split","ActionTypes","INIT","REPLACE","PROBE_UNKNOWN_ACTION","isPlainObject","obj","proto","preloadedState","enhancer","currentReducer","currentListeners","nextListeners","isDispatching","ensureCanMutateNextListeners","replaceReducer","nextReducer","observable","outerSubscribe","observer","TypeError","observeState","getUndefinedStateErrorMessage","actionType","reducerKeys","finalReducers","shapeAssertionError","finalReducerKeys","assertReducerShape","hasChanged","_i","previousStateForKey","nextStateForKey","errorMessage","bindActionCreator","boundActionCreators","_defineProperty","_objectSpread2","middlewares","_dispatch","middlewareAPI","chain","ASA0","BONUS_WORD","BsWD","_unsupportedIterableToArray","_babel_runtime_helpers_esm_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__","minLen","Dkvj","__read","ar","__spread","Pattern_1","HorizontalPattern","collidesUp","collidesDown","getColumn","previousCells","nextCells","I5Sk","JQii","KFH4","KQm4","_toConsumableArray","arrayLikeToArray","unsupportedIterableToArray","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","KR0w","Tile","_b","other","EMPTY_CELL","Kxtj","Cell_1","Tile_1","Board","numberOfColumns","numberOfRows","width","height","fromStringArray","stringArray","floor","collidesLeft","collidesRight","rowIndex","cellIndex","getBlanksCount","rowCount","getRow","getTilesCount","updateRow","LzO6","QLQB","QqGY","SLVX","symbolObservablePonyfill","root","TOwV","TP9X","U5qN","VOWELS","CONSONANTS","NO_BONUS","BLANK","XJoN","Yv4l","CharacterBonus_1","WordBonus_1","getBonuses","getPointsMap","getAlphabet","find","bonus","matchesCellCoordinates","getCellBonusValue","getTwoCharacterTileByPrefix","twoCharacterTiles","startsWith","hasCharacter","alphabet","includes","isTwoCharacterTilePrefix","ZJ2G","a3WO","_arrayLikeToArray","arr2","aMA8","bCCX","global","_ponyfill_js__WEBPACK_IMPORTED_MODULE_0__","bIQe","d0vb","Result","numberOfCollisions","points","getTiles","numberOfConsonants","getConsonants","getBlanks","numberOfTiles","numberOfVowels","getVowels","numberOfWords","pointsRatio","getPointsRatio","tilesCharacters","getTilesCharacters","getWord","charactersComparator","localeCompare","isConsonant","isVowel","getNonBlanks","getNonBlankCharacters","dm5A","GITHUB_PROJECT_URL","TRANSITION_DURATION_LONG","COLOR_BLUE","COLOR_GREEN","COLOR_RED","COLOR_YELLOW","COMPONENTS_SPACING","COMPONENTS_SPACING_MOBILE","BOARD_CELL_BORDER_WIDTH","BOARD_TILE_FONT_SIZE_MIN","BOARD_TILE_FONT_SIZE_POINTS_MIN","BOARD_TILE_SIZE_MAX","BOARD_TILE_SIZE_MIN","DICTIONARY_HEIGHT","TILE_SIZE","PLAIN_TILES_COLOR_DEFAULT","PLAIN_TILES_PADDING_HORIZONTAL","PLAIN_TILES_PADDING_VERTICAL","PLAIN_TILES_POINTS_COLORS","PLAIN_TILES_TILE_MARGIN","PLAIN_TILES_TILE_MAX_ROTATE","PLAIN_TILES_TILE_MAX_SCATTER","PLAIN_TILES_TILE_SIZE","REMAINING_TILES_TILE_SIZE","RESULTS_HEADER_HEIGHT","RESULTS_ITEM_HEIGHT","RESULTS_INPUT_HEIGHT","1","2","3","4","5","6","7","8","9","10","eI4A","fIUM","WordBonus","fJ3d","nSrw","Bonus","_config","psLn","lib_canUseDom","lib_createArray","lib_createGridOf","lib_createKeyboardNavigation","lib_createNullMovingComparator","lib_detectLocale","lib_findCell","lib_getCellSize","lib_getRemainingTiles","lib_getRemainingTilesGroups","lib_getTileSizes","lib_inverseDirection","lib_isCtrl","lib_isMac","lib_memoize","lib_noop","lib_sortResults","lib_unorderedArraysEqual","lib_zipCharactersAndTiles","lib_numberComparator","lib_stringComparator","lib_comparator","getInitialValue","_row","_cell","_ref$onArrowDown","onArrowDown","_ref$onArrowLeft","onArrowLeft","_ref$onArrowRight","onArrowRight","_ref$onArrowUp","onArrowUp","_ref$onBackspace","onBackspace","_ref$onDelete","onDelete","_ref$onEnter","onEnter","_ref$onKeyDown","onKeyDown","handlers","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","Backspace","Delete","Enter","event","lib_createKeyComparator","aValue","bValue","navigator","languages","parameters","maxWidth","maxHeight","cellSize","max","_createForOfIteratorHelper","allowArrayLike","_e","normalCompletion","didErr","step","_e2","_comparators","_step","nonEmptyCells","flat","letterCells","fromEntries","blank","letters","letter","_iterator","_step2","_iterator2","_letter","values","lib_getRemainingTilesCount","sum","lib_getTotalRemainingTilesCount","consonants","vowels","blanks","remainingCount","translationKey","tileSize","pointsFontSize","round","tileFontSize","ctrlKey","metaKey","globalThis","platform","toLowerCase","parametersEqual","parameter","cache","readCache","_cache$find","entry","writeCache","cached","lib_reverseComparator","comparator","comparators","BlanksCount","ConsonantsCount","TilesCount","VowelsCount","Word","WordsCount","sortDirection","finalComparator","aSorted","bSorted","qT12","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Element","Fragment","Lazy","Portal","Profiler","StrictMode","Suspense","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isPortal","isProfiler","isStrictMode","isSuspense","isValidElementType","typeOf","rePB","s8jJ","t4n0","tHpn","VerticalPattern","uJCx","v/x1","Cell","Board_1","Bonus_1","Config_1","HorizontalPattern_1","Locale_1","Result_1","VerticalPattern_1","WordDefinition_1","wx14","x6Yb","_c","isCandidate","z/if","define","version","areas","apis","inherit","api","revive","storeAPI","area","getItem","setItem","removeItem","Store","overwrite","getAll","transact","each","setAll","_id","testKey","_area","storage","_ns","singleArea","ns","isFake","_in","size","_out","fillList","list","alt","fillObj","all","ret","changed","clearAll","storageAPI","localStorage","local","sessionStorage","amd","conflict","zLVn","_objectWithoutPropertiesLoose","excluded","sourceKeys"],"mappings":"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"},"name":"static/chunks/9ce9955a8bcc07a8fd1a36edfefd3f331a5795a5.4360b6ac25781f339d0d.js","input":"(window[\"webpackJsonp_N_E\"] = window[\"webpackJsonp_N_E\"] || []).push([[3],{\n\n/***/ \"/MKj\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, \"a\", function() { return /* reexport */ components_Provider; });\n__webpack_require__.d(__webpack_exports__, \"b\", function() { return /* reexport */ useDispatch; });\n__webpack_require__.d(__webpack_exports__, \"c\", function() { return /* reexport */ useSelector_useSelector; });\n\n// UNUSED EXPORTS: connectAdvanced, ReactReduxContext, connect, batch, createDispatchHook, createSelectorHook, useStore, createStoreHook, shallowEqual\n\n// EXTERNAL MODULE: ./node_modules/react/index.js\nvar react = __webpack_require__(\"q1tI\");\nvar react_default = /*#__PURE__*/__webpack_require__.n(react);\n\n// EXTERNAL MODULE: ./node_modules/prop-types/index.js\nvar prop_types = __webpack_require__(\"17x9\");\n\n// CONCATENATED MODULE: ./node_modules/react-redux/es/components/Context.js\n\nvar ReactReduxContext = /*#__PURE__*/react_default.a.createContext(null);\n\nif (false) {}\n\n/* harmony default export */ var components_Context = (ReactReduxContext);\n// CONCATENATED MODULE: ./node_modules/react-redux/es/utils/batch.js\n// Default to a dummy \"batch\" implementation that just runs the callback\nfunction defaultNoopBatch(callback) {\n callback();\n}\n\nvar batch_batch = defaultNoopBatch; // Allow injecting another batching function later\n\nvar setBatch = function setBatch(newBatch) {\n return batch_batch = newBatch;\n}; // Supply a getter just to skip dealing with ESM bindings\n\nvar getBatch = function getBatch() {\n return batch_batch;\n};\n// CONCATENATED MODULE: ./node_modules/react-redux/es/utils/Subscription.js\n // encapsulates the subscription logic for connecting a component to the redux store, as\n// well as nesting subscriptions of descendant components, so that we can ensure the\n// ancestor components re-render before descendants\n\nvar nullListeners = {\n notify: function notify() {}\n};\n\nfunction createListenerCollection() {\n var batch = getBatch();\n var first = null;\n var last = null;\n return {\n clear: function clear() {\n first = null;\n last = null;\n },\n notify: function notify() {\n batch(function () {\n var listener = first;\n\n while (listener) {\n listener.callback();\n listener = listener.next;\n }\n });\n },\n get: function get() {\n var listeners = [];\n var listener = first;\n\n while (listener) {\n listeners.push(listener);\n listener = listener.next;\n }\n\n return listeners;\n },\n subscribe: function subscribe(callback) {\n var isSubscribed = true;\n var listener = last = {\n callback: callback,\n next: null,\n prev: last\n };\n\n if (listener.prev) {\n listener.prev.next = listener;\n } else {\n first = listener;\n }\n\n return function unsubscribe() {\n if (!isSubscribed || first === null) return;\n isSubscribed = false;\n\n if (listener.next) {\n listener.next.prev = listener.prev;\n } else {\n last = listener.prev;\n }\n\n if (listener.prev) {\n listener.prev.next = listener.next;\n } else {\n first = listener.next;\n }\n };\n }\n };\n}\n\nvar Subscription = /*#__PURE__*/function () {\n function Subscription(store, parentSub) {\n this.store = store;\n this.parentSub = parentSub;\n this.unsubscribe = null;\n this.listeners = nullListeners;\n this.handleChangeWrapper = this.handleChangeWrapper.bind(this);\n }\n\n var _proto = Subscription.prototype;\n\n _proto.addNestedSub = function addNestedSub(listener) {\n this.trySubscribe();\n return this.listeners.subscribe(listener);\n };\n\n _proto.notifyNestedSubs = function notifyNestedSubs() {\n this.listeners.notify();\n };\n\n _proto.handleChangeWrapper = function handleChangeWrapper() {\n if (this.onStateChange) {\n this.onStateChange();\n }\n };\n\n _proto.isSubscribed = function isSubscribed() {\n return Boolean(this.unsubscribe);\n };\n\n _proto.trySubscribe = function trySubscribe() {\n if (!this.unsubscribe) {\n this.unsubscribe = this.parentSub ? this.parentSub.addNestedSub(this.handleChangeWrapper) : this.store.subscribe(this.handleChangeWrapper);\n this.listeners = createListenerCollection();\n }\n };\n\n _proto.tryUnsubscribe = function tryUnsubscribe() {\n if (this.unsubscribe) {\n this.unsubscribe();\n this.unsubscribe = null;\n this.listeners.clear();\n this.listeners = nullListeners;\n }\n };\n\n return Subscription;\n}();\n\n\n// CONCATENATED MODULE: ./node_modules/react-redux/es/components/Provider.js\n\n\n\n\n\nfunction Provider(_ref) {\n var store = _ref.store,\n context = _ref.context,\n children = _ref.children;\n var contextValue = Object(react[\"useMemo\"])(function () {\n var subscription = new Subscription(store);\n subscription.onStateChange = subscription.notifyNestedSubs;\n return {\n store: store,\n subscription: subscription\n };\n }, [store]);\n var previousState = Object(react[\"useMemo\"])(function () {\n return store.getState();\n }, [store]);\n Object(react[\"useEffect\"])(function () {\n var subscription = contextValue.subscription;\n subscription.trySubscribe();\n\n if (previousState !== store.getState()) {\n subscription.notifyNestedSubs();\n }\n\n return function () {\n subscription.tryUnsubscribe();\n subscription.onStateChange = null;\n };\n }, [contextValue, previousState]);\n var Context = context || ReactReduxContext;\n return /*#__PURE__*/react_default.a.createElement(Context.Provider, {\n value: contextValue\n }, children);\n}\n\nif (false) {}\n\n/* harmony default export */ var components_Provider = (Provider);\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js\nvar esm_extends = __webpack_require__(\"wx14\");\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js\nvar objectWithoutPropertiesLoose = __webpack_require__(\"zLVn\");\n\n// EXTERNAL MODULE: ./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js\nvar hoist_non_react_statics_cjs = __webpack_require__(\"2mql\");\nvar hoist_non_react_statics_cjs_default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics_cjs);\n\n// EXTERNAL MODULE: ./node_modules/react-is/index.js\nvar react_is = __webpack_require__(\"TOwV\");\n\n// CONCATENATED MODULE: ./node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js\n // React currently throws a warning when using useLayoutEffect on the server.\n// To get around it, we can conditionally useEffect on the server (no-op) and\n// useLayoutEffect in the browser. We need useLayoutEffect to ensure the store\n// subscription callback always has the selector from the latest render commit\n// available, otherwise a store update may happen between render and the effect,\n// which may cause missed updates; we also must ensure the store subscription\n// is created synchronously, otherwise a store update may occur before the\n// subscription is created and an inconsistent state may be observed\n\nvar useIsomorphicLayoutEffect = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined' ? react[\"useLayoutEffect\"] : react[\"useEffect\"];\n// CONCATENATED MODULE: ./node_modules/react-redux/es/components/connectAdvanced.js\n\n\n\n\n\n\n\n // Define some constant arrays just to avoid re-creating these\n\nvar EMPTY_ARRAY = [];\nvar NO_SUBSCRIPTION_ARRAY = [null, null];\n\nvar stringifyComponent = function stringifyComponent(Comp) {\n try {\n return JSON.stringify(Comp);\n } catch (err) {\n return String(Comp);\n }\n};\n\nfunction storeStateUpdatesReducer(state, action) {\n var updateCount = state[1];\n return [action.payload, updateCount + 1];\n}\n\nfunction useIsomorphicLayoutEffectWithArgs(effectFunc, effectArgs, dependencies) {\n useIsomorphicLayoutEffect(function () {\n return effectFunc.apply(void 0, effectArgs);\n }, dependencies);\n}\n\nfunction captureWrapperProps(lastWrapperProps, lastChildProps, renderIsScheduled, wrapperProps, actualChildProps, childPropsFromStoreUpdate, notifyNestedSubs) {\n // We want to capture the wrapper props and child props we used for later comparisons\n lastWrapperProps.current = wrapperProps;\n lastChildProps.current = actualChildProps;\n renderIsScheduled.current = false; // If the render was from a store update, clear out that reference and cascade the subscriber update\n\n if (childPropsFromStoreUpdate.current) {\n childPropsFromStoreUpdate.current = null;\n notifyNestedSubs();\n }\n}\n\nfunction subscribeUpdates(shouldHandleStateChanges, store, subscription, childPropsSelector, lastWrapperProps, lastChildProps, renderIsScheduled, childPropsFromStoreUpdate, notifyNestedSubs, forceComponentUpdateDispatch) {\n // If we're not subscribed to the store, nothing to do here\n if (!shouldHandleStateChanges) return; // Capture values for checking if and when this component unmounts\n\n var didUnsubscribe = false;\n var lastThrownError = null; // We'll run this callback every time a store subscription update propagates to this component\n\n var checkForUpdates = function checkForUpdates() {\n if (didUnsubscribe) {\n // Don't run stale listeners.\n // Redux doesn't guarantee unsubscriptions happen until next dispatch.\n return;\n }\n\n var latestStoreState = store.getState();\n var newChildProps, error;\n\n try {\n // Actually run the selector with the most recent store state and wrapper props\n // to determine what the child props should be\n newChildProps = childPropsSelector(latestStoreState, lastWrapperProps.current);\n } catch (e) {\n error = e;\n lastThrownError = e;\n }\n\n if (!error) {\n lastThrownError = null;\n } // If the child props haven't changed, nothing to do here - cascade the subscription update\n\n\n if (newChildProps === lastChildProps.current) {\n if (!renderIsScheduled.current) {\n notifyNestedSubs();\n }\n } else {\n // Save references to the new child props. Note that we track the \"child props from store update\"\n // as a ref instead of a useState/useReducer because we need a way to determine if that value has\n // been processed. If this went into useState/useReducer, we couldn't clear out the value without\n // forcing another re-render, which we don't want.\n lastChildProps.current = newChildProps;\n childPropsFromStoreUpdate.current = newChildProps;\n renderIsScheduled.current = true; // If the child props _did_ change (or we caught an error), this wrapper component needs to re-render\n\n forceComponentUpdateDispatch({\n type: 'STORE_UPDATED',\n payload: {\n error: error\n }\n });\n }\n }; // Actually subscribe to the nearest connected ancestor (or store)\n\n\n subscription.onStateChange = checkForUpdates;\n subscription.trySubscribe(); // Pull data from the store after first render in case the store has\n // changed since we began.\n\n checkForUpdates();\n\n var unsubscribeWrapper = function unsubscribeWrapper() {\n didUnsubscribe = true;\n subscription.tryUnsubscribe();\n subscription.onStateChange = null;\n\n if (lastThrownError) {\n // It's possible that we caught an error due to a bad mapState function, but the\n // parent re-rendered without this component and we're about to unmount.\n // This shouldn't happen as long as we do top-down subscriptions correctly, but\n // if we ever do those wrong, this throw will surface the error in our tests.\n // In that case, throw the error from here so it doesn't get lost.\n throw lastThrownError;\n }\n };\n\n return unsubscribeWrapper;\n}\n\nvar initStateUpdates = function initStateUpdates() {\n return [null, 0];\n};\n\nfunction connectAdvanced(\n/*\n selectorFactory is a func that is responsible for returning the selector function used to\n compute new props from state, props, and dispatch. For example:\n export default connectAdvanced((dispatch, options) => (state, props) => ({\n thing: state.things[props.thingId],\n saveThing: fields => dispatch(actionCreators.saveThing(props.thingId, fields)),\n }))(YourComponent)\n Access to dispatch is provided to the factory so selectorFactories can bind actionCreators\n outside of their selector as an optimization. Options passed to connectAdvanced are passed to\n the selectorFactory, along with displayName and WrappedComponent, as the second argument.\n Note that selectorFactory is responsible for all caching/memoization of inbound and outbound\n props. Do not use connectAdvanced directly without memoizing results between calls to your\n selector, otherwise the Connect component will re-render on every state or props change.\n*/\nselectorFactory, // options object:\n_ref) {\n if (_ref === void 0) {\n _ref = {};\n }\n\n var _ref2 = _ref,\n _ref2$getDisplayName = _ref2.getDisplayName,\n getDisplayName = _ref2$getDisplayName === void 0 ? function (name) {\n return \"ConnectAdvanced(\" + name + \")\";\n } : _ref2$getDisplayName,\n _ref2$methodName = _ref2.methodName,\n methodName = _ref2$methodName === void 0 ? 'connectAdvanced' : _ref2$methodName,\n _ref2$renderCountProp = _ref2.renderCountProp,\n renderCountProp = _ref2$renderCountProp === void 0 ? undefined : _ref2$renderCountProp,\n _ref2$shouldHandleSta = _ref2.shouldHandleStateChanges,\n shouldHandleStateChanges = _ref2$shouldHandleSta === void 0 ? true : _ref2$shouldHandleSta,\n _ref2$storeKey = _ref2.storeKey,\n storeKey = _ref2$storeKey === void 0 ? 'store' : _ref2$storeKey,\n _ref2$withRef = _ref2.withRef,\n withRef = _ref2$withRef === void 0 ? false : _ref2$withRef,\n _ref2$forwardRef = _ref2.forwardRef,\n forwardRef = _ref2$forwardRef === void 0 ? false : _ref2$forwardRef,\n _ref2$context = _ref2.context,\n context = _ref2$context === void 0 ? ReactReduxContext : _ref2$context,\n connectOptions = Object(objectWithoutPropertiesLoose[\"a\" /* default */])(_ref2, [\"getDisplayName\", \"methodName\", \"renderCountProp\", \"shouldHandleStateChanges\", \"storeKey\", \"withRef\", \"forwardRef\", \"context\"]);\n\n if (false) { var customStoreWarningMessage; }\n\n var Context = context;\n return function wrapWithConnect(WrappedComponent) {\n if (false) {}\n\n var wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || 'Component';\n var displayName = getDisplayName(wrappedComponentName);\n\n var selectorFactoryOptions = Object(esm_extends[\"a\" /* default */])({}, connectOptions, {\n getDisplayName: getDisplayName,\n methodName: methodName,\n renderCountProp: renderCountProp,\n shouldHandleStateChanges: shouldHandleStateChanges,\n storeKey: storeKey,\n displayName: displayName,\n wrappedComponentName: wrappedComponentName,\n WrappedComponent: WrappedComponent\n });\n\n var pure = connectOptions.pure;\n\n function createChildSelector(store) {\n return selectorFactory(store.dispatch, selectorFactoryOptions);\n } // If we aren't running in \"pure\" mode, we don't want to memoize values.\n // To avoid conditionally calling hooks, we fall back to a tiny wrapper\n // that just executes the given callback immediately.\n\n\n var usePureOnlyMemo = pure ? react[\"useMemo\"] : function (callback) {\n return callback();\n };\n\n function ConnectFunction(props) {\n var _useMemo = Object(react[\"useMemo\"])(function () {\n // Distinguish between actual \"data\" props that were passed to the wrapper component,\n // and values needed to control behavior (forwarded refs, alternate context instances).\n // To maintain the wrapperProps object reference, memoize this destructuring.\n var reactReduxForwardedRef = props.reactReduxForwardedRef,\n wrapperProps = Object(objectWithoutPropertiesLoose[\"a\" /* default */])(props, [\"reactReduxForwardedRef\"]);\n\n return [props.context, reactReduxForwardedRef, wrapperProps];\n }, [props]),\n propsContext = _useMemo[0],\n reactReduxForwardedRef = _useMemo[1],\n wrapperProps = _useMemo[2];\n\n var ContextToUse = Object(react[\"useMemo\"])(function () {\n // Users may optionally pass in a custom context instance to use instead of our ReactReduxContext.\n // Memoize the check that determines which context instance we should use.\n return propsContext && propsContext.Consumer && Object(react_is[\"isContextConsumer\"])( /*#__PURE__*/react_default.a.createElement(propsContext.Consumer, null)) ? propsContext : Context;\n }, [propsContext, Context]); // Retrieve the store and ancestor subscription via context, if available\n\n var contextValue = Object(react[\"useContext\"])(ContextToUse); // The store _must_ exist as either a prop or in context.\n // We'll check to see if it _looks_ like a Redux store first.\n // This allows us to pass through a `store` prop that is just a plain value.\n\n var didStoreComeFromProps = Boolean(props.store) && Boolean(props.store.getState) && Boolean(props.store.dispatch);\n var didStoreComeFromContext = Boolean(contextValue) && Boolean(contextValue.store);\n\n if (false) {} // Based on the previous check, one of these must be true\n\n\n var store = didStoreComeFromProps ? props.store : contextValue.store;\n var childPropsSelector = Object(react[\"useMemo\"])(function () {\n // The child props selector needs the store reference as an input.\n // Re-create this selector whenever the store changes.\n return createChildSelector(store);\n }, [store]);\n\n var _useMemo2 = Object(react[\"useMemo\"])(function () {\n if (!shouldHandleStateChanges) return NO_SUBSCRIPTION_ARRAY; // This Subscription's source should match where store came from: props vs. context. A component\n // connected to the store via props shouldn't use subscription from context, or vice versa.\n\n var subscription = new Subscription(store, didStoreComeFromProps ? null : contextValue.subscription); // `notifyNestedSubs` is duplicated to handle the case where the component is unmounted in\n // the middle of the notification loop, where `subscription` will then be null. This can\n // probably be avoided if Subscription's listeners logic is changed to not call listeners\n // that have been unsubscribed in the middle of the notification loop.\n\n var notifyNestedSubs = subscription.notifyNestedSubs.bind(subscription);\n return [subscription, notifyNestedSubs];\n }, [store, didStoreComeFromProps, contextValue]),\n subscription = _useMemo2[0],\n notifyNestedSubs = _useMemo2[1]; // Determine what {store, subscription} value should be put into nested context, if necessary,\n // and memoize that value to avoid unnecessary context updates.\n\n\n var overriddenContextValue = Object(react[\"useMemo\"])(function () {\n if (didStoreComeFromProps) {\n // This component is directly subscribed to a store from props.\n // We don't want descendants reading from this store - pass down whatever\n // the existing context value is from the nearest connected ancestor.\n return contextValue;\n } // Otherwise, put this component's subscription instance into context, so that\n // connected descendants won't update until after this component is done\n\n\n return Object(esm_extends[\"a\" /* default */])({}, contextValue, {\n subscription: subscription\n });\n }, [didStoreComeFromProps, contextValue, subscription]); // We need to force this wrapper component to re-render whenever a Redux store update\n // causes a change to the calculated child component props (or we caught an error in mapState)\n\n var _useReducer = Object(react[\"useReducer\"])(storeStateUpdatesReducer, EMPTY_ARRAY, initStateUpdates),\n _useReducer$ = _useReducer[0],\n previousStateUpdateResult = _useReducer$[0],\n forceComponentUpdateDispatch = _useReducer[1]; // Propagate any mapState/mapDispatch errors upwards\n\n\n if (previousStateUpdateResult && previousStateUpdateResult.error) {\n throw previousStateUpdateResult.error;\n } // Set up refs to coordinate values between the subscription effect and the render logic\n\n\n var lastChildProps = Object(react[\"useRef\"])();\n var lastWrapperProps = Object(react[\"useRef\"])(wrapperProps);\n var childPropsFromStoreUpdate = Object(react[\"useRef\"])();\n var renderIsScheduled = Object(react[\"useRef\"])(false);\n var actualChildProps = usePureOnlyMemo(function () {\n // Tricky logic here:\n // - This render may have been triggered by a Redux store update that produced new child props\n // - However, we may have gotten new wrapper props after that\n // If we have new child props, and the same wrapper props, we know we should use the new child props as-is.\n // But, if we have new wrapper props, those might change the child props, so we have to recalculate things.\n // So, we'll use the child props from store update only if the wrapper props are the same as last time.\n if (childPropsFromStoreUpdate.current && wrapperProps === lastWrapperProps.current) {\n return childPropsFromStoreUpdate.current;\n } // TODO We're reading the store directly in render() here. Bad idea?\n // This will likely cause Bad Things (TM) to happen in Concurrent Mode.\n // Note that we do this because on renders _not_ caused by store updates, we need the latest store state\n // to determine what the child props should be.\n\n\n return childPropsSelector(store.getState(), wrapperProps);\n }, [store, previousStateUpdateResult, wrapperProps]); // We need this to execute synchronously every time we re-render. However, React warns\n // about useLayoutEffect in SSR, so we try to detect environment and fall back to\n // just useEffect instead to avoid the warning, since neither will run anyway.\n\n useIsomorphicLayoutEffectWithArgs(captureWrapperProps, [lastWrapperProps, lastChildProps, renderIsScheduled, wrapperProps, actualChildProps, childPropsFromStoreUpdate, notifyNestedSubs]); // Our re-subscribe logic only runs when the store/subscription setup changes\n\n useIsomorphicLayoutEffectWithArgs(subscribeUpdates, [shouldHandleStateChanges, store, subscription, childPropsSelector, lastWrapperProps, lastChildProps, renderIsScheduled, childPropsFromStoreUpdate, notifyNestedSubs, forceComponentUpdateDispatch], [store, subscription, childPropsSelector]); // Now that all that's done, we can finally try to actually render the child component.\n // We memoize the elements for the rendered child component as an optimization.\n\n var renderedWrappedComponent = Object(react[\"useMemo\"])(function () {\n return /*#__PURE__*/react_default.a.createElement(WrappedComponent, Object(esm_extends[\"a\" /* default */])({}, actualChildProps, {\n ref: reactReduxForwardedRef\n }));\n }, [reactReduxForwardedRef, WrappedComponent, actualChildProps]); // If React sees the exact same element reference as last time, it bails out of re-rendering\n // that child, same as if it was wrapped in React.memo() or returned false from shouldComponentUpdate.\n\n var renderedChild = Object(react[\"useMemo\"])(function () {\n if (shouldHandleStateChanges) {\n // If this component is subscribed to store updates, we need to pass its own\n // subscription instance down to our descendants. That means rendering the same\n // Context instance, and putting a different value into the context.\n return /*#__PURE__*/react_default.a.createElement(ContextToUse.Provider, {\n value: overriddenContextValue\n }, renderedWrappedComponent);\n }\n\n return renderedWrappedComponent;\n }, [ContextToUse, renderedWrappedComponent, overriddenContextValue]);\n return renderedChild;\n } // If we're in \"pure\" mode, ensure our wrapper component only re-renders when incoming props have changed.\n\n\n var Connect = pure ? react_default.a.memo(ConnectFunction) : ConnectFunction;\n Connect.WrappedComponent = WrappedComponent;\n Connect.displayName = displayName;\n\n if (forwardRef) {\n var forwarded = react_default.a.forwardRef(function forwardConnectRef(props, ref) {\n return /*#__PURE__*/react_default.a.createElement(Connect, Object(esm_extends[\"a\" /* default */])({}, props, {\n reactReduxForwardedRef: ref\n }));\n });\n forwarded.displayName = displayName;\n forwarded.WrappedComponent = WrappedComponent;\n return hoist_non_react_statics_cjs_default()(forwarded, WrappedComponent);\n }\n\n return hoist_non_react_statics_cjs_default()(Connect, WrappedComponent);\n };\n}\n// CONCATENATED MODULE: ./node_modules/react-redux/es/utils/shallowEqual.js\nfunction is(x, y) {\n if (x === y) {\n return x !== 0 || y !== 0 || 1 / x === 1 / y;\n } else {\n return x !== x && y !== y;\n }\n}\n\nfunction shallowEqual(objA, objB) {\n if (is(objA, objB)) return true;\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n if (keysA.length !== keysB.length) return false;\n\n for (var i = 0; i < keysA.length; i++) {\n if (!Object.prototype.hasOwnProperty.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n\n return true;\n}\n// EXTERNAL MODULE: ./node_modules/redux/es/redux.js\nvar redux = __webpack_require__(\"ANjH\");\n\n// CONCATENATED MODULE: ./node_modules/react-redux/es/utils/isPlainObject.js\n/**\n * @param {any} obj The object to inspect.\n * @returns {boolean} True if the argument appears to be a plain object.\n */\nfunction isPlainObject(obj) {\n if (typeof obj !== 'object' || obj === null) return false;\n var proto = Object.getPrototypeOf(obj);\n if (proto === null) return true;\n var baseProto = proto;\n\n while (Object.getPrototypeOf(baseProto) !== null) {\n baseProto = Object.getPrototypeOf(baseProto);\n }\n\n return proto === baseProto;\n}\n// CONCATENATED MODULE: ./node_modules/react-redux/es/utils/warning.js\n/**\n * Prints a warning in the console if it exists.\n *\n * @param {String} message The warning message.\n * @returns {void}\n */\nfunction warning(message) {\n /* eslint-disable no-console */\n if (typeof console !== 'undefined' && typeof console.error === 'function') {\n console.error(message);\n }\n /* eslint-enable no-console */\n\n\n try {\n // This error was thrown as a convenience so that if you enable\n // \"break on all exceptions\" in your console,\n // it would pause the execution at this line.\n throw new Error(message);\n /* eslint-disable no-empty */\n } catch (e) {}\n /* eslint-enable no-empty */\n\n}\n// CONCATENATED MODULE: ./node_modules/react-redux/es/utils/verifyPlainObject.js\n\n\nfunction verifyPlainObject(value, displayName, methodName) {\n if (!isPlainObject(value)) {\n warning(methodName + \"() in \" + displayName + \" must return a plain object. Instead received \" + value + \".\");\n }\n}\n// CONCATENATED MODULE: ./node_modules/react-redux/es/connect/wrapMapToProps.js\n\nfunction wrapMapToPropsConstant(getConstant) {\n return function initConstantSelector(dispatch, options) {\n var constant = getConstant(dispatch, options);\n\n function constantSelector() {\n return constant;\n }\n\n constantSelector.dependsOnOwnProps = false;\n return constantSelector;\n };\n} // dependsOnOwnProps is used by createMapToPropsProxy to determine whether to pass props as args\n// to the mapToProps function being wrapped. It is also used by makePurePropsSelector to determine\n// whether mapToProps needs to be invoked when props have changed.\n//\n// A length of one signals that mapToProps does not depend on props from the parent component.\n// A length of zero is assumed to mean mapToProps is getting args via arguments or ...args and\n// therefore not reporting its length accurately..\n\nfunction getDependsOnOwnProps(mapToProps) {\n return mapToProps.dependsOnOwnProps !== null && mapToProps.dependsOnOwnProps !== undefined ? Boolean(mapToProps.dependsOnOwnProps) : mapToProps.length !== 1;\n} // Used by whenMapStateToPropsIsFunction and whenMapDispatchToPropsIsFunction,\n// this function wraps mapToProps in a proxy function which does several things:\n//\n// * Detects whether the mapToProps function being called depends on props, which\n// is used by selectorFactory to decide if it should reinvoke on props changes.\n//\n// * On first call, handles mapToProps if returns another function, and treats that\n// new function as the true mapToProps for subsequent calls.\n//\n// * On first call, verifies the first result is a plain object, in order to warn\n// the developer that their mapToProps function is not returning a valid result.\n//\n\nfunction wrapMapToPropsFunc(mapToProps, methodName) {\n return function initProxySelector(dispatch, _ref) {\n var displayName = _ref.displayName;\n\n var proxy = function mapToPropsProxy(stateOrDispatch, ownProps) {\n return proxy.dependsOnOwnProps ? proxy.mapToProps(stateOrDispatch, ownProps) : proxy.mapToProps(stateOrDispatch);\n }; // allow detectFactoryAndVerify to get ownProps\n\n\n proxy.dependsOnOwnProps = true;\n\n proxy.mapToProps = function detectFactoryAndVerify(stateOrDispatch, ownProps) {\n proxy.mapToProps = mapToProps;\n proxy.dependsOnOwnProps = getDependsOnOwnProps(mapToProps);\n var props = proxy(stateOrDispatch, ownProps);\n\n if (typeof props === 'function') {\n proxy.mapToProps = props;\n proxy.dependsOnOwnProps = getDependsOnOwnProps(props);\n props = proxy(stateOrDispatch, ownProps);\n }\n\n if (false) {}\n return props;\n };\n\n return proxy;\n };\n}\n// CONCATENATED MODULE: ./node_modules/react-redux/es/connect/mapDispatchToProps.js\n\n\nfunction whenMapDispatchToPropsIsFunction(mapDispatchToProps) {\n return typeof mapDispatchToProps === 'function' ? wrapMapToPropsFunc(mapDispatchToProps, 'mapDispatchToProps') : undefined;\n}\nfunction whenMapDispatchToPropsIsMissing(mapDispatchToProps) {\n return !mapDispatchToProps ? wrapMapToPropsConstant(function (dispatch) {\n return {\n dispatch: dispatch\n };\n }) : undefined;\n}\nfunction whenMapDispatchToPropsIsObject(mapDispatchToProps) {\n return mapDispatchToProps && typeof mapDispatchToProps === 'object' ? wrapMapToPropsConstant(function (dispatch) {\n return Object(redux[\"b\" /* bindActionCreators */])(mapDispatchToProps, dispatch);\n }) : undefined;\n}\n/* harmony default export */ var connect_mapDispatchToProps = ([whenMapDispatchToPropsIsFunction, whenMapDispatchToPropsIsMissing, whenMapDispatchToPropsIsObject]);\n// CONCATENATED MODULE: ./node_modules/react-redux/es/connect/mapStateToProps.js\n\nfunction whenMapStateToPropsIsFunction(mapStateToProps) {\n return typeof mapStateToProps === 'function' ? wrapMapToPropsFunc(mapStateToProps, 'mapStateToProps') : undefined;\n}\nfunction whenMapStateToPropsIsMissing(mapStateToProps) {\n return !mapStateToProps ? wrapMapToPropsConstant(function () {\n return {};\n }) : undefined;\n}\n/* harmony default export */ var connect_mapStateToProps = ([whenMapStateToPropsIsFunction, whenMapStateToPropsIsMissing]);\n// CONCATENATED MODULE: ./node_modules/react-redux/es/connect/mergeProps.js\n\n\nfunction defaultMergeProps(stateProps, dispatchProps, ownProps) {\n return Object(esm_extends[\"a\" /* default */])({}, ownProps, stateProps, dispatchProps);\n}\nfunction wrapMergePropsFunc(mergeProps) {\n return function initMergePropsProxy(dispatch, _ref) {\n var displayName = _ref.displayName,\n pure = _ref.pure,\n areMergedPropsEqual = _ref.areMergedPropsEqual;\n var hasRunOnce = false;\n var mergedProps;\n return function mergePropsProxy(stateProps, dispatchProps, ownProps) {\n var nextMergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n\n if (hasRunOnce) {\n if (!pure || !areMergedPropsEqual(nextMergedProps, mergedProps)) mergedProps = nextMergedProps;\n } else {\n hasRunOnce = true;\n mergedProps = nextMergedProps;\n if (false) {}\n }\n\n return mergedProps;\n };\n };\n}\nfunction whenMergePropsIsFunction(mergeProps) {\n return typeof mergeProps === 'function' ? wrapMergePropsFunc(mergeProps) : undefined;\n}\nfunction whenMergePropsIsOmitted(mergeProps) {\n return !mergeProps ? function () {\n return defaultMergeProps;\n } : undefined;\n}\n/* harmony default export */ var connect_mergeProps = ([whenMergePropsIsFunction, whenMergePropsIsOmitted]);\n// CONCATENATED MODULE: ./node_modules/react-redux/es/connect/verifySubselectors.js\n\n\nfunction verify(selector, methodName, displayName) {\n if (!selector) {\n throw new Error(\"Unexpected value for \" + methodName + \" in \" + displayName + \".\");\n } else if (methodName === 'mapStateToProps' || methodName === 'mapDispatchToProps') {\n if (!Object.prototype.hasOwnProperty.call(selector, 'dependsOnOwnProps')) {\n warning(\"The selector for \" + methodName + \" of \" + displayName + \" did not specify a value for dependsOnOwnProps.\");\n }\n }\n}\n\nfunction verifySubselectors(mapStateToProps, mapDispatchToProps, mergeProps, displayName) {\n verify(mapStateToProps, 'mapStateToProps', displayName);\n verify(mapDispatchToProps, 'mapDispatchToProps', displayName);\n verify(mergeProps, 'mergeProps', displayName);\n}\n// CONCATENATED MODULE: ./node_modules/react-redux/es/connect/selectorFactory.js\n\n\nfunction impureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch) {\n return function impureFinalPropsSelector(state, ownProps) {\n return mergeProps(mapStateToProps(state, ownProps), mapDispatchToProps(dispatch, ownProps), ownProps);\n };\n}\nfunction pureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, _ref) {\n var areStatesEqual = _ref.areStatesEqual,\n areOwnPropsEqual = _ref.areOwnPropsEqual,\n areStatePropsEqual = _ref.areStatePropsEqual;\n var hasRunAtLeastOnce = false;\n var state;\n var ownProps;\n var stateProps;\n var dispatchProps;\n var mergedProps;\n\n function handleFirstCall(firstState, firstOwnProps) {\n state = firstState;\n ownProps = firstOwnProps;\n stateProps = mapStateToProps(state, ownProps);\n dispatchProps = mapDispatchToProps(dispatch, ownProps);\n mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n hasRunAtLeastOnce = true;\n return mergedProps;\n }\n\n function handleNewPropsAndNewState() {\n stateProps = mapStateToProps(state, ownProps);\n if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);\n mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n return mergedProps;\n }\n\n function handleNewProps() {\n if (mapStateToProps.dependsOnOwnProps) stateProps = mapStateToProps(state, ownProps);\n if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);\n mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n return mergedProps;\n }\n\n function handleNewState() {\n var nextStateProps = mapStateToProps(state, ownProps);\n var statePropsChanged = !areStatePropsEqual(nextStateProps, stateProps);\n stateProps = nextStateProps;\n if (statePropsChanged) mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n return mergedProps;\n }\n\n function handleSubsequentCalls(nextState, nextOwnProps) {\n var propsChanged = !areOwnPropsEqual(nextOwnProps, ownProps);\n var stateChanged = !areStatesEqual(nextState, state);\n state = nextState;\n ownProps = nextOwnProps;\n if (propsChanged && stateChanged) return handleNewPropsAndNewState();\n if (propsChanged) return handleNewProps();\n if (stateChanged) return handleNewState();\n return mergedProps;\n }\n\n return function pureFinalPropsSelector(nextState, nextOwnProps) {\n return hasRunAtLeastOnce ? handleSubsequentCalls(nextState, nextOwnProps) : handleFirstCall(nextState, nextOwnProps);\n };\n} // TODO: Add more comments\n// If pure is true, the selector returned by selectorFactory will memoize its results,\n// allowing connectAdvanced's shouldComponentUpdate to return false if final\n// props have not changed. If false, the selector will always return a new\n// object and shouldComponentUpdate will always return true.\n\nfunction finalPropsSelectorFactory(dispatch, _ref2) {\n var initMapStateToProps = _ref2.initMapStateToProps,\n initMapDispatchToProps = _ref2.initMapDispatchToProps,\n initMergeProps = _ref2.initMergeProps,\n options = Object(objectWithoutPropertiesLoose[\"a\" /* default */])(_ref2, [\"initMapStateToProps\", \"initMapDispatchToProps\", \"initMergeProps\"]);\n\n var mapStateToProps = initMapStateToProps(dispatch, options);\n var mapDispatchToProps = initMapDispatchToProps(dispatch, options);\n var mergeProps = initMergeProps(dispatch, options);\n\n if (false) {}\n\n var selectorFactory = options.pure ? pureFinalPropsSelectorFactory : impureFinalPropsSelectorFactory;\n return selectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, options);\n}\n// CONCATENATED MODULE: ./node_modules/react-redux/es/connect/connect.js\n\n\n\n\n\n\n\n\n/*\n connect is a facade over connectAdvanced. It turns its args into a compatible\n selectorFactory, which has the signature:\n\n (dispatch, options) => (nextState, nextOwnProps) => nextFinalProps\n \n connect passes its args to connectAdvanced as options, which will in turn pass them to\n selectorFactory each time a Connect component instance is instantiated or hot reloaded.\n\n selectorFactory returns a final props selector from its mapStateToProps,\n mapStateToPropsFactories, mapDispatchToProps, mapDispatchToPropsFactories, mergeProps,\n mergePropsFactories, and pure args.\n\n The resulting final props selector is called by the Connect component instance whenever\n it receives new props or store state.\n */\n\nfunction match(arg, factories, name) {\n for (var i = factories.length - 1; i >= 0; i--) {\n var result = factories[i](arg);\n if (result) return result;\n }\n\n return function (dispatch, options) {\n throw new Error(\"Invalid value of type \" + typeof arg + \" for \" + name + \" argument when connecting component \" + options.wrappedComponentName + \".\");\n };\n}\n\nfunction strictEqual(a, b) {\n return a === b;\n} // createConnect with default args builds the 'official' connect behavior. Calling it with\n// different options opens up some testing and extensibility scenarios\n\n\nfunction createConnect(_temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$connectHOC = _ref.connectHOC,\n connectHOC = _ref$connectHOC === void 0 ? connectAdvanced : _ref$connectHOC,\n _ref$mapStateToPropsF = _ref.mapStateToPropsFactories,\n mapStateToPropsFactories = _ref$mapStateToPropsF === void 0 ? connect_mapStateToProps : _ref$mapStateToPropsF,\n _ref$mapDispatchToPro = _ref.mapDispatchToPropsFactories,\n mapDispatchToPropsFactories = _ref$mapDispatchToPro === void 0 ? connect_mapDispatchToProps : _ref$mapDispatchToPro,\n _ref$mergePropsFactor = _ref.mergePropsFactories,\n mergePropsFactories = _ref$mergePropsFactor === void 0 ? connect_mergeProps : _ref$mergePropsFactor,\n _ref$selectorFactory = _ref.selectorFactory,\n selectorFactory = _ref$selectorFactory === void 0 ? finalPropsSelectorFactory : _ref$selectorFactory;\n\n return function connect(mapStateToProps, mapDispatchToProps, mergeProps, _ref2) {\n if (_ref2 === void 0) {\n _ref2 = {};\n }\n\n var _ref3 = _ref2,\n _ref3$pure = _ref3.pure,\n pure = _ref3$pure === void 0 ? true : _ref3$pure,\n _ref3$areStatesEqual = _ref3.areStatesEqual,\n areStatesEqual = _ref3$areStatesEqual === void 0 ? strictEqual : _ref3$areStatesEqual,\n _ref3$areOwnPropsEqua = _ref3.areOwnPropsEqual,\n areOwnPropsEqual = _ref3$areOwnPropsEqua === void 0 ? shallowEqual : _ref3$areOwnPropsEqua,\n _ref3$areStatePropsEq = _ref3.areStatePropsEqual,\n areStatePropsEqual = _ref3$areStatePropsEq === void 0 ? shallowEqual : _ref3$areStatePropsEq,\n _ref3$areMergedPropsE = _ref3.areMergedPropsEqual,\n areMergedPropsEqual = _ref3$areMergedPropsE === void 0 ? shallowEqual : _ref3$areMergedPropsE,\n extraOptions = Object(objectWithoutPropertiesLoose[\"a\" /* default */])(_ref3, [\"pure\", \"areStatesEqual\", \"areOwnPropsEqual\", \"areStatePropsEqual\", \"areMergedPropsEqual\"]);\n\n var initMapStateToProps = match(mapStateToProps, mapStateToPropsFactories, 'mapStateToProps');\n var initMapDispatchToProps = match(mapDispatchToProps, mapDispatchToPropsFactories, 'mapDispatchToProps');\n var initMergeProps = match(mergeProps, mergePropsFactories, 'mergeProps');\n return connectHOC(selectorFactory, Object(esm_extends[\"a\" /* default */])({\n // used in error messages\n methodName: 'connect',\n // used to compute Connect's displayName from the wrapped component's displayName.\n getDisplayName: function getDisplayName(name) {\n return \"Connect(\" + name + \")\";\n },\n // if mapStateToProps is falsy, the Connect component doesn't subscribe to store state changes\n shouldHandleStateChanges: Boolean(mapStateToProps),\n // passed through to selectorFactory\n initMapStateToProps: initMapStateToProps,\n initMapDispatchToProps: initMapDispatchToProps,\n initMergeProps: initMergeProps,\n pure: pure,\n areStatesEqual: areStatesEqual,\n areOwnPropsEqual: areOwnPropsEqual,\n areStatePropsEqual: areStatePropsEqual,\n areMergedPropsEqual: areMergedPropsEqual\n }, extraOptions));\n };\n}\n/* harmony default export */ var connect_connect = (/*#__PURE__*/createConnect());\n// CONCATENATED MODULE: ./node_modules/react-redux/es/hooks/useReduxContext.js\n\n\n/**\n * A hook to access the value of the `ReactReduxContext`. This is a low-level\n * hook that you should usually not need to call directly.\n *\n * @returns {any} the value of the `ReactReduxContext`\n *\n * @example\n *\n * import React from 'react'\n * import { useReduxContext } from 'react-redux'\n *\n * export const CounterComponent = ({ value }) => {\n * const { store } = useReduxContext()\n * return <div>{store.getState()}</div>\n * }\n */\n\nfunction useReduxContext_useReduxContext() {\n var contextValue = Object(react[\"useContext\"])(ReactReduxContext);\n\n if (false) {}\n\n return contextValue;\n}\n// CONCATENATED MODULE: ./node_modules/react-redux/es/hooks/useStore.js\n\n\n\n/**\n * Hook factory, which creates a `useStore` hook bound to a given context.\n *\n * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.\n * @returns {Function} A `useStore` hook bound to the specified context.\n */\n\nfunction createStoreHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useReduxContext = context === ReactReduxContext ? useReduxContext_useReduxContext : function () {\n return Object(react[\"useContext\"])(context);\n };\n return function useStore() {\n var _useReduxContext = useReduxContext(),\n store = _useReduxContext.store;\n\n return store;\n };\n}\n/**\n * A hook to access the redux store.\n *\n * @returns {any} the redux store\n *\n * @example\n *\n * import React from 'react'\n * import { useStore } from 'react-redux'\n *\n * export const ExampleComponent = () => {\n * const store = useStore()\n * return <div>{store.getState()}</div>\n * }\n */\n\nvar useStore_useStore = /*#__PURE__*/createStoreHook();\n// CONCATENATED MODULE: ./node_modules/react-redux/es/hooks/useDispatch.js\n\n\n/**\n * Hook factory, which creates a `useDispatch` hook bound to a given context.\n *\n * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.\n * @returns {Function} A `useDispatch` hook bound to the specified context.\n */\n\nfunction createDispatchHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useStore = context === ReactReduxContext ? useStore_useStore : createStoreHook(context);\n return function useDispatch() {\n var store = useStore();\n return store.dispatch;\n };\n}\n/**\n * A hook to access the redux `dispatch` function.\n *\n * @returns {any|function} redux store's `dispatch` function\n *\n * @example\n *\n * import React, { useCallback } from 'react'\n * import { useDispatch } from 'react-redux'\n *\n * export const CounterComponent = ({ value }) => {\n * const dispatch = useDispatch()\n * const increaseCounter = useCallback(() => dispatch({ type: 'increase-counter' }), [])\n * return (\n * <div>\n * <span>{value}</span>\n * <button onClick={increaseCounter}>Increase counter</button>\n * </div>\n * )\n * }\n */\n\nvar useDispatch = /*#__PURE__*/createDispatchHook();\n// CONCATENATED MODULE: ./node_modules/react-redux/es/hooks/useSelector.js\n\n\n\n\n\n\nvar refEquality = function refEquality(a, b) {\n return a === b;\n};\n\nfunction useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub) {\n var _useReducer = Object(react[\"useReducer\"])(function (s) {\n return s + 1;\n }, 0),\n forceRender = _useReducer[1];\n\n var subscription = Object(react[\"useMemo\"])(function () {\n return new Subscription(store, contextSub);\n }, [store, contextSub]);\n var latestSubscriptionCallbackError = Object(react[\"useRef\"])();\n var latestSelector = Object(react[\"useRef\"])();\n var latestStoreState = Object(react[\"useRef\"])();\n var latestSelectedState = Object(react[\"useRef\"])();\n var storeState = store.getState();\n var selectedState;\n\n try {\n if (selector !== latestSelector.current || storeState !== latestStoreState.current || latestSubscriptionCallbackError.current) {\n selectedState = selector(storeState);\n } else {\n selectedState = latestSelectedState.current;\n }\n } catch (err) {\n if (latestSubscriptionCallbackError.current) {\n err.message += \"\\nThe error may be correlated with this previous error:\\n\" + latestSubscriptionCallbackError.current.stack + \"\\n\\n\";\n }\n\n throw err;\n }\n\n useIsomorphicLayoutEffect(function () {\n latestSelector.current = selector;\n latestStoreState.current = storeState;\n latestSelectedState.current = selectedState;\n latestSubscriptionCallbackError.current = undefined;\n });\n useIsomorphicLayoutEffect(function () {\n function checkForUpdates() {\n try {\n var newSelectedState = latestSelector.current(store.getState());\n\n if (equalityFn(newSelectedState, latestSelectedState.current)) {\n return;\n }\n\n latestSelectedState.current = newSelectedState;\n } catch (err) {\n // we ignore all errors here, since when the component\n // is re-rendered, the selectors are called again, and\n // will throw again, if neither props nor store state\n // changed\n latestSubscriptionCallbackError.current = err;\n }\n\n forceRender();\n }\n\n subscription.onStateChange = checkForUpdates;\n subscription.trySubscribe();\n checkForUpdates();\n return function () {\n return subscription.tryUnsubscribe();\n };\n }, [store, subscription]);\n return selectedState;\n}\n/**\n * Hook factory, which creates a `useSelector` hook bound to a given context.\n *\n * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.\n * @returns {Function} A `useSelector` hook bound to the specified context.\n */\n\n\nfunction createSelectorHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useReduxContext = context === ReactReduxContext ? useReduxContext_useReduxContext : function () {\n return Object(react[\"useContext\"])(context);\n };\n return function useSelector(selector, equalityFn) {\n if (equalityFn === void 0) {\n equalityFn = refEquality;\n }\n\n if (false) {}\n\n var _useReduxContext = useReduxContext(),\n store = _useReduxContext.store,\n contextSub = _useReduxContext.subscription;\n\n var selectedState = useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub);\n Object(react[\"useDebugValue\"])(selectedState);\n return selectedState;\n };\n}\n/**\n * A hook to access the redux store's state. This hook takes a selector function\n * as an argument. The selector is called with the store state.\n *\n * This hook takes an optional equality comparison function as the second parameter\n * that allows you to customize the way the selected state is compared to determine\n * whether the component needs to be re-rendered.\n *\n * @param {Function} selector the selector function\n * @param {Function=} equalityFn the function that will be used to determine equality\n *\n * @returns {any} the selected state\n *\n * @example\n *\n * import React from 'react'\n * import { useSelector } from 'react-redux'\n *\n * export const CounterComponent = () => {\n * const counter = useSelector(state => state.counter)\n * return <div>{counter}</div>\n * }\n */\n\nvar useSelector_useSelector = /*#__PURE__*/createSelectorHook();\n// EXTERNAL MODULE: ./node_modules/react-dom/index.js\nvar react_dom = __webpack_require__(\"i8i4\");\n\n// CONCATENATED MODULE: ./node_modules/react-redux/es/utils/reactBatchedUpdates.js\n/* eslint-disable import/no-unresolved */\n\n// CONCATENATED MODULE: ./node_modules/react-redux/es/index.js\n\n\n\n\n\n\n\n\n\n\nsetBatch(react_dom[\"unstable_batchedUpdates\"]);\n\n\n/***/ }),\n\n/***/ \"/VMF\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar Pattern = /** @class */ (function () {\n function Pattern(_a) {\n var board = _a.board, cells = _a.cells;\n this.board = board;\n this.cells = cells;\n }\n Pattern.prototype.canBePlaced = function (config) {\n var numberOfEmptyCells = this.getNumberOfEmptyCells();\n var isNumberOfUsedCellsInRange = numberOfEmptyCells >= 1 && numberOfEmptyCells <= config.maximumNumberOfCharacters;\n return (isNumberOfUsedCellsInRange &&\n (this.hasAtLeast1NonEmptyCell() || this.collides() || (this.goesThroughBoardCenter() && this.board.isEmpty())));\n };\n Pattern.prototype.clone = function () {\n return new Pattern({\n board: this.board,\n cells: this.cells.map(function (cell) { return cell.clone(); }),\n });\n };\n Pattern.prototype.collides = function () {\n var _this = this;\n return this.cells.some(function (cell) { return cell.isEmpty && _this.board.collides(cell); });\n };\n Pattern.prototype.getIndexOfFirstCellWithoutTile = function () {\n return this.cells.findIndex(function (cell) { return !cell.hasTile(); });\n };\n Pattern.prototype.getNumberOfEmptyCells = function () {\n return this.cells.filter(function (cell) { return cell.isEmpty; }).length;\n };\n Pattern.prototype.goesThroughBoardCenter = function () {\n var _this = this;\n return this.cells.some(function (cell) { return cell.x === _this.board.center.x && cell.y === _this.board.center.y && cell.isEmpty; });\n };\n Pattern.prototype.hasAtLeast1EmptyCell = function () {\n return this.cells.some(function (cell) { return cell.isEmpty; });\n };\n Pattern.prototype.hasAtLeast1NonEmptyCell = function () {\n return this.cells.some(function (cell) { return !cell.isEmpty; });\n };\n Pattern.prototype.getCollisions = function () {\n return [];\n };\n Pattern.prototype.toJson = function () {\n return {\n cells: this.cells.map(function (cell) { return cell.toJson(); }),\n collisions: this.getCollisions().map(function (collision) { return collision.toJson(); }),\n word: this.toString(),\n };\n };\n Pattern.prototype.toString = function () {\n return this.cells.map(String).join('');\n };\n return Pattern;\n}());\nexports.default = Pattern;\n\n\n/***/ }),\n\n/***/ \"10rO\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.tilesDe = exports.tilesPl = exports.tilesFr = exports.tilesEs = exports.tilesEn = void 0;\nvar tilesEn_1 = __webpack_require__(\"3/hz\");\nObject.defineProperty(exports, \"tilesEn\", { enumerable: true, get: function () { return __importDefault(tilesEn_1).default; } });\nvar tilesEs_1 = __webpack_require__(\"KFH4\");\nObject.defineProperty(exports, \"tilesEs\", { enumerable: true, get: function () { return __importDefault(tilesEs_1).default; } });\nvar tilesFr_1 = __webpack_require__(\"87Kc\");\nObject.defineProperty(exports, \"tilesFr\", { enumerable: true, get: function () { return __importDefault(tilesFr_1).default; } });\nvar tilesPl_1 = __webpack_require__(\"2q6C\");\nObject.defineProperty(exports, \"tilesPl\", { enumerable: true, get: function () { return __importDefault(tilesPl_1).default; } });\nvar tilesDe_1 = __webpack_require__(\"5x6p\");\nObject.defineProperty(exports, \"tilesDe\", { enumerable: true, get: function () { return __importDefault(tilesDe_1).default; } });\n\n\n/***/ }),\n\n/***/ \"2QrI\":\n/***/ (function(module) {\n\nmodule.exports = JSON.parse(\"{\\\"cell.set-blank\\\":\\\"Marcar como en blanco\\\",\\\"cell.set-not-blank\\\":\\\"Marcar como no en blanco\\\",\\\"cell.toggle-direction\\\":\\\"Dirección de escritura: haga clic para alternar\\\",\\\"common.blanks\\\":\\\"Blancos\\\",\\\"common.clear\\\":\\\"Borrar\\\",\\\"common.close\\\":\\\"Cerrar\\\",\\\"common.consonants\\\":\\\"Consonantes\\\",\\\"common.loading\\\":\\\"Cargando\\\",\\\"common.points\\\":\\\"Puntos\\\",\\\"common.tiles\\\":\\\"Longitud\\\",\\\"common.two-letter-tiles\\\":\\\"Dos letras\\\",\\\"common.vowels\\\":\\\"Vocales\\\",\\\"common.word\\\":\\\"Palabra\\\",\\\"common.words\\\":\\\"Palabras\\\",\\\"dictionary.empty-state.no-definitions\\\":\\\"La palabra existe en el diccionario pero no tiene una definición.\\\",\\\"dictionary.empty-state.no-results\\\":\\\"No se puede encontrar la definición de palabra en el diccionario.\\\",\\\"dictionary.empty-state.not-allowed\\\":\\\"Esta palabra no es aceptable.\\\",\\\"dictionary.empty-state.uninitialized\\\":\\\"Aquí se mostrará la definición del diccionario de la última palabra resaltada.\\\",\\\"dictionary.input.placeholder\\\":\\\"Busca el diccionario...\\\",\\\"empty-state.error\\\":\\\"Error\\\",\\\"empty-state.info\\\":\\\"Info\\\",\\\"empty-state.success\\\":\\\"Sí!\\\",\\\"empty-state.warning\\\":\\\"Vaya!\\\",\\\"github\\\":\\\"Ver este proyecto en GitHub\\\",\\\"keyMap\\\":\\\"Atajos de teclado\\\",\\\"keyMap.board\\\":\\\"Tablero\\\",\\\"keyMap.board.toggle-blank\\\":\\\"Marcar / desmarcar un espacio en blanco\\\",\\\"keyMap.board.toggle-direction\\\":\\\"Alternar dirección de escritura\\\",\\\"keyMap.board-and-rack\\\":\\\"Tablero y estante\\\",\\\"keyMap.board-and-rack.insert-two-letter-tile\\\":\\\"Insertar mosaico de dos letras\\\",\\\"keyMap.board-and-rack.navigate\\\":\\\"Navegar\\\",\\\"keyMap.board-and-rack.remove-tile\\\":\\\"Quitar Letra\\\",\\\"keyMap.board-and-rack.submit\\\":\\\"Empezar a resolver\\\",\\\"keyMap.rack\\\":\\\"Estante\\\",\\\"keyMap.rack.insert-blank\\\":\\\"Insertar espacio en blanco (barra espaciadora)\\\",\\\"rack.placeholder\\\":\\\"Letras…\\\",\\\"remaining-tiles\\\":\\\"Casillas restantes\\\",\\\"results.empty-state.no-filtered-results\\\":\\\"Ningún resultado coincide con esta consulta.\\\",\\\"results.empty-state.no-results\\\":\\\"No hay resultados; no se pueden generar palabras\\\",\\\"results.empty-state.outdated\\\":\\\"Los resultados están desactualizados. Haga clic a continuación para actualizar.\\\",\\\"results.empty-state.uninitialized\\\":\\\"Aquí se mostrarán las palabras generadas a partir de sus letras.\\\",\\\"results.input.placeholder\\\":\\\"Busque una solución... (RegExp)\\\",\\\"results.solve\\\":\\\"Resolver\\\",\\\"settings\\\":\\\"Configuración\\\",\\\"settings.autoGroupTiles\\\":\\\"Agrupar casillas restantes\\\",\\\"settings.autoGroupTiles.left\\\":\\\"A la izquierda\\\",\\\"settings.autoGroupTiles.right\\\":\\\"A la derecha\\\",\\\"settings.autoGroupTiles.null\\\":\\\"No agrupar\\\",\\\"settings.game\\\":\\\"Juego\\\",\\\"settings.language\\\":\\\"Idioma\\\"}\");\n\n/***/ }),\n\n/***/ \"2mql\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar reactIs = __webpack_require__(\"TOwV\");\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n\n\n/***/ }),\n\n/***/ \"2q6C\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesPl = [\n { character: 'a', count: 9, score: 1 },\n { character: 'ą', count: 1, score: 5 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 3, score: 2 },\n { character: 'ć', count: 1, score: 5 },\n { character: 'd', count: 3, score: 2 },\n { character: 'e', count: 7, score: 1 },\n { character: 'ę', count: 1, score: 5 },\n { character: 'f', count: 1, score: 5 },\n { character: 'g', count: 2, score: 3 },\n { character: 'h', count: 2, score: 3 },\n { character: 'i', count: 8, score: 1 },\n { character: 'j', count: 2, score: 3 },\n { character: 'k', count: 3, score: 2 },\n { character: 'l', count: 3, score: 2 },\n { character: 'ł', count: 2, score: 3 },\n { character: 'm', count: 3, score: 2 },\n { character: 'n', count: 5, score: 1 },\n { character: 'ń', count: 1, score: 5 },\n { character: 'o', count: 6, score: 1 },\n { character: 'ó', count: 1, score: 5 },\n { character: 'p', count: 3, score: 2 },\n { character: 'r', count: 4, score: 1 },\n { character: 's', count: 4, score: 1 },\n { character: 'ś', count: 1, score: 5 },\n { character: 't', count: 3, score: 2 },\n { character: 'u', count: 2, score: 3 },\n { character: 'w', count: 4, score: 1 },\n { character: 'y', count: 4, score: 2 },\n { character: 'z', count: 5, score: 1 },\n { character: 'ź', count: 1, score: 5 },\n { character: 'ż', count: 1, score: 5 },\n];\nexports.default = tilesPl;\n\n\n/***/ }),\n\n/***/ \"2yzE\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesPl = [\n { character: 'a', count: 9, score: 1 },\n { character: 'ą', count: 1, score: 5 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 3, score: 2 },\n { character: 'ć', count: 1, score: 6 },\n { character: 'd', count: 3, score: 2 },\n { character: 'e', count: 7, score: 1 },\n { character: 'ę', count: 1, score: 5 },\n { character: 'f', count: 1, score: 5 },\n { character: 'g', count: 2, score: 3 },\n { character: 'h', count: 2, score: 3 },\n { character: 'i', count: 8, score: 1 },\n { character: 'j', count: 2, score: 3 },\n { character: 'k', count: 3, score: 2 },\n { character: 'l', count: 3, score: 2 },\n { character: 'ł', count: 2, score: 3 },\n { character: 'm', count: 3, score: 2 },\n { character: 'n', count: 5, score: 1 },\n { character: 'ń', count: 1, score: 7 },\n { character: 'o', count: 6, score: 1 },\n { character: 'ó', count: 1, score: 5 },\n { character: 'p', count: 3, score: 2 },\n { character: 'r', count: 4, score: 1 },\n { character: 's', count: 4, score: 1 },\n { character: 'ś', count: 1, score: 5 },\n { character: 't', count: 3, score: 2 },\n { character: 'u', count: 2, score: 3 },\n { character: 'w', count: 4, score: 1 },\n { character: 'y', count: 4, score: 2 },\n { character: 'z', count: 5, score: 1 },\n { character: 'ź', count: 1, score: 9 },\n { character: 'ż', count: 1, score: 5 },\n];\nexports.default = tilesPl;\n\n\n/***/ }),\n\n/***/ \"3/hz\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesEn = [\n { character: 'a', count: 9, score: 1 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 2, score: 3 },\n { character: 'd', count: 4, score: 2 },\n { character: 'e', count: 12, score: 1 },\n { character: 'f', count: 2, score: 4 },\n { character: 'g', count: 3, score: 2 },\n { character: 'h', count: 2, score: 4 },\n { character: 'i', count: 9, score: 1 },\n { character: 'j', count: 1, score: 8 },\n { character: 'k', count: 1, score: 5 },\n { character: 'l', count: 4, score: 1 },\n { character: 'm', count: 2, score: 3 },\n { character: 'n', count: 6, score: 1 },\n { character: 'o', count: 8, score: 1 },\n { character: 'p', count: 2, score: 3 },\n { character: 'q', count: 1, score: 10 },\n { character: 'r', count: 6, score: 1 },\n { character: 's', count: 4, score: 1 },\n { character: 't', count: 6, score: 1 },\n { character: 'u', count: 4, score: 1 },\n { character: 'v', count: 2, score: 4 },\n { character: 'w', count: 2, score: 4 },\n { character: 'x', count: 1, score: 8 },\n { character: 'y', count: 2, score: 4 },\n { character: 'z', count: 1, score: 10 },\n];\nexports.default = tilesEn;\n\n\n/***/ }),\n\n/***/ \"3UD+\":\n/***/ (function(module, exports) {\n\nmodule.exports = function(originalModule) {\n\tif (!originalModule.webpackPolyfill) {\n\t\tvar module = Object.create(originalModule);\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"exports\", {\n\t\t\tenumerable: true\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n\n\n/***/ }),\n\n/***/ \"4+01\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nvar _a;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar types_1 = __webpack_require__(\"v/x1\");\nvar bonuses_1 = __importDefault(__webpack_require__(\"ASA0\"));\nvar tiles_1 = __webpack_require__(\"10rO\");\nvar base = {\n allTilesBonusScore: 50,\n blankScore: 0,\n boardHeight: 15,\n boardWidth: 15,\n bonuses: bonuses_1.default,\n id: 'literaki',\n maximumNumberOfCharacters: 7,\n name: 'Literaki',\n numberOfBlanks: 2,\n};\nvar literaki = (_a = {\n id: base.id,\n name: base.name\n },\n _a[types_1.Locale.DE_DE] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesDe })),\n _a[types_1.Locale.EN_GB] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesEn })),\n _a[types_1.Locale.EN_US] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesEn })),\n _a[types_1.Locale.ES_ES] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesEs })),\n _a[types_1.Locale.FR_FR] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesFr })),\n _a[types_1.Locale.PL_PL] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesPl })),\n _a);\nexports.default = literaki;\n\n\n/***/ }),\n\n/***/ \"4Ign\":\n/***/ (function(module) {\n\nmodule.exports = JSON.parse(\"{\\\"cell.set-blank\\\":\\\"Mark it a blank\\\",\\\"cell.set-not-blank\\\":\\\"Mark it not a blank\\\",\\\"cell.toggle-direction\\\":\\\"Typing direction - click to toggle\\\",\\\"common.blanks\\\":\\\"Blanks\\\",\\\"common.clear\\\":\\\"Clear\\\",\\\"common.close\\\":\\\"Close\\\",\\\"common.consonants\\\":\\\"Consonants\\\",\\\"common.loading\\\":\\\"Loading\\\",\\\"common.points\\\":\\\"Points\\\",\\\"common.tiles\\\":\\\"Tiles\\\",\\\"common.two-letter-tiles\\\":\\\"Two-letter\\\",\\\"common.vowels\\\":\\\"Vowels\\\",\\\"common.word\\\":\\\"Word\\\",\\\"common.words\\\":\\\"Words\\\",\\\"dictionary.empty-state.no-definitions\\\":\\\"Word exists in the dictionary but it does not have a definition.\\\",\\\"dictionary.empty-state.no-results\\\":\\\"Unable to find word definition in dictionary.\\\",\\\"dictionary.empty-state.not-allowed\\\":\\\"This word is not allowed.\\\",\\\"dictionary.empty-state.uninitialized\\\":\\\"Dictionary definition of the last highlighted word will be shown here.\\\",\\\"dictionary.input.placeholder\\\":\\\"Search dictionary...\\\",\\\"empty-state.error\\\":\\\"Error\\\",\\\"empty-state.info\\\":\\\"Info\\\",\\\"empty-state.success\\\":\\\"Yeah!\\\",\\\"empty-state.warning\\\":\\\"Oops!\\\",\\\"github\\\":\\\"See this project on GitHub\\\",\\\"keyMap\\\":\\\"Keyboard shortcuts\\\",\\\"keyMap.board\\\":\\\"Board\\\",\\\"keyMap.board.toggle-blank\\\":\\\"Mark/unmark tile as a blank\\\",\\\"keyMap.board.toggle-direction\\\":\\\"Toggle typing direction\\\",\\\"keyMap.board-and-rack\\\":\\\"Board & rack\\\",\\\"keyMap.board-and-rack.insert-two-letter-tile\\\":\\\"Insert two-letter tile\\\",\\\"keyMap.board-and-rack.navigate\\\":\\\"Navigate\\\",\\\"keyMap.board-and-rack.remove-tile\\\":\\\"Remove tile\\\",\\\"keyMap.board-and-rack.submit\\\":\\\"Start solving\\\",\\\"keyMap.rack\\\":\\\"Rack\\\",\\\"keyMap.rack.insert-blank\\\":\\\"Insert blank (spacebar)\\\",\\\"rack.placeholder\\\":\\\"Letters\\\",\\\"remaining-tiles\\\":\\\"Remaining tiles\\\",\\\"results.empty-state.no-filtered-results\\\":\\\"No result matches this query.\\\",\\\"results.empty-state.no-results\\\":\\\"No results - unable to generate any words.\\\",\\\"results.empty-state.outdated\\\":\\\"Results are outdated. Click below to update.\\\",\\\"results.empty-state.uninitialized\\\":\\\"Words generated from your letters will be shown here.\\\",\\\"results.input.placeholder\\\":\\\"Search results... (RegExp)\\\",\\\"results.solve\\\":\\\"Solve\\\",\\\"settings\\\":\\\"Settings\\\",\\\"settings.autoGroupTiles\\\":\\\"Group remaining tiles\\\",\\\"settings.autoGroupTiles.left\\\":\\\"On the left\\\",\\\"settings.autoGroupTiles.right\\\":\\\"On the right\\\",\\\"settings.autoGroupTiles.null\\\":\\\"Do not group\\\",\\\"settings.game\\\":\\\"Game\\\",\\\"settings.language\\\":\\\"Language\\\"}\");\n\n/***/ }),\n\n/***/ \"4VI5\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.scrabble = exports.literaki = exports.isConfigId = exports.getLocaleConfig = exports.getConfig = void 0;\nvar getConfig_1 = __webpack_require__(\"bIQe\");\nObject.defineProperty(exports, \"getConfig\", { enumerable: true, get: function () { return __importDefault(getConfig_1).default; } });\nvar getLocaleConfig_1 = __webpack_require__(\"aMA8\");\nObject.defineProperty(exports, \"getLocaleConfig\", { enumerable: true, get: function () { return __importDefault(getLocaleConfig_1).default; } });\nvar isConfigId_1 = __webpack_require__(\"8rf8\");\nObject.defineProperty(exports, \"isConfigId\", { enumerable: true, get: function () { return __importDefault(isConfigId_1).default; } });\nvar literaki_1 = __webpack_require__(\"LzO6\");\nObject.defineProperty(exports, \"literaki\", { enumerable: true, get: function () { return __importDefault(literaki_1).default; } });\nvar scrabble_1 = __webpack_require__(\"t4n0\");\nObject.defineProperty(exports, \"scrabble\", { enumerable: true, get: function () { return __importDefault(scrabble_1).default; } });\n\n\n/***/ }),\n\n/***/ \"5NMP\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar WordDefinition = /** @class */ (function () {\n function WordDefinition(_a) {\n var definitions = _a.definitions, isAllowed = _a.isAllowed, word = _a.word;\n this.definitions = definitions;\n this.isAllowed = isAllowed;\n this.word = word;\n }\n WordDefinition.fromJson = function (json) {\n if (!json) {\n return WordDefinition.Null;\n }\n return new WordDefinition({\n definitions: json.definitions,\n isAllowed: json.isAllowed,\n word: json.word,\n });\n };\n WordDefinition.prototype.toJson = function () {\n return {\n definitions: this.definitions,\n isAllowed: this.isAllowed,\n word: this.word,\n };\n };\n WordDefinition.Null = Object.freeze({\n definitions: [],\n isAllowed: false,\n word: '',\n toJson: function () { return null; },\n });\n return WordDefinition;\n}());\nexports.default = WordDefinition;\n\n\n/***/ }),\n\n/***/ \"5vez\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = __webpack_require__(\"U5qN\");\nvar Bonus_1 = __importDefault(__webpack_require__(\"nSrw\"));\nvar CharacterBonus = /** @class */ (function (_super) {\n __extends(CharacterBonus, _super);\n function CharacterBonus() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.type = constants_1.BONUS_CHARACTER;\n return _this;\n }\n CharacterBonus.prototype.canApply = function (config, cell) {\n return _super.prototype.canApply.call(this, config, cell) && this.matchesCellTileScore(config, cell);\n };\n CharacterBonus.prototype.matchesCellTileScore = function (config, cell) {\n if (typeof this.score === 'undefined') {\n return true;\n }\n return this.score === config.pointsMap[cell.tile.character];\n };\n Object.defineProperty(CharacterBonus.prototype, \"value\", {\n get: function () {\n return {\n characterMultiplier: this.multiplier,\n wordMultiplier: 1,\n };\n },\n enumerable: false,\n configurable: true\n });\n return CharacterBonus;\n}(Bonus_1.default));\nexports.default = CharacterBonus;\n\n\n/***/ }),\n\n/***/ \"5x6p\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesDe = [\n { character: 'a', count: 5, score: 1 },\n { character: 'ä', count: 1, score: 6 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 2, score: 4 },\n { character: 'd', count: 4, score: 1 },\n { character: 'e', count: 15, score: 1 },\n { character: 'f', count: 2, score: 4 },\n { character: 'g', count: 3, score: 2 },\n { character: 'h', count: 4, score: 2 },\n { character: 'i', count: 6, score: 1 },\n { character: 'j', count: 1, score: 6 },\n { character: 'k', count: 2, score: 4 },\n { character: 'l', count: 3, score: 2 },\n { character: 'm', count: 4, score: 3 },\n { character: 'n', count: 9, score: 1 },\n { character: 'o', count: 3, score: 2 },\n { character: 'ö', count: 1, score: 8 },\n { character: 'p', count: 1, score: 4 },\n { character: 'q', count: 1, score: 10 },\n { character: 'r', count: 6, score: 1 },\n { character: 's', count: 7, score: 1 },\n { character: 't', count: 6, score: 1 },\n { character: 'u', count: 6, score: 1 },\n { character: 'ü', count: 1, score: 6 },\n { character: 'v', count: 1, score: 6 },\n { character: 'w', count: 1, score: 3 },\n { character: 'x', count: 1, score: 8 },\n { character: 'y', count: 1, score: 10 },\n { character: 'z', count: 1, score: 3 },\n];\nexports.default = tilesDe;\n\n\n/***/ }),\n\n/***/ \"6+LV\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return SortDirection; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ResultColumn; });\nvar SortDirection;\n\n(function (SortDirection) {\n SortDirection[\"Ascending\"] = \"ascending\";\n SortDirection[\"Descending\"] = \"descending\";\n})(SortDirection || (SortDirection = {}));\n\nvar ResultColumn;\n\n(function (ResultColumn) {\n ResultColumn[\"BlanksCount\"] = \"blanks-count\";\n ResultColumn[\"ConsonantsCount\"] = \"consonants-count\";\n ResultColumn[\"Points\"] = \"points\";\n ResultColumn[\"TilesCount\"] = \"tiles-count\";\n ResultColumn[\"VowelsCount\"] = \"vowels-count\";\n ResultColumn[\"Word\"] = \"word\";\n ResultColumn[\"WordsCount\"] = \"words-count\";\n})(ResultColumn || (ResultColumn = {}));\n\n/***/ }),\n\n/***/ \"8+rz\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, \"d\", function() { return /* reexport */ initialize; });\n__webpack_require__.d(__webpack_exports__, \"g\", function() { return /* reexport */ actions_reset; });\n__webpack_require__.d(__webpack_exports__, \"b\", function() { return /* reexport */ state_createAppStore; });\n__webpack_require__.d(__webpack_exports__, \"e\", function() { return /* reexport */ state_localStorage; });\n__webpack_require__.d(__webpack_exports__, \"p\", function() { return /* reexport */ selectDictionary; });\n__webpack_require__.d(__webpack_exports__, \"j\", function() { return /* reexport */ selectAutoGroupTiles; });\n__webpack_require__.d(__webpack_exports__, \"s\", function() { return /* reexport */ selectLocale; });\n__webpack_require__.d(__webpack_exports__, \"k\", function() { return /* reexport */ selectBoard; });\n__webpack_require__.d(__webpack_exports__, \"o\", function() { return /* reexport */ selectConfigId; });\n__webpack_require__.d(__webpack_exports__, \"n\", function() { return /* reexport */ selectConfig; });\n__webpack_require__.d(__webpack_exports__, \"w\", function() { return /* reexport */ selectResultsQuery; });\n__webpack_require__.d(__webpack_exports__, \"x\", function() { return /* reexport */ selectResultsSortColumn; });\n__webpack_require__.d(__webpack_exports__, \"y\", function() { return /* reexport */ selectResultsSortDirection; });\n__webpack_require__.d(__webpack_exports__, \"B\", function() { return /* reexport */ selectSortedResults; });\n__webpack_require__.d(__webpack_exports__, \"A\", function() { return /* reexport */ selectSortedFilteredResults; });\n__webpack_require__.d(__webpack_exports__, \"v\", function() { return /* reexport */ selectResultCandidateTiles; });\n__webpack_require__.d(__webpack_exports__, \"z\", function() { return /* reexport */ selectRowsWithCandidate; });\n__webpack_require__.d(__webpack_exports__, \"l\", function() { return /* reexport */ selectCellBonus; });\n__webpack_require__.d(__webpack_exports__, \"m\", function() { return /* reexport */ selectCharacterPoints; });\n__webpack_require__.d(__webpack_exports__, \"C\", function() { return /* reexport */ selectTilePoints; });\n__webpack_require__.d(__webpack_exports__, \"t\", function() { return /* reexport */ selectRack; });\n__webpack_require__.d(__webpack_exports__, \"r\", function() { return /* reexport */ selectIsLoading; });\n__webpack_require__.d(__webpack_exports__, \"i\", function() { return /* reexport */ selectAreResultsOutdated; });\n__webpack_require__.d(__webpack_exports__, \"q\", function() { return /* reexport */ selectHasOverusedTiles; });\n__webpack_require__.d(__webpack_exports__, \"u\", function() { return /* reexport */ selectRemainingTilesGroups; });\n__webpack_require__.d(__webpack_exports__, \"a\", function() { return /* reexport */ slices_boardSlice; });\n__webpack_require__.d(__webpack_exports__, \"c\", function() { return /* reexport */ slices_dictionarySlice; });\n__webpack_require__.d(__webpack_exports__, \"f\", function() { return /* reexport */ slices_rackSlice; });\n__webpack_require__.d(__webpack_exports__, \"h\", function() { return /* reexport */ slices_resultsSlice; });\n__webpack_require__.d(__webpack_exports__, \"D\", function() { return /* reexport */ slices_settingsSlice; });\n__webpack_require__.d(__webpack_exports__, \"E\", function() { return /* reexport */ slices_solveSlice; });\n__webpack_require__.d(__webpack_exports__, \"F\", function() { return /* reexport */ state_useTranslate; });\n__webpack_require__.d(__webpack_exports__, \"G\", function() { return /* reexport */ state_useTypedSelector; });\n\n// UNUSED EXPORTS: selectResults, selectResultCandidate, selectResultCandidateCells, selectTranslations, selectTranslation, selectCharacters, selectLastSolvedParameters, selectHaveCharactersChanged, selectHasBoardChanged, selectRemainingTiles, boardInitialState, dictionaryInitialState, rackInitialState, resultsInitialState, settingsInitialState, solveInitialState\n\n// CONCATENATED MODULE: ./node_modules/immer/dist/immer.esm.js\nfunction immer_esm_t(t){for(var n=arguments.length,r=Array(n>1?n-1:0),e=1;e<n;e++)r[e-1]=arguments[e];if(false){ var i, o; }throw Error(\"[Immer] minified error nr: \"+t+(r.length?\" \"+r.map((function(t){return\"'\"+t+\"'\"})).join(\",\"):\"\")+\". Find the full error at: https://bit.ly/3cXEKWf\")}function n(t){return!!t&&!!t[Q]}function r(t){return!!t&&(function(t){if(!t||\"object\"!=typeof t)return!1;var n=Object.getPrototypeOf(t);return!n||n===Object.prototype}(t)||Array.isArray(t)||!!t[L]||!!t.constructor[L]||s(t)||v(t))}function e(r){return n(r)||immer_esm_t(23,r),r[Q].t}function immer_esm_i(t,n,r){void 0===r&&(r=!1),0===o(t)?(r?Object.keys:Z)(t).forEach((function(e){r&&\"symbol\"==typeof e||n(e,t[e],t)})):t.forEach((function(r,e){return n(e,r,t)}))}function o(t){var n=t[Q];return n?n.i>3?n.i-4:n.i:Array.isArray(t)?1:s(t)?2:v(t)?3:0}function u(t,n){return 2===o(t)?t.has(n):Object.prototype.hasOwnProperty.call(t,n)}function immer_esm_a(t,n){return 2===o(t)?t.get(n):t[n]}function f(t,n,r){var e=o(t);2===e?t.set(n,r):3===e?(t.delete(n),t.add(r)):t[n]=r}function c(t,n){return t===n?0!==t||1/t==1/n:t!=t&&n!=n}function s(t){return X&&t instanceof Map}function v(t){return q&&t instanceof Set}function p(t){return t.o||t.t}function l(t){if(Array.isArray(t))return Array.prototype.slice.call(t);var n=tt(t);delete n[Q];for(var r=Z(n),e=0;e<r.length;e++){var i=r[e],o=n[i];!1===o.writable&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(n[i]={configurable:!0,writable:!0,enumerable:o.enumerable,value:t[i]})}return Object.create(Object.getPrototypeOf(t),n)}function d(t,e){return void 0===e&&(e=!1),immer_esm_y(t)||n(t)||!r(t)?t:(o(t)>1&&(t.set=t.add=t.clear=t.delete=h),Object.freeze(t),e&&immer_esm_i(t,(function(t,n){return d(n,!0)}),!0),t)}function h(){immer_esm_t(2)}function immer_esm_y(t){return null==t||\"object\"!=typeof t||Object.isFrozen(t)}function b(n){var r=nt[n];return r||immer_esm_t(18,n),r}function m(t,n){nt[t]||(nt[t]=n)}function _(){return true||false,U}function j(t,n){n&&(b(\"Patches\"),t.u=[],t.s=[],t.v=n)}function g(t){w(t),t.p.forEach(S),t.p=null}function w(t){t===U&&(U=t.l)}function O(t){return U={p:[],l:U,h:t,m:!0,_:0}}function S(t){var n=t[Q];0===n.i||1===n.i?n.j():n.g=!0}function P(n,e){e._=e.p.length;var i=e.p[0],o=void 0!==n&&n!==i;return e.h.O||b(\"ES5\").S(e,n,o),o?(i[Q].P&&(g(e),immer_esm_t(4)),r(n)&&(n=M(e,n),e.l||immer_esm_x(e,n)),e.u&&b(\"Patches\").M(i[Q],n,e.u,e.s)):n=M(e,i,[]),g(e),e.u&&e.v(e.u,e.s),n!==H?n:void 0}function M(t,n,r){if(immer_esm_y(n))return n;var e=n[Q];if(!e)return immer_esm_i(n,(function(i,o){return A(t,e,n,i,o,r)}),!0),n;if(e.A!==t)return n;if(!e.P)return immer_esm_x(t,e.t,!0),e.t;if(!e.I){e.I=!0,e.A._--;var o=4===e.i||5===e.i?e.o=l(e.k):e.o;immer_esm_i(3===e.i?new Set(o):o,(function(n,i){return A(t,e,o,n,i,r)})),immer_esm_x(t,o,!1),r&&t.u&&b(\"Patches\").R(e,r,t.u,t.s)}return e.o}function A(e,i,o,a,c,s){if( false&&false,n(c)){var v=M(e,c,s&&i&&3!==i.i&&!u(i.D,a)?s.concat(a):void 0);if(f(o,a,v),!n(v))return;e.m=!1}if(r(c)&&!immer_esm_y(c)){if(!e.h.N&&e._<1)return;M(e,c),i&&i.A.l||immer_esm_x(e,c)}}function immer_esm_x(t,n,r){void 0===r&&(r=!1),t.h.N&&t.m&&d(n,r)}function z(t,n){var r=t[Q];return(r?p(r):t)[n]}function I(t,n){if(n in t)for(var r=Object.getPrototypeOf(t);r;){var e=Object.getOwnPropertyDescriptor(r,n);if(e)return e;r=Object.getPrototypeOf(r)}}function k(t){t.P||(t.P=!0,t.l&&k(t.l))}function E(t){t.o||(t.o=l(t.t))}function R(t,n,r){var e=s(n)?b(\"MapSet\").T(n,r):v(n)?b(\"MapSet\").F(n,r):t.O?function(t,n){var r=Array.isArray(t),e={i:r?1:0,A:n?n.A:_(),P:!1,I:!1,D:{},l:n,t:t,k:null,o:null,j:null,C:!1},i=e,o=rt;r&&(i=[e],o=et);var u=Proxy.revocable(i,o),a=u.revoke,f=u.proxy;return e.k=f,e.j=a,f}(n,r):b(\"ES5\").J(n,r);return(r?r.A:_()).p.push(e),e}function D(e){return n(e)||immer_esm_t(22,e),function t(n){if(!r(n))return n;var e,u=n[Q],c=o(n);if(u){if(!u.P&&(u.i<4||!b(\"ES5\").K(u)))return u.t;u.I=!0,e=N(n,c),u.I=!1}else e=N(n,c);return immer_esm_i(e,(function(n,r){u&&immer_esm_a(u.t,n)===r||f(e,n,t(r))})),3===c?new Set(e):e}(e)}function N(t,n){switch(n){case 2:return new Map(t);case 3:return Array.from(t)}return l(t)}function T(){function r(t,n){var r=s[t];return r?r.enumerable=n:s[t]=r={configurable:!0,enumerable:n,get:function(){var n=this[Q];return false&&false,rt.get(n,t)},set:function(n){var r=this[Q]; false&&false,rt.set(r,t,n)}},r}function e(t){for(var n=t.length-1;n>=0;n--){var r=t[n][Q];if(!r.P)switch(r.i){case 5:a(r)&&k(r);break;case 4:o(r)&&k(r)}}}function o(t){for(var n=t.t,r=t.k,e=Z(r),i=e.length-1;i>=0;i--){var o=e[i];if(o!==Q){var a=n[o];if(void 0===a&&!u(n,o))return!0;var f=r[o],s=f&&f[Q];if(s?s.t!==a:!c(f,a))return!0}}var v=!!n[Q];return e.length!==Z(n).length+(v?0:1)}function a(t){var n=t.k;if(n.length!==t.t.length)return!0;var r=Object.getOwnPropertyDescriptor(n,n.length-1);return!(!r||r.get)}function f(n){n.g&&immer_esm_t(3,JSON.stringify(p(n)))}var s={};m(\"ES5\",{J:function(t,n){var e=Array.isArray(t),i=function(t,n){if(t){for(var e=Array(n.length),i=0;i<n.length;i++)Object.defineProperty(e,\"\"+i,r(i,!0));return e}var o=tt(n);delete o[Q];for(var u=Z(o),a=0;a<u.length;a++){var f=u[a];o[f]=r(f,t||!!o[f].enumerable)}return Object.create(Object.getPrototypeOf(n),o)}(e,t),o={i:e?5:4,A:n?n.A:_(),P:!1,I:!1,D:{},l:n,t:t,k:i,o:null,g:!1,C:!1};return Object.defineProperty(i,Q,{value:o,writable:!0}),i},S:function(t,r,o){o?n(r)&&r[Q].A===t&&e(t.p):(t.u&&function t(n){if(n&&\"object\"==typeof n){var r=n[Q];if(r){var e=r.t,o=r.k,f=r.D,c=r.i;if(4===c)immer_esm_i(o,(function(n){n!==Q&&(void 0!==e[n]||u(e,n)?f[n]||t(o[n]):(f[n]=!0,k(r)))})),immer_esm_i(e,(function(t){void 0!==o[t]||u(o,t)||(f[t]=!1,k(r))}));else if(5===c){if(a(r)&&(k(r),f.length=!0),o.length<e.length)for(var s=o.length;s<e.length;s++)f[s]=!1;else for(var v=e.length;v<o.length;v++)f[v]=!0;for(var p=Math.min(o.length,e.length),l=0;l<p;l++)void 0===f[l]&&t(o[l])}}}}(t.p[0]),e(t.p))},K:function(t){return 4===t.i?o(t):a(t)}})}function F(){function e(t){if(!r(t))return t;if(Array.isArray(t))return t.map(e);if(s(t))return new Map(Array.from(t.entries()).map((function(t){return[t[0],e(t[1])]})));if(v(t))return new Set(Array.from(t).map(e));var n=Object.create(Object.getPrototypeOf(t));for(var i in t)n[i]=e(t[i]);return n}function f(t){return n(t)?e(t):t}var c=\"add\";m(\"Patches\",{$:function(n,r){return r.forEach((function(r){for(var i=r.path,u=r.op,f=n,s=0;s<i.length-1;s++){var v=o(f),p=i[s];0!==v&&1!==v||\"__proto__\"!==p&&\"constructor\"!==p||immer_esm_t(24),\"function\"==typeof f&&\"prototype\"===p&&immer_esm_t(24),\"object\"!=typeof(f=immer_esm_a(f,p))&&immer_esm_t(15,i.join(\"/\"))}var l=o(f),d=e(r.value),h=i[i.length-1];switch(u){case\"replace\":switch(l){case 2:return f.set(h,d);case 3:immer_esm_t(16);default:return f[h]=d}case c:switch(l){case 1:return f.splice(h,0,d);case 2:return f.set(h,d);case 3:return f.add(d);default:return f[h]=d}case\"remove\":switch(l){case 1:return f.splice(h,1);case 2:return f.delete(h);case 3:return f.delete(r.value);default:return delete f[h]}default:immer_esm_t(17,u)}})),n},R:function(t,n,r,e){switch(t.i){case 0:case 4:case 2:return function(t,n,r,e){var o=t.t,s=t.o;immer_esm_i(t.D,(function(t,i){var v=immer_esm_a(o,t),p=immer_esm_a(s,t),l=i?u(o,t)?\"replace\":c:\"remove\";if(v!==p||\"replace\"!==l){var d=n.concat(t);r.push(\"remove\"===l?{op:l,path:d}:{op:l,path:d,value:p}),e.push(l===c?{op:\"remove\",path:d}:\"remove\"===l?{op:c,path:d,value:f(v)}:{op:\"replace\",path:d,value:f(v)})}}))}(t,n,r,e);case 5:case 1:return function(t,n,r,e){var i=t.t,o=t.D,u=t.o;if(u.length<i.length){var a=[u,i];i=a[0],u=a[1];var s=[e,r];r=s[0],e=s[1]}for(var v=0;v<i.length;v++)if(o[v]&&u[v]!==i[v]){var p=n.concat([v]);r.push({op:\"replace\",path:p,value:f(u[v])}),e.push({op:\"replace\",path:p,value:f(i[v])})}for(var l=i.length;l<u.length;l++){var d=n.concat([l]);r.push({op:c,path:d,value:f(u[l])})}i.length<u.length&&e.push({op:\"replace\",path:n.concat([\"length\"]),value:i.length})}(t,n,r,e);case 3:return function(t,n,r,e){var i=t.t,o=t.o,u=0;i.forEach((function(t){if(!o.has(t)){var i=n.concat([u]);r.push({op:\"remove\",path:i,value:t}),e.unshift({op:c,path:i,value:t})}u++})),u=0,o.forEach((function(t){if(!i.has(t)){var o=n.concat([u]);r.push({op:c,path:o,value:t}),e.unshift({op:\"remove\",path:o,value:t})}u++}))}(t,n,r,e)}},M:function(t,n,r,e){r.push({op:\"replace\",path:[],value:n}),e.push({op:\"replace\",path:[],value:t.t})}})}function C(){function n(t,n){function r(){this.constructor=t}a(t,n),t.prototype=(r.prototype=n.prototype,new r)}function e(t){t.o||(t.D=new Map,t.o=new Map(t.t))}function o(t){t.o||(t.o=new Set,t.t.forEach((function(n){if(r(n)){var e=R(t.A.h,n,t);t.p.set(n,e),t.o.add(e)}else t.o.add(n)})))}function u(n){n.g&&immer_esm_t(3,JSON.stringify(p(n)))}var a=function(t,n){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var r in n)n.hasOwnProperty(r)&&(t[r]=n[r])})(t,n)},f=function(){function t(t,n){return this[Q]={i:2,l:n,A:n?n.A:_(),P:!1,I:!1,o:void 0,D:void 0,t:t,k:this,C:!1,g:!1},this}n(t,Map);var o=t.prototype;return Object.defineProperty(o,\"size\",{get:function(){return p(this[Q]).size}}),o.has=function(t){return p(this[Q]).has(t)},o.set=function(t,n){var r=this[Q];return u(r),p(r).has(t)&&p(r).get(t)===n||(e(r),k(r),r.D.set(t,!0),r.o.set(t,n),r.D.set(t,!0)),this},o.delete=function(t){if(!this.has(t))return!1;var n=this[Q];return u(n),e(n),k(n),n.D.set(t,!1),n.o.delete(t),!0},o.clear=function(){var t=this[Q];u(t),p(t).size&&(e(t),k(t),t.D=new Map,immer_esm_i(t.t,(function(n){t.D.set(n,!1)})),t.o.clear())},o.forEach=function(t,n){var r=this;p(this[Q]).forEach((function(e,i){t.call(n,r.get(i),i,r)}))},o.get=function(t){var n=this[Q];u(n);var i=p(n).get(t);if(n.I||!r(i))return i;if(i!==n.t.get(t))return i;var o=R(n.A.h,i,n);return e(n),n.o.set(t,o),o},o.keys=function(){return p(this[Q]).keys()},o.values=function(){var t,n=this,r=this.keys();return(t={})[V]=function(){return n.values()},t.next=function(){var t=r.next();return t.done?t:{done:!1,value:n.get(t.value)}},t},o.entries=function(){var t,n=this,r=this.keys();return(t={})[V]=function(){return n.entries()},t.next=function(){var t=r.next();if(t.done)return t;var e=n.get(t.value);return{done:!1,value:[t.value,e]}},t},o[V]=function(){return this.entries()},t}(),c=function(){function t(t,n){return this[Q]={i:3,l:n,A:n?n.A:_(),P:!1,I:!1,o:void 0,t:t,k:this,p:new Map,g:!1,C:!1},this}n(t,Set);var r=t.prototype;return Object.defineProperty(r,\"size\",{get:function(){return p(this[Q]).size}}),r.has=function(t){var n=this[Q];return u(n),n.o?!!n.o.has(t)||!(!n.p.has(t)||!n.o.has(n.p.get(t))):n.t.has(t)},r.add=function(t){var n=this[Q];return u(n),this.has(t)||(o(n),k(n),n.o.add(t)),this},r.delete=function(t){if(!this.has(t))return!1;var n=this[Q];return u(n),o(n),k(n),n.o.delete(t)||!!n.p.has(t)&&n.o.delete(n.p.get(t))},r.clear=function(){var t=this[Q];u(t),p(t).size&&(o(t),k(t),t.o.clear())},r.values=function(){var t=this[Q];return u(t),o(t),t.o.values()},r.entries=function(){var t=this[Q];return u(t),o(t),t.o.entries()},r.keys=function(){return this.values()},r[V]=function(){return this.values()},r.forEach=function(t,n){for(var r=this.values(),e=r.next();!e.done;)t.call(n,e.value,e.value,this),e=r.next()},t}();m(\"MapSet\",{T:function(t,n){return new f(t,n)},F:function(t,n){return new c(t,n)}})}function J(){T(),C(),F()}function K(t){return t}function $(t){return t}var G,U,W=\"undefined\"!=typeof Symbol&&\"symbol\"==typeof Symbol(\"x\"),X=\"undefined\"!=typeof Map,q=\"undefined\"!=typeof Set,B=\"undefined\"!=typeof Proxy&&void 0!==Proxy.revocable&&\"undefined\"!=typeof Reflect,H=W?Symbol.for(\"immer-nothing\"):((G={})[\"immer-nothing\"]=!0,G),L=W?Symbol.for(\"immer-draftable\"):\"__$immer_draftable\",Q=W?Symbol.for(\"immer-state\"):\"__$immer_state\",V=\"undefined\"!=typeof Symbol&&Symbol.iterator||\"@@iterator\",Y={0:\"Illegal state\",1:\"Immer drafts cannot have computed properties\",2:\"This object has been frozen and should not be mutated\",3:function(t){return\"Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? \"+t},4:\"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.\",5:\"Immer forbids circular references\",6:\"The first or second argument to `produce` must be a function\",7:\"The third argument to `produce` must be a function or undefined\",8:\"First argument to `createDraft` must be a plain object, an array, or an immerable object\",9:\"First argument to `finishDraft` must be a draft returned by `createDraft`\",10:\"The given draft is already finalized\",11:\"Object.defineProperty() cannot be used on an Immer draft\",12:\"Object.setPrototypeOf() cannot be used on an Immer draft\",13:\"Immer only supports deleting array indices\",14:\"Immer only supports setting array indices and the 'length' property\",15:function(t){return\"Cannot apply patch, path doesn't resolve: \"+t},16:'Sets cannot have \"replace\" patches.',17:function(t){return\"Unsupported patch operation: \"+t},18:function(t){return\"The plugin for '\"+t+\"' has not been loaded into Immer. To enable the plugin, import and call `enable\"+t+\"()` when initializing your application.\"},20:\"Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available\",21:function(t){return\"produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '\"+t+\"'\"},22:function(t){return\"'current' expects a draft, got: \"+t},23:function(t){return\"'original' expects a draft, got: \"+t},24:\"Patching reserved attributes like __proto__, prototype and constructor is not allowed\"},Z=\"undefined\"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:Object.getOwnPropertyNames,tt=Object.getOwnPropertyDescriptors||function(t){var n={};return Z(t).forEach((function(r){n[r]=Object.getOwnPropertyDescriptor(t,r)})),n},nt={},rt={get:function(t,n){if(n===Q)return t;var e=p(t);if(!u(e,n))return function(t,n,r){var e,i=I(n,r);return i?\"value\"in i?i.value:null===(e=i.get)||void 0===e?void 0:e.call(t.k):void 0}(t,e,n);var i=e[n];return t.I||!r(i)?i:i===z(t.t,n)?(E(t),t.o[n]=R(t.A.h,i,t)):i},has:function(t,n){return n in p(t)},ownKeys:function(t){return Reflect.ownKeys(p(t))},set:function(t,n,r){var e=I(p(t),n);if(null==e?void 0:e.set)return e.set.call(t.k,r),!0;if(!t.P){var i=z(p(t),n),o=null==i?void 0:i[Q];if(o&&o.t===r)return t.o[n]=r,t.D[n]=!1,!0;if(c(r,i)&&(void 0!==r||u(t.t,n)))return!0;E(t),k(t)}return t.o[n]=r,t.D[n]=!0,!0},deleteProperty:function(t,n){return void 0!==z(t.t,n)||n in t.t?(t.D[n]=!1,E(t),k(t)):delete t.D[n],t.o&&delete t.o[n],!0},getOwnPropertyDescriptor:function(t,n){var r=p(t),e=Reflect.getOwnPropertyDescriptor(r,n);return e?{writable:!0,configurable:1!==t.i||\"length\"!==n,enumerable:e.enumerable,value:r[n]}:e},defineProperty:function(){immer_esm_t(11)},getPrototypeOf:function(t){return Object.getPrototypeOf(t.t)},setPrototypeOf:function(){immer_esm_t(12)}},et={};immer_esm_i(rt,(function(t,n){et[t]=function(){return arguments[0]=arguments[0][0],n.apply(this,arguments)}})),et.deleteProperty=function(n,r){return false&&false,rt.deleteProperty.call(this,n[0],r)},et.set=function(n,r,e){return false&&false,rt.set.call(this,n[0],r,e,n[0])};var it=function(){function e(t){this.O=B,this.N=!0,\"boolean\"==typeof(null==t?void 0:t.useProxies)&&this.setUseProxies(t.useProxies),\"boolean\"==typeof(null==t?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),this.produce=this.produce.bind(this),this.produceWithPatches=this.produceWithPatches.bind(this)}var i=e.prototype;return i.produce=function(n,e,i){if(\"function\"==typeof n&&\"function\"!=typeof e){var o=e;e=n;var u=this;return function(t){var n=this;void 0===t&&(t=o);for(var r=arguments.length,i=Array(r>1?r-1:0),a=1;a<r;a++)i[a-1]=arguments[a];return u.produce(t,(function(t){var r;return(r=e).call.apply(r,[n,t].concat(i))}))}}var a;if(\"function\"!=typeof e&&immer_esm_t(6),void 0!==i&&\"function\"!=typeof i&&immer_esm_t(7),r(n)){var f=O(this),c=R(this,n,void 0),s=!0;try{a=e(c),s=!1}finally{s?g(f):w(f)}return\"undefined\"!=typeof Promise&&a instanceof Promise?a.then((function(t){return j(f,i),P(t,f)}),(function(t){throw g(f),t})):(j(f,i),P(a,f))}if(!n||\"object\"!=typeof n){if((a=e(n))===H)return;return void 0===a&&(a=n),this.N&&d(a,!0),a}immer_esm_t(21,n)},i.produceWithPatches=function(t,n){var r,e,i=this;return\"function\"==typeof t?function(n){for(var r=arguments.length,e=Array(r>1?r-1:0),o=1;o<r;o++)e[o-1]=arguments[o];return i.produceWithPatches(n,(function(n){return t.apply(void 0,[n].concat(e))}))}:[this.produce(t,n,(function(t,n){r=t,e=n})),r,e]},i.createDraft=function(e){r(e)||immer_esm_t(8),n(e)&&(e=D(e));var i=O(this),o=R(this,e,void 0);return o[Q].C=!0,w(i),o},i.finishDraft=function(n,r){var e=n&&n[Q]; false&&(false);var i=e.A;return j(i,r),P(void 0,i)},i.setAutoFreeze=function(t){this.N=t},i.setUseProxies=function(n){n&&!B&&immer_esm_t(20),this.O=n},i.applyPatches=function(t,r){var e;for(e=r.length-1;e>=0;e--){var i=r[e];if(0===i.path.length&&\"replace\"===i.op){t=i.value;break}}var o=b(\"Patches\").$;return n(t)?o(t,r):this.produce(t,(function(t){return o(t,r.slice(e+1))}))},e}(),ot=new it,ut=ot.produce,at=ot.produceWithPatches.bind(ot),ft=ot.setAutoFreeze.bind(ot),ct=ot.setUseProxies.bind(ot),st=ot.applyPatches.bind(ot),vt=ot.createDraft.bind(ot),pt=ot.finishDraft.bind(ot);/* harmony default export */ var immer_esm = (ut);\n//# sourceMappingURL=immer.esm.js.map\n\n// EXTERNAL MODULE: ./node_modules/redux/es/redux.js\nvar redux = __webpack_require__(\"ANjH\");\n\n// CONCATENATED MODULE: ./node_modules/reselect/es/index.js\nfunction defaultEqualityCheck(a, b) {\n return a === b;\n}\n\nfunction areArgumentsShallowlyEqual(equalityCheck, prev, next) {\n if (prev === null || next === null || prev.length !== next.length) {\n return false;\n }\n\n // Do this in a for loop (and not a `forEach` or an `every`) so we can determine equality as fast as possible.\n var length = prev.length;\n for (var i = 0; i < length; i++) {\n if (!equalityCheck(prev[i], next[i])) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction defaultMemoize(func) {\n var equalityCheck = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultEqualityCheck;\n\n var lastArgs = null;\n var lastResult = null;\n // we reference arguments instead of spreading them for performance reasons\n return function () {\n if (!areArgumentsShallowlyEqual(equalityCheck, lastArgs, arguments)) {\n // apply arguments instead of spreading for performance.\n lastResult = func.apply(null, arguments);\n }\n\n lastArgs = arguments;\n return lastResult;\n };\n}\n\nfunction getDependencies(funcs) {\n var dependencies = Array.isArray(funcs[0]) ? funcs[0] : funcs;\n\n if (!dependencies.every(function (dep) {\n return typeof dep === 'function';\n })) {\n var dependencyTypes = dependencies.map(function (dep) {\n return typeof dep;\n }).join(', ');\n throw new Error('Selector creators expect all input-selectors to be functions, ' + ('instead received the following types: [' + dependencyTypes + ']'));\n }\n\n return dependencies;\n}\n\nfunction createSelectorCreator(memoize) {\n for (var _len = arguments.length, memoizeOptions = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n memoizeOptions[_key - 1] = arguments[_key];\n }\n\n return function () {\n for (var _len2 = arguments.length, funcs = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n funcs[_key2] = arguments[_key2];\n }\n\n var recomputations = 0;\n var resultFunc = funcs.pop();\n var dependencies = getDependencies(funcs);\n\n var memoizedResultFunc = memoize.apply(undefined, [function () {\n recomputations++;\n // apply arguments instead of spreading for performance.\n return resultFunc.apply(null, arguments);\n }].concat(memoizeOptions));\n\n // If a selector is called with the exact same arguments we don't need to traverse our dependencies again.\n var selector = memoize(function () {\n var params = [];\n var length = dependencies.length;\n\n for (var i = 0; i < length; i++) {\n // apply arguments instead of spreading and mutate a local list of params for performance.\n params.push(dependencies[i].apply(null, arguments));\n }\n\n // apply arguments instead of spreading for performance.\n return memoizedResultFunc.apply(null, params);\n });\n\n selector.resultFunc = resultFunc;\n selector.dependencies = dependencies;\n selector.recomputations = function () {\n return recomputations;\n };\n selector.resetRecomputations = function () {\n return recomputations = 0;\n };\n return selector;\n };\n}\n\nvar createSelector = createSelectorCreator(defaultMemoize);\n\nfunction createStructuredSelector(selectors) {\n var selectorCreator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : createSelector;\n\n if (typeof selectors !== 'object') {\n throw new Error('createStructuredSelector expects first argument to be an object ' + ('where each property is a selector, instead received a ' + typeof selectors));\n }\n var objectKeys = Object.keys(selectors);\n return selectorCreator(objectKeys.map(function (key) {\n return selectors[key];\n }), function () {\n for (var _len3 = arguments.length, values = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n values[_key3] = arguments[_key3];\n }\n\n return values.reduce(function (composition, value, index) {\n composition[objectKeys[index]] = value;\n return composition;\n }, {});\n });\n}\n// CONCATENATED MODULE: ./node_modules/redux-thunk/es/index.js\nfunction createThunkMiddleware(extraArgument) {\n return function (_ref) {\n var dispatch = _ref.dispatch,\n getState = _ref.getState;\n return function (next) {\n return function (action) {\n if (typeof action === 'function') {\n return action(dispatch, getState, extraArgument);\n }\n\n return next(action);\n };\n };\n };\n}\n\nvar es_thunk = createThunkMiddleware();\nes_thunk.withExtraArgument = createThunkMiddleware;\n\n/* harmony default export */ var es = (es_thunk);\n// CONCATENATED MODULE: ./node_modules/@reduxjs/toolkit/dist/redux-toolkit.esm.js\n\n\n\n\n\n\n\n\n/**\r\n * \"Draft-Safe\" version of `reselect`'s `createSelector`:\r\n * If an `immer`-drafted object is passed into the resulting selector's first argument,\r\n * the selector will act on the current draft value, instead of returning a cached value\r\n * that might be possibly outdated if the draft has been modified since.\r\n * @public\r\n */\n\nvar redux_toolkit_esm_createDraftSafeSelector = function createDraftSafeSelector() {\n var selector = createSelector.apply(void 0, arguments);\n\n var wrappedSelector = function wrappedSelector(value) {\n for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n rest[_key - 1] = arguments[_key];\n }\n\n return selector.apply(void 0, [n(value) ? D(value) : value].concat(rest));\n };\n\n return wrappedSelector;\n};\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n _construct = Reflect.construct;\n } else {\n _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) _setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n\n return _construct.apply(null, arguments);\n}\n\nfunction _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\n\nfunction _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !_isNativeFunction(Class)) return Class;\n\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n\n _cache.set(Class, Wrapper);\n }\n\n function Wrapper() {\n return _construct(Class, arguments, _getPrototypeOf(this).constructor);\n }\n\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return _setPrototypeOf(Wrapper, Class);\n };\n\n return _wrapNativeSuper(Class);\n}\n\n/**\r\n * @public\r\n */\n\nvar composeWithDevTools = typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ : function () {\n if (arguments.length === 0) return undefined;\n if (typeof arguments[0] === 'object') return redux[\"d\" /* compose */];\n return redux[\"d\" /* compose */].apply(null, arguments);\n};\n\n/**\r\n * Returns true if the passed value is \"plain\" object, i.e. an object whose\r\n * protoype is the root `Object.prototype`. This includes objects created\r\n * using object literals, but not for instance for class instances.\r\n *\r\n * @param {any} value The value to inspect.\r\n * @returns {boolean} True if the argument appears to be a plain object.\r\n *\r\n * @public\r\n */\nfunction isPlainObject(value) {\n if (typeof value !== 'object' || value === null) return false;\n var proto = value;\n\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n\n return Object.getPrototypeOf(value) === proto;\n}\n\nfunction getTimeMeasureUtils(maxDelay, fnName) {\n var elapsed = 0;\n return {\n measureTime: function measureTime(fn) {\n var started = Date.now();\n\n try {\n return fn();\n } finally {\n var finished = Date.now();\n elapsed += finished - started;\n }\n },\n warnIfExceeded: function warnIfExceeded() {\n if (elapsed > maxDelay) {\n console.warn(fnName + \" took \" + elapsed + \"ms, which is more than the warning threshold of \" + maxDelay + \"ms. \\nIf your state or actions are very large, you may want to disable the middleware as it might cause too much of a slowdown in development mode. See https://redux-toolkit.js.org/api/getDefaultMiddleware for instructions.\\nIt is disabled in production builds, so you don't need to worry about that.\");\n }\n }\n };\n}\n/**\r\n * @public\r\n */\n\nvar MiddlewareArray =\n/*#__PURE__*/\nfunction (_Array) {\n _inheritsLoose(MiddlewareArray, _Array);\n\n function MiddlewareArray() {\n return _Array.apply(this, arguments) || this;\n }\n\n var _proto = MiddlewareArray.prototype;\n\n _proto.concat = function concat() {\n var _Array$prototype$conc;\n\n for (var _len = arguments.length, arr = new Array(_len), _key = 0; _key < _len; _key++) {\n arr[_key] = arguments[_key];\n }\n\n return _construct(MiddlewareArray, (_Array$prototype$conc = _Array.prototype.concat).call.apply(_Array$prototype$conc, [this].concat(arr)));\n };\n\n _proto.prepend = function prepend() {\n for (var _len2 = arguments.length, arr = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n arr[_key2] = arguments[_key2];\n }\n\n if (arr.length === 1 && Array.isArray(arr[0])) {\n return _construct(MiddlewareArray, arr[0].concat(this));\n }\n\n return _construct(MiddlewareArray, arr.concat(this));\n };\n\n return MiddlewareArray;\n}(\n/*#__PURE__*/\n_wrapNativeSuper(Array));\n\nvar isProduction = \"production\" === 'production';\nvar prefix = 'Invariant failed'; // Throw an error if the condition fails\n// Strip out error messages for production\n// > Not providing an inline default argument for message as the result is smaller\n\nfunction invariant(condition, message) {\n if (condition) {\n return;\n } // Condition not passed\n // In production we strip the message but still throw\n\n\n if (isProduction) {\n throw new Error(prefix);\n } // When not in production we allow the message to pass through\n // *This block will be removed in production builds*\n\n\n throw new Error(prefix + \": \" + (message || ''));\n}\n\nfunction stringify(obj, serializer, indent, decycler) {\n return JSON.stringify(obj, getSerialize(serializer, decycler), indent);\n}\n\nfunction getSerialize(serializer, decycler) {\n var stack = [],\n keys = [];\n if (!decycler) decycler = function decycler(_, value) {\n if (stack[0] === value) return '[Circular ~]';\n return '[Circular ~.' + keys.slice(0, stack.indexOf(value)).join('.') + ']';\n };\n return function (key, value) {\n if (stack.length > 0) {\n var thisPos = stack.indexOf(this);\n ~thisPos ? stack.splice(thisPos + 1) : stack.push(this);\n ~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key);\n if (~stack.indexOf(value)) value = decycler.call(this, key, value);\n } else stack.push(value);\n\n return serializer == null ? value : serializer.call(this, key, value);\n };\n}\n/**\r\n * The default `isImmutable` function.\r\n *\r\n * @public\r\n */\n\n\nfunction isImmutableDefault(value) {\n return typeof value !== 'object' || value === null || typeof value === 'undefined';\n}\nfunction trackForMutations(isImmutable, ignorePaths, obj) {\n var trackedProperties = trackProperties(isImmutable, ignorePaths, obj);\n return {\n detectMutations: function detectMutations() {\n return _detectMutations(isImmutable, ignorePaths, trackedProperties, obj);\n }\n };\n}\n\nfunction trackProperties(isImmutable, ignorePaths, obj, path) {\n if (ignorePaths === void 0) {\n ignorePaths = [];\n }\n\n if (path === void 0) {\n path = [];\n }\n\n var tracked = {\n value: obj\n };\n\n if (!isImmutable(obj)) {\n tracked.children = {};\n\n for (var key in obj) {\n var childPath = path.concat(key);\n\n if (ignorePaths.length && ignorePaths.indexOf(childPath.join('.')) !== -1) {\n continue;\n }\n\n tracked.children[key] = trackProperties(isImmutable, ignorePaths, obj[key], childPath);\n }\n }\n\n return tracked;\n}\n\nfunction _detectMutations(isImmutable, ignorePaths, trackedProperty, obj, sameParentRef, path) {\n if (ignorePaths === void 0) {\n ignorePaths = [];\n }\n\n if (sameParentRef === void 0) {\n sameParentRef = false;\n }\n\n if (path === void 0) {\n path = [];\n }\n\n var prevObj = trackedProperty ? trackedProperty.value : undefined;\n var sameRef = prevObj === obj;\n\n if (sameParentRef && !sameRef && !Number.isNaN(obj)) {\n return {\n wasMutated: true,\n path: path\n };\n }\n\n if (isImmutable(prevObj) || isImmutable(obj)) {\n return {\n wasMutated: false\n };\n } // Gather all keys from prev (tracked) and after objs\n\n\n var keysToDetect = {};\n Object.keys(trackedProperty.children).forEach(function (key) {\n keysToDetect[key] = true;\n });\n Object.keys(obj).forEach(function (key) {\n keysToDetect[key] = true;\n });\n var keys = Object.keys(keysToDetect);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var childPath = path.concat(key);\n\n if (ignorePaths.length && ignorePaths.indexOf(childPath.join('.')) !== -1) {\n continue;\n }\n\n var result = _detectMutations(isImmutable, ignorePaths, trackedProperty.children[key], obj[key], sameRef, childPath);\n\n if (result.wasMutated) {\n return result;\n }\n }\n\n return {\n wasMutated: false\n };\n}\n/**\r\n * Creates a middleware that checks whether any state was mutated in between\r\n * dispatches or during a dispatch. If any mutations are detected, an error is\r\n * thrown.\r\n *\r\n * @param options Middleware options.\r\n *\r\n * @public\r\n */\n\n\nfunction createImmutableStateInvariantMiddleware(options) {\n if (options === void 0) {\n options = {};\n }\n\n if (true) {\n return function () {\n return function (next) {\n return function (action) {\n return next(action);\n };\n };\n };\n }\n\n var _options = options,\n _options$isImmutable = _options.isImmutable,\n isImmutable = _options$isImmutable === void 0 ? isImmutableDefault : _options$isImmutable,\n ignoredPaths = _options.ignoredPaths,\n _options$warnAfter = _options.warnAfter,\n warnAfter = _options$warnAfter === void 0 ? 32 : _options$warnAfter,\n ignore = _options.ignore; // Alias ignore->ignoredPaths, but prefer ignoredPaths if present\n\n ignoredPaths = ignoredPaths || ignore;\n var track = trackForMutations.bind(null, isImmutable, ignoredPaths);\n return function (_ref) {\n var getState = _ref.getState;\n var state = getState();\n var tracker = track(state);\n var result;\n return function (next) {\n return function (action) {\n var measureUtils = getTimeMeasureUtils(warnAfter, 'ImmutableStateInvariantMiddleware');\n measureUtils.measureTime(function () {\n state = getState();\n result = tracker.detectMutations(); // Track before potentially not meeting the invariant\n\n tracker = track(state);\n !!result.wasMutated ? false ? undefined : invariant(false) : void 0;\n });\n var dispatchedAction = next(action);\n measureUtils.measureTime(function () {\n state = getState();\n result = tracker.detectMutations(); // Track before potentially not meeting the invariant\n\n tracker = track(state);\n result.wasMutated && (!!result.wasMutated ? false ? undefined : invariant(false) : void 0);\n });\n measureUtils.warnIfExceeded();\n return dispatchedAction;\n };\n };\n };\n}\n\n/**\r\n * Returns true if the passed value is \"plain\", i.e. a value that is either\r\n * directly JSON-serializable (boolean, number, string, array, plain object)\r\n * or `undefined`.\r\n *\r\n * @param val The value to check.\r\n *\r\n * @public\r\n */\n\nfunction isPlain(val) {\n return typeof val === 'undefined' || val === null || typeof val === 'string' || typeof val === 'boolean' || typeof val === 'number' || Array.isArray(val) || isPlainObject(val);\n}\n/**\r\n * @public\r\n */\n\nfunction findNonSerializableValue(value, path, isSerializable, getEntries, ignoredPaths) {\n if (path === void 0) {\n path = [];\n }\n\n if (isSerializable === void 0) {\n isSerializable = isPlain;\n }\n\n if (ignoredPaths === void 0) {\n ignoredPaths = [];\n }\n\n var foundNestedSerializable;\n\n if (!isSerializable(value)) {\n return {\n keyPath: path.join('.') || '<root>',\n value: value\n };\n }\n\n if (typeof value !== 'object' || value === null) {\n return false;\n }\n\n var entries = getEntries != null ? getEntries(value) : Object.entries(value);\n var hasIgnoredPaths = ignoredPaths.length > 0;\n\n for (var _iterator = entries, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n var _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[_i++];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n var _ref2 = _ref,\n property = _ref2[0],\n nestedValue = _ref2[1];\n var nestedPath = path.concat(property);\n\n if (hasIgnoredPaths && ignoredPaths.indexOf(nestedPath.join('.')) >= 0) {\n continue;\n }\n\n if (!isSerializable(nestedValue)) {\n return {\n keyPath: nestedPath.join('.'),\n value: nestedValue\n };\n }\n\n if (typeof nestedValue === 'object') {\n foundNestedSerializable = findNonSerializableValue(nestedValue, nestedPath, isSerializable, getEntries, ignoredPaths);\n\n if (foundNestedSerializable) {\n return foundNestedSerializable;\n }\n }\n }\n\n return false;\n}\n/**\r\n * Creates a middleware that, after every state change, checks if the new\r\n * state is serializable. If a non-serializable value is found within the\r\n * state, an error is printed to the console.\r\n *\r\n * @param options Middleware options.\r\n *\r\n * @public\r\n */\n\nfunction createSerializableStateInvariantMiddleware(options) {\n if (options === void 0) {\n options = {};\n }\n\n if (true) {\n return function () {\n return function (next) {\n return function (action) {\n return next(action);\n };\n };\n };\n }\n\n var _options = options,\n _options$isSerializab = _options.isSerializable,\n isSerializable = _options$isSerializab === void 0 ? isPlain : _options$isSerializab,\n getEntries = _options.getEntries,\n _options$ignoredActio = _options.ignoredActions,\n ignoredActions = _options$ignoredActio === void 0 ? [] : _options$ignoredActio,\n _options$ignoredActio2 = _options.ignoredActionPaths,\n ignoredActionPaths = _options$ignoredActio2 === void 0 ? ['meta.arg'] : _options$ignoredActio2,\n _options$ignoredPaths = _options.ignoredPaths,\n ignoredPaths = _options$ignoredPaths === void 0 ? [] : _options$ignoredPaths,\n _options$warnAfter = _options.warnAfter,\n warnAfter = _options$warnAfter === void 0 ? 32 : _options$warnAfter;\n return function (storeAPI) {\n return function (next) {\n return function (action) {\n if (ignoredActions.length && ignoredActions.indexOf(action.type) !== -1) {\n return next(action);\n }\n\n var measureUtils = getTimeMeasureUtils(warnAfter, 'SerializableStateInvariantMiddleware');\n measureUtils.measureTime(function () {\n var foundActionNonSerializableValue = findNonSerializableValue(action, [], isSerializable, getEntries, ignoredActionPaths);\n\n if (foundActionNonSerializableValue) {\n var keyPath = foundActionNonSerializableValue.keyPath,\n value = foundActionNonSerializableValue.value;\n console.error(\"A non-serializable value was detected in an action, in the path: `\" + keyPath + \"`. Value:\", value, '\\nTake a look at the logic that dispatched this action: ', action, '\\n(See https://redux.js.org/faq/actions#why-should-type-be-a-string-or-at-least-serializable-why-should-my-action-types-be-constants)', '\\n(To allow non-serializable values see: https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data)');\n }\n });\n var result = next(action);\n measureUtils.measureTime(function () {\n var state = storeAPI.getState();\n var foundStateNonSerializableValue = findNonSerializableValue(state, [], isSerializable, getEntries, ignoredPaths);\n\n if (foundStateNonSerializableValue) {\n var keyPath = foundStateNonSerializableValue.keyPath,\n value = foundStateNonSerializableValue.value;\n console.error(\"A non-serializable value was detected in the state, in the path: `\" + keyPath + \"`. Value:\", value, \"\\nTake a look at the reducer(s) handling this action type: \" + action.type + \".\\n(See https://redux.js.org/faq/organizing-state#can-i-put-functions-promises-or-other-non-serializable-items-in-my-store-state)\");\n }\n });\n measureUtils.warnIfExceeded();\n return result;\n };\n };\n };\n}\n\nfunction isBoolean(x) {\n return typeof x === 'boolean';\n}\n\nfunction curryGetDefaultMiddleware() {\n return function curriedGetDefaultMiddleware(options) {\n return getDefaultMiddleware(options);\n };\n}\n/**\r\n * Returns any array containing the default middleware installed by\r\n * `configureStore()`. Useful if you want to configure your store with a custom\r\n * `middleware` array but still keep the default set.\r\n *\r\n * @return The default middleware used by `configureStore()`.\r\n *\r\n * @public\r\n */\n\nfunction getDefaultMiddleware(options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$thunk = _options.thunk,\n thunk = _options$thunk === void 0 ? true : _options$thunk,\n _options$immutableChe = _options.immutableCheck,\n immutableCheck = _options$immutableChe === void 0 ? true : _options$immutableChe,\n _options$serializable = _options.serializableCheck,\n serializableCheck = _options$serializable === void 0 ? true : _options$serializable;\n var middlewareArray = new MiddlewareArray();\n\n if (thunk) {\n if (isBoolean(thunk)) {\n middlewareArray.push(es);\n } else {\n middlewareArray.push(es.withExtraArgument(thunk.extraArgument));\n }\n }\n\n if (false) { var serializableOptions, immutableOptions; }\n\n return middlewareArray;\n}\n\nvar IS_PRODUCTION = \"production\" === 'production';\n/**\r\n * A friendly abstraction over the standard Redux `createStore()` function.\r\n *\r\n * @param config The store configuration.\r\n * @returns A configured Redux store.\r\n *\r\n * @public\r\n */\n\nfunction configureStore(options) {\n var curriedGetDefaultMiddleware = curryGetDefaultMiddleware();\n\n var _ref = options || {},\n _ref$reducer = _ref.reducer,\n reducer = _ref$reducer === void 0 ? undefined : _ref$reducer,\n _ref$middleware = _ref.middleware,\n middleware = _ref$middleware === void 0 ? curriedGetDefaultMiddleware() : _ref$middleware,\n _ref$devTools = _ref.devTools,\n devTools = _ref$devTools === void 0 ? true : _ref$devTools,\n _ref$preloadedState = _ref.preloadedState,\n preloadedState = _ref$preloadedState === void 0 ? undefined : _ref$preloadedState,\n _ref$enhancers = _ref.enhancers,\n enhancers = _ref$enhancers === void 0 ? undefined : _ref$enhancers;\n\n var rootReducer;\n\n if (typeof reducer === 'function') {\n rootReducer = reducer;\n } else if (isPlainObject(reducer)) {\n rootReducer = Object(redux[\"c\" /* combineReducers */])(reducer);\n } else {\n throw new Error('\"reducer\" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');\n }\n\n var middlewareEnhancer = redux[\"a\" /* applyMiddleware */].apply(void 0, typeof middleware === 'function' ? middleware(curriedGetDefaultMiddleware) : middleware);\n var finalCompose = redux[\"d\" /* compose */];\n\n if (devTools) {\n finalCompose = composeWithDevTools(_extends({\n // Enable capture of stack traces for dispatched Redux actions\n trace: !IS_PRODUCTION\n }, typeof devTools === 'object' && devTools));\n }\n\n var storeEnhancers = [middlewareEnhancer];\n\n if (Array.isArray(enhancers)) {\n storeEnhancers = [middlewareEnhancer].concat(enhancers);\n } else if (typeof enhancers === 'function') {\n storeEnhancers = enhancers(storeEnhancers);\n }\n\n var composedEnhancer = finalCompose.apply(void 0, storeEnhancers);\n return Object(redux[\"e\" /* createStore */])(rootReducer, preloadedState, composedEnhancer);\n}\n\nfunction createAction(type, prepareAction) {\n function actionCreator() {\n if (prepareAction) {\n var prepared = prepareAction.apply(void 0, arguments);\n\n if (!prepared) {\n throw new Error('prepareAction did not return an object');\n }\n\n return _extends({\n type: type,\n payload: prepared.payload\n }, 'meta' in prepared && {\n meta: prepared.meta\n }, {}, 'error' in prepared && {\n error: prepared.error\n });\n }\n\n return {\n type: type,\n payload: arguments.length <= 0 ? undefined : arguments[0]\n };\n }\n\n actionCreator.toString = function () {\n return \"\" + type;\n };\n\n actionCreator.type = type;\n\n actionCreator.match = function (action) {\n return action.type === type;\n };\n\n return actionCreator;\n}\nfunction isFSA(action) {\n return isPlainObject(action) && typeof action.type === 'string' && Object.keys(action).every(isValidKey);\n}\n\nfunction isValidKey(key) {\n return ['type', 'payload', 'error', 'meta'].indexOf(key) > -1;\n}\n/**\r\n * Returns the action type of the actions created by the passed\r\n * `createAction()`-generated action creator (arbitrary action creators\r\n * are not supported).\r\n *\r\n * @param action The action creator whose action type to get.\r\n * @returns The action type used by the action creator.\r\n *\r\n * @public\r\n */\n\n\nfunction getType(actionCreator) {\n return \"\" + actionCreator;\n}\n\nfunction executeReducerBuilderCallback(builderCallback) {\n var actionsMap = {};\n var actionMatchers = [];\n var defaultCaseReducer;\n var builder = {\n addCase: function addCase(typeOrActionCreator, reducer) {\n if (false) {}\n\n var type = typeof typeOrActionCreator === 'string' ? typeOrActionCreator : typeOrActionCreator.type;\n\n if (type in actionsMap) {\n throw new Error('addCase cannot be called with two reducers for the same action type');\n }\n\n actionsMap[type] = reducer;\n return builder;\n },\n addMatcher: function addMatcher(matcher, reducer) {\n if (false) {}\n\n actionMatchers.push({\n matcher: matcher,\n reducer: reducer\n });\n return builder;\n },\n addDefaultCase: function addDefaultCase(reducer) {\n if (false) {}\n\n defaultCaseReducer = reducer;\n return builder;\n }\n };\n builderCallback(builder);\n return [actionsMap, actionMatchers, defaultCaseReducer];\n}\n\nfunction createReducer(initialState, mapOrBuilderCallback, actionMatchers, defaultCaseReducer) {\n if (actionMatchers === void 0) {\n actionMatchers = [];\n }\n\n var _ref = typeof mapOrBuilderCallback === 'function' ? executeReducerBuilderCallback(mapOrBuilderCallback) : [mapOrBuilderCallback, actionMatchers, defaultCaseReducer],\n actionsMap = _ref[0],\n finalActionMatchers = _ref[1],\n finalDefaultCaseReducer = _ref[2];\n\n return function (state, action) {\n if (state === void 0) {\n state = initialState;\n }\n\n var caseReducers = [actionsMap[action.type]].concat(finalActionMatchers.filter(function (_ref2) {\n var matcher = _ref2.matcher;\n return matcher(action);\n }).map(function (_ref3) {\n var reducer = _ref3.reducer;\n return reducer;\n }));\n\n if (caseReducers.filter(function (cr) {\n return !!cr;\n }).length === 0) {\n caseReducers = [finalDefaultCaseReducer];\n }\n\n return caseReducers.reduce(function (previousState, caseReducer) {\n if (caseReducer) {\n if (n(previousState)) {\n // If it's already a draft, we must already be inside a `createNextState` call,\n // likely because this is being wrapped in `createReducer`, `createSlice`, or nested\n // inside an existing draft. It's safe to just pass the draft to the mutator.\n var draft = previousState; // We can assume this is already a draft\n\n var result = caseReducer(draft, action);\n\n if (typeof result === 'undefined') {\n return previousState;\n }\n\n return result;\n } else if (!r(previousState)) {\n // If state is not draftable (ex: a primitive, such as 0), we want to directly\n // return the caseReducer func and not wrap it with produce.\n var _result = caseReducer(previousState, action);\n\n if (typeof _result === 'undefined') {\n if (previousState === null) {\n return previousState;\n }\n\n throw Error('A case reducer on a non-draftable value must not return undefined');\n }\n\n return _result;\n } else {\n // @ts-ignore createNextState() produces an Immutable<Draft<S>> rather\n // than an Immutable<S>, and TypeScript cannot find out how to reconcile\n // these two types.\n return immer_esm(previousState, function (draft) {\n return caseReducer(draft, action);\n });\n }\n }\n\n return previousState;\n }, state);\n };\n}\n\nfunction getType$1(slice, actionKey) {\n return slice + \"/\" + actionKey;\n}\n/**\r\n * A function that accepts an initial state, an object full of reducer\r\n * functions, and a \"slice name\", and automatically generates\r\n * action creators and action types that correspond to the\r\n * reducers and state.\r\n *\r\n * The `reducer` argument is passed to `createReducer()`.\r\n *\r\n * @public\r\n */\n\n\nfunction createSlice(options) {\n var name = options.name,\n initialState = options.initialState;\n\n if (!name) {\n throw new Error('`name` is a required option for createSlice');\n }\n\n var reducers = options.reducers || {};\n\n var _ref = typeof options.extraReducers === 'undefined' ? [] : typeof options.extraReducers === 'function' ? executeReducerBuilderCallback(options.extraReducers) : [options.extraReducers],\n _ref$ = _ref[0],\n extraReducers = _ref$ === void 0 ? {} : _ref$,\n _ref$2 = _ref[1],\n actionMatchers = _ref$2 === void 0 ? [] : _ref$2,\n _ref$3 = _ref[2],\n defaultCaseReducer = _ref$3 === void 0 ? undefined : _ref$3;\n\n var reducerNames = Object.keys(reducers);\n var sliceCaseReducersByName = {};\n var sliceCaseReducersByType = {};\n var actionCreators = {};\n reducerNames.forEach(function (reducerName) {\n var maybeReducerWithPrepare = reducers[reducerName];\n var type = getType$1(name, reducerName);\n var caseReducer;\n var prepareCallback;\n\n if ('reducer' in maybeReducerWithPrepare) {\n caseReducer = maybeReducerWithPrepare.reducer;\n prepareCallback = maybeReducerWithPrepare.prepare;\n } else {\n caseReducer = maybeReducerWithPrepare;\n }\n\n sliceCaseReducersByName[reducerName] = caseReducer;\n sliceCaseReducersByType[type] = caseReducer;\n actionCreators[reducerName] = prepareCallback ? createAction(type, prepareCallback) : createAction(type);\n });\n\n var finalCaseReducers = _extends({}, extraReducers, {}, sliceCaseReducersByType);\n\n var reducer = createReducer(initialState, finalCaseReducers, actionMatchers, defaultCaseReducer);\n return {\n name: name,\n reducer: reducer,\n actions: actionCreators,\n caseReducers: sliceCaseReducersByName\n };\n}\n\nfunction getInitialEntityState() {\n return {\n ids: [],\n entities: {}\n };\n}\nfunction createInitialStateFactory() {\n function getInitialState(additionalState) {\n if (additionalState === void 0) {\n additionalState = {};\n }\n\n return Object.assign(getInitialEntityState(), additionalState);\n }\n\n return {\n getInitialState: getInitialState\n };\n}\n\nfunction createSelectorsFactory() {\n function getSelectors(selectState) {\n var selectIds = function selectIds(state) {\n return state.ids;\n };\n\n var selectEntities = function selectEntities(state) {\n return state.entities;\n };\n\n var selectAll = redux_toolkit_esm_createDraftSafeSelector(selectIds, selectEntities, function (ids, entities) {\n return ids.map(function (id) {\n return entities[id];\n });\n });\n\n var selectId = function selectId(_, id) {\n return id;\n };\n\n var selectById = function selectById(entities, id) {\n return entities[id];\n };\n\n var selectTotal = redux_toolkit_esm_createDraftSafeSelector(selectIds, function (ids) {\n return ids.length;\n });\n\n if (!selectState) {\n return {\n selectIds: selectIds,\n selectEntities: selectEntities,\n selectAll: selectAll,\n selectTotal: selectTotal,\n selectById: redux_toolkit_esm_createDraftSafeSelector(selectEntities, selectId, selectById)\n };\n }\n\n var selectGlobalizedEntities = redux_toolkit_esm_createDraftSafeSelector(selectState, selectEntities);\n return {\n selectIds: redux_toolkit_esm_createDraftSafeSelector(selectState, selectIds),\n selectEntities: selectGlobalizedEntities,\n selectAll: redux_toolkit_esm_createDraftSafeSelector(selectState, selectAll),\n selectTotal: redux_toolkit_esm_createDraftSafeSelector(selectState, selectTotal),\n selectById: redux_toolkit_esm_createDraftSafeSelector(selectGlobalizedEntities, selectId, selectById)\n };\n }\n\n return {\n getSelectors: getSelectors\n };\n}\n\nfunction createSingleArgumentStateOperator(mutator) {\n var operator = createStateOperator(function (_, state) {\n return mutator(state);\n });\n return function operation(state) {\n return operator(state, undefined);\n };\n}\nfunction createStateOperator(mutator) {\n return function operation(state, arg) {\n function isPayloadActionArgument(arg) {\n return isFSA(arg);\n }\n\n var runMutator = function runMutator(draft) {\n if (isPayloadActionArgument(arg)) {\n mutator(arg.payload, draft);\n } else {\n mutator(arg, draft);\n }\n };\n\n if (n(state)) {\n // we must already be inside a `createNextState` call, likely because\n // this is being wrapped in `createReducer` or `createSlice`.\n // It's safe to just pass the draft to the mutator.\n runMutator(state); // since it's a draft, we'll just return it\n\n return state;\n } else {\n // @ts-ignore createNextState() produces an Immutable<Draft<S>> rather\n // than an Immutable<S>, and TypeScript cannot find out how to reconcile\n // these two types.\n return immer_esm(state, runMutator);\n }\n };\n}\n\nfunction selectIdValue(entity, selectId) {\n var key = selectId(entity);\n\n if (false) {}\n\n return key;\n}\n\nfunction createUnsortedStateAdapter(selectId) {\n function addOneMutably(entity, state) {\n var key = selectIdValue(entity, selectId);\n\n if (key in state.entities) {\n return;\n }\n\n state.ids.push(key);\n state.entities[key] = entity;\n }\n\n function addManyMutably(entities, state) {\n if (!Array.isArray(entities)) {\n entities = Object.values(entities);\n }\n\n for (var _iterator = entities, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n var _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[_i++];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n var entity = _ref;\n addOneMutably(entity, state);\n }\n }\n\n function setAllMutably(entities, state) {\n if (!Array.isArray(entities)) {\n entities = Object.values(entities);\n }\n\n state.ids = [];\n state.entities = {};\n addManyMutably(entities, state);\n }\n\n function removeOneMutably(key, state) {\n return removeManyMutably([key], state);\n }\n\n function removeManyMutably(keys, state) {\n var didMutate = false;\n keys.forEach(function (key) {\n if (key in state.entities) {\n delete state.entities[key];\n didMutate = true;\n }\n });\n\n if (didMutate) {\n state.ids = state.ids.filter(function (id) {\n return id in state.entities;\n });\n }\n }\n\n function removeAllMutably(state) {\n Object.assign(state, {\n ids: [],\n entities: {}\n });\n }\n\n function takeNewKey(keys, update, state) {\n var original = state.entities[update.id];\n var updated = Object.assign({}, original, update.changes);\n var newKey = selectIdValue(updated, selectId);\n var hasNewKey = newKey !== update.id;\n\n if (hasNewKey) {\n keys[update.id] = newKey;\n delete state.entities[update.id];\n }\n\n state.entities[newKey] = updated;\n return hasNewKey;\n }\n\n function updateOneMutably(update, state) {\n return updateManyMutably([update], state);\n }\n\n function updateManyMutably(updates, state) {\n var newKeys = {};\n var updatesPerEntity = {};\n updates.forEach(function (update) {\n // Only apply updates to entities that currently exist\n if (update.id in state.entities) {\n // If there are multiple updates to one entity, merge them together\n updatesPerEntity[update.id] = {\n id: update.id,\n // Spreads ignore falsy values, so this works even if there isn't\n // an existing update already at this key\n changes: _extends({}, updatesPerEntity[update.id] ? updatesPerEntity[update.id].changes : null, {}, update.changes)\n };\n }\n });\n updates = Object.values(updatesPerEntity);\n var didMutateEntities = updates.length > 0;\n\n if (didMutateEntities) {\n var didMutateIds = updates.filter(function (update) {\n return takeNewKey(newKeys, update, state);\n }).length > 0;\n\n if (didMutateIds) {\n state.ids = state.ids.map(function (id) {\n return newKeys[id] || id;\n });\n }\n }\n }\n\n function upsertOneMutably(entity, state) {\n return upsertManyMutably([entity], state);\n }\n\n function upsertManyMutably(entities, state) {\n if (!Array.isArray(entities)) {\n entities = Object.values(entities);\n }\n\n var added = [];\n var updated = [];\n\n for (var _iterator2 = entities, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) {\n var _ref2;\n\n if (_isArray2) {\n if (_i2 >= _iterator2.length) break;\n _ref2 = _iterator2[_i2++];\n } else {\n _i2 = _iterator2.next();\n if (_i2.done) break;\n _ref2 = _i2.value;\n }\n\n var entity = _ref2;\n var id = selectIdValue(entity, selectId);\n\n if (id in state.entities) {\n updated.push({\n id: id,\n changes: entity\n });\n } else {\n added.push(entity);\n }\n }\n\n updateManyMutably(updated, state);\n addManyMutably(added, state);\n }\n\n return {\n removeAll: createSingleArgumentStateOperator(removeAllMutably),\n addOne: createStateOperator(addOneMutably),\n addMany: createStateOperator(addManyMutably),\n setAll: createStateOperator(setAllMutably),\n updateOne: createStateOperator(updateOneMutably),\n updateMany: createStateOperator(updateManyMutably),\n upsertOne: createStateOperator(upsertOneMutably),\n upsertMany: createStateOperator(upsertManyMutably),\n removeOne: createStateOperator(removeOneMutably),\n removeMany: createStateOperator(removeManyMutably)\n };\n}\n\nfunction createSortedStateAdapter(selectId, sort) {\n var _createUnsortedStateA = createUnsortedStateAdapter(selectId),\n removeOne = _createUnsortedStateA.removeOne,\n removeMany = _createUnsortedStateA.removeMany,\n removeAll = _createUnsortedStateA.removeAll;\n\n function addOneMutably(entity, state) {\n return addManyMutably([entity], state);\n }\n\n function addManyMutably(newModels, state) {\n if (!Array.isArray(newModels)) {\n newModels = Object.values(newModels);\n }\n\n var models = newModels.filter(function (model) {\n return !(selectIdValue(model, selectId) in state.entities);\n });\n\n if (models.length !== 0) {\n merge(models, state);\n }\n }\n\n function setAllMutably(models, state) {\n if (!Array.isArray(models)) {\n models = Object.values(models);\n }\n\n state.entities = {};\n state.ids = [];\n addManyMutably(models, state);\n }\n\n function updateOneMutably(update, state) {\n return updateManyMutably([update], state);\n }\n\n function takeUpdatedModel(models, update, state) {\n if (!(update.id in state.entities)) {\n return false;\n }\n\n var original = state.entities[update.id];\n var updated = Object.assign({}, original, update.changes);\n var newKey = selectIdValue(updated, selectId);\n delete state.entities[update.id];\n models.push(updated);\n return newKey !== update.id;\n }\n\n function updateManyMutably(updates, state) {\n var models = [];\n updates.forEach(function (update) {\n return takeUpdatedModel(models, update, state);\n });\n\n if (models.length !== 0) {\n merge(models, state);\n }\n }\n\n function upsertOneMutably(entity, state) {\n return upsertManyMutably([entity], state);\n }\n\n function upsertManyMutably(entities, state) {\n if (!Array.isArray(entities)) {\n entities = Object.values(entities);\n }\n\n var added = [];\n var updated = [];\n\n for (var _iterator = entities, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n var _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[_i++];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n var entity = _ref;\n var id = selectIdValue(entity, selectId);\n\n if (id in state.entities) {\n updated.push({\n id: id,\n changes: entity\n });\n } else {\n added.push(entity);\n }\n }\n\n updateManyMutably(updated, state);\n addManyMutably(added, state);\n }\n\n function areArraysEqual(a, b) {\n if (a.length !== b.length) {\n return false;\n }\n\n for (var i = 0; i < a.length && i < b.length; i++) {\n if (a[i] === b[i]) {\n continue;\n }\n\n return false;\n }\n\n return true;\n }\n\n function merge(models, state) {\n models.sort(sort); // Insert/overwrite all new/updated\n\n models.forEach(function (model) {\n state.entities[selectId(model)] = model;\n });\n var allEntities = Object.values(state.entities);\n allEntities.sort(sort);\n var newSortedIds = allEntities.map(selectId);\n var ids = state.ids;\n\n if (!areArraysEqual(ids, newSortedIds)) {\n state.ids = newSortedIds;\n }\n }\n\n return {\n removeOne: removeOne,\n removeMany: removeMany,\n removeAll: removeAll,\n addOne: createStateOperator(addOneMutably),\n updateOne: createStateOperator(updateOneMutably),\n upsertOne: createStateOperator(upsertOneMutably),\n setAll: createStateOperator(setAllMutably),\n addMany: createStateOperator(addManyMutably),\n updateMany: createStateOperator(updateManyMutably),\n upsertMany: createStateOperator(upsertManyMutably)\n };\n}\n\n/**\r\n *\r\n * @param options\r\n *\r\n * @public\r\n */\n\nfunction createEntityAdapter(options) {\n if (options === void 0) {\n options = {};\n }\n\n var _sortComparer$selectI = _extends({\n sortComparer: false,\n selectId: function selectId(instance) {\n return instance.id;\n }\n }, options),\n selectId = _sortComparer$selectI.selectId,\n sortComparer = _sortComparer$selectI.sortComparer;\n\n var stateFactory = createInitialStateFactory();\n var selectorsFactory = createSelectorsFactory();\n var stateAdapter = sortComparer ? createSortedStateAdapter(selectId, sortComparer) : createUnsortedStateAdapter(selectId);\n return _extends({\n selectId: selectId,\n sortComparer: sortComparer\n }, stateFactory, {}, selectorsFactory, {}, stateAdapter);\n}\n\n// A type of promise-like that resolves synchronously and supports only one observer\n\nconst _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.iterator || (Symbol.iterator = Symbol(\"Symbol.iterator\"))) : \"@@iterator\";\n\nconst _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol(\"Symbol.asyncIterator\"))) : \"@@asyncIterator\";\n\n// Asynchronously call a function and send errors to recovery continuation\nfunction _catch(body, recover) {\n\ttry {\n\t\tvar result = body();\n\t} catch(e) {\n\t\treturn recover(e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(void 0, recover);\n\t}\n\treturn result;\n}\n\n// Borrowed from https://github.com/ai/nanoid/blob/3.0.2/non-secure/index.js\n// This alphabet uses `A-Za-z0-9_-` symbols. A genetic algorithm helped\n// optimize the gzip compression for this alphabet.\nvar urlAlphabet = 'ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW';\n/**\r\n *\r\n * @public\r\n */\n\nvar nanoid = function nanoid(size) {\n if (size === void 0) {\n size = 21;\n }\n\n var id = ''; // A compact alternative for `for (var i = 0; i < step; i++)`.\n\n var i = size;\n\n while (i--) {\n // `| 0` is more compact and faster than `Math.floor()`.\n id += urlAlphabet[Math.random() * 64 | 0];\n }\n\n return id;\n};\n\nvar commonProperties = ['name', 'message', 'stack', 'code'];\n\nvar RejectWithValue = function RejectWithValue(payload) {\n this.payload = payload;\n this.name = 'RejectWithValue';\n this.message = 'Rejected';\n}; // Reworked from https://github.com/sindresorhus/serialize-error\n\n\nvar miniSerializeError = function miniSerializeError(value) {\n if (typeof value === 'object' && value !== null) {\n var simpleError = {};\n\n for (var _iterator = commonProperties, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n var _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[_i++];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n var property = _ref;\n\n if (typeof value[property] === 'string') {\n simpleError[property] = value[property];\n }\n }\n\n return simpleError;\n }\n\n return {\n message: String(value)\n };\n};\n/**\r\n *\r\n * @param typePrefix\r\n * @param payloadCreator\r\n * @param options\r\n *\r\n * @public\r\n */\n\nfunction createAsyncThunk(typePrefix, payloadCreator, options) {\n var fulfilled = createAction(typePrefix + '/fulfilled', function (result, requestId, arg) {\n return {\n payload: result,\n meta: {\n arg: arg,\n requestId: requestId,\n requestStatus: 'fulfilled'\n }\n };\n });\n var pending = createAction(typePrefix + '/pending', function (requestId, arg) {\n return {\n payload: undefined,\n meta: {\n arg: arg,\n requestId: requestId,\n requestStatus: 'pending'\n }\n };\n });\n var rejected = createAction(typePrefix + '/rejected', function (error, requestId, arg) {\n var rejectedWithValue = error instanceof RejectWithValue;\n var aborted = !!error && error.name === 'AbortError';\n var condition = !!error && error.name === 'ConditionError';\n return {\n payload: error instanceof RejectWithValue ? error.payload : undefined,\n error: (options && options.serializeError || miniSerializeError)(error || 'Rejected'),\n meta: {\n arg: arg,\n requestId: requestId,\n rejectedWithValue: rejectedWithValue,\n requestStatus: 'rejected',\n aborted: aborted,\n condition: condition\n }\n };\n });\n var displayedWarning = false;\n var AC = typeof AbortController !== 'undefined' ? AbortController :\n /*#__PURE__*/\n function () {\n function _class() {\n this.signal = {\n aborted: false,\n addEventListener: function addEventListener() {},\n dispatchEvent: function dispatchEvent() {\n return false;\n },\n onabort: function onabort() {},\n removeEventListener: function removeEventListener() {}\n };\n }\n\n var _proto = _class.prototype;\n\n _proto.abort = function abort() {\n if (false) {}\n };\n\n return _class;\n }();\n\n function actionCreator(arg) {\n return function (dispatch, getState, extra) {\n var requestId = nanoid();\n var abortController = new AC();\n var abortReason;\n var abortedPromise = new Promise(function (_, reject) {\n return abortController.signal.addEventListener('abort', function () {\n return reject({\n name: 'AbortError',\n message: abortReason || 'Aborted'\n });\n });\n });\n var started = false;\n\n function abort(reason) {\n if (started) {\n abortReason = reason;\n abortController.abort();\n }\n }\n\n var promise = function () {\n try {\n var _temp3 = function _temp3(_result) {\n if (_exit2) return _result;\n // We dispatch the result action _after_ the catch, to avoid having any errors\n // here get swallowed by the try/catch block,\n // per https://twitter.com/dan_abramov/status/770914221638942720\n // and https://redux-toolkit.js.org/tutorials/advanced-tutorial#async-error-handling-logic-in-thunks\n var skipDispatch = options && !options.dispatchConditionRejection && rejected.match(finalAction) && finalAction.meta.condition;\n\n if (!skipDispatch) {\n dispatch(finalAction);\n }\n\n return finalAction;\n };\n\n var _exit2 = false;\n var finalAction;\n\n var _temp4 = _catch(function () {\n if (options && options.condition && options.condition(arg, {\n getState: getState,\n extra: extra\n }) === false) {\n // eslint-disable-next-line no-throw-literal\n throw {\n name: 'ConditionError',\n message: 'Aborted due to condition callback returning false.'\n };\n }\n\n started = true;\n dispatch(pending(requestId, arg));\n return Promise.resolve(Promise.race([abortedPromise, Promise.resolve(payloadCreator(arg, {\n dispatch: dispatch,\n getState: getState,\n extra: extra,\n requestId: requestId,\n signal: abortController.signal,\n rejectWithValue: function rejectWithValue(value) {\n return new RejectWithValue(value);\n }\n })).then(function (result) {\n if (result instanceof RejectWithValue) {\n return rejected(result, requestId, arg);\n }\n\n return fulfilled(result, requestId, arg);\n })])).then(function (_Promise$race) {\n finalAction = _Promise$race;\n });\n }, function (err) {\n finalAction = rejected(err, requestId, arg);\n });\n\n return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));\n } catch (e) {\n return Promise.reject(e);\n }\n }();\n\n return Object.assign(promise, {\n abort: abort,\n requestId: requestId,\n arg: arg\n });\n };\n }\n\n return Object.assign(actionCreator, {\n pending: pending,\n rejected: rejected,\n fulfilled: fulfilled,\n typePrefix: typePrefix\n });\n}\n/**\r\n * @public\r\n */\n\nfunction unwrapResult(action) {\n if (action.meta && action.meta.rejectedWithValue) {\n throw action.payload;\n }\n\n if (action.error) {\n throw action.error;\n }\n\n return action.payload;\n}\n\nvar hasMatchFunction = function hasMatchFunction(v) {\n return v && typeof v.match === 'function';\n};\n\nvar matches = function matches(matcher, action) {\n if (hasMatchFunction(matcher)) {\n return matcher.match(action);\n } else {\n return matcher(action);\n }\n};\n/**\r\n * A higher-order function that returns a function that may be used to check\r\n * whether an action matches any one of the supplied type guards or action\r\n * creators.\r\n *\r\n * @param matchers The type guards or action creators to match against.\r\n *\r\n * @public\r\n */\n\n\nfunction isAnyOf() {\n for (var _len = arguments.length, matchers = new Array(_len), _key = 0; _key < _len; _key++) {\n matchers[_key] = arguments[_key];\n }\n\n return function (action) {\n return matchers.some(function (matcher) {\n return matches(matcher, action);\n });\n };\n}\n/**\r\n * A higher-order function that returns a function that may be used to check\r\n * whether an action matches all of the supplied type guards or action\r\n * creators.\r\n *\r\n * @param matchers The type guards or action creators to match against.\r\n *\r\n * @public\r\n */\n\nfunction isAllOf() {\n for (var _len2 = arguments.length, matchers = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n matchers[_key2] = arguments[_key2];\n }\n\n return function (action) {\n return matchers.every(function (matcher) {\n return matches(matcher, action);\n });\n };\n}\n/**\r\n * @param action A redux action\r\n * @param validStatus An array of valid meta.requestStatus values\r\n *\r\n * @internal\r\n */\n\nfunction hasExpectedRequestMetadata(action, validStatus) {\n if (!action || !action.meta) return false;\n var hasValidRequestId = typeof action.meta.requestId === 'string';\n var hasValidRequestStatus = validStatus.indexOf(action.meta.requestStatus) > -1;\n return hasValidRequestId && hasValidRequestStatus;\n}\n\nfunction isAsyncThunkArray(a) {\n return typeof a[0] === 'function' && 'pending' in a[0] && 'fulfilled' in a[0] && 'rejected' in a[0];\n}\n\nfunction isPending() {\n for (var _len3 = arguments.length, asyncThunks = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n asyncThunks[_key3] = arguments[_key3];\n }\n\n if (asyncThunks.length === 0) {\n return function (action) {\n return hasExpectedRequestMetadata(action, ['pending']);\n };\n }\n\n if (!isAsyncThunkArray(asyncThunks)) {\n return isPending()(asyncThunks[0]);\n }\n\n return function (action) {\n // note: this type will be correct because we have at least 1 asyncThunk\n var matchers = asyncThunks.map(function (asyncThunk) {\n return asyncThunk.pending;\n });\n var combinedMatcher = isAnyOf.apply(void 0, matchers);\n return combinedMatcher(action);\n };\n}\nfunction isRejected() {\n for (var _len4 = arguments.length, asyncThunks = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n asyncThunks[_key4] = arguments[_key4];\n }\n\n if (asyncThunks.length === 0) {\n return function (action) {\n return hasExpectedRequestMetadata(action, ['rejected']);\n };\n }\n\n if (!isAsyncThunkArray(asyncThunks)) {\n return isRejected()(asyncThunks[0]);\n }\n\n return function (action) {\n // note: this type will be correct because we have at least 1 asyncThunk\n var matchers = asyncThunks.map(function (asyncThunk) {\n return asyncThunk.rejected;\n });\n var combinedMatcher = isAnyOf.apply(void 0, matchers);\n return combinedMatcher(action);\n };\n}\nfunction isRejectedWithValue() {\n for (var _len5 = arguments.length, asyncThunks = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n asyncThunks[_key5] = arguments[_key5];\n }\n\n var hasFlag = function hasFlag(action) {\n return action && action.meta && action.meta.rejectedWithValue;\n };\n\n if (asyncThunks.length === 0) {\n return function (action) {\n var combinedMatcher = isAllOf(isRejected.apply(void 0, asyncThunks), hasFlag);\n return combinedMatcher(action);\n };\n }\n\n if (!isAsyncThunkArray(asyncThunks)) {\n return isRejectedWithValue()(asyncThunks[0]);\n }\n\n return function (action) {\n var combinedMatcher = isAllOf(isRejected.apply(void 0, asyncThunks), hasFlag);\n return combinedMatcher(action);\n };\n}\nfunction isFulfilled() {\n for (var _len6 = arguments.length, asyncThunks = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n asyncThunks[_key6] = arguments[_key6];\n }\n\n if (asyncThunks.length === 0) {\n return function (action) {\n return hasExpectedRequestMetadata(action, ['fulfilled']);\n };\n }\n\n if (!isAsyncThunkArray(asyncThunks)) {\n return isFulfilled()(asyncThunks[0]);\n }\n\n return function (action) {\n // note: this type will be correct because we have at least 1 asyncThunk\n var matchers = asyncThunks.map(function (asyncThunk) {\n return asyncThunk.fulfilled;\n });\n var combinedMatcher = isAnyOf.apply(void 0, matchers);\n return combinedMatcher(action);\n };\n}\nfunction isAsyncThunkAction() {\n for (var _len7 = arguments.length, asyncThunks = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {\n asyncThunks[_key7] = arguments[_key7];\n }\n\n if (asyncThunks.length === 0) {\n return function (action) {\n return hasExpectedRequestMetadata(action, ['pending', 'fulfilled', 'rejected']);\n };\n }\n\n if (!isAsyncThunkArray(asyncThunks)) {\n return isAsyncThunkAction()(asyncThunks[0]);\n }\n\n return function (action) {\n // note: this type will be correct because we have at least 1 asyncThunk\n var matchers = [];\n\n for (var _iterator = asyncThunks, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n var _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[_i++];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n var asyncThunk = _ref;\n matchers.push(asyncThunk.pending, asyncThunk.rejected, asyncThunk.fulfilled);\n }\n\n var combinedMatcher = isAnyOf.apply(void 0, matchers);\n return combinedMatcher(action);\n };\n}\n\n// we assume RTK will be used with React Native and other Proxy-less\n// environments. In addition, that's how Immer 4 behaved, and since\n// we want to ship this in an RTK minor, we should keep the same behavior.\n\nT();\n\n\n//# sourceMappingURL=redux-toolkit.esm.js.map\n\n// CONCATENATED MODULE: ./src/state/actions.ts\n\nvar initialize = createAction('initialize');\nvar actions_reset = createAction('reset');\n// CONCATENATED MODULE: ./node_modules/@redux-saga/symbols/dist/redux-saga-symbols.esm.js\nvar createSymbol = function createSymbol(name) {\n return \"@@redux-saga/\" + name;\n};\n\nvar CANCEL =\n/*#__PURE__*/\ncreateSymbol('CANCEL_PROMISE');\nvar CHANNEL_END_TYPE =\n/*#__PURE__*/\ncreateSymbol('CHANNEL_END');\nvar IO =\n/*#__PURE__*/\ncreateSymbol('IO');\nvar MATCH =\n/*#__PURE__*/\ncreateSymbol('MATCH');\nvar MULTICAST =\n/*#__PURE__*/\ncreateSymbol('MULTICAST');\nvar SAGA_ACTION =\n/*#__PURE__*/\ncreateSymbol('SAGA_ACTION');\nvar SELF_CANCELLATION =\n/*#__PURE__*/\ncreateSymbol('SELF_CANCELLATION');\nvar TASK =\n/*#__PURE__*/\ncreateSymbol('TASK');\nvar TASK_CANCEL =\n/*#__PURE__*/\ncreateSymbol('TASK_CANCEL');\nvar TERMINATE =\n/*#__PURE__*/\ncreateSymbol('TERMINATE');\nvar SAGA_LOCATION =\n/*#__PURE__*/\ncreateSymbol('LOCATION');\n\n\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js\nvar esm_extends = __webpack_require__(\"wx14\");\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js\nvar objectWithoutPropertiesLoose = __webpack_require__(\"zLVn\");\n\n// CONCATENATED MODULE: ./node_modules/@redux-saga/is/dist/redux-saga-is.esm.js\n\n\nvar undef = function undef(v) {\n return v === null || v === undefined;\n};\nvar notUndef = function notUndef(v) {\n return v !== null && v !== undefined;\n};\nvar func = function func(f) {\n return typeof f === 'function';\n};\nvar number = function number(n) {\n return typeof n === 'number';\n};\nvar string = function string(s) {\n return typeof s === 'string';\n};\nvar array = Array.isArray;\nvar object = function object(obj) {\n return obj && !array(obj) && typeof obj === 'object';\n};\nvar redux_saga_is_esm_promise = function promise(p) {\n return p && func(p.then);\n};\nvar redux_saga_is_esm_iterator = function iterator(it) {\n return it && func(it.next) && func(it.throw);\n};\nvar iterable = function iterable(it) {\n return it && func(Symbol) ? func(it[Symbol.iterator]) : array(it);\n};\nvar redux_saga_is_esm_task = function task(t) {\n return t && t[TASK];\n};\nvar redux_saga_is_esm_sagaAction = function sagaAction(a) {\n return Boolean(a && a[SAGA_ACTION]);\n};\nvar observable = function observable(ob) {\n return ob && func(ob.subscribe);\n};\nvar redux_saga_is_esm_buffer = function buffer(buf) {\n return buf && func(buf.isEmpty) && func(buf.take) && func(buf.put);\n};\nvar redux_saga_is_esm_pattern = function pattern(pat) {\n return pat && (string(pat) || symbol(pat) || func(pat) || array(pat) && pat.every(pattern));\n};\nvar redux_saga_is_esm_channel = function channel(ch) {\n return ch && func(ch.take) && func(ch.close);\n};\nvar stringableFunc = function stringableFunc(f) {\n return func(f) && f.hasOwnProperty('toString');\n};\nvar symbol = function symbol(sym) {\n return Boolean(sym) && typeof Symbol === 'function' && sym.constructor === Symbol && sym !== Symbol.prototype;\n};\nvar redux_saga_is_esm_multicast = function multicast(ch) {\n return redux_saga_is_esm_channel(ch) && ch[MULTICAST];\n};\nvar redux_saga_is_esm_effect = function effect(eff) {\n return eff && eff[IO];\n};\n\n\n\n// CONCATENATED MODULE: ./node_modules/@redux-saga/delay-p/dist/redux-saga-delay-p.esm.js\n\n\nfunction delayP(ms, val) {\n if (val === void 0) {\n val = true;\n }\n\n var timeoutId;\n var promise = new Promise(function (resolve) {\n timeoutId = setTimeout(resolve, ms, val);\n });\n\n promise[CANCEL] = function () {\n clearTimeout(timeoutId);\n };\n\n return promise;\n}\n\n/* harmony default export */ var redux_saga_delay_p_esm = (delayP);\n\n// CONCATENATED MODULE: ./node_modules/@redux-saga/core/dist/io-6de156f3.js\n\n\n\n\n\nvar konst = function konst(v) {\n return function () {\n return v;\n };\n};\nvar kTrue =\n/*#__PURE__*/\nkonst(true);\n\nvar noop = function noop() {};\n\nif (false) {}\nvar identity = function identity(v) {\n return v;\n};\nvar hasSymbol = typeof Symbol === 'function';\nvar asyncIteratorSymbol = hasSymbol && Symbol.asyncIterator ? Symbol.asyncIterator : '@@asyncIterator';\nfunction check(value, predicate, error) {\n if (!predicate(value)) {\n throw new Error(error);\n }\n}\nvar io_6de156f3_assignWithSymbols = function assignWithSymbols(target, source) {\n Object(esm_extends[\"a\" /* default */])(target, source);\n\n if (Object.getOwnPropertySymbols) {\n Object.getOwnPropertySymbols(source).forEach(function (s) {\n target[s] = source[s];\n });\n }\n};\nvar flatMap = function flatMap(mapper, arr) {\n var _ref;\n\n return (_ref = []).concat.apply(_ref, arr.map(mapper));\n};\nfunction remove(array, item) {\n var index = array.indexOf(item);\n\n if (index >= 0) {\n array.splice(index, 1);\n }\n}\nfunction once(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n\n called = true;\n fn();\n };\n}\n\nvar kThrow = function kThrow(err) {\n throw err;\n};\n\nvar kReturn = function kReturn(value) {\n return {\n value: value,\n done: true\n };\n};\n\nfunction makeIterator(next, thro, name) {\n if (thro === void 0) {\n thro = kThrow;\n }\n\n if (name === void 0) {\n name = 'iterator';\n }\n\n var iterator = {\n meta: {\n name: name\n },\n next: next,\n throw: thro,\n return: kReturn,\n isSagaIterator: true\n };\n\n if (typeof Symbol !== 'undefined') {\n iterator[Symbol.iterator] = function () {\n return iterator;\n };\n }\n\n return iterator;\n}\nfunction logError(error, _ref2) {\n var sagaStack = _ref2.sagaStack;\n\n /*eslint-disable no-console*/\n console.error(error);\n console.error(sagaStack);\n}\nvar internalErr = function internalErr(err) {\n return new Error(\"\\n redux-saga: Error checking hooks detected an inconsistent state. This is likely a bug\\n in redux-saga code and not yours. Thanks for reporting this in the project's github repo.\\n Error: \" + err + \"\\n\");\n};\nvar createSetContextWarning = function createSetContextWarning(ctx, props) {\n return (ctx ? ctx + '.' : '') + \"setContext(props): argument \" + props + \" is not a plain object\";\n};\nvar FROZEN_ACTION_ERROR = \"You can't put (a.k.a. dispatch from saga) frozen actions.\\nWe have to define a special non-enumerable property on those actions for scheduling purposes.\\nOtherwise you wouldn't be able to communicate properly between sagas & other subscribers (action ordering would become far less predictable).\\nIf you are using redux and you care about this behaviour (frozen actions),\\nthen you might want to switch to freezing actions in a middleware rather than in action creator.\\nExample implementation:\\n\\nconst freezeActions = store => next => action => next(Object.freeze(action))\\n\"; // creates empty, but not-holey array\n\nvar createEmptyArray = function createEmptyArray(n) {\n return Array.apply(null, new Array(n));\n};\nvar io_6de156f3_wrapSagaDispatch = function wrapSagaDispatch(dispatch) {\n return function (action) {\n if (false) {}\n\n return dispatch(Object.defineProperty(action, SAGA_ACTION, {\n value: true\n }));\n };\n};\nvar io_6de156f3_shouldTerminate = function shouldTerminate(res) {\n return res === TERMINATE;\n};\nvar io_6de156f3_shouldCancel = function shouldCancel(res) {\n return res === TASK_CANCEL;\n};\nvar shouldComplete = function shouldComplete(res) {\n return io_6de156f3_shouldTerminate(res) || io_6de156f3_shouldCancel(res);\n};\nfunction createAllStyleChildCallbacks(shape, parentCallback) {\n var keys = Object.keys(shape);\n var totalCount = keys.length;\n\n if (false) {}\n\n var completedCount = 0;\n var completed;\n var results = array(shape) ? createEmptyArray(totalCount) : {};\n var childCallbacks = {};\n\n function checkEnd() {\n if (completedCount === totalCount) {\n completed = true;\n parentCallback(results);\n }\n }\n\n keys.forEach(function (key) {\n var chCbAtKey = function chCbAtKey(res, isErr) {\n if (completed) {\n return;\n }\n\n if (isErr || shouldComplete(res)) {\n parentCallback.cancel();\n parentCallback(res, isErr);\n } else {\n results[key] = res;\n completedCount++;\n checkEnd();\n }\n };\n\n chCbAtKey.cancel = noop;\n childCallbacks[key] = chCbAtKey;\n });\n\n parentCallback.cancel = function () {\n if (!completed) {\n completed = true;\n keys.forEach(function (key) {\n return childCallbacks[key].cancel();\n });\n }\n };\n\n return childCallbacks;\n}\nfunction getMetaInfo(fn) {\n return {\n name: fn.name || 'anonymous',\n location: getLocation(fn)\n };\n}\nfunction getLocation(instrumented) {\n return instrumented[SAGA_LOCATION];\n}\n\nvar BUFFER_OVERFLOW = \"Channel's Buffer overflow!\";\nvar ON_OVERFLOW_THROW = 1;\nvar ON_OVERFLOW_DROP = 2;\nvar ON_OVERFLOW_SLIDE = 3;\nvar ON_OVERFLOW_EXPAND = 4;\nvar zeroBuffer = {\n isEmpty: kTrue,\n put: noop,\n take: noop\n};\n\nfunction ringBuffer(limit, overflowAction) {\n if (limit === void 0) {\n limit = 10;\n }\n\n var arr = new Array(limit);\n var length = 0;\n var pushIndex = 0;\n var popIndex = 0;\n\n var push = function push(it) {\n arr[pushIndex] = it;\n pushIndex = (pushIndex + 1) % limit;\n length++;\n };\n\n var take = function take() {\n if (length != 0) {\n var it = arr[popIndex];\n arr[popIndex] = null;\n length--;\n popIndex = (popIndex + 1) % limit;\n return it;\n }\n };\n\n var flush = function flush() {\n var items = [];\n\n while (length) {\n items.push(take());\n }\n\n return items;\n };\n\n return {\n isEmpty: function isEmpty() {\n return length == 0;\n },\n put: function put(it) {\n if (length < limit) {\n push(it);\n } else {\n var doubledLimit;\n\n switch (overflowAction) {\n case ON_OVERFLOW_THROW:\n throw new Error(BUFFER_OVERFLOW);\n\n case ON_OVERFLOW_SLIDE:\n arr[pushIndex] = it;\n pushIndex = (pushIndex + 1) % limit;\n popIndex = pushIndex;\n break;\n\n case ON_OVERFLOW_EXPAND:\n doubledLimit = 2 * limit;\n arr = flush();\n length = arr.length;\n pushIndex = arr.length;\n popIndex = 0;\n arr.length = doubledLimit;\n limit = doubledLimit;\n push(it);\n break;\n\n default: // DROP\n\n }\n }\n },\n take: take,\n flush: flush\n };\n}\n\nvar none = function none() {\n return zeroBuffer;\n};\nvar fixed = function fixed(limit) {\n return ringBuffer(limit, ON_OVERFLOW_THROW);\n};\nvar dropping = function dropping(limit) {\n return ringBuffer(limit, ON_OVERFLOW_DROP);\n};\nvar sliding = function sliding(limit) {\n return ringBuffer(limit, ON_OVERFLOW_SLIDE);\n};\nvar expanding = function expanding(initialSize) {\n return ringBuffer(initialSize, ON_OVERFLOW_EXPAND);\n};\n\nvar buffers = /*#__PURE__*/Object.freeze({\n __proto__: null,\n none: none,\n fixed: fixed,\n dropping: dropping,\n sliding: sliding,\n expanding: expanding\n});\n\nvar TAKE = 'TAKE';\nvar PUT = 'PUT';\nvar ALL = 'ALL';\nvar RACE = 'RACE';\nvar CALL = 'CALL';\nvar CPS = 'CPS';\nvar FORK = 'FORK';\nvar JOIN = 'JOIN';\nvar io_6de156f3_CANCEL = 'CANCEL';\nvar SELECT = 'SELECT';\nvar ACTION_CHANNEL = 'ACTION_CHANNEL';\nvar CANCELLED = 'CANCELLED';\nvar FLUSH = 'FLUSH';\nvar GET_CONTEXT = 'GET_CONTEXT';\nvar SET_CONTEXT = 'SET_CONTEXT';\n\nvar effectTypes = /*#__PURE__*/Object.freeze({\n __proto__: null,\n TAKE: TAKE,\n PUT: PUT,\n ALL: ALL,\n RACE: RACE,\n CALL: CALL,\n CPS: CPS,\n FORK: FORK,\n JOIN: JOIN,\n CANCEL: io_6de156f3_CANCEL,\n SELECT: SELECT,\n ACTION_CHANNEL: ACTION_CHANNEL,\n CANCELLED: CANCELLED,\n FLUSH: FLUSH,\n GET_CONTEXT: GET_CONTEXT,\n SET_CONTEXT: SET_CONTEXT\n});\n\nvar TEST_HINT = '\\n(HINT: if you are getting these errors in tests, consider using createMockTask from @redux-saga/testing-utils)';\n\nvar io_6de156f3_makeEffect = function makeEffect(type, payload) {\n var _ref;\n\n return _ref = {}, _ref[IO] = true, _ref.combinator = false, _ref.type = type, _ref.payload = payload, _ref;\n};\n\nvar io_6de156f3_isForkEffect = function isForkEffect(eff) {\n return redux_saga_is_esm_effect(eff) && eff.type === FORK;\n};\n\nvar io_6de156f3_detach = function detach(eff) {\n if (false) {}\n\n return io_6de156f3_makeEffect(FORK, Object(esm_extends[\"a\" /* default */])({}, eff.payload, {\n detached: true\n }));\n};\nfunction io_6de156f3_take(patternOrChannel, multicastPattern) {\n if (patternOrChannel === void 0) {\n patternOrChannel = '*';\n }\n\n if (false) {}\n\n if (redux_saga_is_esm_pattern(patternOrChannel)) {\n return io_6de156f3_makeEffect(TAKE, {\n pattern: patternOrChannel\n });\n }\n\n if (redux_saga_is_esm_multicast(patternOrChannel) && notUndef(multicastPattern) && redux_saga_is_esm_pattern(multicastPattern)) {\n return io_6de156f3_makeEffect(TAKE, {\n channel: patternOrChannel,\n pattern: multicastPattern\n });\n }\n\n if (redux_saga_is_esm_channel(patternOrChannel)) {\n return io_6de156f3_makeEffect(TAKE, {\n channel: patternOrChannel\n });\n }\n\n if (false) {}\n}\nvar takeMaybe = function takeMaybe() {\n var eff = io_6de156f3_take.apply(void 0, arguments);\n eff.payload.maybe = true;\n return eff;\n};\nfunction io_6de156f3_put(channel$1, action) {\n if (false) {}\n\n if (undef(action)) {\n action = channel$1; // `undefined` instead of `null` to make default parameter work\n\n channel$1 = undefined;\n }\n\n return io_6de156f3_makeEffect(PUT, {\n channel: channel$1,\n action: action\n });\n}\nvar putResolve = function putResolve() {\n var eff = io_6de156f3_put.apply(void 0, arguments);\n eff.payload.resolve = true;\n return eff;\n};\nfunction io_6de156f3_all(effects) {\n var eff = io_6de156f3_makeEffect(ALL, effects);\n eff.combinator = true;\n return eff;\n}\nfunction race(effects) {\n var eff = io_6de156f3_makeEffect(RACE, effects);\n eff.combinator = true;\n return eff;\n} // this match getFnCallDescriptor logic\n\nvar io_6de156f3_validateFnDescriptor = function validateFnDescriptor(effectName, fnDescriptor) {\n check(fnDescriptor, notUndef, effectName + \": argument fn is undefined or null\");\n\n if (func(fnDescriptor)) {\n return;\n }\n\n var context = null;\n var fn;\n\n if (array(fnDescriptor)) {\n context = fnDescriptor[0];\n fn = fnDescriptor[1];\n check(fn, notUndef, effectName + \": argument of type [context, fn] has undefined or null `fn`\");\n } else if (object(fnDescriptor)) {\n context = fnDescriptor.context;\n fn = fnDescriptor.fn;\n check(fn, notUndef, effectName + \": argument of type {context, fn} has undefined or null `fn`\");\n } else {\n check(fnDescriptor, func, effectName + \": argument fn is not function\");\n return;\n }\n\n if (context && string(fn)) {\n check(context[fn], func, effectName + \": context arguments has no such method - \\\"\" + fn + \"\\\"\");\n return;\n }\n\n check(fn, func, effectName + \": unpacked fn argument (from [context, fn] or {context, fn}) is not a function\");\n};\n\nfunction getFnCallDescriptor(fnDescriptor, args) {\n var context = null;\n var fn;\n\n if (func(fnDescriptor)) {\n fn = fnDescriptor;\n } else {\n if (array(fnDescriptor)) {\n context = fnDescriptor[0];\n fn = fnDescriptor[1];\n } else {\n context = fnDescriptor.context;\n fn = fnDescriptor.fn;\n }\n\n if (context && string(fn) && func(context[fn])) {\n fn = context[fn];\n }\n }\n\n return {\n context: context,\n fn: fn,\n args: args\n };\n}\n\nvar isNotDelayEffect = function isNotDelayEffect(fn) {\n return fn !== delay;\n};\n\nfunction call(fnDescriptor) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (false) { var arg0; }\n\n return io_6de156f3_makeEffect(CALL, getFnCallDescriptor(fnDescriptor, args));\n}\nfunction apply(context, fn, args) {\n if (args === void 0) {\n args = [];\n }\n\n var fnDescriptor = [context, fn];\n\n if (false) {}\n\n return io_6de156f3_makeEffect(CALL, getFnCallDescriptor([context, fn], args));\n}\nfunction cps(fnDescriptor) {\n if (false) {}\n\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n return io_6de156f3_makeEffect(CPS, getFnCallDescriptor(fnDescriptor, args));\n}\nfunction fork(fnDescriptor) {\n if (false) {}\n\n for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n args[_key3 - 1] = arguments[_key3];\n }\n\n return io_6de156f3_makeEffect(FORK, getFnCallDescriptor(fnDescriptor, args));\n}\nfunction spawn(fnDescriptor) {\n if (false) {}\n\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n return io_6de156f3_detach(fork.apply(void 0, [fnDescriptor].concat(args)));\n}\nfunction join(taskOrTasks) {\n if (false) {}\n\n return io_6de156f3_makeEffect(JOIN, taskOrTasks);\n}\nfunction io_6de156f3_cancel(taskOrTasks) {\n if (taskOrTasks === void 0) {\n taskOrTasks = SELF_CANCELLATION;\n }\n\n if (false) {}\n\n return io_6de156f3_makeEffect(io_6de156f3_CANCEL, taskOrTasks);\n}\nfunction io_6de156f3_select(selector) {\n if (selector === void 0) {\n selector = identity;\n }\n\n for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {\n args[_key5 - 1] = arguments[_key5];\n }\n\n if (false) {}\n\n return io_6de156f3_makeEffect(SELECT, {\n selector: selector,\n args: args\n });\n}\n/**\n channel(pattern, [buffer]) => creates a proxy channel for store actions\n**/\n\nfunction actionChannel(pattern$1, buffer$1) {\n if (false) {}\n\n return io_6de156f3_makeEffect(ACTION_CHANNEL, {\n pattern: pattern$1,\n buffer: buffer$1\n });\n}\nfunction cancelled() {\n return io_6de156f3_makeEffect(CANCELLED, {});\n}\nfunction io_6de156f3_flush(channel$1) {\n if (false) {}\n\n return io_6de156f3_makeEffect(FLUSH, channel$1);\n}\nfunction getContext(prop) {\n if (false) {}\n\n return io_6de156f3_makeEffect(GET_CONTEXT, prop);\n}\nfunction io_6de156f3_setContext(props) {\n if (false) {}\n\n return io_6de156f3_makeEffect(SET_CONTEXT, props);\n}\nvar delay =\n/*#__PURE__*/\ncall.bind(null, redux_saga_delay_p_esm);\n\n\n\n// CONCATENATED MODULE: ./node_modules/@redux-saga/deferred/dist/redux-saga-deferred.esm.js\nfunction deferred() {\n var def = {};\n def.promise = new Promise(function (resolve, reject) {\n def.resolve = resolve;\n def.reject = reject;\n });\n return def;\n}\nfunction arrayOfDeferred(length) {\n var arr = [];\n\n for (var i = 0; i < length; i++) {\n arr.push(deferred());\n }\n\n return arr;\n}\n\n/* harmony default export */ var redux_saga_deferred_esm = (deferred);\n\n\n// CONCATENATED MODULE: ./node_modules/@redux-saga/core/dist/redux-saga-core.esm.js\n\n\n\n\n\n\n\n\n\n\n\nvar redux_saga_core_esm_queue = [];\n/**\n Variable to hold a counting semaphore\n - Incrementing adds a lock and puts the scheduler in a `suspended` state (if it's not\n already suspended)\n - Decrementing releases a lock. Zero locks puts the scheduler in a `released` state. This\n triggers flushing the queued tasks.\n**/\n\nvar semaphore = 0;\n/**\n Executes a task 'atomically'. Tasks scheduled during this execution will be queued\n and flushed after this task has finished (assuming the scheduler endup in a released\n state).\n**/\n\nfunction exec(task) {\n try {\n suspend();\n task();\n } finally {\n release();\n }\n}\n/**\n Executes or queues a task depending on the state of the scheduler (`suspended` or `released`)\n**/\n\n\nfunction asap(task) {\n redux_saga_core_esm_queue.push(task);\n\n if (!semaphore) {\n suspend();\n redux_saga_core_esm_flush();\n }\n}\n/**\n * Puts the scheduler in a `suspended` state and executes a task immediately.\n */\n\nfunction immediately(task) {\n try {\n suspend();\n return task();\n } finally {\n redux_saga_core_esm_flush();\n }\n}\n/**\n Puts the scheduler in a `suspended` state. Scheduled tasks will be queued until the\n scheduler is released.\n**/\n\nfunction suspend() {\n semaphore++;\n}\n/**\n Puts the scheduler in a `released` state.\n**/\n\n\nfunction release() {\n semaphore--;\n}\n/**\n Releases the current lock. Executes all queued tasks if the scheduler is in the released state.\n**/\n\n\nfunction redux_saga_core_esm_flush() {\n release();\n var task;\n\n while (!semaphore && (task = redux_saga_core_esm_queue.shift()) !== undefined) {\n exec(task);\n }\n}\n\nvar redux_saga_core_esm_array = function array(patterns) {\n return function (input) {\n return patterns.some(function (p) {\n return redux_saga_core_esm_matcher(p)(input);\n });\n };\n};\nvar predicate = function predicate(_predicate) {\n return function (input) {\n return _predicate(input);\n };\n};\nvar redux_saga_core_esm_string = function string(pattern) {\n return function (input) {\n return input.type === String(pattern);\n };\n};\nvar redux_saga_core_esm_symbol = function symbol(pattern) {\n return function (input) {\n return input.type === pattern;\n };\n};\nvar redux_saga_core_esm_wildcard = function wildcard() {\n return kTrue;\n};\nfunction redux_saga_core_esm_matcher(pattern) {\n // prettier-ignore\n var matcherCreator = pattern === '*' ? redux_saga_core_esm_wildcard : string(pattern) ? redux_saga_core_esm_string : array(pattern) ? redux_saga_core_esm_array : stringableFunc(pattern) ? redux_saga_core_esm_string : func(pattern) ? predicate : symbol(pattern) ? redux_saga_core_esm_symbol : null;\n\n if (matcherCreator === null) {\n throw new Error(\"invalid pattern: \" + pattern);\n }\n\n return matcherCreator(pattern);\n}\n\nvar END = {\n type: CHANNEL_END_TYPE\n};\nvar redux_saga_core_esm_isEnd = function isEnd(a) {\n return a && a.type === CHANNEL_END_TYPE;\n};\nvar CLOSED_CHANNEL_WITH_TAKERS = 'Cannot have a closed channel with pending takers';\nvar INVALID_BUFFER = 'invalid buffer passed to channel factory function';\nvar UNDEFINED_INPUT_ERROR = \"Saga or channel was provided with an undefined action\\nHints:\\n - check that your Action Creator returns a non-undefined value\\n - if the Saga was started using runSaga, check that your subscribe source provides the action to its listeners\";\nfunction redux_saga_core_esm_channel(buffer$1) {\n if (buffer$1 === void 0) {\n buffer$1 = expanding();\n }\n\n var closed = false;\n var takers = [];\n\n if (false) {}\n\n function checkForbiddenStates() {\n if (closed && takers.length) {\n throw internalErr(CLOSED_CHANNEL_WITH_TAKERS);\n }\n\n if (takers.length && !buffer$1.isEmpty()) {\n throw internalErr('Cannot have pending takers with non empty buffer');\n }\n }\n\n function put(input) {\n if (false) {}\n\n if (closed) {\n return;\n }\n\n if (takers.length === 0) {\n return buffer$1.put(input);\n }\n\n var cb = takers.shift();\n cb(input);\n }\n\n function take(cb) {\n if (false) {}\n\n if (closed && buffer$1.isEmpty()) {\n cb(END);\n } else if (!buffer$1.isEmpty()) {\n cb(buffer$1.take());\n } else {\n takers.push(cb);\n\n cb.cancel = function () {\n remove(takers, cb);\n };\n }\n }\n\n function flush(cb) {\n if (false) {}\n\n if (closed && buffer$1.isEmpty()) {\n cb(END);\n return;\n }\n\n cb(buffer$1.flush());\n }\n\n function close() {\n if (false) {}\n\n if (closed) {\n return;\n }\n\n closed = true;\n var arr = takers;\n takers = [];\n\n for (var i = 0, len = arr.length; i < len; i++) {\n var taker = arr[i];\n taker(END);\n }\n }\n\n return {\n take: take,\n put: put,\n flush: flush,\n close: close\n };\n}\nfunction eventChannel(subscribe, buffer) {\n if (buffer === void 0) {\n buffer = none();\n }\n\n var closed = false;\n var unsubscribe;\n var chan = redux_saga_core_esm_channel(buffer);\n\n var close = function close() {\n if (closed) {\n return;\n }\n\n closed = true;\n\n if (func(unsubscribe)) {\n unsubscribe();\n }\n\n chan.close();\n };\n\n unsubscribe = subscribe(function (input) {\n if (redux_saga_core_esm_isEnd(input)) {\n close();\n return;\n }\n\n chan.put(input);\n });\n\n if (false) {}\n\n unsubscribe = once(unsubscribe);\n\n if (closed) {\n unsubscribe();\n }\n\n return {\n take: chan.take,\n flush: chan.flush,\n close: close\n };\n}\nfunction multicastChannel() {\n var _ref;\n\n var closed = false;\n var currentTakers = [];\n var nextTakers = currentTakers;\n\n function checkForbiddenStates() {\n if (closed && nextTakers.length) {\n throw internalErr(CLOSED_CHANNEL_WITH_TAKERS);\n }\n }\n\n var ensureCanMutateNextTakers = function ensureCanMutateNextTakers() {\n if (nextTakers !== currentTakers) {\n return;\n }\n\n nextTakers = currentTakers.slice();\n };\n\n var close = function close() {\n if (false) {}\n\n closed = true;\n var takers = currentTakers = nextTakers;\n nextTakers = [];\n takers.forEach(function (taker) {\n taker(END);\n });\n };\n\n return _ref = {}, _ref[MULTICAST] = true, _ref.put = function put(input) {\n if (false) {}\n\n if (closed) {\n return;\n }\n\n if (redux_saga_core_esm_isEnd(input)) {\n close();\n return;\n }\n\n var takers = currentTakers = nextTakers;\n\n for (var i = 0, len = takers.length; i < len; i++) {\n var taker = takers[i];\n\n if (taker[MATCH](input)) {\n taker.cancel();\n taker(input);\n }\n }\n }, _ref.take = function take(cb, matcher) {\n if (matcher === void 0) {\n matcher = redux_saga_core_esm_wildcard;\n }\n\n if (false) {}\n\n if (closed) {\n cb(END);\n return;\n }\n\n cb[MATCH] = matcher;\n ensureCanMutateNextTakers();\n nextTakers.push(cb);\n cb.cancel = once(function () {\n ensureCanMutateNextTakers();\n remove(nextTakers, cb);\n });\n }, _ref.close = close, _ref;\n}\nfunction stdChannel() {\n var chan = multicastChannel();\n var put = chan.put;\n\n chan.put = function (input) {\n if (input[SAGA_ACTION]) {\n put(input);\n return;\n }\n\n asap(function () {\n put(input);\n });\n };\n\n return chan;\n}\n\nvar RUNNING = 0;\nvar redux_saga_core_esm_CANCELLED = 1;\nvar ABORTED = 2;\nvar DONE = 3;\n\nfunction resolvePromise(promise, cb) {\n var cancelPromise = promise[CANCEL];\n\n if (func(cancelPromise)) {\n cb.cancel = cancelPromise;\n }\n\n promise.then(cb, function (error) {\n cb(error, true);\n });\n}\n\nvar current = 0;\nvar nextSagaId = (function () {\n return ++current;\n});\n\nvar _effectRunnerMap;\n\nfunction getIteratorMetaInfo(iterator, fn) {\n if (iterator.isSagaIterator) {\n return {\n name: iterator.meta.name\n };\n }\n\n return getMetaInfo(fn);\n}\n\nfunction createTaskIterator(_ref) {\n var context = _ref.context,\n fn = _ref.fn,\n args = _ref.args;\n\n // catch synchronous failures; see #152 and #441\n try {\n var result = fn.apply(context, args); // i.e. a generator function returns an iterator\n\n if (redux_saga_is_esm_iterator(result)) {\n return result;\n }\n\n var resolved = false;\n\n var next = function next(arg) {\n if (!resolved) {\n resolved = true; // Only promises returned from fork will be interpreted. See #1573\n\n return {\n value: result,\n done: !redux_saga_is_esm_promise(result)\n };\n } else {\n return {\n value: arg,\n done: true\n };\n }\n };\n\n return makeIterator(next);\n } catch (err) {\n // do not bubble up synchronous failures for detached forks\n // instead create a failed task. See #152 and #441\n return makeIterator(function () {\n throw err;\n });\n }\n}\n\nfunction runPutEffect(env, _ref2, cb) {\n var channel = _ref2.channel,\n action = _ref2.action,\n resolve = _ref2.resolve;\n\n /**\n Schedule the put in case another saga is holding a lock.\n The put will be executed atomically. ie nested puts will execute after\n this put has terminated.\n **/\n asap(function () {\n var result;\n\n try {\n result = (channel ? channel.put : env.dispatch)(action);\n } catch (error) {\n cb(error, true);\n return;\n }\n\n if (resolve && redux_saga_is_esm_promise(result)) {\n resolvePromise(result, cb);\n } else {\n cb(result);\n }\n }); // Put effects are non cancellables\n}\n\nfunction runTakeEffect(env, _ref3, cb) {\n var _ref3$channel = _ref3.channel,\n channel = _ref3$channel === void 0 ? env.channel : _ref3$channel,\n pattern = _ref3.pattern,\n maybe = _ref3.maybe;\n\n var takeCb = function takeCb(input) {\n if (input instanceof Error) {\n cb(input, true);\n return;\n }\n\n if (redux_saga_core_esm_isEnd(input) && !maybe) {\n cb(TERMINATE);\n return;\n }\n\n cb(input);\n };\n\n try {\n channel.take(takeCb, notUndef(pattern) ? redux_saga_core_esm_matcher(pattern) : null);\n } catch (err) {\n cb(err, true);\n return;\n }\n\n cb.cancel = takeCb.cancel;\n}\n\nfunction runCallEffect(env, _ref4, cb, _ref5) {\n var context = _ref4.context,\n fn = _ref4.fn,\n args = _ref4.args;\n var task = _ref5.task;\n\n // catch synchronous failures; see #152\n try {\n var result = fn.apply(context, args);\n\n if (redux_saga_is_esm_promise(result)) {\n resolvePromise(result, cb);\n return;\n }\n\n if (redux_saga_is_esm_iterator(result)) {\n // resolve iterator\n proc(env, result, task.context, current, getMetaInfo(fn),\n /* isRoot */\n false, cb);\n return;\n }\n\n cb(result);\n } catch (error) {\n cb(error, true);\n }\n}\n\nfunction runCPSEffect(env, _ref6, cb) {\n var context = _ref6.context,\n fn = _ref6.fn,\n args = _ref6.args;\n\n // CPS (ie node style functions) can define their own cancellation logic\n // by setting cancel field on the cb\n // catch synchronous failures; see #152\n try {\n var cpsCb = function cpsCb(err, res) {\n if (undef(err)) {\n cb(res);\n } else {\n cb(err, true);\n }\n };\n\n fn.apply(context, args.concat(cpsCb));\n\n if (cpsCb.cancel) {\n cb.cancel = cpsCb.cancel;\n }\n } catch (error) {\n cb(error, true);\n }\n}\n\nfunction runForkEffect(env, _ref7, cb, _ref8) {\n var context = _ref7.context,\n fn = _ref7.fn,\n args = _ref7.args,\n detached = _ref7.detached;\n var parent = _ref8.task;\n var taskIterator = createTaskIterator({\n context: context,\n fn: fn,\n args: args\n });\n var meta = getIteratorMetaInfo(taskIterator, fn);\n immediately(function () {\n var child = proc(env, taskIterator, parent.context, current, meta, detached, undefined);\n\n if (detached) {\n cb(child);\n } else {\n if (child.isRunning()) {\n parent.queue.addTask(child);\n cb(child);\n } else if (child.isAborted()) {\n parent.queue.abort(child.error());\n } else {\n cb(child);\n }\n }\n }); // Fork effects are non cancellables\n}\n\nfunction runJoinEffect(env, taskOrTasks, cb, _ref9) {\n var task = _ref9.task;\n\n var joinSingleTask = function joinSingleTask(taskToJoin, cb) {\n if (taskToJoin.isRunning()) {\n var joiner = {\n task: task,\n cb: cb\n };\n\n cb.cancel = function () {\n if (taskToJoin.isRunning()) remove(taskToJoin.joiners, joiner);\n };\n\n taskToJoin.joiners.push(joiner);\n } else {\n if (taskToJoin.isAborted()) {\n cb(taskToJoin.error(), true);\n } else {\n cb(taskToJoin.result());\n }\n }\n };\n\n if (array(taskOrTasks)) {\n if (taskOrTasks.length === 0) {\n cb([]);\n return;\n }\n\n var childCallbacks = createAllStyleChildCallbacks(taskOrTasks, cb);\n taskOrTasks.forEach(function (t, i) {\n joinSingleTask(t, childCallbacks[i]);\n });\n } else {\n joinSingleTask(taskOrTasks, cb);\n }\n}\n\nfunction cancelSingleTask(taskToCancel) {\n if (taskToCancel.isRunning()) {\n taskToCancel.cancel();\n }\n}\n\nfunction runCancelEffect(env, taskOrTasks, cb, _ref10) {\n var task = _ref10.task;\n\n if (taskOrTasks === SELF_CANCELLATION) {\n cancelSingleTask(task);\n } else if (array(taskOrTasks)) {\n taskOrTasks.forEach(cancelSingleTask);\n } else {\n cancelSingleTask(taskOrTasks);\n }\n\n cb(); // cancel effects are non cancellables\n}\n\nfunction runAllEffect(env, effects, cb, _ref11) {\n var digestEffect = _ref11.digestEffect;\n var effectId = current;\n var keys = Object.keys(effects);\n\n if (keys.length === 0) {\n cb(array(effects) ? [] : {});\n return;\n }\n\n var childCallbacks = createAllStyleChildCallbacks(effects, cb);\n keys.forEach(function (key) {\n digestEffect(effects[key], effectId, childCallbacks[key], key);\n });\n}\n\nfunction runRaceEffect(env, effects, cb, _ref12) {\n var digestEffect = _ref12.digestEffect;\n var effectId = current;\n var keys = Object.keys(effects);\n var response = array(effects) ? createEmptyArray(keys.length) : {};\n var childCbs = {};\n var completed = false;\n keys.forEach(function (key) {\n var chCbAtKey = function chCbAtKey(res, isErr) {\n if (completed) {\n return;\n }\n\n if (isErr || shouldComplete(res)) {\n // Race Auto cancellation\n cb.cancel();\n cb(res, isErr);\n } else {\n cb.cancel();\n completed = true;\n response[key] = res;\n cb(response);\n }\n };\n\n chCbAtKey.cancel = noop;\n childCbs[key] = chCbAtKey;\n });\n\n cb.cancel = function () {\n // prevents unnecessary cancellation\n if (!completed) {\n completed = true;\n keys.forEach(function (key) {\n return childCbs[key].cancel();\n });\n }\n };\n\n keys.forEach(function (key) {\n if (completed) {\n return;\n }\n\n digestEffect(effects[key], effectId, childCbs[key], key);\n });\n}\n\nfunction runSelectEffect(env, _ref13, cb) {\n var selector = _ref13.selector,\n args = _ref13.args;\n\n try {\n var state = selector.apply(void 0, [env.getState()].concat(args));\n cb(state);\n } catch (error) {\n cb(error, true);\n }\n}\n\nfunction runChannelEffect(env, _ref14, cb) {\n var pattern = _ref14.pattern,\n buffer = _ref14.buffer;\n var chan = redux_saga_core_esm_channel(buffer);\n var match = redux_saga_core_esm_matcher(pattern);\n\n var taker = function taker(action) {\n if (!redux_saga_core_esm_isEnd(action)) {\n env.channel.take(taker, match);\n }\n\n chan.put(action);\n };\n\n var close = chan.close;\n\n chan.close = function () {\n taker.cancel();\n close();\n };\n\n env.channel.take(taker, match);\n cb(chan);\n}\n\nfunction runCancelledEffect(env, data, cb, _ref15) {\n var task = _ref15.task;\n cb(task.isCancelled());\n}\n\nfunction runFlushEffect(env, channel, cb) {\n channel.flush(cb);\n}\n\nfunction runGetContextEffect(env, prop, cb, _ref16) {\n var task = _ref16.task;\n cb(task.context[prop]);\n}\n\nfunction runSetContextEffect(env, props, cb, _ref17) {\n var task = _ref17.task;\n io_6de156f3_assignWithSymbols(task.context, props);\n cb();\n}\n\nvar effectRunnerMap = (_effectRunnerMap = {}, _effectRunnerMap[TAKE] = runTakeEffect, _effectRunnerMap[PUT] = runPutEffect, _effectRunnerMap[ALL] = runAllEffect, _effectRunnerMap[RACE] = runRaceEffect, _effectRunnerMap[CALL] = runCallEffect, _effectRunnerMap[CPS] = runCPSEffect, _effectRunnerMap[FORK] = runForkEffect, _effectRunnerMap[JOIN] = runJoinEffect, _effectRunnerMap[io_6de156f3_CANCEL] = runCancelEffect, _effectRunnerMap[SELECT] = runSelectEffect, _effectRunnerMap[ACTION_CHANNEL] = runChannelEffect, _effectRunnerMap[CANCELLED] = runCancelledEffect, _effectRunnerMap[FLUSH] = runFlushEffect, _effectRunnerMap[GET_CONTEXT] = runGetContextEffect, _effectRunnerMap[SET_CONTEXT] = runSetContextEffect, _effectRunnerMap);\n\n/**\n Used to track a parent task and its forks\n In the fork model, forked tasks are attached by default to their parent\n We model this using the concept of Parent task && main Task\n main task is the main flow of the current Generator, the parent tasks is the\n aggregation of the main tasks + all its forked tasks.\n Thus the whole model represents an execution tree with multiple branches (vs the\n linear execution tree in sequential (non parallel) programming)\n\n A parent tasks has the following semantics\n - It completes if all its forks either complete or all cancelled\n - If it's cancelled, all forks are cancelled as well\n - It aborts if any uncaught error bubbles up from forks\n - If it completes, the return value is the one returned by the main task\n **/\n\nfunction forkQueue(mainTask, onAbort, cont) {\n var tasks = [];\n var result;\n var completed = false;\n addTask(mainTask);\n\n var getTasks = function getTasks() {\n return tasks;\n };\n\n function abort(err) {\n onAbort();\n cancelAll();\n cont(err, true);\n }\n\n function addTask(task) {\n tasks.push(task);\n\n task.cont = function (res, isErr) {\n if (completed) {\n return;\n }\n\n remove(tasks, task);\n task.cont = noop;\n\n if (isErr) {\n abort(res);\n } else {\n if (task === mainTask) {\n result = res;\n }\n\n if (!tasks.length) {\n completed = true;\n cont(result);\n }\n }\n };\n }\n\n function cancelAll() {\n if (completed) {\n return;\n }\n\n completed = true;\n tasks.forEach(function (t) {\n t.cont = noop;\n t.cancel();\n });\n tasks = [];\n }\n\n return {\n addTask: addTask,\n cancelAll: cancelAll,\n abort: abort,\n getTasks: getTasks\n };\n}\n\n// there can be only a single saga error created at any given moment\n\nfunction formatLocation(fileName, lineNumber) {\n return fileName + \"?\" + lineNumber;\n}\n\nfunction effectLocationAsString(effect) {\n var location = getLocation(effect);\n\n if (location) {\n var code = location.code,\n fileName = location.fileName,\n lineNumber = location.lineNumber;\n var source = code + \" \" + formatLocation(fileName, lineNumber);\n return source;\n }\n\n return '';\n}\n\nfunction sagaLocationAsString(sagaMeta) {\n var name = sagaMeta.name,\n location = sagaMeta.location;\n\n if (location) {\n return name + \" \" + formatLocation(location.fileName, location.lineNumber);\n }\n\n return name;\n}\n\nfunction cancelledTasksAsString(sagaStack) {\n var cancelledTasks = flatMap(function (i) {\n return i.cancelledTasks;\n }, sagaStack);\n\n if (!cancelledTasks.length) {\n return '';\n }\n\n return ['Tasks cancelled due to error:'].concat(cancelledTasks).join('\\n');\n}\n\nvar crashedEffect = null;\nvar redux_saga_core_esm_sagaStack = [];\nvar addSagaFrame = function addSagaFrame(frame) {\n frame.crashedEffect = crashedEffect;\n redux_saga_core_esm_sagaStack.push(frame);\n};\nvar clear = function clear() {\n crashedEffect = null;\n redux_saga_core_esm_sagaStack.length = 0;\n}; // this sets crashed effect for the soon-to-be-reported saga frame\n// this slightly streatches the singleton nature of this module into wrong direction\n// as it's even less obvious what's the data flow here, but it is what it is for now\n\nvar setCrashedEffect = function setCrashedEffect(effect) {\n crashedEffect = effect;\n};\n/**\n @returns {string}\n\n @example\n The above error occurred in task errorInPutSaga {pathToFile}\n when executing effect put({type: 'REDUCER_ACTION_ERROR_IN_PUT'}) {pathToFile}\n created by fetchSaga {pathToFile}\n created by rootSaga {pathToFile}\n*/\n\nvar redux_saga_core_esm_toString = function toString() {\n var firstSaga = redux_saga_core_esm_sagaStack[0],\n otherSagas = redux_saga_core_esm_sagaStack.slice(1);\n var crashedEffectLocation = firstSaga.crashedEffect ? effectLocationAsString(firstSaga.crashedEffect) : null;\n var errorMessage = \"The above error occurred in task \" + sagaLocationAsString(firstSaga.meta) + (crashedEffectLocation ? \" \\n when executing effect \" + crashedEffectLocation : '');\n return [errorMessage].concat(otherSagas.map(function (s) {\n return \" created by \" + sagaLocationAsString(s.meta);\n }), [cancelledTasksAsString(redux_saga_core_esm_sagaStack)]).join('\\n');\n};\n\nfunction newTask(env, mainTask, parentContext, parentEffectId, meta, isRoot, cont) {\n var _task;\n\n if (cont === void 0) {\n cont = noop;\n }\n\n var status = RUNNING;\n var taskResult;\n var taskError;\n var deferredEnd = null;\n var cancelledDueToErrorTasks = [];\n var context = Object.create(parentContext);\n var queue = forkQueue(mainTask, function onAbort() {\n cancelledDueToErrorTasks.push.apply(cancelledDueToErrorTasks, queue.getTasks().map(function (t) {\n return t.meta.name;\n }));\n }, end);\n /**\n This may be called by a parent generator to trigger/propagate cancellation\n cancel all pending tasks (including the main task), then end the current task.\n Cancellation propagates down to the whole execution tree held by this Parent task\n It's also propagated to all joiners of this task and their execution tree/joiners\n Cancellation is noop for terminated/Cancelled tasks tasks\n **/\n\n function cancel() {\n if (status === RUNNING) {\n // Setting status to CANCELLED does not necessarily mean that the task/iterators are stopped\n // effects in the iterator's finally block will still be executed\n status = redux_saga_core_esm_CANCELLED;\n queue.cancelAll(); // Ending with a TASK_CANCEL will propagate the Cancellation to all joiners\n\n end(TASK_CANCEL, false);\n }\n }\n\n function end(result, isErr) {\n if (!isErr) {\n // The status here may be RUNNING or CANCELLED\n // If the status is CANCELLED, then we do not need to change it here\n if (result === TASK_CANCEL) {\n status = redux_saga_core_esm_CANCELLED;\n } else if (status !== redux_saga_core_esm_CANCELLED) {\n status = DONE;\n }\n\n taskResult = result;\n deferredEnd && deferredEnd.resolve(result);\n } else {\n status = ABORTED;\n addSagaFrame({\n meta: meta,\n cancelledTasks: cancelledDueToErrorTasks\n });\n\n if (task.isRoot) {\n var sagaStack = redux_saga_core_esm_toString(); // we've dumped the saga stack to string and are passing it to user's code\n // we know that it won't be needed anymore and we need to clear it\n\n clear();\n env.onError(result, {\n sagaStack: sagaStack\n });\n }\n\n taskError = result;\n deferredEnd && deferredEnd.reject(result);\n }\n\n task.cont(result, isErr);\n task.joiners.forEach(function (joiner) {\n joiner.cb(result, isErr);\n });\n task.joiners = null;\n }\n\n function setContext(props) {\n if (false) {}\n\n io_6de156f3_assignWithSymbols(context, props);\n }\n\n function toPromise() {\n if (deferredEnd) {\n return deferredEnd.promise;\n }\n\n deferredEnd = redux_saga_deferred_esm();\n\n if (status === ABORTED) {\n deferredEnd.reject(taskError);\n } else if (status !== RUNNING) {\n deferredEnd.resolve(taskResult);\n }\n\n return deferredEnd.promise;\n }\n\n var task = (_task = {}, _task[TASK] = true, _task.id = parentEffectId, _task.meta = meta, _task.isRoot = isRoot, _task.context = context, _task.joiners = [], _task.queue = queue, _task.cancel = cancel, _task.cont = cont, _task.end = end, _task.setContext = setContext, _task.toPromise = toPromise, _task.isRunning = function isRunning() {\n return status === RUNNING;\n }, _task.isCancelled = function isCancelled() {\n return status === redux_saga_core_esm_CANCELLED || status === RUNNING && mainTask.status === redux_saga_core_esm_CANCELLED;\n }, _task.isAborted = function isAborted() {\n return status === ABORTED;\n }, _task.result = function result() {\n return taskResult;\n }, _task.error = function error() {\n return taskError;\n }, _task);\n return task;\n}\n\nfunction proc(env, iterator$1, parentContext, parentEffectId, meta, isRoot, cont) {\n if (false) {}\n\n var finalRunEffect = env.finalizeRunEffect(runEffect);\n /**\n Tracks the current effect cancellation\n Each time the generator progresses. calling runEffect will set a new value\n on it. It allows propagating cancellation to child effects\n **/\n\n next.cancel = noop;\n /** Creates a main task to track the main flow */\n\n var mainTask = {\n meta: meta,\n cancel: cancelMain,\n status: RUNNING\n };\n /**\n Creates a new task descriptor for this generator.\n A task is the aggregation of it's mainTask and all it's forked tasks.\n **/\n\n var task = newTask(env, mainTask, parentContext, parentEffectId, meta, isRoot, cont);\n var executingContext = {\n task: task,\n digestEffect: digestEffect\n };\n /**\n cancellation of the main task. We'll simply resume the Generator with a TASK_CANCEL\n **/\n\n function cancelMain() {\n if (mainTask.status === RUNNING) {\n mainTask.status = redux_saga_core_esm_CANCELLED;\n next(TASK_CANCEL);\n }\n }\n /**\n attaches cancellation logic to this task's continuation\n this will permit cancellation to propagate down the call chain\n **/\n\n\n if (cont) {\n cont.cancel = task.cancel;\n } // kicks up the generator\n\n\n next(); // then return the task descriptor to the caller\n\n return task;\n /**\n * This is the generator driver\n * It's a recursive async/continuation function which calls itself\n * until the generator terminates or throws\n * @param {internal commands(TASK_CANCEL | TERMINATE) | any} arg - value, generator will be resumed with.\n * @param {boolean} isErr - the flag shows if effect finished with an error\n *\n * receives either (command | effect result, false) or (any thrown thing, true)\n */\n\n function next(arg, isErr) {\n try {\n var result;\n\n if (isErr) {\n result = iterator$1.throw(arg); // user handled the error, we can clear bookkept values\n\n clear();\n } else if (io_6de156f3_shouldCancel(arg)) {\n /**\n getting TASK_CANCEL automatically cancels the main task\n We can get this value here\n - By cancelling the parent task manually\n - By joining a Cancelled task\n **/\n mainTask.status = redux_saga_core_esm_CANCELLED;\n /**\n Cancels the current effect; this will propagate the cancellation down to any called tasks\n **/\n\n next.cancel();\n /**\n If this Generator has a `return` method then invokes it\n This will jump to the finally block\n **/\n\n result = func(iterator$1.return) ? iterator$1.return(TASK_CANCEL) : {\n done: true,\n value: TASK_CANCEL\n };\n } else if (io_6de156f3_shouldTerminate(arg)) {\n // We get TERMINATE flag, i.e. by taking from a channel that ended using `take` (and not `takem` used to trap End of channels)\n result = func(iterator$1.return) ? iterator$1.return() : {\n done: true\n };\n } else {\n result = iterator$1.next(arg);\n }\n\n if (!result.done) {\n digestEffect(result.value, parentEffectId, next);\n } else {\n /**\n This Generator has ended, terminate the main task and notify the fork queue\n **/\n if (mainTask.status !== redux_saga_core_esm_CANCELLED) {\n mainTask.status = DONE;\n }\n\n mainTask.cont(result.value);\n }\n } catch (error) {\n if (mainTask.status === redux_saga_core_esm_CANCELLED) {\n throw error;\n }\n\n mainTask.status = ABORTED;\n mainTask.cont(error, true);\n }\n }\n\n function runEffect(effect, effectId, currCb) {\n /**\n each effect runner must attach its own logic of cancellation to the provided callback\n it allows this generator to propagate cancellation downward.\n ATTENTION! effect runners must setup the cancel logic by setting cb.cancel = [cancelMethod]\n And the setup must occur before calling the callback\n This is a sort of inversion of control: called async functions are responsible\n of completing the flow by calling the provided continuation; while caller functions\n are responsible for aborting the current flow by calling the attached cancel function\n Library users can attach their own cancellation logic to promises by defining a\n promise[CANCEL] method in their returned promises\n ATTENTION! calling cancel must have no effect on an already completed or cancelled effect\n **/\n if (redux_saga_is_esm_promise(effect)) {\n resolvePromise(effect, currCb);\n } else if (redux_saga_is_esm_iterator(effect)) {\n // resolve iterator\n proc(env, effect, task.context, effectId, meta,\n /* isRoot */\n false, currCb);\n } else if (effect && effect[IO]) {\n var effectRunner = effectRunnerMap[effect.type];\n effectRunner(env, effect.payload, currCb, executingContext);\n } else {\n // anything else returned as is\n currCb(effect);\n }\n }\n\n function digestEffect(effect, parentEffectId, cb, label) {\n if (label === void 0) {\n label = '';\n }\n\n var effectId = nextSagaId();\n env.sagaMonitor && env.sagaMonitor.effectTriggered({\n effectId: effectId,\n parentEffectId: parentEffectId,\n label: label,\n effect: effect\n });\n /**\n completion callback and cancel callback are mutually exclusive\n We can't cancel an already completed effect\n And We can't complete an already cancelled effectId\n **/\n\n var effectSettled; // Completion callback passed to the appropriate effect runner\n\n function currCb(res, isErr) {\n if (effectSettled) {\n return;\n }\n\n effectSettled = true;\n cb.cancel = noop; // defensive measure\n\n if (env.sagaMonitor) {\n if (isErr) {\n env.sagaMonitor.effectRejected(effectId, res);\n } else {\n env.sagaMonitor.effectResolved(effectId, res);\n }\n }\n\n if (isErr) {\n setCrashedEffect(effect);\n }\n\n cb(res, isErr);\n } // tracks down the current cancel\n\n\n currCb.cancel = noop; // setup cancellation logic on the parent cb\n\n cb.cancel = function () {\n // prevents cancelling an already completed effect\n if (effectSettled) {\n return;\n }\n\n effectSettled = true;\n currCb.cancel(); // propagates cancel downward\n\n currCb.cancel = noop; // defensive measure\n\n env.sagaMonitor && env.sagaMonitor.effectCancelled(effectId);\n };\n\n finalRunEffect(effect, effectId, currCb);\n }\n}\n\nvar RUN_SAGA_SIGNATURE = 'runSaga(options, saga, ...args)';\nvar NON_GENERATOR_ERR = RUN_SAGA_SIGNATURE + \": saga argument must be a Generator function!\";\nfunction runSaga(_ref, saga) {\n var _ref$channel = _ref.channel,\n channel = _ref$channel === void 0 ? stdChannel() : _ref$channel,\n dispatch = _ref.dispatch,\n getState = _ref.getState,\n _ref$context = _ref.context,\n context = _ref$context === void 0 ? {} : _ref$context,\n sagaMonitor = _ref.sagaMonitor,\n effectMiddlewares = _ref.effectMiddlewares,\n _ref$onError = _ref.onError,\n onError = _ref$onError === void 0 ? logError : _ref$onError;\n\n if (false) {}\n\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var iterator$1 = saga.apply(void 0, args);\n\n if (false) {}\n\n var effectId = nextSagaId();\n\n if (sagaMonitor) {\n // monitors are expected to have a certain interface, let's fill-in any missing ones\n sagaMonitor.rootSagaStarted = sagaMonitor.rootSagaStarted || noop;\n sagaMonitor.effectTriggered = sagaMonitor.effectTriggered || noop;\n sagaMonitor.effectResolved = sagaMonitor.effectResolved || noop;\n sagaMonitor.effectRejected = sagaMonitor.effectRejected || noop;\n sagaMonitor.effectCancelled = sagaMonitor.effectCancelled || noop;\n sagaMonitor.actionDispatched = sagaMonitor.actionDispatched || noop;\n sagaMonitor.rootSagaStarted({\n effectId: effectId,\n saga: saga,\n args: args\n });\n }\n\n if (false) { var MIDDLEWARE_TYPE_ERROR; }\n\n var finalizeRunEffect;\n\n if (effectMiddlewares) {\n var middleware = redux[\"d\" /* compose */].apply(void 0, effectMiddlewares);\n\n finalizeRunEffect = function finalizeRunEffect(runEffect) {\n return function (effect, effectId, currCb) {\n var plainRunEffect = function plainRunEffect(eff) {\n return runEffect(eff, effectId, currCb);\n };\n\n return middleware(plainRunEffect)(effect);\n };\n };\n } else {\n finalizeRunEffect = identity;\n }\n\n var env = {\n channel: channel,\n dispatch: io_6de156f3_wrapSagaDispatch(dispatch),\n getState: getState,\n sagaMonitor: sagaMonitor,\n onError: onError,\n finalizeRunEffect: finalizeRunEffect\n };\n return immediately(function () {\n var task = proc(env, iterator$1, context, effectId, getMetaInfo(saga),\n /* isRoot */\n true, undefined);\n\n if (sagaMonitor) {\n sagaMonitor.effectResolved(effectId, task);\n }\n\n return task;\n });\n}\n\nfunction sagaMiddlewareFactory(_temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$context = _ref.context,\n context = _ref$context === void 0 ? {} : _ref$context,\n _ref$channel = _ref.channel,\n channel = _ref$channel === void 0 ? stdChannel() : _ref$channel,\n sagaMonitor = _ref.sagaMonitor,\n options = Object(objectWithoutPropertiesLoose[\"a\" /* default */])(_ref, [\"context\", \"channel\", \"sagaMonitor\"]);\n\n var boundRunSaga;\n\n if (false) {}\n\n function sagaMiddleware(_ref2) {\n var getState = _ref2.getState,\n dispatch = _ref2.dispatch;\n boundRunSaga = runSaga.bind(null, Object(esm_extends[\"a\" /* default */])({}, options, {\n context: context,\n channel: channel,\n dispatch: dispatch,\n getState: getState,\n sagaMonitor: sagaMonitor\n }));\n return function (next) {\n return function (action) {\n if (sagaMonitor && sagaMonitor.actionDispatched) {\n sagaMonitor.actionDispatched(action);\n }\n\n var result = next(action); // hit reducers\n\n channel.put(action);\n return result;\n };\n };\n }\n\n sagaMiddleware.run = function () {\n if (false) {}\n\n return boundRunSaga.apply(void 0, arguments);\n };\n\n sagaMiddleware.setContext = function (props) {\n if (false) {}\n\n io_6de156f3_assignWithSymbols(context, props);\n };\n\n return sagaMiddleware;\n}\n\n/* harmony default export */ var redux_saga_core_esm = (sagaMiddlewareFactory);\n\n\n// CONCATENATED MODULE: ./node_modules/redux-saga/dist/redux-saga-core-npm-proxy.esm.js\n\n\n\n\n\n/* harmony default export */ var redux_saga_core_npm_proxy_esm = (redux_saga_core_esm);\n\n// EXTERNAL MODULE: ../configs/build/index.js\nvar build = __webpack_require__(\"4VI5\");\n\n// EXTERNAL MODULE: ../types/build/index.js\nvar types_build = __webpack_require__(\"v/x1\");\n\n// CONCATENATED MODULE: ./src/state/slices/settingsInitialState.ts\n\n\nvar settingsInitialState = {\n autoGroupTiles: 'left',\n configId: build[\"scrabble\"].id,\n locale: types_build[\"Locale\"].EN_US\n};\n/* harmony default export */ var slices_settingsInitialState = (settingsInitialState);\n// CONCATENATED MODULE: ./src/state/slices/boardInitialState.ts\n\n\n\nvar configId = slices_settingsInitialState.configId,\n boardInitialState_locale = slices_settingsInitialState.locale;\n\nvar _getLocaleConfig = Object(build[\"getLocaleConfig\"])(configId, boardInitialState_locale),\n boardHeight = _getLocaleConfig.boardHeight,\n boardWidth = _getLocaleConfig.boardWidth;\n\nvar boardInitialState = types_build[\"Board\"].create(boardWidth, boardHeight);\n/* harmony default export */ var slices_boardInitialState = (boardInitialState);\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js\nvar defineProperty = __webpack_require__(\"rePB\");\n\n// EXTERNAL MODULE: ../constants/build/index.js\nvar constants_build = __webpack_require__(\"U5qN\");\n\n// CONCATENATED MODULE: ./src/state/slices/boardSlice.ts\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty[\"a\" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\n\n\nvar boardSlice = createSlice({\n initialState: slices_boardInitialState,\n name: 'board',\n reducers: {\n applyResult: function applyResult(state, action) {\n var newBoard = state.clone();\n var result = action.payload;\n result.cells.forEach(function (cell) {\n newBoard.updateCell(cell.x, cell.y, function () {\n return new types_build[\"Cell\"](_objectSpread(_objectSpread({}, cell), {}, {\n isEmpty: false\n }));\n });\n });\n return newBoard;\n },\n changeCellValue: function changeCellValue(state, action) {\n var newBoard = state.clone();\n var _action$payload = action.payload,\n value = _action$payload.value,\n x = _action$payload.x,\n y = _action$payload.y;\n var isEmpty = !value || value === constants_build[\"EMPTY_CELL\"];\n var tile = isEmpty ? types_build[\"Tile\"].Null : new types_build[\"Tile\"]({\n character: value\n });\n newBoard.updateCell(x, y, function (cell) {\n return new types_build[\"Cell\"](_objectSpread(_objectSpread({}, cell), {}, {\n isEmpty: isEmpty,\n tile: tile\n }));\n });\n return newBoard;\n },\n change: function change(_state, action) {\n var board = action.payload;\n return board;\n },\n init: function init(_state, action) {\n var board = action.payload;\n return board;\n },\n reset: function reset() {\n return slices_boardInitialState;\n },\n toggleCellIsBlank: function toggleCellIsBlank(state, action) {\n var newBoard = state.clone();\n var _action$payload2 = action.payload,\n x = _action$payload2.x,\n y = _action$payload2.y;\n newBoard.updateCell(x, y, function (cell) {\n var tile = cell.isEmpty ? cell.tile : new types_build[\"Tile\"](_objectSpread(_objectSpread({}, cell.tile), {}, {\n isBlank: !cell.tile.isBlank\n }));\n return new types_build[\"Cell\"](_objectSpread(_objectSpread({}, cell), {}, {\n tile: tile\n }));\n });\n return newBoard;\n }\n }\n});\n/* harmony default export */ var slices_boardSlice = (boardSlice);\n// CONCATENATED MODULE: ./src/state/slices/dictionaryInitialState.ts\nvar dictionaryInitialState = {\n definitions: [],\n input: '',\n isAllowed: null,\n isLoading: false,\n word: undefined\n};\n/* harmony default export */ var slices_dictionaryInitialState = (dictionaryInitialState);\n// CONCATENATED MODULE: ./src/state/slices/dictionarySlice.ts\n\n\nfunction dictionarySlice_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction dictionarySlice_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { dictionarySlice_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty[\"a\" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { dictionarySlice_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\nvar dictionarySlice = createSlice({\n initialState: slices_dictionaryInitialState,\n name: 'dictionary',\n reducers: {\n changeInput: function changeInput(state, action) {\n return dictionarySlice_objectSpread(dictionarySlice_objectSpread({}, state), {}, {\n input: action.payload\n });\n },\n reset: function reset() {\n return slices_dictionaryInitialState;\n },\n submit: function submit(state) {\n return dictionarySlice_objectSpread(dictionarySlice_objectSpread({}, state), {}, {\n definitions: slices_dictionaryInitialState.definitions,\n isAllowed: slices_dictionaryInitialState.isAllowed,\n isLoading: true,\n word: slices_dictionaryInitialState.word\n });\n },\n submitFailure: function submitFailure(state) {\n return dictionarySlice_objectSpread(dictionarySlice_objectSpread({}, state), {}, {\n definitions: slices_dictionaryInitialState.definitions,\n isAllowed: false,\n isLoading: false,\n word: state.input\n });\n },\n submitSuccess: function submitSuccess(state, action) {\n return dictionarySlice_objectSpread(dictionarySlice_objectSpread({}, state), {}, {\n definitions: action.payload.definitions,\n isAllowed: action.payload.isAllowed,\n isLoading: false,\n word: action.payload.word\n });\n }\n }\n});\n/* harmony default export */ var slices_dictionarySlice = (dictionarySlice);\n// CONCATENATED MODULE: ./src/state/slices/rackInitialState.ts\nvar rackInitialState = [null, null, null, null, null, null, null];\n/* harmony default export */ var slices_rackInitialState = (rackInitialState);\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 3 modules\nvar toConsumableArray = __webpack_require__(\"KQm4\");\n\n// EXTERNAL MODULE: ./src/lib/index.ts + 27 modules\nvar lib = __webpack_require__(\"psLn\");\n\n// CONCATENATED MODULE: ./src/state/slices/rackSlice.ts\n\n\n\n\nvar rackSlice = createSlice({\n initialState: slices_rackInitialState,\n name: 'rack',\n reducers: {\n change: function change(_state, action) {\n var rack = action.payload;\n return rack;\n },\n changeCharacter: function changeCharacter(state, action) {\n var _action$payload = action.payload,\n character = _action$payload.character,\n index = _action$payload.index;\n return [].concat(Object(toConsumableArray[\"a\" /* default */])(state.slice(0, index)), [character], Object(toConsumableArray[\"a\" /* default */])(state.slice(index + 1)));\n },\n groupTiles: function groupTiles(state, action) {\n var direction = action.payload;\n\n if (direction === null) {\n return state;\n }\n\n var nullMovingComparator = Object(lib[\"e\" /* createNullMovingComparator */])(Object(lib[\"l\" /* inverseDirection */])(direction));\n\n var sortedTiles = Object(toConsumableArray[\"a\" /* default */])(state).sort(nullMovingComparator);\n\n return sortedTiles;\n },\n init: function init(_state, action) {\n var rack = action.payload;\n return rack;\n },\n removeTiles: function removeTiles(state, action) {\n var tilesToRemove = action.payload;\n var charactersAndTiles = Object(lib[\"s\" /* zipCharactersAndTiles */])(state, tilesToRemove);\n var charactersWithoutMatchingTiles = charactersAndTiles.map(function (_ref) {\n var character = _ref.character,\n tile = _ref.tile;\n return tile ? null : character;\n });\n return charactersWithoutMatchingTiles;\n },\n reset: function reset() {\n return slices_rackInitialState;\n }\n }\n});\n/* harmony default export */ var slices_rackSlice = (rackSlice);\n// EXTERNAL MODULE: ./src/types/index.ts\nvar types = __webpack_require__(\"6+LV\");\n\n// CONCATENATED MODULE: ./src/state/slices/resultsInitialState.ts\n\nvar resultsInitialState = {\n candidate: null,\n query: '',\n results: undefined,\n sort: {\n column: types[\"a\" /* ResultColumn */].Points,\n direction: types[\"b\" /* SortDirection */].Descending\n }\n};\n/* harmony default export */ var slices_resultsInitialState = (resultsInitialState);\n// CONCATENATED MODULE: ./src/state/slices/resultsSlice.ts\n\n\nfunction resultsSlice_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction resultsSlice_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { resultsSlice_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty[\"a\" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { resultsSlice_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\n\n\nvar resultsSlice_toggleDirection = function toggleDirection(direction) {\n return direction === types[\"b\" /* SortDirection */].Ascending ? types[\"b\" /* SortDirection */].Descending : types[\"b\" /* SortDirection */].Ascending;\n};\n\nvar resultsSlice = createSlice({\n initialState: slices_resultsInitialState,\n name: 'results',\n reducers: {\n applyResult: function applyResult(_state, _action) {\n return slices_resultsInitialState;\n },\n changeQuery: function changeQuery(state, action) {\n var newQuery = action.payload;\n return resultsSlice_objectSpread(resultsSlice_objectSpread({}, state), {}, {\n query: newQuery\n });\n },\n changeResultCandidate: function changeResultCandidate(state, action) {\n var candidate = action.payload;\n return resultsSlice_objectSpread(resultsSlice_objectSpread({}, state), {}, {\n candidate: candidate\n });\n },\n changeResults: function changeResults(state, action) {\n var newResults = action.payload;\n return resultsSlice_objectSpread(resultsSlice_objectSpread({}, state), {}, {\n candidate: slices_resultsInitialState.candidate,\n query: slices_resultsInitialState.query,\n results: newResults\n });\n },\n sort: function sort(state, action) {\n var columndId = action.payload;\n var _state$sort = state.sort,\n column = _state$sort.column,\n direction = _state$sort.direction;\n return resultsSlice_objectSpread(resultsSlice_objectSpread({}, state), {}, {\n sort: {\n column: columndId,\n direction: column === columndId ? resultsSlice_toggleDirection(direction) : direction\n }\n });\n },\n reset: function reset() {\n return slices_resultsInitialState;\n }\n }\n});\n/* harmony default export */ var slices_resultsSlice = (resultsSlice);\n// CONCATENATED MODULE: ./src/state/slices/settingsSlice.ts\n\n\nfunction settingsSlice_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction settingsSlice_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { settingsSlice_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty[\"a\" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { settingsSlice_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\nvar settingsSlice = createSlice({\n initialState: slices_settingsInitialState,\n name: 'settings',\n reducers: {\n changeAutoGroupTiles: function changeAutoGroupTiles(state, action) {\n var autoGroupTiles = action.payload;\n return settingsSlice_objectSpread(settingsSlice_objectSpread({}, state), {}, {\n autoGroupTiles: autoGroupTiles\n });\n },\n changeConfigId: function changeConfigId(state, action) {\n var configId = action.payload;\n return settingsSlice_objectSpread(settingsSlice_objectSpread({}, state), {}, {\n configId: configId\n });\n },\n changeLocale: function changeLocale(state, action) {\n var locale = action.payload;\n return settingsSlice_objectSpread(settingsSlice_objectSpread({}, state), {}, {\n locale: locale\n });\n },\n init: function init(state, action) {\n return settingsSlice_objectSpread(settingsSlice_objectSpread({}, state), action.payload);\n }\n }\n});\n/* harmony default export */ var slices_settingsSlice = (settingsSlice);\n// CONCATENATED MODULE: ./src/state/slices/solveInitialState.ts\n\nvar solveInitialState = {\n isLoading: false,\n lastSolvedParameters: {\n board: slices_boardInitialState,\n characters: []\n }\n};\n/* harmony default export */ var slices_solveInitialState = (solveInitialState);\n// CONCATENATED MODULE: ./src/state/slices/solveSlice.ts\n\n\nfunction solveSlice_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction solveSlice_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { solveSlice_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty[\"a\" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { solveSlice_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\nvar solveSlice = createSlice({\n initialState: slices_solveInitialState,\n name: 'solve',\n reducers: {\n submit: function submit(state) {\n return solveSlice_objectSpread(solveSlice_objectSpread({}, state), {}, {\n isLoading: true\n });\n },\n submitFailure: function submitFailure(state) {\n return solveSlice_objectSpread(solveSlice_objectSpread({}, state), {}, {\n isLoading: false\n });\n },\n submitSuccess: function submitSuccess(state, action) {\n var lastSolvedParameters = action.payload;\n return solveSlice_objectSpread(solveSlice_objectSpread({}, state), {}, {\n isLoading: false,\n lastSolvedParameters: lastSolvedParameters\n });\n }\n }\n});\n/* harmony default export */ var slices_solveSlice = (solveSlice);\n// CONCATENATED MODULE: ./src/state/slices/index.ts\n\n\n\n\n\n\n\n\n\n\n\n\n// CONCATENATED MODULE: ./src/state/rootReducer.ts\n\n\nvar rootReducer_rootReducer = Object(redux[\"c\" /* combineReducers */])({\n board: slices_boardSlice.reducer,\n dictionary: slices_dictionarySlice.reducer,\n rack: slices_rackSlice.reducer,\n results: slices_resultsSlice.reducer,\n settings: slices_settingsSlice.reducer,\n solve: slices_solveSlice.reducer\n});\n/* harmony default export */ var state_rootReducer = (rootReducer_rootReducer);\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/regenerator/index.js\nvar regenerator = __webpack_require__(\"o0o1\");\nvar regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);\n\n// CONCATENATED MODULE: ./node_modules/@redux-saga/core/dist/redux-saga-effects.esm.js\n\n\n\n\n\n\n\nvar done = function done(value) {\n return {\n done: true,\n value: value\n };\n};\n\nvar qEnd = {};\nfunction safeName(patternOrChannel) {\n if (redux_saga_is_esm_channel(patternOrChannel)) {\n return 'channel';\n }\n\n if (stringableFunc(patternOrChannel)) {\n return String(patternOrChannel);\n }\n\n if (func(patternOrChannel)) {\n return patternOrChannel.name;\n }\n\n return String(patternOrChannel);\n}\nfunction fsmIterator(fsm, startState, name) {\n var stateUpdater,\n errorState,\n effect,\n nextState = startState;\n\n function next(arg, error) {\n if (nextState === qEnd) {\n return done(arg);\n }\n\n if (error && !errorState) {\n nextState = qEnd;\n throw error;\n } else {\n stateUpdater && stateUpdater(arg);\n var currentState = error ? fsm[errorState](error) : fsm[nextState]();\n nextState = currentState.nextState;\n effect = currentState.effect;\n stateUpdater = currentState.stateUpdater;\n errorState = currentState.errorState;\n return nextState === qEnd ? done(arg) : effect;\n }\n }\n\n return makeIterator(next, function (error) {\n return next(null, error);\n }, name);\n}\n\nfunction takeEvery(patternOrChannel, worker) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var yTake = {\n done: false,\n value: io_6de156f3_take(patternOrChannel)\n };\n\n var yFork = function yFork(ac) {\n return {\n done: false,\n value: fork.apply(void 0, [worker].concat(args, [ac]))\n };\n };\n\n var action,\n setAction = function setAction(ac) {\n return action = ac;\n };\n\n return fsmIterator({\n q1: function q1() {\n return {\n nextState: 'q2',\n effect: yTake,\n stateUpdater: setAction\n };\n },\n q2: function q2() {\n return {\n nextState: 'q1',\n effect: yFork(action)\n };\n }\n }, 'q1', \"takeEvery(\" + safeName(patternOrChannel) + \", \" + worker.name + \")\");\n}\n\nfunction takeLatest(patternOrChannel, worker) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var yTake = {\n done: false,\n value: io_6de156f3_take(patternOrChannel)\n };\n\n var yFork = function yFork(ac) {\n return {\n done: false,\n value: fork.apply(void 0, [worker].concat(args, [ac]))\n };\n };\n\n var yCancel = function yCancel(task) {\n return {\n done: false,\n value: io_6de156f3_cancel(task)\n };\n };\n\n var task, action;\n\n var setTask = function setTask(t) {\n return task = t;\n };\n\n var setAction = function setAction(ac) {\n return action = ac;\n };\n\n return fsmIterator({\n q1: function q1() {\n return {\n nextState: 'q2',\n effect: yTake,\n stateUpdater: setAction\n };\n },\n q2: function q2() {\n return task ? {\n nextState: 'q3',\n effect: yCancel(task)\n } : {\n nextState: 'q1',\n effect: yFork(action),\n stateUpdater: setTask\n };\n },\n q3: function q3() {\n return {\n nextState: 'q1',\n effect: yFork(action),\n stateUpdater: setTask\n };\n }\n }, 'q1', \"takeLatest(\" + safeName(patternOrChannel) + \", \" + worker.name + \")\");\n}\n\nfunction takeLeading(patternOrChannel, worker) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var yTake = {\n done: false,\n value: io_6de156f3_take(patternOrChannel)\n };\n\n var yCall = function yCall(ac) {\n return {\n done: false,\n value: call.apply(void 0, [worker].concat(args, [ac]))\n };\n };\n\n var action;\n\n var setAction = function setAction(ac) {\n return action = ac;\n };\n\n return fsmIterator({\n q1: function q1() {\n return {\n nextState: 'q2',\n effect: yTake,\n stateUpdater: setAction\n };\n },\n q2: function q2() {\n return {\n nextState: 'q1',\n effect: yCall(action)\n };\n }\n }, 'q1', \"takeLeading(\" + safeName(patternOrChannel) + \", \" + worker.name + \")\");\n}\n\nfunction throttle(delayLength, pattern, worker) {\n for (var _len = arguments.length, args = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {\n args[_key - 3] = arguments[_key];\n }\n\n var action, channel;\n var yActionChannel = {\n done: false,\n value: actionChannel(pattern, sliding(1))\n };\n\n var yTake = function yTake() {\n return {\n done: false,\n value: io_6de156f3_take(channel)\n };\n };\n\n var yFork = function yFork(ac) {\n return {\n done: false,\n value: fork.apply(void 0, [worker].concat(args, [ac]))\n };\n };\n\n var yDelay = {\n done: false,\n value: delay(delayLength)\n };\n\n var setAction = function setAction(ac) {\n return action = ac;\n };\n\n var setChannel = function setChannel(ch) {\n return channel = ch;\n };\n\n return fsmIterator({\n q1: function q1() {\n return {\n nextState: 'q2',\n effect: yActionChannel,\n stateUpdater: setChannel\n };\n },\n q2: function q2() {\n return {\n nextState: 'q3',\n effect: yTake(),\n stateUpdater: setAction\n };\n },\n q3: function q3() {\n return {\n nextState: 'q4',\n effect: yFork(action)\n };\n },\n q4: function q4() {\n return {\n nextState: 'q2',\n effect: yDelay\n };\n }\n }, 'q1', \"throttle(\" + safeName(pattern) + \", \" + worker.name + \")\");\n}\n\nfunction retry(maxTries, delayLength, fn) {\n var counter = maxTries;\n\n for (var _len = arguments.length, args = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {\n args[_key - 3] = arguments[_key];\n }\n\n var yCall = {\n done: false,\n value: call.apply(void 0, [fn].concat(args))\n };\n var yDelay = {\n done: false,\n value: delay(delayLength)\n };\n return fsmIterator({\n q1: function q1() {\n return {\n nextState: 'q2',\n effect: yCall,\n errorState: 'q10'\n };\n },\n q2: function q2() {\n return {\n nextState: qEnd\n };\n },\n q10: function q10(error) {\n counter -= 1;\n\n if (counter <= 0) {\n throw error;\n }\n\n return {\n nextState: 'q1',\n effect: yDelay\n };\n }\n }, 'q1', \"retry(\" + fn.name + \")\");\n}\n\nfunction debounceHelper(delayLength, patternOrChannel, worker) {\n for (var _len = arguments.length, args = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {\n args[_key - 3] = arguments[_key];\n }\n\n var action, raceOutput;\n var yTake = {\n done: false,\n value: io_6de156f3_take(patternOrChannel)\n };\n var yRace = {\n done: false,\n value: race({\n action: io_6de156f3_take(patternOrChannel),\n debounce: delay(delayLength)\n })\n };\n\n var yFork = function yFork(ac) {\n return {\n done: false,\n value: fork.apply(void 0, [worker].concat(args, [ac]))\n };\n };\n\n var yNoop = function yNoop(value) {\n return {\n done: false,\n value: value\n };\n };\n\n var setAction = function setAction(ac) {\n return action = ac;\n };\n\n var setRaceOutput = function setRaceOutput(ro) {\n return raceOutput = ro;\n };\n\n return fsmIterator({\n q1: function q1() {\n return {\n nextState: 'q2',\n effect: yTake,\n stateUpdater: setAction\n };\n },\n q2: function q2() {\n return {\n nextState: 'q3',\n effect: yRace,\n stateUpdater: setRaceOutput\n };\n },\n q3: function q3() {\n return raceOutput.debounce ? {\n nextState: 'q1',\n effect: yFork(action)\n } : {\n nextState: 'q2',\n effect: yNoop(raceOutput.action),\n stateUpdater: setAction\n };\n }\n }, 'q1', \"debounce(\" + safeName(patternOrChannel) + \", \" + worker.name + \")\");\n}\n\nvar redux_saga_effects_esm_validateTakeEffect = function validateTakeEffect(fn, patternOrChannel, worker) {\n check(patternOrChannel, notUndef, fn.name + \" requires a pattern or channel\");\n check(worker, notUndef, fn.name + \" requires a saga parameter\");\n};\n\nfunction takeEvery$1(patternOrChannel, worker) {\n if (false) {}\n\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n return fork.apply(void 0, [takeEvery, patternOrChannel, worker].concat(args));\n}\nfunction takeLatest$1(patternOrChannel, worker) {\n if (false) {}\n\n for (var _len2 = arguments.length, args = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n args[_key2 - 2] = arguments[_key2];\n }\n\n return fork.apply(void 0, [takeLatest, patternOrChannel, worker].concat(args));\n}\nfunction takeLeading$1(patternOrChannel, worker) {\n if (false) {}\n\n for (var _len3 = arguments.length, args = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n args[_key3 - 2] = arguments[_key3];\n }\n\n return fork.apply(void 0, [takeLeading, patternOrChannel, worker].concat(args));\n}\nfunction throttle$1(ms, pattern, worker) {\n if (false) {}\n\n for (var _len4 = arguments.length, args = new Array(_len4 > 3 ? _len4 - 3 : 0), _key4 = 3; _key4 < _len4; _key4++) {\n args[_key4 - 3] = arguments[_key4];\n }\n\n return fork.apply(void 0, [throttle, ms, pattern, worker].concat(args));\n}\nfunction retry$1(maxTries, delayLength, worker) {\n for (var _len5 = arguments.length, args = new Array(_len5 > 3 ? _len5 - 3 : 0), _key5 = 3; _key5 < _len5; _key5++) {\n args[_key5 - 3] = arguments[_key5];\n }\n\n return call.apply(void 0, [retry, maxTries, delayLength, worker].concat(args));\n}\nfunction debounce(delayLength, pattern, worker) {\n for (var _len6 = arguments.length, args = new Array(_len6 > 3 ? _len6 - 3 : 0), _key6 = 3; _key6 < _len6; _key6++) {\n args[_key6 - 3] = arguments[_key6];\n }\n\n return fork.apply(void 0, [debounceHelper, delayLength, pattern, worker].concat(args));\n}\n\n\n\n// CONCATENATED MODULE: ./node_modules/redux-saga/dist/redux-saga-effects-npm-proxy.esm.js\n\n\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n// CONCATENATED MODULE: ./src/sdk/findWordDefinition.ts\n\n\n\n\nvar findWordDefinition = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/regenerator_default.a.mark(function _callee(locale, word) {\n var url, json;\n return regenerator_default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n url = \"/api/dictionary/\".concat(locale, \"/\").concat(word);\n _context.next = 3;\n return fetch(url).then(function (response) {\n return response.json();\n });\n\n case 3:\n json = _context.sent;\n return _context.abrupt(\"return\", types_build[\"WordDefinition\"].fromJson(json));\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function findWordDefinition(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n\n/* harmony default export */ var sdk_findWordDefinition = (findWordDefinition);\n// CONCATENATED MODULE: ./src/sdk/solve.ts\nvar solve = function solve(_ref) {\n var board = _ref.board,\n characters = _ref.characters,\n configId = _ref.configId,\n locale = _ref.locale;\n return fetch('/api/solve', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify({\n board: board,\n characters: characters,\n configId: configId,\n locale: locale\n })\n }).then(function (response) {\n return response.json();\n });\n};\n\n/* harmony default export */ var sdk_solve = (solve);\n// CONCATENATED MODULE: ./src/sdk/visit.ts\nvar visit = function visit() {\n return fetch('/api/visit', {\n method: 'PUT'\n });\n};\n\n/* harmony default export */ var sdk_visit = (visit);\n// CONCATENATED MODULE: ./src/sdk/index.ts\n\n\n\n// EXTERNAL MODULE: ./src/i18n/de.json\nvar de = __webpack_require__(\"JQii\");\n\n// EXTERNAL MODULE: ./src/i18n/en.json\nvar en = __webpack_require__(\"4Ign\");\n\n// EXTERNAL MODULE: ./src/i18n/es.json\nvar i18n_es = __webpack_require__(\"2QrI\");\n\n// EXTERNAL MODULE: ./src/i18n/fr.json\nvar fr = __webpack_require__(\"I5Sk\");\n\n// EXTERNAL MODULE: ./src/i18n/pl.json\nvar pl = __webpack_require__(\"uJCx\");\n\n// CONCATENATED MODULE: ./src/i18n/index.ts\n\n\nvar _i18n;\n\n\n\n\n\n\n\nvar i18n = (_i18n = {}, Object(defineProperty[\"a\" /* default */])(_i18n, types_build[\"Locale\"].DE_DE, de), Object(defineProperty[\"a\" /* default */])(_i18n, types_build[\"Locale\"].EN_GB, en), Object(defineProperty[\"a\" /* default */])(_i18n, types_build[\"Locale\"].EN_US, en), Object(defineProperty[\"a\" /* default */])(_i18n, types_build[\"Locale\"].ES_ES, i18n_es), Object(defineProperty[\"a\" /* default */])(_i18n, types_build[\"Locale\"].FR_FR, fr), Object(defineProperty[\"a\" /* default */])(_i18n, types_build[\"Locale\"].PL_PL, pl), _i18n);\n/* harmony default export */ var src_i18n = (i18n);\n// CONCATENATED MODULE: ./src/state/selectors.ts\n\n\n\n\n\nvar selectCell = function selectCell(_, cell) {\n return cell;\n};\n\nvar selectCharacter = function selectCharacter(_, character) {\n return character;\n};\n\nvar selectTile = function selectTile(_, tile) {\n return tile;\n};\n\nvar selectBoardRoot = function selectBoardRoot(state) {\n return state.board;\n};\n\nvar selectDictionaryRoot = function selectDictionaryRoot(state) {\n return state.dictionary;\n};\n\nvar selectRackRoot = function selectRackRoot(state) {\n return state.rack;\n};\n\nvar selectResultsRoot = function selectResultsRoot(state) {\n return state.results;\n};\n\nvar selectSettingsRoot = function selectSettingsRoot(state) {\n return state.settings;\n};\n\nvar selectSolveRoot = function selectSolveRoot(state) {\n return state.solve;\n};\n\nvar selectDictionary = selectDictionaryRoot;\nvar selectAutoGroupTiles = createSelector([selectSettingsRoot], function (settings) {\n return settings.autoGroupTiles;\n});\nvar selectLocale = createSelector([selectSettingsRoot], function (settings) {\n return settings.locale;\n});\nvar selectBoard = selectBoardRoot;\nvar selectConfigId = createSelector([selectSettingsRoot], function (settings) {\n return settings.configId;\n});\nvar selectConfig = createSelector([selectConfigId, selectLocale], build[\"getLocaleConfig\"]);\nvar selectResults = createSelector([selectResultsRoot], function (results) {\n return results.results;\n});\nvar selectResultsQuery = createSelector([selectResultsRoot], function (results) {\n return results.query;\n});\nvar selectResultsSortColumn = createSelector([selectResultsRoot], function (results) {\n return results.sort.column;\n});\nvar selectResultsSortDirection = createSelector([selectResultsRoot], function (results) {\n return results.sort.direction;\n});\nvar selectSortedResults = createSelector([selectResults, selectResultsSortColumn, selectResultsSortDirection], lib[\"q\" /* sortResults */]);\nvar selectSortedFilteredResults = createSelector([selectSortedResults, selectResultsQuery], function (results, query) {\n if (!results || query.trim().length === 0) {\n return results;\n }\n\n return results.filter(function (result) {\n var regExp = new RegExp(query, 'gi');\n return regExp.test(result.word);\n });\n});\nvar selectResultCandidate = createSelector([selectResultsRoot], function (results) {\n return results.candidate;\n});\nvar selectResultCandidateCells = createSelector([selectResultCandidate], function (resultCandidate) {\n return (resultCandidate === null || resultCandidate === void 0 ? void 0 : resultCandidate.cells) || [];\n});\nvar selectResultCandidateTiles = createSelector([selectResultCandidate], function (resultCandidate) {\n return (resultCandidate === null || resultCandidate === void 0 ? void 0 : resultCandidate.tiles) || [];\n});\nvar selectRowsWithCandidate = createSelector([selectBoardRoot, selectResultCandidateCells], function (board, cells) {\n return board.rows.map(function (row, y) {\n return row.map(function (cell, x) {\n return Object(lib[\"g\" /* findCell */])(cells, x, y) || cell;\n });\n });\n});\nvar selectCellBonus = createSelector([selectConfig, selectCell], function (config, cell) {\n return config.getCellBonus(cell);\n});\nvar selectCharacterPoints = createSelector([selectConfig, selectCharacter], function (config, character) {\n return config.getCharacterPoints(character);\n});\nvar selectTilePoints = createSelector([selectConfig, selectTile], function (config, tile) {\n return config.getTilePoints(tile);\n});\nvar selectTranslations = createSelector([selectLocale], function (locale) {\n return src_i18n[locale];\n});\nvar selectTranslation = createSelector([selectTranslations, selectLocale, function (_, id) {\n return id;\n}], function (translations, locale, id) {\n var translation = translations[id];\n\n if (typeof translation === 'undefined') {\n throw new Error(\"Untranslated key \\\"\".concat(id, \"\\\" in locale \\\"\").concat(locale, \"\\\"\"));\n }\n\n return translation;\n});\nvar selectRack = selectRackRoot;\nvar selectCharacters = createSelector(selectRackRoot, function (rack) {\n return rack.filter(function (tile) {\n return tile !== null;\n });\n});\nvar selectLastSolvedParameters = createSelector([selectSolveRoot], function (solve) {\n return solve.lastSolvedParameters;\n});\nvar selectIsLoading = createSelector([selectSolveRoot], function (solve) {\n return solve.isLoading;\n});\nvar selectHaveCharactersChanged = createSelector([selectLastSolvedParameters, selectCharacters], function (lastSolvedParameters, characters) {\n return !Object(lib[\"r\" /* unorderedArraysEqual */])(lastSolvedParameters.characters, characters);\n});\nvar selectHasBoardChanged = createSelector([selectLastSolvedParameters, selectBoardRoot], function (lastSolvedParameters, board) {\n return !lastSolvedParameters.board.equals(board);\n});\nvar selectAreResultsOutdated = createSelector([selectHasBoardChanged, selectHaveCharactersChanged], function (hasBoardChanged, haveCharactersChanged) {\n return hasBoardChanged || haveCharactersChanged;\n});\nvar selectRemainingTiles = createSelector([selectConfig, selectBoardRoot, selectCharacters], lib[\"i\" /* getRemainingTiles */]);\nvar selectHasOverusedTiles = createSelector([selectRemainingTiles], function (remainingTiles) {\n return remainingTiles.some(function (_ref) {\n var count = _ref.count,\n usedCount = _ref.usedCount;\n return usedCount > count;\n });\n});\nvar selectRemainingTilesGroups = createSelector([selectRemainingTiles], lib[\"j\" /* getRemainingTilesGroups */]);\n// CONCATENATED MODULE: ./src/state/sagas.ts\n\n\n\nvar _marked = /*#__PURE__*/regenerator_default.a.mark(rootSaga),\n _marked2 = /*#__PURE__*/regenerator_default.a.mark(onApplyResult),\n _marked3 = /*#__PURE__*/regenerator_default.a.mark(onConfigIdChange),\n _marked4 = /*#__PURE__*/regenerator_default.a.mark(onDictionarySubmit),\n _marked5 = /*#__PURE__*/regenerator_default.a.mark(onInitialize),\n _marked6 = /*#__PURE__*/regenerator_default.a.mark(onReset),\n _marked7 = /*#__PURE__*/regenerator_default.a.mark(onLocaleChange),\n _marked8 = /*#__PURE__*/regenerator_default.a.mark(onResultCandidateChange),\n _marked9 = /*#__PURE__*/regenerator_default.a.mark(onSubmit),\n _marked10 = /*#__PURE__*/regenerator_default.a.mark(ensureProperTilesCount);\n\n\n\n\n\n\n\n\nvar SUBMIT_DELAY = 150;\nvar memoizedFindWordDefinition = Object(lib[\"o\" /* memoize */])(sdk_findWordDefinition);\nfunction rootSaga() {\n return regenerator_default.a.wrap(function rootSaga$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return takeEvery$1(slices_resultsSlice.actions.applyResult.type, onApplyResult);\n\n case 2:\n _context.next = 4;\n return takeEvery$1(slices_resultsSlice.actions.changeResultCandidate.type, onResultCandidateChange);\n\n case 4:\n _context.next = 6;\n return takeEvery$1(slices_settingsSlice.actions.changeConfigId.type, onConfigIdChange);\n\n case 6:\n _context.next = 8;\n return takeEvery$1(slices_settingsSlice.actions.changeLocale.type, onLocaleChange);\n\n case 8:\n _context.next = 10;\n return takeLatest$1(slices_dictionarySlice.actions.submit.type, onDictionarySubmit);\n\n case 10:\n _context.next = 12;\n return takeLatest$1(initialize.type, onInitialize);\n\n case 12:\n _context.next = 14;\n return takeLatest$1(actions_reset.type, onReset);\n\n case 14:\n _context.next = 16;\n return takeLatest$1(slices_solveSlice.actions.submit.type, onSubmit);\n\n case 16:\n case \"end\":\n return _context.stop();\n }\n }\n }, _marked);\n}\n\nfunction onApplyResult(_ref) {\n var result, autoGroupTiles;\n return regenerator_default.a.wrap(function onApplyResult$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n result = _ref.payload;\n _context2.next = 3;\n return io_6de156f3_select(selectAutoGroupTiles);\n\n case 3:\n autoGroupTiles = _context2.sent;\n _context2.next = 6;\n return io_6de156f3_put(slices_boardSlice.actions.applyResult(result));\n\n case 6:\n _context2.next = 8;\n return io_6de156f3_put(slices_rackSlice.actions.removeTiles(result.tiles));\n\n case 8:\n _context2.next = 10;\n return io_6de156f3_put(slices_rackSlice.actions.groupTiles(autoGroupTiles));\n\n case 10:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _marked2);\n}\n\nfunction onConfigIdChange() {\n return regenerator_default.a.wrap(function onConfigIdChange$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return io_6de156f3_put(slices_resultsSlice.actions.reset());\n\n case 2:\n _context3.next = 4;\n return io_6de156f3_put(slices_solveSlice.actions.submit());\n\n case 4:\n return _context3.delegateYield(ensureProperTilesCount(), \"t0\", 5);\n\n case 5:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _marked3);\n}\n\nfunction onDictionarySubmit() {\n var _yield$select, word, locale, wordDefinition;\n\n return regenerator_default.a.wrap(function onDictionarySubmit$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return io_6de156f3_select(selectDictionary);\n\n case 2:\n _yield$select = _context4.sent;\n word = _yield$select.input;\n _context4.next = 6;\n return io_6de156f3_select(selectLocale);\n\n case 6:\n locale = _context4.sent;\n\n if (memoizedFindWordDefinition.hasCache(locale, word)) {\n _context4.next = 10;\n break;\n }\n\n _context4.next = 10;\n return delay(SUBMIT_DELAY);\n\n case 10:\n _context4.prev = 10;\n _context4.next = 13;\n return call(memoizedFindWordDefinition, locale, word);\n\n case 13:\n wordDefinition = _context4.sent;\n _context4.next = 16;\n return io_6de156f3_put(slices_dictionarySlice.actions.submitSuccess(wordDefinition));\n\n case 16:\n _context4.next = 22;\n break;\n\n case 18:\n _context4.prev = 18;\n _context4.t0 = _context4[\"catch\"](10);\n _context4.next = 22;\n return io_6de156f3_put(slices_dictionarySlice.actions.submitFailure());\n\n case 22:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _marked4, null, [[10, 18]]);\n}\n\nfunction onInitialize() {\n return regenerator_default.a.wrap(function onInitialize$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n _context5.next = 2;\n return call(sdk_visit);\n\n case 2:\n return _context5.delegateYield(ensureProperTilesCount(), \"t0\", 3);\n\n case 3:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _marked5);\n}\n\nfunction onReset() {\n return regenerator_default.a.wrap(function onReset$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n _context6.next = 2;\n return io_6de156f3_put(slices_boardSlice.actions.reset());\n\n case 2:\n _context6.next = 4;\n return io_6de156f3_put(slices_dictionarySlice.actions.reset());\n\n case 4:\n _context6.next = 6;\n return io_6de156f3_put(slices_rackSlice.actions.reset());\n\n case 6:\n _context6.next = 8;\n return io_6de156f3_put(slices_resultsSlice.actions.reset());\n\n case 8:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _marked6);\n}\n\nfunction onLocaleChange() {\n return regenerator_default.a.wrap(function onLocaleChange$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n _context7.next = 2;\n return io_6de156f3_put(slices_solveSlice.actions.submit());\n\n case 2:\n _context7.next = 4;\n return io_6de156f3_put(slices_resultsSlice.actions.changeResultCandidate(null));\n\n case 4:\n _context7.next = 6;\n return io_6de156f3_put(slices_dictionarySlice.actions.reset());\n\n case 6:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _marked7);\n}\n\nfunction onResultCandidateChange(_ref2) {\n var result;\n return regenerator_default.a.wrap(function onResultCandidateChange$(_context8) {\n while (1) {\n switch (_context8.prev = _context8.next) {\n case 0:\n result = _ref2.payload;\n\n if (!result) {\n _context8.next = 6;\n break;\n }\n\n _context8.next = 4;\n return io_6de156f3_put(slices_dictionarySlice.actions.changeInput(result.word));\n\n case 4:\n _context8.next = 6;\n return io_6de156f3_put(slices_dictionarySlice.actions.submit());\n\n case 6:\n case \"end\":\n return _context8.stop();\n }\n }\n }, _marked8);\n}\n\nfunction onSubmit() {\n var board, _yield$select2, config, locale, characters, results;\n\n return regenerator_default.a.wrap(function onSubmit$(_context9) {\n while (1) {\n switch (_context9.prev = _context9.next) {\n case 0:\n _context9.next = 2;\n return io_6de156f3_select(selectBoard);\n\n case 2:\n board = _context9.sent;\n _context9.next = 5;\n return io_6de156f3_select(selectConfig);\n\n case 5:\n _yield$select2 = _context9.sent;\n config = _yield$select2.config;\n _context9.next = 9;\n return io_6de156f3_select(selectLocale);\n\n case 9:\n locale = _context9.sent;\n _context9.next = 12;\n return io_6de156f3_select(selectCharacters);\n\n case 12:\n characters = _context9.sent;\n\n if (!(characters.length === 0)) {\n _context9.next = 19;\n break;\n }\n\n _context9.next = 16;\n return io_6de156f3_put(slices_solveSlice.actions.submitSuccess({\n board: board,\n characters: characters\n }));\n\n case 16:\n _context9.next = 18;\n return io_6de156f3_put(slices_resultsSlice.actions.changeResults([]));\n\n case 18:\n return _context9.abrupt(\"return\");\n\n case 19:\n _context9.prev = 19;\n _context9.next = 22;\n return call(sdk_solve, {\n board: board.toJson(),\n characters: characters,\n configId: config.id,\n locale: locale\n });\n\n case 22:\n results = _context9.sent;\n _context9.next = 25;\n return io_6de156f3_put(slices_solveSlice.actions.submitSuccess({\n board: board,\n characters: characters\n }));\n\n case 25:\n _context9.next = 27;\n return io_6de156f3_put(slices_resultsSlice.actions.changeResults(results.map(types_build[\"Result\"].fromJson)));\n\n case 27:\n _context9.next = 35;\n break;\n\n case 29:\n _context9.prev = 29;\n _context9.t0 = _context9[\"catch\"](19);\n _context9.next = 33;\n return io_6de156f3_put(slices_resultsSlice.actions.changeResults([]));\n\n case 33:\n _context9.next = 35;\n return io_6de156f3_put(slices_solveSlice.actions.submitFailure());\n\n case 35:\n case \"end\":\n return _context9.stop();\n }\n }\n }, _marked9, null, [[19, 29]]);\n}\n\nfunction ensureProperTilesCount() {\n var _yield$select3, config, characters, differenceCount, nonNulls, _differenceCount, autoGroupTiles;\n\n return regenerator_default.a.wrap(function ensureProperTilesCount$(_context10) {\n while (1) {\n switch (_context10.prev = _context10.next) {\n case 0:\n _context10.next = 2;\n return io_6de156f3_select(selectConfig);\n\n case 2:\n _yield$select3 = _context10.sent;\n config = _yield$select3.config;\n _context10.next = 6;\n return io_6de156f3_select(selectCharacters);\n\n case 6:\n characters = _context10.sent;\n\n if (!(config.maximumNumberOfCharacters > characters.length)) {\n _context10.next = 13;\n break;\n }\n\n differenceCount = Math.abs(config.maximumNumberOfCharacters - characters.length);\n _context10.next = 11;\n return io_6de156f3_put(slices_rackSlice.actions.init([].concat(Object(toConsumableArray[\"a\" /* default */])(characters), Object(toConsumableArray[\"a\" /* default */])(Array(differenceCount).fill(null)))));\n\n case 11:\n _context10.next = 23;\n break;\n\n case 13:\n if (!(config.maximumNumberOfCharacters < characters.length)) {\n _context10.next = 23;\n break;\n }\n\n nonNulls = characters.filter(Boolean).slice(0, config.maximumNumberOfCharacters);\n _differenceCount = Math.abs(config.maximumNumberOfCharacters - nonNulls.length);\n _context10.next = 18;\n return io_6de156f3_select(selectAutoGroupTiles);\n\n case 18:\n autoGroupTiles = _context10.sent;\n _context10.next = 21;\n return io_6de156f3_put(slices_rackSlice.actions.init([].concat(Object(toConsumableArray[\"a\" /* default */])(nonNulls), Object(toConsumableArray[\"a\" /* default */])(Array(_differenceCount).fill(null)))));\n\n case 21:\n _context10.next = 23;\n return io_6de156f3_put(slices_rackSlice.actions.groupTiles(autoGroupTiles));\n\n case 23:\n case \"end\":\n return _context10.stop();\n }\n }\n }, _marked10);\n}\n// CONCATENATED MODULE: ./src/state/createAppStore.ts\n\n\n\n\nvar createAppStore_sagaMiddleware = redux_saga_core_npm_proxy_esm();\nvar createAppStore_initialState = undefined;\n\nvar createAppStore_createAppStore = function createAppStore() {\n var store = Object(redux[\"e\" /* createStore */])(state_rootReducer, createAppStore_initialState, createAppStore_createEnhancer());\n createAppStore_sagaMiddleware.run(rootSaga);\n return store;\n};\n\nvar createAppStore_createEnhancer = function createEnhancer() {\n return Object(redux[\"a\" /* applyMiddleware */])(createAppStore_sagaMiddleware);\n};\n\n/* harmony default export */ var state_createAppStore = (createAppStore_createAppStore);\n// EXTERNAL MODULE: ./node_modules/store2/dist/store2.js\nvar store2 = __webpack_require__(\"z/if\");\nvar store2_default = /*#__PURE__*/__webpack_require__.n(store2);\n\n// CONCATENATED MODULE: ./src/state/localStorage.ts\n\n\nvar BOARD = 'board';\nvar CONFIG_ID = 'config-id';\nvar HAS_VISITED = 'has-visited';\nvar LOCALE = 'locale';\nvar RACK = 'rack';\nvar localStorage_store = store2_default.a.namespace('scrabble-solver');\nvar localStorage = {\n getBoard: function getBoard() {\n var serialized = localStorage_store.get(BOARD);\n return serialized ? types_build[\"Board\"].fromJson(JSON.parse(serialized)) : serialized;\n },\n setBoard: function setBoard(board) {\n var serialized = board ? JSON.stringify(board.toJson()) : board;\n localStorage_store.set(BOARD, serialized, true);\n },\n getConfigId: function getConfigId() {\n return localStorage_store.get(CONFIG_ID);\n },\n setConfigId: function setConfigId(configId) {\n localStorage_store.set(CONFIG_ID, configId, true);\n },\n getHasVisited: function getHasVisited() {\n return Boolean(localStorage_store.get(HAS_VISITED));\n },\n setHasVisited: function setHasVisited(hasVisited) {\n localStorage_store.set(HAS_VISITED, hasVisited, true);\n },\n getLocale: function getLocale() {\n return localStorage_store.get(LOCALE);\n },\n setLocale: function setLocale(locale) {\n localStorage_store.set(LOCALE, locale, true);\n },\n getRack: function getRack() {\n return localStorage_store.get(RACK);\n },\n setRack: function setRack(rack) {\n localStorage_store.set(RACK, rack, true);\n }\n};\n/* harmony default export */ var state_localStorage = (localStorage);\n// EXTERNAL MODULE: ./node_modules/react/index.js\nvar react = __webpack_require__(\"q1tI\");\n\n// EXTERNAL MODULE: ./node_modules/react-redux/es/index.js + 22 modules\nvar react_redux_es = __webpack_require__(\"/MKj\");\n\n// CONCATENATED MODULE: ./src/state/useTypedSelector.ts\n\nvar useTypedSelector = react_redux_es[\"c\" /* useSelector */];\n/* harmony default export */ var state_useTypedSelector = (useTypedSelector);\n// CONCATENATED MODULE: ./src/state/useTranslate.ts\n\n\n\n\nvar useTranslate_useTranslate = function useTranslate() {\n var translations = state_useTypedSelector(selectTranslations);\n var locale = state_useTypedSelector(selectLocale);\n var translate = Object(react[\"useCallback\"])(function (id) {\n var translation = translations[id];\n\n if (typeof translation === 'undefined') {\n throw new Error(\"Untranslated key \\\"\".concat(id, \"\\\" in locale \\\"\").concat(locale, \"\\\"\"));\n }\n\n return translation;\n }, [translations, locale]);\n return translate;\n};\n\n/* harmony default export */ var state_useTranslate = (useTranslate_useTranslate);\n// CONCATENATED MODULE: ./src/state/index.ts\n\n\n\n\n\n\n\n\n/***/ }),\n\n/***/ \"87Kc\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesFr = [\n { character: 'a', count: 9, score: 1 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 2, score: 3 },\n { character: 'd', count: 3, score: 2 },\n { character: 'e', count: 15, score: 1 },\n { character: 'f', count: 2, score: 1 },\n { character: 'g', count: 2, score: 2 },\n { character: 'h', count: 2, score: 4 },\n { character: 'i', count: 8, score: 1 },\n { character: 'j', count: 1, score: 8 },\n { character: 'k', count: 1, score: 10 },\n { character: 'l', count: 5, score: 1 },\n { character: 'm', count: 3, score: 2 },\n { character: 'n', count: 6, score: 1 },\n { character: 'o', count: 6, score: 1 },\n { character: 'p', count: 2, score: 3 },\n { character: 'q', count: 1, score: 8 },\n { character: 'r', count: 6, score: 1 },\n { character: 's', count: 6, score: 1 },\n { character: 't', count: 6, score: 1 },\n { character: 'u', count: 6, score: 1 },\n { character: 'v', count: 2, score: 4 },\n { character: 'w', count: 1, score: 10 },\n { character: 'x', count: 1, score: 10 },\n { character: 'y', count: 1, score: 10 },\n { character: 'z', count: 1, score: 10 },\n];\nexports.default = tilesFr;\n\n\n/***/ }),\n\n/***/ \"8rf8\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar literaki_1 = __importDefault(__webpack_require__(\"LzO6\"));\nvar scrabble_1 = __importDefault(__webpack_require__(\"t4n0\"));\nvar configs = [literaki_1.default, scrabble_1.default];\nvar isConfigId = function (configId) {\n return configs.some(function (_a) {\n var id = _a.id;\n return id === configId;\n });\n};\nexports.default = isConfigId;\n\n\n/***/ }),\n\n/***/ \"ANjH\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export __DO_NOT_USE__ActionTypes */\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return applyMiddleware; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return bindActionCreators; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return combineReducers; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"d\", function() { return compose; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"e\", function() { return createStore; });\n/* harmony import */ var symbol_observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(\"bCCX\");\n\n\n/**\n * These are private action types reserved by Redux.\n * For any unknown actions, you must return the current state.\n * If the current state is undefined, you must return the initial state.\n * Do not reference these action types directly in your code.\n */\nvar randomString = function randomString() {\n return Math.random().toString(36).substring(7).split('').join('.');\n};\n\nvar ActionTypes = {\n INIT: \"@@redux/INIT\" + randomString(),\n REPLACE: \"@@redux/REPLACE\" + randomString(),\n PROBE_UNKNOWN_ACTION: function PROBE_UNKNOWN_ACTION() {\n return \"@@redux/PROBE_UNKNOWN_ACTION\" + randomString();\n }\n};\n\n/**\n * @param {any} obj The object to inspect.\n * @returns {boolean} True if the argument appears to be a plain object.\n */\nfunction isPlainObject(obj) {\n if (typeof obj !== 'object' || obj === null) return false;\n var proto = obj;\n\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n\n return Object.getPrototypeOf(obj) === proto;\n}\n\n/**\n * Creates a Redux store that holds the state tree.\n * The only way to change the data in the store is to call `dispatch()` on it.\n *\n * There should only be a single store in your app. To specify how different\n * parts of the state tree respond to actions, you may combine several reducers\n * into a single reducer function by using `combineReducers`.\n *\n * @param {Function} reducer A function that returns the next state tree, given\n * the current state tree and the action to handle.\n *\n * @param {any} [preloadedState] The initial state. You may optionally specify it\n * to hydrate the state from the server in universal apps, or to restore a\n * previously serialized user session.\n * If you use `combineReducers` to produce the root reducer function, this must be\n * an object with the same shape as `combineReducers` keys.\n *\n * @param {Function} [enhancer] The store enhancer. You may optionally specify it\n * to enhance the store with third-party capabilities such as middleware,\n * time travel, persistence, etc. The only store enhancer that ships with Redux\n * is `applyMiddleware()`.\n *\n * @returns {Store} A Redux store that lets you read the state, dispatch actions\n * and subscribe to changes.\n */\n\nfunction createStore(reducer, preloadedState, enhancer) {\n var _ref2;\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'function' || typeof enhancer === 'function' && typeof arguments[3] === 'function') {\n throw new Error('It looks like you are passing several store enhancers to ' + 'createStore(). This is not supported. Instead, compose them ' + 'together to a single function.');\n }\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') {\n enhancer = preloadedState;\n preloadedState = undefined;\n }\n\n if (typeof enhancer !== 'undefined') {\n if (typeof enhancer !== 'function') {\n throw new Error('Expected the enhancer to be a function.');\n }\n\n return enhancer(createStore)(reducer, preloadedState);\n }\n\n if (typeof reducer !== 'function') {\n throw new Error('Expected the reducer to be a function.');\n }\n\n var currentReducer = reducer;\n var currentState = preloadedState;\n var currentListeners = [];\n var nextListeners = currentListeners;\n var isDispatching = false;\n /**\n * This makes a shallow copy of currentListeners so we can use\n * nextListeners as a temporary list while dispatching.\n *\n * This prevents any bugs around consumers calling\n * subscribe/unsubscribe in the middle of a dispatch.\n */\n\n function ensureCanMutateNextListeners() {\n if (nextListeners === currentListeners) {\n nextListeners = currentListeners.slice();\n }\n }\n /**\n * Reads the state tree managed by the store.\n *\n * @returns {any} The current state tree of your application.\n */\n\n\n function getState() {\n if (isDispatching) {\n throw new Error('You may not call store.getState() while the reducer is executing. ' + 'The reducer has already received the state as an argument. ' + 'Pass it down from the top reducer instead of reading it from the store.');\n }\n\n return currentState;\n }\n /**\n * Adds a change listener. It will be called any time an action is dispatched,\n * and some part of the state tree may potentially have changed. You may then\n * call `getState()` to read the current state tree inside the callback.\n *\n * You may call `dispatch()` from a change listener, with the following\n * caveats:\n *\n * 1. The subscriptions are snapshotted just before every `dispatch()` call.\n * If you subscribe or unsubscribe while the listeners are being invoked, this\n * will not have any effect on the `dispatch()` that is currently in progress.\n * However, the next `dispatch()` call, whether nested or not, will use a more\n * recent snapshot of the subscription list.\n *\n * 2. The listener should not expect to see all state changes, as the state\n * might have been updated multiple times during a nested `dispatch()` before\n * the listener is called. It is, however, guaranteed that all subscribers\n * registered before the `dispatch()` started will be called with the latest\n * state by the time it exits.\n *\n * @param {Function} listener A callback to be invoked on every dispatch.\n * @returns {Function} A function to remove this change listener.\n */\n\n\n function subscribe(listener) {\n if (typeof listener !== 'function') {\n throw new Error('Expected the listener to be a function.');\n }\n\n if (isDispatching) {\n throw new Error('You may not call store.subscribe() while the reducer is executing. ' + 'If you would like to be notified after the store has been updated, subscribe from a ' + 'component and invoke store.getState() in the callback to access the latest state. ' + 'See https://redux.js.org/api-reference/store#subscribelistener for more details.');\n }\n\n var isSubscribed = true;\n ensureCanMutateNextListeners();\n nextListeners.push(listener);\n return function unsubscribe() {\n if (!isSubscribed) {\n return;\n }\n\n if (isDispatching) {\n throw new Error('You may not unsubscribe from a store listener while the reducer is executing. ' + 'See https://redux.js.org/api-reference/store#subscribelistener for more details.');\n }\n\n isSubscribed = false;\n ensureCanMutateNextListeners();\n var index = nextListeners.indexOf(listener);\n nextListeners.splice(index, 1);\n currentListeners = null;\n };\n }\n /**\n * Dispatches an action. It is the only way to trigger a state change.\n *\n * The `reducer` function, used to create the store, will be called with the\n * current state tree and the given `action`. Its return value will\n * be considered the **next** state of the tree, and the change listeners\n * will be notified.\n *\n * The base implementation only supports plain object actions. If you want to\n * dispatch a Promise, an Observable, a thunk, or something else, you need to\n * wrap your store creating function into the corresponding middleware. For\n * example, see the documentation for the `redux-thunk` package. Even the\n * middleware will eventually dispatch plain object actions using this method.\n *\n * @param {Object} action A plain object representing “what changed”. It is\n * a good idea to keep actions serializable so you can record and replay user\n * sessions, or use the time travelling `redux-devtools`. An action must have\n * a `type` property which may not be `undefined`. It is a good idea to use\n * string constants for action types.\n *\n * @returns {Object} For convenience, the same action object you dispatched.\n *\n * Note that, if you use a custom middleware, it may wrap `dispatch()` to\n * return something else (for example, a Promise you can await).\n */\n\n\n function dispatch(action) {\n if (!isPlainObject(action)) {\n throw new Error('Actions must be plain objects. ' + 'Use custom middleware for async actions.');\n }\n\n if (typeof action.type === 'undefined') {\n throw new Error('Actions may not have an undefined \"type\" property. ' + 'Have you misspelled a constant?');\n }\n\n if (isDispatching) {\n throw new Error('Reducers may not dispatch actions.');\n }\n\n try {\n isDispatching = true;\n currentState = currentReducer(currentState, action);\n } finally {\n isDispatching = false;\n }\n\n var listeners = currentListeners = nextListeners;\n\n for (var i = 0; i < listeners.length; i++) {\n var listener = listeners[i];\n listener();\n }\n\n return action;\n }\n /**\n * Replaces the reducer currently used by the store to calculate the state.\n *\n * You might need this if your app implements code splitting and you want to\n * load some of the reducers dynamically. You might also need this if you\n * implement a hot reloading mechanism for Redux.\n *\n * @param {Function} nextReducer The reducer for the store to use instead.\n * @returns {void}\n */\n\n\n function replaceReducer(nextReducer) {\n if (typeof nextReducer !== 'function') {\n throw new Error('Expected the nextReducer to be a function.');\n }\n\n currentReducer = nextReducer; // This action has a similiar effect to ActionTypes.INIT.\n // Any reducers that existed in both the new and old rootReducer\n // will receive the previous state. This effectively populates\n // the new state tree with any relevant data from the old one.\n\n dispatch({\n type: ActionTypes.REPLACE\n });\n }\n /**\n * Interoperability point for observable/reactive libraries.\n * @returns {observable} A minimal observable of state changes.\n * For more information, see the observable proposal:\n * https://github.com/tc39/proposal-observable\n */\n\n\n function observable() {\n var _ref;\n\n var outerSubscribe = subscribe;\n return _ref = {\n /**\n * The minimal observable subscription method.\n * @param {Object} observer Any object that can be used as an observer.\n * The observer object should have a `next` method.\n * @returns {subscription} An object with an `unsubscribe` method that can\n * be used to unsubscribe the observable from the store, and prevent further\n * emission of values from the observable.\n */\n subscribe: function subscribe(observer) {\n if (typeof observer !== 'object' || observer === null) {\n throw new TypeError('Expected the observer to be an object.');\n }\n\n function observeState() {\n if (observer.next) {\n observer.next(getState());\n }\n }\n\n observeState();\n var unsubscribe = outerSubscribe(observeState);\n return {\n unsubscribe: unsubscribe\n };\n }\n }, _ref[symbol_observable__WEBPACK_IMPORTED_MODULE_0__[/* default */ \"a\"]] = function () {\n return this;\n }, _ref;\n } // When a store is created, an \"INIT\" action is dispatched so that every\n // reducer returns their initial state. This effectively populates\n // the initial state tree.\n\n\n dispatch({\n type: ActionTypes.INIT\n });\n return _ref2 = {\n dispatch: dispatch,\n subscribe: subscribe,\n getState: getState,\n replaceReducer: replaceReducer\n }, _ref2[symbol_observable__WEBPACK_IMPORTED_MODULE_0__[/* default */ \"a\"]] = observable, _ref2;\n}\n\n/**\n * Prints a warning in the console if it exists.\n *\n * @param {String} message The warning message.\n * @returns {void}\n */\nfunction warning(message) {\n /* eslint-disable no-console */\n if (typeof console !== 'undefined' && typeof console.error === 'function') {\n console.error(message);\n }\n /* eslint-enable no-console */\n\n\n try {\n // This error was thrown as a convenience so that if you enable\n // \"break on all exceptions\" in your console,\n // it would pause the execution at this line.\n throw new Error(message);\n } catch (e) {} // eslint-disable-line no-empty\n\n}\n\nfunction getUndefinedStateErrorMessage(key, action) {\n var actionType = action && action.type;\n var actionDescription = actionType && \"action \\\"\" + String(actionType) + \"\\\"\" || 'an action';\n return \"Given \" + actionDescription + \", reducer \\\"\" + key + \"\\\" returned undefined. \" + \"To ignore an action, you must explicitly return the previous state. \" + \"If you want this reducer to hold no value, you can return null instead of undefined.\";\n}\n\nfunction getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {\n var reducerKeys = Object.keys(reducers);\n var argumentName = action && action.type === ActionTypes.INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer';\n\n if (reducerKeys.length === 0) {\n return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.';\n }\n\n if (!isPlainObject(inputState)) {\n return \"The \" + argumentName + \" has unexpected type of \\\"\" + {}.toString.call(inputState).match(/\\s([a-z|A-Z]+)/)[1] + \"\\\". Expected argument to be an object with the following \" + (\"keys: \\\"\" + reducerKeys.join('\", \"') + \"\\\"\");\n }\n\n var unexpectedKeys = Object.keys(inputState).filter(function (key) {\n return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];\n });\n unexpectedKeys.forEach(function (key) {\n unexpectedKeyCache[key] = true;\n });\n if (action && action.type === ActionTypes.REPLACE) return;\n\n if (unexpectedKeys.length > 0) {\n return \"Unexpected \" + (unexpectedKeys.length > 1 ? 'keys' : 'key') + \" \" + (\"\\\"\" + unexpectedKeys.join('\", \"') + \"\\\" found in \" + argumentName + \". \") + \"Expected to find one of the known reducer keys instead: \" + (\"\\\"\" + reducerKeys.join('\", \"') + \"\\\". Unexpected keys will be ignored.\");\n }\n}\n\nfunction assertReducerShape(reducers) {\n Object.keys(reducers).forEach(function (key) {\n var reducer = reducers[key];\n var initialState = reducer(undefined, {\n type: ActionTypes.INIT\n });\n\n if (typeof initialState === 'undefined') {\n throw new Error(\"Reducer \\\"\" + key + \"\\\" returned undefined during initialization. \" + \"If the state passed to the reducer is undefined, you must \" + \"explicitly return the initial state. The initial state may \" + \"not be undefined. If you don't want to set a value for this reducer, \" + \"you can use null instead of undefined.\");\n }\n\n if (typeof reducer(undefined, {\n type: ActionTypes.PROBE_UNKNOWN_ACTION()\n }) === 'undefined') {\n throw new Error(\"Reducer \\\"\" + key + \"\\\" returned undefined when probed with a random type. \" + (\"Don't try to handle \" + ActionTypes.INIT + \" or other actions in \\\"redux/*\\\" \") + \"namespace. They are considered private. Instead, you must return the \" + \"current state for any unknown actions, unless it is undefined, \" + \"in which case you must return the initial state, regardless of the \" + \"action type. The initial state may not be undefined, but can be null.\");\n }\n });\n}\n/**\n * Turns an object whose values are different reducer functions, into a single\n * reducer function. It will call every child reducer, and gather their results\n * into a single state object, whose keys correspond to the keys of the passed\n * reducer functions.\n *\n * @param {Object} reducers An object whose values correspond to different\n * reducer functions that need to be combined into one. One handy way to obtain\n * it is to use ES6 `import * as reducers` syntax. The reducers may never return\n * undefined for any action. Instead, they should return their initial state\n * if the state passed to them was undefined, and the current state for any\n * unrecognized action.\n *\n * @returns {Function} A reducer function that invokes every reducer inside the\n * passed object, and builds a state object with the same shape.\n */\n\n\nfunction combineReducers(reducers) {\n var reducerKeys = Object.keys(reducers);\n var finalReducers = {};\n\n for (var i = 0; i < reducerKeys.length; i++) {\n var key = reducerKeys[i];\n\n if (false) {}\n\n if (typeof reducers[key] === 'function') {\n finalReducers[key] = reducers[key];\n }\n }\n\n var finalReducerKeys = Object.keys(finalReducers); // This is used to make sure we don't warn about the same\n // keys multiple times.\n\n var unexpectedKeyCache;\n\n if (false) {}\n\n var shapeAssertionError;\n\n try {\n assertReducerShape(finalReducers);\n } catch (e) {\n shapeAssertionError = e;\n }\n\n return function combination(state, action) {\n if (state === void 0) {\n state = {};\n }\n\n if (shapeAssertionError) {\n throw shapeAssertionError;\n }\n\n if (false) { var warningMessage; }\n\n var hasChanged = false;\n var nextState = {};\n\n for (var _i = 0; _i < finalReducerKeys.length; _i++) {\n var _key = finalReducerKeys[_i];\n var reducer = finalReducers[_key];\n var previousStateForKey = state[_key];\n var nextStateForKey = reducer(previousStateForKey, action);\n\n if (typeof nextStateForKey === 'undefined') {\n var errorMessage = getUndefinedStateErrorMessage(_key, action);\n throw new Error(errorMessage);\n }\n\n nextState[_key] = nextStateForKey;\n hasChanged = hasChanged || nextStateForKey !== previousStateForKey;\n }\n\n hasChanged = hasChanged || finalReducerKeys.length !== Object.keys(state).length;\n return hasChanged ? nextState : state;\n };\n}\n\nfunction bindActionCreator(actionCreator, dispatch) {\n return function () {\n return dispatch(actionCreator.apply(this, arguments));\n };\n}\n/**\n * Turns an object whose values are action creators, into an object with the\n * same keys, but with every function wrapped into a `dispatch` call so they\n * may be invoked directly. This is just a convenience method, as you can call\n * `store.dispatch(MyActionCreators.doSomething())` yourself just fine.\n *\n * For convenience, you can also pass an action creator as the first argument,\n * and get a dispatch wrapped function in return.\n *\n * @param {Function|Object} actionCreators An object whose values are action\n * creator functions. One handy way to obtain it is to use ES6 `import * as`\n * syntax. You may also pass a single function.\n *\n * @param {Function} dispatch The `dispatch` function available on your Redux\n * store.\n *\n * @returns {Function|Object} The object mimicking the original object, but with\n * every action creator wrapped into the `dispatch` call. If you passed a\n * function as `actionCreators`, the return value will also be a single\n * function.\n */\n\n\nfunction bindActionCreators(actionCreators, dispatch) {\n if (typeof actionCreators === 'function') {\n return bindActionCreator(actionCreators, dispatch);\n }\n\n if (typeof actionCreators !== 'object' || actionCreators === null) {\n throw new Error(\"bindActionCreators expected an object or a function, instead received \" + (actionCreators === null ? 'null' : typeof actionCreators) + \". \" + \"Did you write \\\"import ActionCreators from\\\" instead of \\\"import * as ActionCreators from\\\"?\");\n }\n\n var boundActionCreators = {};\n\n for (var key in actionCreators) {\n var actionCreator = actionCreators[key];\n\n if (typeof actionCreator === 'function') {\n boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);\n }\n }\n\n return boundActionCreators;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n keys.push.apply(keys, Object.getOwnPropertySymbols(object));\n }\n\n if (enumerableOnly) keys = keys.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(source, true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(source).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\n/**\n * Composes single-argument functions from right to left. The rightmost\n * function can take multiple arguments as it provides the signature for\n * the resulting composite function.\n *\n * @param {...Function} funcs The functions to compose.\n * @returns {Function} A function obtained by composing the argument functions\n * from right to left. For example, compose(f, g, h) is identical to doing\n * (...args) => f(g(h(...args))).\n */\nfunction compose() {\n for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {\n funcs[_key] = arguments[_key];\n }\n\n if (funcs.length === 0) {\n return function (arg) {\n return arg;\n };\n }\n\n if (funcs.length === 1) {\n return funcs[0];\n }\n\n return funcs.reduce(function (a, b) {\n return function () {\n return a(b.apply(void 0, arguments));\n };\n });\n}\n\n/**\n * Creates a store enhancer that applies middleware to the dispatch method\n * of the Redux store. This is handy for a variety of tasks, such as expressing\n * asynchronous actions in a concise manner, or logging every action payload.\n *\n * See `redux-thunk` package as an example of the Redux middleware.\n *\n * Because middleware is potentially asynchronous, this should be the first\n * store enhancer in the composition chain.\n *\n * Note that each middleware will be given the `dispatch` and `getState` functions\n * as named arguments.\n *\n * @param {...Function} middlewares The middleware chain to be applied.\n * @returns {Function} A store enhancer applying the middleware.\n */\n\nfunction applyMiddleware() {\n for (var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++) {\n middlewares[_key] = arguments[_key];\n }\n\n return function (createStore) {\n return function () {\n var store = createStore.apply(void 0, arguments);\n\n var _dispatch = function dispatch() {\n throw new Error('Dispatching while constructing your middleware is not allowed. ' + 'Other middleware would not be applied to this dispatch.');\n };\n\n var middlewareAPI = {\n getState: store.getState,\n dispatch: function dispatch() {\n return _dispatch.apply(void 0, arguments);\n }\n };\n var chain = middlewares.map(function (middleware) {\n return middleware(middlewareAPI);\n });\n _dispatch = compose.apply(void 0, chain)(store.dispatch);\n return _objectSpread2({}, store, {\n dispatch: _dispatch\n });\n };\n };\n}\n\n/*\n * This is a dummy function to check if the function name has been altered by minification.\n * If the function has been minified and NODE_ENV !== 'production', warn the user.\n */\n\nfunction isCrushed() {}\n\nif (false) {}\n\n\n\n\n/***/ }),\n\n/***/ \"ASA0\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = __webpack_require__(\"U5qN\");\nvar bonuses = [\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 0, y: 0 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 2, y: 0 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 5, y: 0 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 7, y: 0 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 9, y: 0 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 12, y: 0 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 14, y: 0 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 4, y: 1 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 6, y: 1 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 8, y: 1 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 10, y: 1 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 0, y: 2 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 3, y: 2 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 5, y: 2 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 7, y: 2 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 9, y: 2 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 11, y: 2 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 2 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 2, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 4, y: 3 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 6, y: 3 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 8, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 10, y: 3 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 12, y: 3 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 1, y: 4 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 3, y: 4 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 5, y: 4 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 9, y: 4 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 11, y: 4 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 13, y: 4 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 0, y: 5 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 2, y: 5 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 4, y: 5 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 7, y: 5 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 10, y: 5 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 12, y: 5 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 14, y: 5 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 1, y: 6 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 3, y: 6 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 6, y: 6 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 8, y: 6 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 11, y: 6 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 13, y: 6 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 0, y: 7 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 2, y: 7 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 5, y: 7 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 7, y: 7 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 9, y: 7 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 12, y: 7 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 14, y: 7 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 1, y: 8 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 3, y: 8 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 6, y: 8 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 8, y: 8 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 11, y: 8 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 13, y: 8 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 0, y: 9 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 2, y: 9 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 4, y: 9 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 7, y: 9 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 10, y: 9 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 12, y: 9 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 14, y: 9 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 1, y: 10 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 3, y: 10 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 5, y: 10 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 9, y: 10 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 11, y: 10 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 13, y: 10 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 2, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 4, y: 11 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 6, y: 11 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 8, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 10, y: 11 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 12, y: 11 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 0, y: 12 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 3, y: 12 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 5, y: 12 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 7, y: 12 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 9, y: 12 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 11, y: 12 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 12 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 4, y: 13 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 6, y: 13 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 8, y: 13 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 10, y: 13 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 0, y: 14 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 2, y: 14 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 5, y: 14 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 7, y: 14 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 9, y: 14 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 12, y: 14 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 14, y: 14 },\n];\nexports.default = bonuses;\n\n\n/***/ }),\n\n/***/ \"BsWD\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return _unsupportedIterableToArray; });\n/* harmony import */ var _babel_runtime_helpers_esm_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(\"a3WO\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return Object(_babel_runtime_helpers_esm_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ \"a\"])(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Object(_babel_runtime_helpers_esm_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ \"a\"])(o, minLen);\n}\n\n/***/ }),\n\n/***/ \"Dkvj\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spread = (this && this.__spread) || function () {\n for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));\n return ar;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar Pattern_1 = __importDefault(__webpack_require__(\"/VMF\"));\nvar HorizontalPattern = /** @class */ (function (_super) {\n __extends(HorizontalPattern, _super);\n function HorizontalPattern() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n HorizontalPattern.prototype.clone = function () {\n return new HorizontalPattern({\n board: this.board,\n cells: this.cells.map(function (cell) { return cell.clone(); }),\n });\n };\n HorizontalPattern.prototype.getCollisions = function () {\n var _this = this;\n var collisions = [];\n this.cells\n .filter(function (cell) { return cell.isEmpty && (_this.board.collidesUp(cell) || _this.board.collidesDown(cell)); })\n .forEach(function (cell) {\n var column = _this.board.getColumn(cell.x);\n var y = cell.y - 1;\n while (y >= 0 && column[y].hasTile()) {\n --y;\n }\n var previousCells = column.slice(y + 1, cell.y);\n y = cell.y + 1;\n while (y < column.length && column[y].hasTile()) {\n ++y;\n }\n var nextCells = column.slice(cell.y + 1, y);\n var cells = __spread(previousCells, [cell], nextCells);\n if (cells.length > 1) {\n var pattern = new Pattern_1.default({ board: _this.board, cells: cells });\n collisions.push(pattern);\n }\n });\n return collisions;\n };\n return HorizontalPattern;\n}(Pattern_1.default));\nexports.default = HorizontalPattern;\n\n\n/***/ }),\n\n/***/ \"I5Sk\":\n/***/ (function(module) {\n\nmodule.exports = JSON.parse(\"{\\\"cell.set-blank\\\":\\\"Marquer comme vide\\\",\\\"cell.set-not-blank\\\":\\\"Marquer comme non vide\\\",\\\"cell.toggle-direction\\\":\\\"Direction d'écriture - cliquer pour changer\\\",\\\"common.blanks\\\":\\\"Cases vides\\\",\\\"common.clear\\\":\\\"Effacer\\\",\\\"common.close\\\":\\\"Fermer\\\",\\\"common.consonants\\\":\\\"Consonnes\\\",\\\"common.loading\\\":\\\"Chargement\\\",\\\"common.points\\\":\\\"Points\\\",\\\"common.tiles\\\":\\\"Cases\\\",\\\"common.two-letter-tiles\\\":\\\"Deux lettres\\\",\\\"common.vowels\\\":\\\"Voyelles\\\",\\\"common.word\\\":\\\"Mot\\\",\\\"common.words\\\":\\\"Mots\\\",\\\"dictionary.empty-state.no-definitions\\\":\\\"Le mot existe dans le dictionary mais n'a pas de définition.\\\",\\\"dictionary.empty-state.no-results\\\":\\\"Impossible de trouver une définition pour ce mot dans le dictionaire.\\\",\\\"dictionary.empty-state.not-allowed\\\":\\\"Ce mot n'est pas pas acceptable.\\\",\\\"dictionary.empty-state.uninitialized\\\":\\\"La définition dictionaire du dernier mot surligné sera affichée ici.\\\",\\\"dictionary.input.placeholder\\\":\\\"Rechercher dans le dictionnaire...\\\",\\\"empty-state.error\\\":\\\"Erreur\\\",\\\"empty-state.info\\\":\\\"Info\\\",\\\"empty-state.success\\\":\\\"Ouais!\\\",\\\"empty-state.warning\\\":\\\"Oups!\\\",\\\"github\\\":\\\"Voir ce projet sur GitHub\\\",\\\"keyMap\\\":\\\"Raccourcis clavier\\\",\\\"keyMap.board\\\":\\\"Plateau\\\",\\\"keyMap.board.toggle-blank\\\":\\\"Marqué/Démarqué la case en tant que vide\\\",\\\"keyMap.board.toggle-direction\\\":\\\"Faire basculer la direction d'écriture\\\",\\\"keyMap.board-and-rack\\\":\\\"Plateau & chevalet\\\",\\\"keyMap.board-and-rack.insert-two-letter-tile\\\":\\\"Insérer une tuile de deux lettres\\\",\\\"keyMap.board-and-rack.navigate\\\":\\\"Naviguer\\\",\\\"keyMap.board-and-rack.remove-tile\\\":\\\"Supprimer une case\\\",\\\"keyMap.board-and-rack.submit\\\":\\\"Commencer la résolution\\\",\\\"keyMap.rack\\\":\\\"Chevalet\\\",\\\"keyMap.rack.insert-blank\\\":\\\"Inserer une case vide (spacebar)\\\",\\\"rack.placeholder\\\":\\\"Lettres\\\",\\\"remaining-tiles\\\":\\\"Cases restantes\\\",\\\"results.empty-state.no-filtered-results\\\":\\\"Aucun résultat ne correspond à cette requête\\\",\\\"results.empty-state.no-results\\\":\\\"Pas de résultats - impossible de générer des mots.\\\",\\\"results.empty-state.outdated\\\":\\\"Les résultats sont dépassé. Cliquer ci-dessous pour mettre à jour.\\\",\\\"results.empty-state.uninitialized\\\":\\\"Words generated from your letters will be shown here.\\\",\\\"results.input.placeholder\\\":\\\"Rechercher les résultats... (RegExp)\\\",\\\"results.solve\\\":\\\"Résoudre\\\",\\\"settings\\\":\\\"Options\\\",\\\"settings.autoGroupTiles\\\":\\\"Grouper les cases restantes\\\",\\\"settings.autoGroupTiles.left\\\":\\\"Vers la droite\\\",\\\"settings.autoGroupTiles.right\\\":\\\"Vers la gauche\\\",\\\"settings.autoGroupTiles.null\\\":\\\"Ne pas grouper\\\",\\\"settings.game\\\":\\\"Jeu\\\",\\\"settings.language\\\":\\\"Langue\\\"}\");\n\n/***/ }),\n\n/***/ \"JQii\":\n/***/ (function(module) {\n\nmodule.exports = JSON.parse(\"{\\\"cell.set-blank\\\":\\\"Als Blanko markieren\\\",\\\"cell.set-not-blank\\\":\\\"Nicht als Blanko markieren\\\",\\\"cell.toggle-direction\\\":\\\"Schreibrichtung - klicken zum Wechseln\\\",\\\"common.blanks\\\":\\\"Blankos\\\",\\\"common.clear\\\":\\\"Löschen\\\",\\\"common.close\\\":\\\"Schließen\\\",\\\"common.consonants\\\":\\\"Konsonanten\\\",\\\"common.loading\\\":\\\"Laden\\\",\\\"common.points\\\":\\\"Punkte\\\",\\\"common.tiles\\\":\\\"Steine\\\",\\\"common.two-letter-tiles\\\":\\\"Zwei-Buchstaben\\\",\\\"common.vowels\\\":\\\"Vokale\\\",\\\"common.word\\\":\\\"Wort\\\",\\\"common.words\\\":\\\"Wörter\\\",\\\"dictionary.empty-state.no-definitions\\\":\\\"Wort existiert im Wörterbuch aber hat keine Definition.\\\",\\\"dictionary.empty-state.no-results\\\":\\\"Wort kann nicht im Wörterbuch gefunden werden.\\\",\\\"dictionary.empty-state.not-allowed\\\":\\\"Dieses Wort ist nicht erlaubt.\\\",\\\"dictionary.empty-state.uninitialized\\\":\\\"Die Wörterbuchdefinition des letzten markierten Wortes wird hier angezeigt.\\\",\\\"dictionary.input.placeholder\\\":\\\"Durchsuche Wörterbuch...\\\",\\\"empty-state.error\\\":\\\"Fehler\\\",\\\"empty-state.info\\\":\\\"Info\\\",\\\"empty-state.success\\\":\\\"Juhuu!\\\",\\\"empty-state.warning\\\":\\\"Oje!\\\",\\\"github\\\":\\\"Schau dieses Projekt auf GitHub an\\\",\\\"keyMap\\\":\\\"Tastaturkürzel\\\",\\\"keyMap.board\\\":\\\"Brett\\\",\\\"keyMap.board.toggle-blank\\\":\\\"Als Blanko markieren / aufheben\\\",\\\"keyMap.board.toggle-direction\\\":\\\"Schreibrichtung umschalten\\\",\\\"keyMap.board-and-rack\\\":\\\"Brett & Ablage\\\",\\\"keyMap.board-and-rack.insert-two-letter-tile\\\":\\\"Zwei-Buchstaben Stein hinzufügen\\\",\\\"keyMap.board-and-rack.navigate\\\":\\\"Navigieren\\\",\\\"keyMap.board-and-rack.remove-tile\\\":\\\"Stein entfernen\\\",\\\"keyMap.board-and-rack.submit\\\":\\\"Lösen starten\\\",\\\"keyMap.rack\\\":\\\"Ablage\\\",\\\"keyMap.rack.insert-blank\\\":\\\"Blanko hinzufügen (Leertaste)\\\",\\\"rack.placeholder\\\":\\\"Steine…\\\",\\\"remaining-tiles\\\":\\\"Restliche Steine\\\",\\\"results.empty-state.no-filtered-results\\\":\\\"Keine Ergebnisse für diese Anfrage.\\\",\\\"results.empty-state.no-results\\\":\\\"Keine Ergebnisse - kein Wort konnte generiert werden.\\\",\\\"results.empty-state.outdated\\\":\\\"Ergebnisse sind alt. Klicken zum Aktualisieren.\\\",\\\"results.empty-state.uninitialized\\\":\\\"Wörter die aus deinen Buchstaben generiert wurden erscheinen hier.\\\",\\\"results.input.placeholder\\\":\\\"Suchergebnisse... (RegExp)\\\",\\\"results.solve\\\":\\\"Lösen\\\",\\\"settings\\\":\\\"Einstellungen\\\",\\\"settings.autoGroupTiles\\\":\\\"Restliche Steine gruppieren\\\",\\\"settings.autoGroupTiles.left\\\":\\\"Linke Seite\\\",\\\"settings.autoGroupTiles.right\\\":\\\"Rechte Seite\\\",\\\"settings.autoGroupTiles.null\\\":\\\"Nicht gruppieren\\\",\\\"settings.game\\\":\\\"Spiel\\\",\\\"settings.language\\\":\\\"Sprache\\\"}\");\n\n/***/ }),\n\n/***/ \"KFH4\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesEs = [\n { character: 'a', count: 12, score: 1 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 4, score: 3 },\n { character: 'ch', count: 1, score: 5 },\n { character: 'd', count: 5, score: 2 },\n { character: 'e', count: 12, score: 1 },\n { character: 'f', count: 1, score: 4 },\n { character: 'g', count: 2, score: 2 },\n { character: 'h', count: 2, score: 4 },\n { character: 'i', count: 6, score: 1 },\n { character: 'j', count: 1, score: 8 },\n { character: 'll', count: 1, score: 8 },\n { character: 'l', count: 4, score: 1 },\n { character: 'm', count: 2, score: 3 },\n { character: 'n', count: 5, score: 1 },\n { character: 'ñ', count: 1, score: 8 },\n { character: 'o', count: 9, score: 1 },\n { character: 'p', count: 2, score: 3 },\n { character: 'q', count: 1, score: 5 },\n { character: 'r', count: 5, score: 1 },\n { character: 'rr', count: 1, score: 8 },\n { character: 's', count: 6, score: 1 },\n { character: 't', count: 4, score: 1 },\n { character: 'u', count: 5, score: 1 },\n { character: 'v', count: 1, score: 4 },\n { character: 'x', count: 1, score: 8 },\n { character: 'y', count: 1, score: 4 },\n { character: 'z', count: 1, score: 10 },\n];\nexports.default = tilesEs;\n\n\n/***/ }),\n\n/***/ \"KQm4\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, \"a\", function() { return /* binding */ _toConsumableArray; });\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js\nvar arrayLikeToArray = __webpack_require__(\"a3WO\");\n\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return Object(arrayLikeToArray[\"a\" /* default */])(arr);\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js\nvar unsupportedIterableToArray = __webpack_require__(\"BsWD\");\n\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\n\n\n\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || Object(unsupportedIterableToArray[\"a\" /* default */])(arr) || _nonIterableSpread();\n}\n\n/***/ }),\n\n/***/ \"KR0w\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = __webpack_require__(\"U5qN\");\nvar Tile = /** @class */ (function () {\n function Tile(_a) {\n var character = _a.character, _b = _a.isBlank, isBlank = _b === void 0 ? false : _b;\n this.character = character;\n this.isBlank = isBlank;\n }\n Tile.fromJson = function (json) {\n if (!json) {\n return Tile.Null;\n }\n return new Tile({\n character: json.character,\n isBlank: json.isBlank,\n });\n };\n Tile.prototype.clone = function () {\n return new Tile({\n character: this.character,\n isBlank: this.isBlank,\n });\n };\n Tile.prototype.equals = function (other) {\n return this.character === other.character && this.isBlank === other.isBlank;\n };\n Tile.prototype.toJson = function () {\n return {\n character: this.character,\n isBlank: this.isBlank,\n };\n };\n Tile.prototype.toString = function () {\n return this.character;\n };\n Tile.Null = Object.freeze({\n character: constants_1.EMPTY_CELL,\n isBlank: false,\n clone: function () { return Tile.Null; },\n equals: function (other) { return other === Tile.Null; },\n toJson: function () { return null; },\n toString: function () { return constants_1.EMPTY_CELL; },\n });\n return Tile;\n}());\nexports.default = Tile;\n\n\n/***/ }),\n\n/***/ \"Kxtj\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = __webpack_require__(\"U5qN\");\nvar Cell_1 = __importDefault(__webpack_require__(\"x6Yb\"));\nvar Tile_1 = __importDefault(__webpack_require__(\"KR0w\"));\nvar Board = /** @class */ (function () {\n function Board(_a) {\n var rows = _a.rows;\n this.rows = rows;\n this.numberOfColumns = rows[0].length;\n this.numberOfRows = rows.length;\n }\n Board.create = function (width, height) {\n return Board.fromStringArray(Array(height).fill(Array(width).fill(' ').join('')));\n };\n Board.fromJson = function (json) {\n return new Board({\n rows: json.map(function (row) { return row.map(Cell_1.default.fromJson); }),\n });\n };\n Board.fromStringArray = function (stringArray) {\n return new Board({\n rows: stringArray.map(function (row, y) {\n return row.split('').map(function (character, x) {\n return new Cell_1.default({\n isEmpty: !character || character === constants_1.EMPTY_CELL,\n tile: character === constants_1.EMPTY_CELL ? Tile_1.default.Null : new Tile_1.default({ character: character }),\n x: x,\n y: y,\n });\n });\n }),\n });\n };\n Object.defineProperty(Board.prototype, \"center\", {\n get: function () {\n var x = Math.floor(this.numberOfColumns / 2);\n var y = Math.floor(this.numberOfRows / 2);\n return this.rows[y][x];\n },\n enumerable: false,\n configurable: true\n });\n Board.prototype.clone = function () {\n var rows = this.rows.map(function (row) { return row.map(function (cell) { return cell.clone(); }); });\n return new Board({ rows: rows });\n };\n Board.prototype.collides = function (cell) {\n return this.collidesUp(cell) || this.collidesDown(cell) || this.collidesLeft(cell) || this.collidesRight(cell);\n };\n Board.prototype.collidesDown = function (_a) {\n var x = _a.x, y = _a.y;\n return y < this.numberOfRows - 1 && !this.rows[y + 1][x].isEmpty;\n };\n Board.prototype.collidesLeft = function (_a) {\n var x = _a.x, y = _a.y;\n return x > 0 && !this.rows[y][x - 1].isEmpty;\n };\n Board.prototype.collidesRight = function (_a) {\n var x = _a.x, y = _a.y;\n return x < this.numberOfColumns - 1 && !this.rows[y][x + 1].isEmpty;\n };\n Board.prototype.collidesUp = function (_a) {\n var x = _a.x, y = _a.y;\n return y > 0 && !this.rows[y - 1][x].isEmpty;\n };\n Board.prototype.equals = function (other) {\n return (this.numberOfColumns === other.numberOfColumns &&\n this.numberOfRows === other.numberOfRows &&\n this.rows.every(function (row, rowIndex) {\n return row.every(function (cell, cellIndex) {\n return cell.equals(other.rows[rowIndex][cellIndex]);\n });\n }));\n };\n Board.prototype.getBlanksCount = function () {\n return this.rows.reduce(function (count, row) {\n return count + row.reduce(function (rowCount, cell) { return (cell.tile.isBlank ? rowCount + 1 : rowCount); }, 0);\n }, 0);\n };\n Board.prototype.getColumn = function (index) {\n return this.rows.map(function (row) { return row[index]; });\n };\n Board.prototype.getRow = function (index) {\n return this.rows[index];\n };\n Board.prototype.getTilesCount = function () {\n return this.rows.reduce(function (count, row) {\n return count + row.reduce(function (rowCount, cell) { return (cell.hasTile() ? rowCount + 1 : rowCount); }, 0);\n }, 0);\n };\n Board.prototype.isEmpty = function () {\n return this.rows.every(function (row) { return row.every(function (_a) {\n var isEmpty = _a.isEmpty;\n return isEmpty;\n }); });\n };\n Board.prototype.toJson = function () {\n return this.rows.map(function (row) { return row.map(function (cell) { return cell.toJson(); }); });\n };\n Board.prototype.toString = function () {\n return this.rows.map(function (row) { return row.map(String); }).join('\\n');\n };\n Board.prototype.updateCell = function (x, y, updateCell) {\n this.rows[y][x] = updateCell(this.rows[y][x]);\n };\n Board.prototype.updateRow = function (y, updateRow) {\n this.rows[y] = updateRow(this.rows[y]);\n };\n return Board;\n}());\nexports.default = Board;\n\n\n/***/ }),\n\n/***/ \"LzO6\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.default = void 0;\nvar literaki_1 = __webpack_require__(\"4+01\");\nObject.defineProperty(exports, \"default\", { enumerable: true, get: function () { return __importDefault(literaki_1).default; } });\n\n\n/***/ }),\n\n/***/ \"QLQB\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesEn = [\n { character: 'a', count: 9, score: 1 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 2, score: 3 },\n { character: 'd', count: 4, score: 2 },\n { character: 'e', count: 12, score: 1 },\n { character: 'f', count: 2, score: 4 },\n { character: 'g', count: 3, score: 2 },\n { character: 'h', count: 2, score: 4 },\n { character: 'i', count: 9, score: 1 },\n { character: 'j', count: 1, score: 8 },\n { character: 'k', count: 1, score: 5 },\n { character: 'l', count: 4, score: 1 },\n { character: 'm', count: 2, score: 3 },\n { character: 'n', count: 6, score: 1 },\n { character: 'o', count: 8, score: 1 },\n { character: 'p', count: 2, score: 3 },\n { character: 'q', count: 1, score: 10 },\n { character: 'r', count: 6, score: 1 },\n { character: 's', count: 4, score: 1 },\n { character: 't', count: 6, score: 1 },\n { character: 'u', count: 4, score: 1 },\n { character: 'v', count: 2, score: 4 },\n { character: 'w', count: 2, score: 4 },\n { character: 'x', count: 1, score: 8 },\n { character: 'y', count: 2, score: 4 },\n { character: 'z', count: 1, score: 10 },\n];\nexports.default = tilesEn;\n\n\n/***/ }),\n\n/***/ \"QqGY\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesEs = [\n { character: 'a', count: 12, score: 1 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 4, score: 3 },\n { character: 'ch', count: 1, score: 5 },\n { character: 'd', count: 5, score: 2 },\n { character: 'e', count: 12, score: 1 },\n { character: 'f', count: 1, score: 4 },\n { character: 'g', count: 2, score: 2 },\n { character: 'h', count: 2, score: 4 },\n { character: 'i', count: 6, score: 1 },\n { character: 'j', count: 1, score: 8 },\n { character: 'll', count: 1, score: 8 },\n { character: 'l', count: 4, score: 1 },\n { character: 'm', count: 2, score: 3 },\n { character: 'n', count: 5, score: 1 },\n { character: 'ñ', count: 1, score: 8 },\n { character: 'o', count: 9, score: 1 },\n { character: 'p', count: 2, score: 3 },\n { character: 'q', count: 1, score: 5 },\n { character: 'r', count: 5, score: 1 },\n { character: 'rr', count: 1, score: 8 },\n { character: 's', count: 6, score: 1 },\n { character: 't', count: 4, score: 1 },\n { character: 'u', count: 5, score: 1 },\n { character: 'v', count: 1, score: 4 },\n { character: 'x', count: 1, score: 8 },\n { character: 'y', count: 1, score: 4 },\n { character: 'z', count: 1, score: 10 },\n];\nexports.default = tilesEs;\n\n\n/***/ }),\n\n/***/ \"SLVX\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return symbolObservablePonyfill; });\nfunction symbolObservablePonyfill(root) {\n\tvar result;\n\tvar Symbol = root.Symbol;\n\n\tif (typeof Symbol === 'function') {\n\t\tif (Symbol.observable) {\n\t\t\tresult = Symbol.observable;\n\t\t} else {\n\t\t\tresult = Symbol('observable');\n\t\t\tSymbol.observable = result;\n\t\t}\n\t} else {\n\t\tresult = '@@observable';\n\t}\n\n\treturn result;\n};\n\n\n/***/ }),\n\n/***/ \"TOwV\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nif (true) {\n module.exports = __webpack_require__(\"qT12\");\n} else {}\n\n\n/***/ }),\n\n/***/ \"TP9X\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesDe = [\n { character: 'a', count: 5, score: 1 },\n { character: 'ä', count: 1, score: 6 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 2, score: 4 },\n { character: 'd', count: 4, score: 1 },\n { character: 'e', count: 15, score: 1 },\n { character: 'f', count: 2, score: 4 },\n { character: 'g', count: 3, score: 2 },\n { character: 'h', count: 4, score: 2 },\n { character: 'i', count: 6, score: 1 },\n { character: 'j', count: 1, score: 6 },\n { character: 'k', count: 2, score: 4 },\n { character: 'l', count: 3, score: 2 },\n { character: 'm', count: 4, score: 3 },\n { character: 'n', count: 9, score: 1 },\n { character: 'o', count: 3, score: 2 },\n { character: 'ö', count: 1, score: 8 },\n { character: 'p', count: 1, score: 4 },\n { character: 'q', count: 1, score: 10 },\n { character: 'r', count: 6, score: 1 },\n { character: 's', count: 7, score: 1 },\n { character: 't', count: 6, score: 1 },\n { character: 'u', count: 6, score: 1 },\n { character: 'ü', count: 1, score: 6 },\n { character: 'v', count: 1, score: 6 },\n { character: 'w', count: 1, score: 3 },\n { character: 'x', count: 1, score: 8 },\n { character: 'y', count: 1, score: 10 },\n { character: 'z', count: 1, score: 3 },\n];\nexports.default = tilesDe;\n\n\n/***/ }),\n\n/***/ \"U5qN\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.VOWELS = exports.CONSONANTS = exports.NO_BONUS = exports.EMPTY_CELL = exports.BONUS_WORD = exports.BONUS_CHARACTER = exports.BLANK = void 0;\nexports.BLANK = ' ';\nexports.BONUS_CHARACTER = 'BONUS_CHARACTER';\nexports.BONUS_WORD = 'BONUS_WORD';\nexports.EMPTY_CELL = ' ';\nexports.NO_BONUS = { characterMultiplier: 1, wordMultiplier: 1 };\nexports.CONSONANTS = [\n 'b',\n 'c',\n 'ć',\n 'd',\n 'f',\n 'g',\n 'h',\n 'j',\n 'k',\n 'l',\n 'ł',\n 'm',\n 'n',\n 'ń',\n 'p',\n 'q',\n 'r',\n 's',\n 'ś',\n 't',\n 'v',\n 'w',\n 'x',\n 'z',\n 'ź',\n 'ż',\n];\nexports.VOWELS = ['a', 'ą', 'ä', 'e', 'ę', 'i', 'o', 'ó', 'ö', 'u', 'ü', 'y'];\n\n\n/***/ }),\n\n/***/ \"XJoN\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesFr = [\n { character: 'a', count: 9, score: 1 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 2, score: 3 },\n { character: 'd', count: 3, score: 2 },\n { character: 'e', count: 15, score: 1 },\n { character: 'f', count: 2, score: 1 },\n { character: 'g', count: 2, score: 2 },\n { character: 'h', count: 2, score: 4 },\n { character: 'i', count: 8, score: 1 },\n { character: 'j', count: 1, score: 8 },\n { character: 'k', count: 1, score: 10 },\n { character: 'l', count: 5, score: 1 },\n { character: 'm', count: 3, score: 2 },\n { character: 'n', count: 6, score: 1 },\n { character: 'o', count: 6, score: 1 },\n { character: 'p', count: 2, score: 3 },\n { character: 'q', count: 1, score: 8 },\n { character: 'r', count: 6, score: 1 },\n { character: 's', count: 6, score: 1 },\n { character: 't', count: 6, score: 1 },\n { character: 'u', count: 6, score: 1 },\n { character: 'v', count: 2, score: 4 },\n { character: 'w', count: 1, score: 10 },\n { character: 'x', count: 1, score: 10 },\n { character: 'y', count: 1, score: 10 },\n { character: 'z', count: 1, score: 10 },\n];\nexports.default = tilesFr;\n\n\n/***/ }),\n\n/***/ \"Yv4l\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = __webpack_require__(\"U5qN\");\nvar CharacterBonus_1 = __importDefault(__webpack_require__(\"5vez\"));\nvar WordBonus_1 = __importDefault(__webpack_require__(\"fIUM\"));\nvar Config = /** @class */ (function () {\n function Config(config) {\n this.bonuses = getBonuses(config);\n this.config = config;\n this.pointsMap = getPointsMap(this.config);\n }\n Config.fromJson = function (json) {\n return new Config(json);\n };\n Object.defineProperty(Config.prototype, \"allTilesBonusScore\", {\n get: function () {\n return this.config.allTilesBonusScore;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"alphabet\", {\n get: function () {\n return getAlphabet(this.config);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"blankScore\", {\n get: function () {\n return this.config.blankScore;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"boardHeight\", {\n get: function () {\n return this.config.boardHeight;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"boardWidth\", {\n get: function () {\n return this.config.boardWidth;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"twoCharacterTiles\", {\n get: function () {\n return this.config.tiles.filter(function (tile) { return tile.character.length === 2; }).map(function (tile) { return tile.character; });\n },\n enumerable: false,\n configurable: true\n });\n Config.prototype.getCellBonus = function (cell) {\n return this.bonuses.find(function (bonus) { return bonus.matchesCellCoordinates(cell); });\n };\n Config.prototype.getCellBonusValue = function (cell) {\n var _a;\n return ((_a = this.getCellBonus(cell)) === null || _a === void 0 ? void 0 : _a.value) || constants_1.NO_BONUS;\n };\n Config.prototype.getCharacterPoints = function (character) {\n if (character === null) {\n return undefined;\n }\n if (character === constants_1.BLANK) {\n return this.blankScore;\n }\n return this.pointsMap[character];\n };\n Config.prototype.getTwoCharacterTileByPrefix = function (character) {\n if (character.length !== 1) {\n return undefined;\n }\n return this.twoCharacterTiles.find(function (characters) { return characters.startsWith(character); });\n };\n Config.prototype.getTilePoints = function (tile) {\n if (tile === null) {\n return undefined;\n }\n return tile.isBlank ? this.blankScore : this.getCharacterPoints(tile.character);\n };\n Config.prototype.hasCharacter = function (character) {\n return this.alphabet.includes(character);\n };\n Config.prototype.isTwoCharacterTilePrefix = function (character) {\n return typeof this.getTwoCharacterTileByPrefix(character) !== 'undefined';\n };\n Object.defineProperty(Config.prototype, \"maximumNumberOfCharacters\", {\n get: function () {\n return this.config.maximumNumberOfCharacters;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"numberOfBlanks\", {\n get: function () {\n return this.config.numberOfBlanks;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"tiles\", {\n get: function () {\n return this.config.tiles;\n },\n enumerable: false,\n configurable: true\n });\n Config.prototype.toJson = function () {\n return this.config;\n };\n return Config;\n}());\nvar getBonuses = function (config) {\n return config.bonuses.map(function (bonus) {\n if (bonus.type === constants_1.BONUS_CHARACTER) {\n return new CharacterBonus_1.default(bonus);\n }\n if (bonus.type === constants_1.BONUS_WORD) {\n return new WordBonus_1.default(bonus);\n }\n throw new Error(\"Unsupported Bonus type: \\\"\" + bonus.type + \"\\\"\");\n });\n};\nvar getAlphabet = function (config) { return config.tiles.map(function (_a) {\n var character = _a.character;\n return character;\n}); };\nvar getPointsMap = function (config) {\n return config.tiles.reduce(function (pointsMap, _a) {\n var _b;\n var character = _a.character, score = _a.score;\n return (__assign(__assign({}, pointsMap), (_b = {}, _b[character] = score, _b)));\n }, {});\n};\nexports.default = Config;\n\n\n/***/ }),\n\n/***/ \"ZJ2G\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nvar _a;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar types_1 = __webpack_require__(\"v/x1\");\nvar bonuses_1 = __importDefault(__webpack_require__(\"s8jJ\"));\nvar tiles_1 = __webpack_require__(\"eI4A\");\nvar base = {\n allTilesBonusScore: 50,\n blankScore: 0,\n boardHeight: 15,\n boardWidth: 15,\n bonuses: bonuses_1.default,\n id: 'scrabble',\n maximumNumberOfCharacters: 7,\n name: 'Scrabble',\n numberOfBlanks: 2,\n};\nvar scrabble = (_a = {\n id: base.id,\n name: base.name\n },\n _a[types_1.Locale.EN_GB] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesEn })),\n _a[types_1.Locale.DE_DE] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesDe })),\n _a[types_1.Locale.EN_US] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesEn })),\n _a[types_1.Locale.ES_ES] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesEs })),\n _a[types_1.Locale.FR_FR] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesFr })),\n _a[types_1.Locale.PL_PL] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesPl })),\n _a);\nexports.default = scrabble;\n\n\n/***/ }),\n\n/***/ \"a3WO\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return _arrayLikeToArray; });\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\n/***/ }),\n\n/***/ \"aMA8\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar getConfig_1 = __importDefault(__webpack_require__(\"bIQe\"));\nvar getLocaleConfig = function (configId, locale) {\n return getConfig_1.default(configId)[locale];\n};\nexports.default = getLocaleConfig;\n\n\n/***/ }),\n\n/***/ \"bCCX\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global, module) {/* harmony import */ var _ponyfill_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(\"SLVX\");\n/* global window */\n\n\nvar root;\n\nif (typeof self !== 'undefined') {\n root = self;\n} else if (typeof window !== 'undefined') {\n root = window;\n} else if (typeof global !== 'undefined') {\n root = global;\n} else if (true) {\n root = module;\n} else {}\n\nvar result = Object(_ponyfill_js__WEBPACK_IMPORTED_MODULE_0__[/* default */ \"a\"])(root);\n/* harmony default export */ __webpack_exports__[\"a\"] = (result);\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(\"yLpj\"), __webpack_require__(\"3UD+\")(module)))\n\n/***/ }),\n\n/***/ \"bIQe\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar literaki_1 = __importDefault(__webpack_require__(\"LzO6\"));\nvar scrabble_1 = __importDefault(__webpack_require__(\"t4n0\"));\nvar configs = [literaki_1.default, scrabble_1.default];\nvar getConfig = function (configId) {\n var config = configs.find(function (_a) {\n var id = _a.id;\n return id === configId;\n });\n if (!config) {\n throw new Error(\"Invalid \\\"configId\\\" parameter: not one of \" + configs.map(function (_a) {\n var id = _a.id;\n return id;\n }).join('/'));\n }\n return config;\n};\nexports.default = getConfig;\n\n\n/***/ }),\n\n/***/ \"d0vb\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = __webpack_require__(\"U5qN\");\nvar Cell_1 = __importDefault(__webpack_require__(\"x6Yb\"));\nvar Result = /** @class */ (function () {\n function Result(_a) {\n var cells = _a.cells, id = _a.id, numberOfCollisions = _a.numberOfCollisions, points = _a.points;\n var tiles = getTiles(cells);\n this.cells = cells;\n this.id = id;\n this.length = cells.length;\n this.numberOfCollisions = numberOfCollisions;\n this.numberOfConsonants = getConsonants(tiles).length;\n this.numberOfBlanks = getBlanks(tiles).length;\n this.numberOfTiles = tiles.length;\n this.numberOfVowels = getVowels(tiles).length;\n this.numberOfWords = 1 + this.numberOfCollisions;\n this.points = points;\n this.pointsRatio = getPointsRatio(tiles, points);\n this.tiles = tiles;\n this.tilesCharacters = getTilesCharacters(tiles);\n this.word = getWord(cells);\n }\n Result.fromJson = function (json) {\n return new Result({\n cells: json.cells.map(Cell_1.default.fromJson),\n id: json.id,\n numberOfCollisions: json.numberOfCollisions,\n points: json.points,\n });\n };\n Result.prototype.toJson = function () {\n return {\n cells: this.cells.map(function (cell) { return cell.toJson(); }),\n id: this.id,\n numberOfCollisions: this.numberOfCollisions,\n points: this.points,\n };\n };\n return Result;\n}());\nvar charactersComparator = function (a, b) { return a.localeCompare(b); };\nvar getBlanks = function (tiles) { return tiles.filter(function (_a) {\n var isBlank = _a.isBlank;\n return isBlank;\n}); };\nvar getConsonants = function (tiles) { return tiles.filter(isConsonant); };\nvar getVowels = function (tiles) { return tiles.filter(isVowel); };\nvar getNonBlankCharacters = function (tiles) { return getNonBlanks(tiles).map(function (_a) {\n var character = _a.character;\n return character;\n}); };\nvar getNonBlanks = function (tiles) { return tiles.filter(function (_a) {\n var isBlank = _a.isBlank;\n return !isBlank;\n}); };\nvar getPointsRatio = function (tiles, points) { return points / tiles.length; };\nvar getTiles = function (cells) { return cells.filter(function (_a) {\n var isEmpty = _a.isEmpty;\n return isEmpty;\n}).map(function (_a) {\n var tile = _a.tile;\n return tile;\n}); };\nvar getTilesCharacters = function (tiles) { return getNonBlankCharacters(tiles).sort(charactersComparator).join(''); };\nvar getWord = function (cells) { return cells.map(String).join(''); };\nvar isConsonant = function (_a) {\n var character = _a.character, isBlank = _a.isBlank;\n return constants_1.CONSONANTS.includes(character) && !isBlank;\n};\nvar isVowel = function (_a) {\n var character = _a.character, isBlank = _a.isBlank;\n return constants_1.VOWELS.includes(character) && !isBlank;\n};\nexports.default = Result;\n\n\n/***/ }),\n\n/***/ \"dm5A\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"m\", function() { return GITHUB_PROJECT_URL; });\n/* unused harmony export TRANSITION_DURATION */\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"A\", function() { return TRANSITION_DURATION_LONG; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"f\", function() { return COLOR_BLUE; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"g\", function() { return COLOR_GREEN; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"h\", function() { return COLOR_RED; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"i\", function() { return COLOR_YELLOW; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"j\", function() { return COMPONENTS_SPACING; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"k\", function() { return COMPONENTS_SPACING_MOBILE; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return BOARD_CELL_BORDER_WIDTH; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return BOARD_TILE_FONT_SIZE_MIN; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return BOARD_TILE_FONT_SIZE_POINTS_MIN; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"d\", function() { return BOARD_TILE_SIZE_MAX; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"e\", function() { return BOARD_TILE_SIZE_MIN; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"l\", function() { return DICTIONARY_HEIGHT; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"z\", function() { return TILE_SIZE; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"n\", function() { return PLAIN_TILES_COLOR_DEFAULT; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"o\", function() { return PLAIN_TILES_PADDING_HORIZONTAL; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"p\", function() { return PLAIN_TILES_PADDING_VERTICAL; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"q\", function() { return PLAIN_TILES_POINTS_COLORS; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"r\", function() { return PLAIN_TILES_TILE_MARGIN; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"s\", function() { return PLAIN_TILES_TILE_MAX_ROTATE; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"t\", function() { return PLAIN_TILES_TILE_MAX_SCATTER; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"u\", function() { return PLAIN_TILES_TILE_SIZE; });\n/* unused harmony export PLAIN_TILES_VERSION_TILE_COLOR */\n/* unused harmony export PLAIN_TILES_VERSION_TILE_SIZE */\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"v\", function() { return REMAINING_TILES_TILE_SIZE; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"w\", function() { return RESULTS_HEADER_HEIGHT; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"y\", function() { return RESULTS_ITEM_HEIGHT; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"x\", function() { return RESULTS_INPUT_HEIGHT; });\nvar GITHUB_PROJECT_URL = 'https://github.com/kamilmielnik/scrabble-solver';\nvar TRANSITION_DURATION = 100;\nvar TRANSITION_DURATION_LONG = 250;\nvar COLOR_BLUE = '#c7d8f9';\nvar COLOR_GREEN = '#bae3ba';\nvar COLOR_RED = '#f7c2aa';\nvar COLOR_YELLOW = '#efe3ae';\nvar COMPONENTS_SPACING = 40;\nvar COMPONENTS_SPACING_MOBILE = 20;\nvar BOARD_CELL_BORDER_WIDTH = 1;\nvar BOARD_TILE_FONT_SIZE_MIN = 14;\nvar BOARD_TILE_FONT_SIZE_POINTS_MIN = 10;\nvar BOARD_TILE_SIZE_MAX = 64;\nvar BOARD_TILE_SIZE_MIN = 32;\nvar DICTIONARY_HEIGHT = 220;\nvar TILE_SIZE = 80;\nvar PLAIN_TILES_COLOR_DEFAULT = COLOR_GREEN;\nvar PLAIN_TILES_PADDING_HORIZONTAL = 0;\nvar PLAIN_TILES_PADDING_VERTICAL = 0;\nvar PLAIN_TILES_POINTS_COLORS = {\n 1: COLOR_YELLOW,\n 2: COLOR_GREEN,\n 3: COLOR_BLUE,\n 4: COLOR_RED,\n 5: COLOR_RED,\n 6: COLOR_RED,\n 7: COLOR_RED,\n 8: COLOR_RED,\n 9: COLOR_RED,\n 10: COLOR_RED\n};\nvar PLAIN_TILES_TILE_MARGIN = 6;\nvar PLAIN_TILES_TILE_MAX_ROTATE = 0;\nvar PLAIN_TILES_TILE_MAX_SCATTER = 0;\nvar PLAIN_TILES_TILE_SIZE = 80;\nvar PLAIN_TILES_VERSION_TILE_COLOR = COLOR_GREEN;\nvar PLAIN_TILES_VERSION_TILE_SIZE = TILE_SIZE;\nvar REMAINING_TILES_TILE_SIZE = 50;\nvar RESULTS_HEADER_HEIGHT = 35;\nvar RESULTS_ITEM_HEIGHT = 34;\nvar RESULTS_INPUT_HEIGHT = 43;\n\n/***/ }),\n\n/***/ \"eI4A\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.tilesDe = exports.tilesPl = exports.tilesFr = exports.tilesEs = exports.tilesEn = void 0;\nvar tilesEn_1 = __webpack_require__(\"QLQB\");\nObject.defineProperty(exports, \"tilesEn\", { enumerable: true, get: function () { return __importDefault(tilesEn_1).default; } });\nvar tilesEs_1 = __webpack_require__(\"QqGY\");\nObject.defineProperty(exports, \"tilesEs\", { enumerable: true, get: function () { return __importDefault(tilesEs_1).default; } });\nvar tilesFr_1 = __webpack_require__(\"XJoN\");\nObject.defineProperty(exports, \"tilesFr\", { enumerable: true, get: function () { return __importDefault(tilesFr_1).default; } });\nvar tilesPl_1 = __webpack_require__(\"2yzE\");\nObject.defineProperty(exports, \"tilesPl\", { enumerable: true, get: function () { return __importDefault(tilesPl_1).default; } });\nvar tilesDe_1 = __webpack_require__(\"TP9X\");\nObject.defineProperty(exports, \"tilesDe\", { enumerable: true, get: function () { return __importDefault(tilesDe_1).default; } });\n\n\n/***/ }),\n\n/***/ \"fIUM\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = __webpack_require__(\"U5qN\");\nvar Bonus_1 = __importDefault(__webpack_require__(\"nSrw\"));\nvar WordBonus = /** @class */ (function (_super) {\n __extends(WordBonus, _super);\n function WordBonus() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.type = constants_1.BONUS_WORD;\n return _this;\n }\n Object.defineProperty(WordBonus.prototype, \"value\", {\n get: function () {\n return {\n characterMultiplier: 1,\n wordMultiplier: this.multiplier,\n };\n },\n enumerable: false,\n configurable: true\n });\n return WordBonus;\n}(Bonus_1.default));\nexports.default = WordBonus;\n\n\n/***/ }),\n\n/***/ \"fJ3d\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// eslint-disable-next-line no-shadow\nvar Locale;\n(function (Locale) {\n Locale[\"EN_GB\"] = \"en-GB\";\n Locale[\"EN_US\"] = \"en-US\";\n Locale[\"ES_ES\"] = \"es-ES\";\n Locale[\"FR_FR\"] = \"fr-FR\";\n Locale[\"PL_PL\"] = \"pl-PL\";\n Locale[\"DE_DE\"] = \"de-DE\";\n})(Locale || (Locale = {}));\nexports.default = Locale;\n\n\n/***/ }),\n\n/***/ \"nSrw\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar Bonus = /** @class */ (function () {\n function Bonus(_a) {\n var multiplier = _a.multiplier, score = _a.score, x = _a.x, y = _a.y;\n this.multiplier = multiplier;\n this.score = score;\n this.x = x;\n this.y = y;\n }\n Bonus.prototype.canApply = function (_config, cell) {\n return cell.isEmpty && this.matchesCellCoordinates(cell);\n };\n Bonus.prototype.matchesCellCoordinates = function (cell) {\n return this.x === cell.x && this.y === cell.y;\n };\n Bonus.prototype.toJson = function () {\n return {\n multiplier: this.multiplier,\n score: this.score,\n type: this.type,\n x: this.x,\n y: this.y,\n };\n };\n Object.defineProperty(Bonus.prototype, \"value\", {\n get: function () {\n return {\n characterMultiplier: 1,\n wordMultiplier: 1,\n };\n },\n enumerable: false,\n configurable: true\n });\n return Bonus;\n}());\nexports.default = Bonus;\n\n\n/***/ }),\n\n/***/ \"psLn\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, \"a\", function() { return /* reexport */ lib_canUseDom; });\n__webpack_require__.d(__webpack_exports__, \"b\", function() { return /* reexport */ lib_createArray; });\n__webpack_require__.d(__webpack_exports__, \"c\", function() { return /* reexport */ lib_createGridOf; });\n__webpack_require__.d(__webpack_exports__, \"d\", function() { return /* reexport */ lib_createKeyboardNavigation; });\n__webpack_require__.d(__webpack_exports__, \"e\", function() { return /* reexport */ lib_createNullMovingComparator; });\n__webpack_require__.d(__webpack_exports__, \"f\", function() { return /* reexport */ lib_detectLocale; });\n__webpack_require__.d(__webpack_exports__, \"g\", function() { return /* reexport */ lib_findCell; });\n__webpack_require__.d(__webpack_exports__, \"h\", function() { return /* reexport */ lib_getCellSize; });\n__webpack_require__.d(__webpack_exports__, \"i\", function() { return /* reexport */ lib_getRemainingTiles; });\n__webpack_require__.d(__webpack_exports__, \"j\", function() { return /* reexport */ lib_getRemainingTilesGroups; });\n__webpack_require__.d(__webpack_exports__, \"k\", function() { return /* reexport */ lib_getTileSizes; });\n__webpack_require__.d(__webpack_exports__, \"l\", function() { return /* reexport */ lib_inverseDirection; });\n__webpack_require__.d(__webpack_exports__, \"m\", function() { return /* reexport */ lib_isCtrl; });\n__webpack_require__.d(__webpack_exports__, \"n\", function() { return /* reexport */ lib_isMac; });\n__webpack_require__.d(__webpack_exports__, \"o\", function() { return /* reexport */ lib_memoize; });\n__webpack_require__.d(__webpack_exports__, \"p\", function() { return /* reexport */ lib_noop; });\n__webpack_require__.d(__webpack_exports__, \"q\", function() { return /* reexport */ lib_sortResults; });\n__webpack_require__.d(__webpack_exports__, \"r\", function() { return /* reexport */ lib_unorderedArraysEqual; });\n__webpack_require__.d(__webpack_exports__, \"s\", function() { return /* reexport */ lib_zipCharactersAndTiles; });\n\n// UNUSED EXPORTS: comparator, createKeyComparator, getRemainingTilesCount, getTotalRemainingTilesCount, isLocale, numberComparator, reverseComparator, stringComparator\n\n// CONCATENATED MODULE: ./src/lib/canUseDom.ts\nvar canUseDom = Boolean( true && window.document && window.document.createElement);\n/* harmony default export */ var lib_canUseDom = (canUseDom);\n// CONCATENATED MODULE: ./src/lib/numberComparator.ts\nvar numberComparator = function numberComparator(a, b) {\n return a - b;\n};\n\n/* harmony default export */ var lib_numberComparator = (numberComparator);\n// CONCATENATED MODULE: ./src/lib/stringComparator.ts\nvar stringComparator = function stringComparator(a, b) {\n return a.localeCompare(b);\n};\n\n/* harmony default export */ var lib_stringComparator = (stringComparator);\n// CONCATENATED MODULE: ./src/lib/comparator.ts\n\n\n\nvar comparator_comparator = function comparator(a, b) {\n if (typeof a === 'string' && typeof b === 'string') {\n return lib_stringComparator(a, b);\n }\n\n if (typeof a === 'number' && typeof b === 'number') {\n return lib_numberComparator(a, b);\n }\n\n return 0;\n};\n\n/* harmony default export */ var lib_comparator = (comparator_comparator);\n// CONCATENATED MODULE: ./src/lib/createArray.ts\nvar createArray = function createArray(length) {\n return Array.from({\n length: length\n });\n};\n\n/* harmony default export */ var lib_createArray = (createArray);\n// CONCATENATED MODULE: ./src/lib/createGridOf.ts\n\n\nvar createGridOf_createGridOf = function createGridOf(width, height, getInitialValue) {\n return lib_createArray(height).map(function (_row, y) {\n return lib_createArray(width).map(function (_cell, x) {\n return getInitialValue(x, y);\n });\n });\n};\n\n/* harmony default export */ var lib_createGridOf = (createGridOf_createGridOf);\n// CONCATENATED MODULE: ./src/lib/noop.ts\nvar noop = function noop() {\n return undefined;\n};\n\n/* harmony default export */ var lib_noop = (noop);\n// CONCATENATED MODULE: ./src/lib/createKeyboardNavigation.ts\n\n\nvar createKeyboardNavigation_createKeyboardNavigation = function createKeyboardNavigation(_ref) {\n var _ref$onArrowDown = _ref.onArrowDown,\n onArrowDown = _ref$onArrowDown === void 0 ? lib_noop : _ref$onArrowDown,\n _ref$onArrowLeft = _ref.onArrowLeft,\n onArrowLeft = _ref$onArrowLeft === void 0 ? lib_noop : _ref$onArrowLeft,\n _ref$onArrowRight = _ref.onArrowRight,\n onArrowRight = _ref$onArrowRight === void 0 ? lib_noop : _ref$onArrowRight,\n _ref$onArrowUp = _ref.onArrowUp,\n onArrowUp = _ref$onArrowUp === void 0 ? lib_noop : _ref$onArrowUp,\n _ref$onBackspace = _ref.onBackspace,\n onBackspace = _ref$onBackspace === void 0 ? lib_noop : _ref$onBackspace,\n _ref$onDelete = _ref.onDelete,\n onDelete = _ref$onDelete === void 0 ? lib_noop : _ref$onDelete,\n _ref$onEnter = _ref.onEnter,\n onEnter = _ref$onEnter === void 0 ? lib_noop : _ref$onEnter,\n _ref$onKeyDown = _ref.onKeyDown,\n onKeyDown = _ref$onKeyDown === void 0 ? lib_noop : _ref$onKeyDown;\n var handlers = {\n ArrowUp: onArrowUp,\n ArrowDown: onArrowDown,\n ArrowLeft: onArrowLeft,\n ArrowRight: onArrowRight,\n Backspace: onBackspace,\n Delete: onDelete,\n Enter: onEnter\n };\n\n var handleKeyDown = function handleKeyDown(event) {\n var handler = handlers[event.key] || lib_noop;\n handler(event);\n onKeyDown(event);\n };\n\n return handleKeyDown;\n};\n\n/* harmony default export */ var lib_createKeyboardNavigation = (createKeyboardNavigation_createKeyboardNavigation);\n// CONCATENATED MODULE: ./src/lib/createKeyComparator.ts\n\n\n\nvar createKeyComparator_createKeyComparator = function createKeyComparator(key) {\n return function (a, b) {\n var aValue = a[key];\n var bValue = b[key];\n\n if (typeof aValue === 'string' && typeof bValue === 'string') {\n return lib_stringComparator(aValue, bValue);\n }\n\n if (typeof aValue === 'number' && typeof bValue === 'number') {\n return lib_numberComparator(aValue, bValue);\n }\n\n return 0;\n };\n};\n\n/* harmony default export */ var lib_createKeyComparator = (createKeyComparator_createKeyComparator);\n// CONCATENATED MODULE: ./src/lib/createNullMovingComparator.ts\nvar createNullMovingComparator = function createNullMovingComparator(direction) {\n return function (a, b) {\n if (a === b) {\n return 0;\n }\n\n if (a === null) {\n return direction === 'right' ? 1 : -1;\n }\n\n if (b === null) {\n return direction === 'right' ? -1 : 1;\n }\n\n return 0;\n };\n};\n\n/* harmony default export */ var lib_createNullMovingComparator = (createNullMovingComparator);\n// EXTERNAL MODULE: ../types/build/index.js\nvar build = __webpack_require__(\"v/x1\");\n\n// CONCATENATED MODULE: ./src/lib/detectLocale.ts\n\n\nvar detectLocale_detectLocale = function detectLocale() {\n if (window.navigator.languages.includes('pl') || window.navigator.languages.includes('pl-PL')) {\n return build[\"Locale\"].PL_PL;\n }\n\n if (window.navigator.languages.includes('en-GB')) {\n return build[\"Locale\"].EN_GB;\n }\n\n if (window.navigator.languages.includes('fr-FR')) {\n return build[\"Locale\"].FR_FR;\n }\n\n return build[\"Locale\"].EN_US;\n};\n\n/* harmony default export */ var lib_detectLocale = (detectLocale_detectLocale);\n// CONCATENATED MODULE: ./src/lib/findCell.ts\nvar findCell = function findCell(cells, x, y) {\n return cells.find(function (cell) {\n return cell.x === x && cell.y === y;\n });\n};\n\n/* harmony default export */ var lib_findCell = (findCell);\n// EXTERNAL MODULE: ./src/parameters/index.ts\nvar parameters = __webpack_require__(\"dm5A\");\n\n// CONCATENATED MODULE: ./src/lib/getCellSize.ts\n\n\nvar getCellSize_getCellSize = function getCellSize(config, width, height) {\n var maxWidth = (width - parameters[\"a\" /* BOARD_CELL_BORDER_WIDTH */]) / config.boardWidth - parameters[\"a\" /* BOARD_CELL_BORDER_WIDTH */];\n var maxHeight = (height - parameters[\"a\" /* BOARD_CELL_BORDER_WIDTH */]) / config.boardHeight - parameters[\"a\" /* BOARD_CELL_BORDER_WIDTH */];\n var cellSize = Math.min(maxWidth, maxHeight);\n return Math.floor(Math.min(Math.max(cellSize, parameters[\"e\" /* BOARD_TILE_SIZE_MIN */]), parameters[\"d\" /* BOARD_TILE_SIZE_MAX */]));\n};\n\n/* harmony default export */ var lib_getCellSize = (getCellSize_getCellSize);\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 3 modules\nvar toConsumableArray = __webpack_require__(\"KQm4\");\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js\nvar defineProperty = __webpack_require__(\"rePB\");\n\n// EXTERNAL MODULE: ../constants/build/index.js\nvar constants_build = __webpack_require__(\"U5qN\");\n\n// CONCATENATED MODULE: ./src/lib/getRemainingTiles.ts\n\n\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty[\"a\" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\n\nvar getRemainingTiles_getRemainingTiles = function getRemainingTiles(config, board, characters) {\n var nonEmptyCells = board.rows.flat().filter(function (cell) {\n return !cell.isEmpty;\n });\n var letterCells = nonEmptyCells.filter(function (cell) {\n return !cell.tile.isBlank;\n });\n var remainingTiles = Object.fromEntries(config.tiles.map(function (tile) {\n return [tile.character, _objectSpread(_objectSpread({}, tile), {}, {\n usedCount: 0\n })];\n }));\n var blank = {\n character: constants_build[\"BLANK\"],\n count: config.numberOfBlanks,\n score: config.blankScore,\n usedCount: nonEmptyCells.filter(function (cell) {\n return cell.tile.isBlank;\n }).length + characters.filter(function (character) {\n return character === constants_build[\"BLANK\"];\n }).length\n };\n var letters = [].concat(Object(toConsumableArray[\"a\" /* default */])(letterCells.map(function (cell) {\n return cell.tile.character;\n })), Object(toConsumableArray[\"a\" /* default */])(characters.filter(function (letter) {\n return letter !== constants_build[\"BLANK\"];\n })));\n var unknownLetters = letters.filter(function (letter) {\n return typeof remainingTiles[letter] === 'undefined';\n });\n\n var _iterator = _createForOfIteratorHelper(unknownLetters),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var letter = _step.value;\n remainingTiles[letter] = {\n character: letter,\n count: 0,\n score: 0,\n usedCount: 0\n };\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n var _iterator2 = _createForOfIteratorHelper(letters),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var _letter = _step2.value;\n ++remainingTiles[_letter].usedCount;\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n return [].concat(Object(toConsumableArray[\"a\" /* default */])(Object.values(remainingTiles).sort(lib_createKeyComparator('character'))), [blank]);\n};\n\n/* harmony default export */ var lib_getRemainingTiles = (getRemainingTiles_getRemainingTiles);\n// CONCATENATED MODULE: ./src/lib/getRemainingTilesCount.ts\nvar getRemainingTilesCount = function getRemainingTilesCount(remainingTiles) {\n return remainingTiles.reduce(function (sum, _ref) {\n var count = _ref.count,\n usedCount = _ref.usedCount;\n return sum + count - usedCount;\n }, 0);\n};\n\n/* harmony default export */ var lib_getRemainingTilesCount = (getRemainingTilesCount);\n// CONCATENATED MODULE: ./src/lib/getTotalRemainingTilesCount.ts\nvar getTotalRemainingTilesCount = function getTotalRemainingTilesCount(remainingTiles) {\n return remainingTiles.reduce(function (sum, _ref) {\n var count = _ref.count;\n return sum + count;\n }, 0);\n};\n\n/* harmony default export */ var lib_getTotalRemainingTilesCount = (getTotalRemainingTilesCount);\n// CONCATENATED MODULE: ./src/lib/getRemainingTilesGroups.ts\n\n\n\nvar getRemainingTilesGroups_getRemainingTilesGroups = function getRemainingTilesGroups(remainingTiles) {\n var consonants = remainingTiles.filter(function (_ref) {\n var character = _ref.character;\n return constants_build[\"CONSONANTS\"].includes(character);\n });\n var vowels = remainingTiles.filter(function (_ref2) {\n var character = _ref2.character;\n return constants_build[\"VOWELS\"].includes(character);\n });\n var twoCharacterTiles = remainingTiles.filter(function (_ref3) {\n var character = _ref3.character;\n return character.length === 2;\n });\n var blanks = remainingTiles.filter(function (_ref4) {\n var character = _ref4.character;\n return character === constants_build[\"BLANK\"];\n });\n var groups = [{\n remainingCount: lib_getRemainingTilesCount(vowels),\n tiles: vowels,\n translationKey: 'common.vowels',\n totalCount: lib_getTotalRemainingTilesCount(vowels)\n }, {\n remainingCount: lib_getRemainingTilesCount(consonants),\n tiles: consonants,\n translationKey: 'common.consonants',\n totalCount: lib_getTotalRemainingTilesCount(consonants)\n }, {\n remainingCount: lib_getRemainingTilesCount(twoCharacterTiles),\n tiles: twoCharacterTiles,\n translationKey: 'common.two-letter-tiles',\n totalCount: lib_getTotalRemainingTilesCount(twoCharacterTiles)\n }, {\n remainingCount: lib_getRemainingTilesCount(blanks),\n tiles: blanks,\n translationKey: 'common.blanks',\n totalCount: lib_getTotalRemainingTilesCount(blanks)\n }];\n return groups.filter(function (_ref5) {\n var totalCount = _ref5.totalCount;\n return totalCount > 0;\n });\n};\n/* harmony default export */ var lib_getRemainingTilesGroups = (getRemainingTilesGroups_getRemainingTilesGroups);\n// CONCATENATED MODULE: ./src/lib/getTileSizes.ts\n\n\nvar getTileSizes_getTileSizes = function getTileSizes(tileSize) {\n return {\n pointsFontSize: Math.max(Math.round(tileSize * 0.25), parameters[\"c\" /* BOARD_TILE_FONT_SIZE_POINTS_MIN */]),\n tileFontSize: Math.max(Math.round(tileSize * 0.6), parameters[\"b\" /* BOARD_TILE_FONT_SIZE_MIN */]),\n tileSize: tileSize\n };\n};\n\n/* harmony default export */ var lib_getTileSizes = (getTileSizes_getTileSizes);\n// CONCATENATED MODULE: ./src/lib/inverseDirection.ts\nvar inverseDirection = function inverseDirection(direction) {\n return direction === 'left' ? 'right' : 'left';\n};\n\n/* harmony default export */ var lib_inverseDirection = (inverseDirection);\n// CONCATENATED MODULE: ./src/lib/isCtrl.ts\nvar isCtrl = function isCtrl(event) {\n return event.ctrlKey || event.metaKey;\n};\n\n/* harmony default export */ var lib_isCtrl = (isCtrl);\n// CONCATENATED MODULE: ./src/lib/isLocale.ts\n\nvar locales = Object.values(build[\"Locale\"]);\n\nvar isLocale = function isLocale(locale) {\n return locales.includes(locale);\n};\n\n/* harmony default export */ var lib_isLocale = (isLocale);\n// CONCATENATED MODULE: ./src/lib/isMac.ts\nvar isMac = function isMac() {\n if (!globalThis.navigator) {\n return false;\n }\n\n return globalThis.navigator.platform.toLowerCase().includes('mac');\n};\n\n/* harmony default export */ var lib_isMac = (isMac);\n// CONCATENATED MODULE: ./src/lib/memoize.ts\nvar memoize = function memoize(fn) {\n var cache = [];\n\n var hasCache = function hasCache() {\n for (var _len = arguments.length, parameters = new Array(_len), _key = 0; _key < _len; _key++) {\n parameters[_key] = arguments[_key];\n }\n\n return Boolean(readCache(parameters));\n };\n\n var readCache = function readCache(parameters) {\n var _cache$find;\n\n return (_cache$find = cache.find(function (entry) {\n return parametersEqual(entry.parameters, parameters);\n })) === null || _cache$find === void 0 ? void 0 : _cache$find.result;\n };\n\n var writeCache = function writeCache(parameters, result) {\n cache.push({\n parameters: parameters,\n result: result\n });\n };\n\n var memoized = function memoized() {\n for (var _len2 = arguments.length, parameters = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n parameters[_key2] = arguments[_key2];\n }\n\n var cached = readCache(parameters);\n\n if (cached) {\n return cached;\n }\n\n var result = fn.apply(void 0, parameters);\n writeCache(parameters, result);\n return result;\n };\n\n return Object.assign(memoized, {\n hasCache: hasCache\n });\n};\n\nvar parametersEqual = function parametersEqual(a, b) {\n if (a.length !== b.length) {\n return false;\n }\n\n return a.every(function (parameter, index) {\n return parameter === b[index];\n });\n};\n\n/* harmony default export */ var lib_memoize = (memoize);\n// CONCATENATED MODULE: ./src/lib/reverseComparator.ts\nvar reverseComparator = function reverseComparator(comparator) {\n return function (a, b) {\n return -comparator(a, b);\n };\n};\n\n/* harmony default export */ var lib_reverseComparator = (reverseComparator);\n// EXTERNAL MODULE: ./src/types/index.ts\nvar types = __webpack_require__(\"6+LV\");\n\n// CONCATENATED MODULE: ./src/lib/sortResults.ts\n\n\n\nvar _comparators;\n\n\n\n\nvar comparators = (_comparators = {}, Object(defineProperty[\"a\" /* default */])(_comparators, types[\"a\" /* ResultColumn */].BlanksCount, lib_createKeyComparator('numberOfBlanks')), Object(defineProperty[\"a\" /* default */])(_comparators, types[\"a\" /* ResultColumn */].ConsonantsCount, lib_createKeyComparator('numberOfConsonants')), Object(defineProperty[\"a\" /* default */])(_comparators, types[\"a\" /* ResultColumn */].Points, lib_createKeyComparator('points')), Object(defineProperty[\"a\" /* default */])(_comparators, types[\"a\" /* ResultColumn */].TilesCount, lib_createKeyComparator('numberOfTiles')), Object(defineProperty[\"a\" /* default */])(_comparators, types[\"a\" /* ResultColumn */].VowelsCount, lib_createKeyComparator('numberOfVowels')), Object(defineProperty[\"a\" /* default */])(_comparators, types[\"a\" /* ResultColumn */].Word, lib_createKeyComparator('word')), Object(defineProperty[\"a\" /* default */])(_comparators, types[\"a\" /* ResultColumn */].WordsCount, lib_createKeyComparator('numberOfWords')), _comparators);\n\nvar sortResults_sortResults = function sortResults(results, column, sortDirection) {\n if (typeof results === 'undefined') {\n return results;\n }\n\n var comparator = comparators[column];\n var finalComparator = sortDirection === types[\"b\" /* SortDirection */].Descending ? lib_reverseComparator(comparator) : comparator;\n return Object(toConsumableArray[\"a\" /* default */])(results).sort(finalComparator);\n};\n\n/* harmony default export */ var lib_sortResults = (sortResults_sortResults);\n// CONCATENATED MODULE: ./src/lib/unorderedArraysEqual.ts\n\n\n\nvar unorderedArraysEqual_unorderedArraysEqual = function unorderedArraysEqual(a, b) {\n if (a.length !== b.length) {\n return false;\n }\n\n var aSorted = Object(toConsumableArray[\"a\" /* default */])(a).sort(lib_comparator);\n\n var bSorted = Object(toConsumableArray[\"a\" /* default */])(b).sort(lib_comparator);\n\n return aSorted.every(function (character, index) {\n return character === bSorted[index];\n });\n};\n\n/* harmony default export */ var lib_unorderedArraysEqual = (unorderedArraysEqual_unorderedArraysEqual);\n// CONCATENATED MODULE: ./src/lib/zipCharactersAndTiles.ts\n\n\n\nvar zipCharactersAndTiles_zipCharactersAndTiles = function zipCharactersAndTiles(characters, tiles) {\n var remainingTiles = Object(toConsumableArray[\"a\" /* default */])(tiles);\n\n return characters.map(function (character) {\n var index = remainingTiles.findIndex(function (tile) {\n return character === constants_build[\"BLANK\"] ? tile.isBlank : character === tile.character;\n });\n\n if (index >= 0) {\n var tile = remainingTiles[index];\n remainingTiles = [].concat(Object(toConsumableArray[\"a\" /* default */])(remainingTiles.slice(0, index)), Object(toConsumableArray[\"a\" /* default */])(remainingTiles.slice(index + 1)));\n return {\n character: character,\n tile: tile\n };\n }\n\n return {\n character: character,\n tile: null\n };\n });\n};\n\n/* harmony default export */ var lib_zipCharactersAndTiles = (zipCharactersAndTiles_zipCharactersAndTiles);\n// CONCATENATED MODULE: ./src/lib/index.ts\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/***/ }),\n\n/***/ \"qT12\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n\n\n/***/ }),\n\n/***/ \"rePB\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return _defineProperty; });\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\n/***/ }),\n\n/***/ \"s8jJ\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = __webpack_require__(\"U5qN\");\nvar bonuses = [\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 0, y: 0 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 3, y: 0 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 7, y: 0 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 11, y: 0 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 0 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 1, y: 1 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 5, y: 1 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 9, y: 1 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 13, y: 1 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 2, y: 2 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 6, y: 2 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 8, y: 2 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 12, y: 2 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 0, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 3, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 7, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 11, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 14, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 4, y: 4 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 10, y: 4 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 1, y: 5 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 5, y: 5 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 9, y: 5 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 13, y: 5 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 2, y: 6 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 6, y: 6 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 8, y: 6 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 12, y: 6 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 0, y: 7 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 3, y: 7 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 7, y: 7 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 11, y: 7 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 7 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 2, y: 8 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 6, y: 8 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 8, y: 8 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 12, y: 8 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 1, y: 9 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 5, y: 9 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 9, y: 9 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 13, y: 9 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 4, y: 10 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 10, y: 10 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 0, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 3, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 7, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 11, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 14, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 2, y: 12 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 6, y: 12 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 8, y: 12 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 12, y: 12 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 1, y: 13 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 5, y: 13 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 9, y: 13 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 13, y: 13 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 0, y: 14 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 3, y: 14 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 7, y: 14 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 11, y: 14 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 14 },\n];\nexports.default = bonuses;\n\n\n/***/ }),\n\n/***/ \"t4n0\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.default = void 0;\nvar scrabble_1 = __webpack_require__(\"ZJ2G\");\nObject.defineProperty(exports, \"default\", { enumerable: true, get: function () { return __importDefault(scrabble_1).default; } });\n\n\n/***/ }),\n\n/***/ \"tHpn\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spread = (this && this.__spread) || function () {\n for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));\n return ar;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar Pattern_1 = __importDefault(__webpack_require__(\"/VMF\"));\nvar VerticalPattern = /** @class */ (function (_super) {\n __extends(VerticalPattern, _super);\n function VerticalPattern() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n VerticalPattern.prototype.clone = function () {\n return new VerticalPattern({\n board: this.board,\n cells: this.cells.map(function (cell) { return cell.clone(); }),\n });\n };\n VerticalPattern.prototype.getCollisions = function () {\n var _this = this;\n var collisions = [];\n this.cells\n .filter(function (cell) { return cell.isEmpty && (_this.board.collidesLeft(cell) || _this.board.collidesRight(cell)); })\n .forEach(function (cell) {\n var row = _this.board.getRow(cell.y);\n var x = cell.x - 1;\n while (x >= 0 && row[x].hasTile()) {\n --x;\n }\n var previousCells = row.slice(x + 1, cell.x);\n x = cell.x + 1;\n while (x < row.length && row[x].hasTile()) {\n ++x;\n }\n var nextCells = row.slice(cell.x + 1, x);\n var cells = __spread(previousCells, [cell], nextCells);\n if (cells.length > 1) {\n var pattern = new Pattern_1.default({ board: _this.board, cells: cells });\n collisions.push(pattern);\n }\n });\n return collisions;\n };\n return VerticalPattern;\n}(Pattern_1.default));\nexports.default = VerticalPattern;\n\n\n/***/ }),\n\n/***/ \"uJCx\":\n/***/ (function(module) {\n\nmodule.exports = JSON.parse(\"{\\\"cell.set-blank\\\":\\\"Oznacz jako blank\\\",\\\"cell.set-not-blank\\\":\\\"Oznacz jako nie blank\\\",\\\"cell.toggle-direction\\\":\\\"Kierunek wpisywania - kliknij aby zmienić\\\",\\\"common.blanks\\\":\\\"Blanki\\\",\\\"common.clear\\\":\\\"Wyczyść\\\",\\\"common.close\\\":\\\"Zamknij\\\",\\\"common.consonants\\\":\\\"Spółgłoski\\\",\\\"common.loading\\\":\\\"Ładowanie\\\",\\\"common.points\\\":\\\"Punkty\\\",\\\"common.tiles\\\":\\\"Płytki\\\",\\\"common.two-letter-tiles\\\":\\\"Dwuliterowe\\\",\\\"common.vowels\\\":\\\"Samogłoski\\\",\\\"common.word\\\":\\\"Słowo\\\",\\\"common.words\\\":\\\"Słowa\\\",\\\"dictionary.empty-state.no-definitions\\\":\\\"Słowo istnieje w słowniku ale nie posiada definicji.\\\",\\\"dictionary.empty-state.no-results\\\":\\\"Nie udało się znaleźć definicji słowa w słowniku.\\\",\\\"dictionary.empty-state.not-allowed\\\":\\\"To słowo nie jest dopuszczalne w grach.\\\",\\\"dictionary.empty-state.uninitialized\\\":\\\"Tu zostanie wyświetlona słownikowa definicja ostatnio podświetlonego słowa.\\\",\\\"dictionary.input.placeholder\\\":\\\"Szukaj w słowniku...\\\",\\\"empty-state.error\\\":\\\"Błąd\\\",\\\"empty-state.info\\\":\\\"Info\\\",\\\"empty-state.success\\\":\\\"Hurra!\\\",\\\"empty-state.warning\\\":\\\"Ups!\\\",\\\"github\\\":\\\"Zobacz ten projekt na GitHubie\\\",\\\"keyMap\\\":\\\"Skróty klawiszowe\\\",\\\"keyMap.board\\\":\\\"Plansza\\\",\\\"keyMap.board.toggle-blank\\\":\\\"Oznacz/odznacz płytkę jako blank\\\",\\\"keyMap.board.toggle-direction\\\":\\\"Zmień kierunek wpisywania\\\",\\\"keyMap.board-and-rack\\\":\\\"Plansza i stojak\\\",\\\"keyMap.board-and-rack.insert-two-letter-tile\\\":\\\"Wstaw dwuliterową płytkę\\\",\\\"keyMap.board-and-rack.navigate\\\":\\\"Nawigacja\\\",\\\"keyMap.board-and-rack.remove-tile\\\":\\\"Zdejmij płytkę\\\",\\\"keyMap.board-and-rack.submit\\\":\\\"Rozpocznij wyszukiwanie\\\",\\\"keyMap.rack\\\":\\\"Stojak\\\",\\\"keyMap.rack.insert-blank\\\":\\\"Wstaw blanka (spacja)\\\",\\\"rack.placeholder\\\":\\\"Literki\\\",\\\"remaining-tiles\\\":\\\"Pozostałe płytki\\\",\\\"results.empty-state.no-filtered-results\\\":\\\"Żaden wynik nie pasuje do tej kwerendy.\\\",\\\"results.empty-state.no-results\\\":\\\"Brak wyników - nie można wygenerować żadnego słowa.\\\",\\\"results.empty-state.outdated\\\":\\\"Wyniki są nieaktualne. Kliknij poniżej, aby zaktualizować.\\\",\\\"results.empty-state.uninitialized\\\":\\\"Tu zostaną wyświetlone słowa wygenerowane z Twoich liter.\\\",\\\"results.input.placeholder\\\":\\\"Szukaj rozwiązania... (RegExp)\\\",\\\"results.solve\\\":\\\"Rozwiąż\\\",\\\"settings\\\":\\\"Opcje\\\",\\\"settings.autoGroupTiles\\\":\\\"Grupuj pozostałe płytki\\\",\\\"settings.autoGroupTiles.left\\\":\\\"Po lewej\\\",\\\"settings.autoGroupTiles.right\\\":\\\"Po prawej\\\",\\\"settings.autoGroupTiles.null\\\":\\\"Nie grupuj\\\",\\\"settings.game\\\":\\\"Gra\\\",\\\"settings.language\\\":\\\"Język\\\"}\");\n\n/***/ }),\n\n/***/ \"v/x1\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WordDefinition = exports.WordBonus = exports.VerticalPattern = exports.Tile = exports.Result = exports.Pattern = exports.Locale = exports.HorizontalPattern = exports.Config = exports.CharacterBonus = exports.Cell = exports.Bonus = exports.Board = void 0;\nvar Board_1 = __webpack_require__(\"Kxtj\");\nObject.defineProperty(exports, \"Board\", { enumerable: true, get: function () { return __importDefault(Board_1).default; } });\nvar Bonus_1 = __webpack_require__(\"nSrw\");\nObject.defineProperty(exports, \"Bonus\", { enumerable: true, get: function () { return __importDefault(Bonus_1).default; } });\nvar Cell_1 = __webpack_require__(\"x6Yb\");\nObject.defineProperty(exports, \"Cell\", { enumerable: true, get: function () { return __importDefault(Cell_1).default; } });\nvar CharacterBonus_1 = __webpack_require__(\"5vez\");\nObject.defineProperty(exports, \"CharacterBonus\", { enumerable: true, get: function () { return __importDefault(CharacterBonus_1).default; } });\nvar Config_1 = __webpack_require__(\"Yv4l\");\nObject.defineProperty(exports, \"Config\", { enumerable: true, get: function () { return __importDefault(Config_1).default; } });\nvar HorizontalPattern_1 = __webpack_require__(\"Dkvj\");\nObject.defineProperty(exports, \"HorizontalPattern\", { enumerable: true, get: function () { return __importDefault(HorizontalPattern_1).default; } });\nvar Locale_1 = __webpack_require__(\"fJ3d\");\nObject.defineProperty(exports, \"Locale\", { enumerable: true, get: function () { return __importDefault(Locale_1).default; } });\nvar Pattern_1 = __webpack_require__(\"/VMF\");\nObject.defineProperty(exports, \"Pattern\", { enumerable: true, get: function () { return __importDefault(Pattern_1).default; } });\nvar Result_1 = __webpack_require__(\"d0vb\");\nObject.defineProperty(exports, \"Result\", { enumerable: true, get: function () { return __importDefault(Result_1).default; } });\nvar Tile_1 = __webpack_require__(\"KR0w\");\nObject.defineProperty(exports, \"Tile\", { enumerable: true, get: function () { return __importDefault(Tile_1).default; } });\nvar VerticalPattern_1 = __webpack_require__(\"tHpn\");\nObject.defineProperty(exports, \"VerticalPattern\", { enumerable: true, get: function () { return __importDefault(VerticalPattern_1).default; } });\nvar WordBonus_1 = __webpack_require__(\"fIUM\");\nObject.defineProperty(exports, \"WordBonus\", { enumerable: true, get: function () { return __importDefault(WordBonus_1).default; } });\nvar WordDefinition_1 = __webpack_require__(\"5NMP\");\nObject.defineProperty(exports, \"WordDefinition\", { enumerable: true, get: function () { return __importDefault(WordDefinition_1).default; } });\n\n\n/***/ }),\n\n/***/ \"wx14\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return _extends; });\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\n/***/ }),\n\n/***/ \"x6Yb\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar Tile_1 = __importDefault(__webpack_require__(\"KR0w\"));\nvar Cell = /** @class */ (function () {\n // eslint-disable-next-line no-undef\n function Cell(_a) {\n var _b = _a.isEmpty, isEmpty = _b === void 0 ? true : _b, _c = _a.tile, tile = _c === void 0 ? Tile_1.default.Null : _c, x = _a.x, y = _a.y;\n this.isEmpty = isEmpty;\n this.tile = tile;\n this.x = x;\n this.y = y;\n }\n Cell.fromJson = function (json) {\n if (!json) {\n return Cell.Null;\n }\n return new Cell({\n isEmpty: json.isEmpty,\n tile: Tile_1.default.fromJson(json.tile),\n x: json.x,\n y: json.y,\n });\n };\n Cell.prototype.clone = function () {\n return new Cell({\n isEmpty: this.isEmpty,\n tile: this.tile.clone(),\n x: this.x,\n y: this.y,\n });\n };\n Cell.prototype.equals = function (other) {\n return this.x === other.x && this.y === other.y && this.isEmpty === other.isEmpty && this.tile.equals(other.tile);\n };\n Cell.prototype.hasTile = function () {\n return this.tile !== Tile_1.default.Null;\n };\n Cell.prototype.isCandidate = function () {\n return this.isEmpty && this.hasTile();\n };\n Cell.prototype.toJson = function () {\n return {\n isEmpty: this.isEmpty,\n tile: this.tile.toJson(),\n x: this.x,\n y: this.y,\n };\n };\n Cell.prototype.toString = function () {\n return String(this.tile);\n };\n Cell.Null = Object.freeze({\n isEmpty: true,\n tile: Tile_1.default.Null,\n x: 0,\n y: 0,\n clone: function () { return Cell.Null; },\n equals: function (other) { return other === Cell.Null; },\n hasTile: function () { return false; },\n isCandidate: function () { return false; },\n toString: function () { return ''; },\n toJson: function () { return null; },\n });\n return Cell;\n}());\nexports.default = Cell;\n\n\n/***/ }),\n\n/***/ \"z/if\":\n/***/ (function(module, exports, __webpack_require__) {\n\n/*! store2 - v2.12.0 - 2020-08-12\n* Copyright (c) 2020 Nathan Bubna; Licensed (MIT OR GPL-3.0) */\n;(function(window, define) {\n var _ = {\n version: \"2.12.0\",\n areas: {},\n apis: {},\n\n // utilities\n inherit: function(api, o) {\n for (var p in api) {\n if (!o.hasOwnProperty(p)) {\n Object.defineProperty(o, p, Object.getOwnPropertyDescriptor(api, p));\n }\n }\n return o;\n },\n stringify: function(d) {\n return d === undefined || typeof d === \"function\" ? d+'' : JSON.stringify(d);\n },\n parse: function(s, fn) {\n // if it doesn't parse, return as is\n try{ return JSON.parse(s,fn||_.revive); }catch(e){ return s; }\n },\n\n // extension hooks\n fn: function(name, fn) {\n _.storeAPI[name] = fn;\n for (var api in _.apis) {\n _.apis[api][name] = fn;\n }\n },\n get: function(area, key){ return area.getItem(key); },\n set: function(area, key, string){ area.setItem(key, string); },\n remove: function(area, key){ area.removeItem(key); },\n key: function(area, i){ return area.key(i); },\n length: function(area){ return area.length; },\n clear: function(area){ area.clear(); },\n\n // core functions\n Store: function(id, area, namespace) {\n var store = _.inherit(_.storeAPI, function(key, data, overwrite) {\n if (arguments.length === 0){ return store.getAll(); }\n if (typeof data === \"function\"){ return store.transact(key, data, overwrite); }// fn=data, alt=overwrite\n if (data !== undefined){ return store.set(key, data, overwrite); }\n if (typeof key === \"string\" || typeof key === \"number\"){ return store.get(key); }\n if (typeof key === \"function\"){ return store.each(key); }\n if (!key){ return store.clear(); }\n return store.setAll(key, data);// overwrite=data, data=key\n });\n store._id = id;\n try {\n var testKey = '__store2_test';\n area.setItem(testKey, 'ok');\n store._area = area;\n area.removeItem(testKey);\n } catch (e) {\n store._area = _.storage('fake');\n }\n store._ns = namespace || '';\n if (!_.areas[id]) {\n _.areas[id] = store._area;\n }\n if (!_.apis[store._ns+store._id]) {\n _.apis[store._ns+store._id] = store;\n }\n return store;\n },\n storeAPI: {\n // admin functions\n area: function(id, area) {\n var store = this[id];\n if (!store || !store.area) {\n store = _.Store(id, area, this._ns);//new area-specific api in this namespace\n if (!this[id]){ this[id] = store; }\n }\n return store;\n },\n namespace: function(namespace, singleArea) {\n if (!namespace){\n return this._ns ? this._ns.substring(0,this._ns.length-1) : '';\n }\n var ns = namespace, store = this[ns];\n if (!store || !store.namespace) {\n store = _.Store(this._id, this._area, this._ns+ns+'.');//new namespaced api\n if (!this[ns]){ this[ns] = store; }\n if (!singleArea) {\n for (var name in _.areas) {\n store.area(name, _.areas[name]);\n }\n }\n }\n return store;\n },\n isFake: function(){ return this._area.name === 'fake'; },\n toString: function() {\n return 'store'+(this._ns?'.'+this.namespace():'')+'['+this._id+']';\n },\n\n // storage functions\n has: function(key) {\n if (this._area.has) {\n return this._area.has(this._in(key));//extension hook\n }\n return !!(this._in(key) in this._area);\n },\n size: function(){ return this.keys().length; },\n each: function(fn, fill) {// fill is used by keys(fillList) and getAll(fillList))\n for (var i=0, m=_.length(this._area); i<m; i++) {\n var key = this._out(_.key(this._area, i));\n if (key !== undefined) {\n if (fn.call(this, key, this.get(key), fill) === false) {\n break;\n }\n }\n if (m > _.length(this._area)) { m--; i--; }// in case of removeItem\n }\n return fill || this;\n },\n keys: function(fillList) {\n return this.each(function(k, v, list){ list.push(k); }, fillList || []);\n },\n get: function(key, alt) {\n var s = _.get(this._area, this._in(key)),\n fn;\n if (typeof alt === \"function\") {\n fn = alt;\n alt = null;\n }\n return s !== null ? _.parse(s, fn) :\n alt != null ? alt : s;\n },\n getAll: function(fillObj) {\n return this.each(function(k, v, all){ all[k] = v; }, fillObj || {});\n },\n transact: function(key, fn, alt) {\n var val = this.get(key, alt),\n ret = fn(val);\n this.set(key, ret === undefined ? val : ret);\n return this;\n },\n set: function(key, data, overwrite) {\n var d = this.get(key);\n if (d != null && overwrite === false) {\n return data;\n }\n return _.set(this._area, this._in(key), _.stringify(data), overwrite) || d;\n },\n setAll: function(data, overwrite) {\n var changed, val;\n for (var key in data) {\n val = data[key];\n if (this.set(key, val, overwrite) !== val) {\n changed = true;\n }\n }\n return changed;\n },\n add: function(key, data) {\n var d = this.get(key);\n if (d instanceof Array) {\n data = d.concat(data);\n } else if (d !== null) {\n var type = typeof d;\n if (type === typeof data && type === 'object') {\n for (var k in data) {\n d[k] = data[k];\n }\n data = d;\n } else {\n data = d + data;\n }\n }\n _.set(this._area, this._in(key), _.stringify(data));\n return data;\n },\n remove: function(key, alt) {\n var d = this.get(key, alt);\n _.remove(this._area, this._in(key));\n return d;\n },\n clear: function() {\n if (!this._ns) {\n _.clear(this._area);\n } else {\n this.each(function(k){ _.remove(this._area, this._in(k)); }, 1);\n }\n return this;\n },\n clearAll: function() {\n var area = this._area;\n for (var id in _.areas) {\n if (_.areas.hasOwnProperty(id)) {\n this._area = _.areas[id];\n this.clear();\n }\n }\n this._area = area;\n return this;\n },\n\n // internal use functions\n _in: function(k) {\n if (typeof k !== \"string\"){ k = _.stringify(k); }\n return this._ns ? this._ns + k : k;\n },\n _out: function(k) {\n return this._ns ?\n k && k.indexOf(this._ns) === 0 ?\n k.substring(this._ns.length) :\n undefined : // so each() knows to skip it\n k;\n }\n },// end _.storeAPI\n storage: function(name) {\n return _.inherit(_.storageAPI, { items: {}, name: name });\n },\n storageAPI: {\n length: 0,\n has: function(k){ return this.items.hasOwnProperty(k); },\n key: function(i) {\n var c = 0;\n for (var k in this.items){\n if (this.has(k) && i === c++) {\n return k;\n }\n }\n },\n setItem: function(k, v) {\n if (!this.has(k)) {\n this.length++;\n }\n this.items[k] = v;\n },\n removeItem: function(k) {\n if (this.has(k)) {\n delete this.items[k];\n this.length--;\n }\n },\n getItem: function(k){ return this.has(k) ? this.items[k] : null; },\n clear: function(){ for (var k in this.items){ this.removeItem(k); } }\n }// end _.storageAPI\n };\n\n var store =\n // safely set this up (throws error in IE10/32bit mode for local files)\n _.Store(\"local\", (function(){try{ return localStorage; }catch(e){}})());\n store.local = store;// for completeness\n store._ = _;// for extenders and debuggers...\n // safely setup store.session (throws exception in FF for file:/// urls)\n store.area(\"session\", (function(){try{ return sessionStorage; }catch(e){}})());\n store.area(\"page\", _.storage(\"page\"));\n\n if (typeof define === 'function' && define.amd !== undefined) {\n define('store2', [], function () {\n return store;\n });\n } else if ( true && module.exports) {\n module.exports = store;\n } else {\n // expose the primary store fn to the global object and save conflicts\n if (window.store){ _.conflict = window.store; }\n window.store = store;\n }\n\n})(this, this && this.define);\n\n\n/***/ }),\n\n/***/ \"zLVn\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return _objectWithoutPropertiesLoose; });\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\n/***/ })\n\n}]);","inputSourceMap":{"version":3,"sources":["/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/components/Context.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/utils/batch.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/utils/Subscription.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/components/Provider.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/components/connectAdvanced.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/utils/shallowEqual.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/utils/isPlainObject.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/utils/warning.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/utils/verifyPlainObject.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/connect/wrapMapToProps.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/connect/mapDispatchToProps.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/connect/mapStateToProps.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/connect/mergeProps.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/connect/verifySubselectors.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/connect/selectorFactory.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/connect/connect.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/hooks/useReduxContext.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/hooks/useStore.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/hooks/useDispatch.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/hooks/useSelector.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/utils/reactBatchedUpdates.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-redux/es/index.js","/home/kamil/projects/scrabble-solver/packages/types/build/Pattern.js","/home/kamil/projects/scrabble-solver/packages/configs/build/literaki/tiles/index.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","/home/kamil/projects/scrabble-solver/packages/configs/build/literaki/tiles/tilesPl.js","/home/kamil/projects/scrabble-solver/packages/configs/build/scrabble/tiles/tilesPl.js","/home/kamil/projects/scrabble-solver/packages/configs/build/literaki/tiles/tilesEn.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/webpack/buildin/harmony-module.js","/home/kamil/projects/scrabble-solver/packages/configs/build/literaki/literaki.js","/home/kamil/projects/scrabble-solver/packages/configs/build/index.js","/home/kamil/projects/scrabble-solver/packages/types/build/WordDefinition.js","/home/kamil/projects/scrabble-solver/packages/types/build/CharacterBonus.js","/home/kamil/projects/scrabble-solver/packages/configs/build/literaki/tiles/tilesDe.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/types/index.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/immer/dist/immer.esm.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/reselect/es/index.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/redux-thunk/es/index.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@reduxjs/toolkit/dist/redux-toolkit.esm.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/actions.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@redux-saga/symbols/dist/redux-saga-symbols.esm.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@redux-saga/is/dist/redux-saga-is.esm.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@redux-saga/delay-p/dist/redux-saga-delay-p.esm.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@redux-saga/core/dist/io-6de156f3.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@redux-saga/deferred/dist/redux-saga-deferred.esm.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@redux-saga/core/dist/redux-saga-core.esm.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/redux-saga/dist/redux-saga-core-npm-proxy.esm.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/settingsInitialState.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/boardInitialState.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/boardSlice.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/dictionaryInitialState.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/dictionarySlice.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/rackInitialState.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/rackSlice.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/resultsInitialState.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/resultsSlice.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/settingsSlice.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/solveInitialState.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/solveSlice.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/slices/index.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/rootReducer.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@redux-saga/core/dist/redux-saga-effects.esm.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/redux-saga/dist/redux-saga-effects-npm-proxy.esm.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/sdk/findWordDefinition.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/sdk/solve.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/sdk/visit.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/sdk/index.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/i18n/index.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/selectors.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/sagas.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/createAppStore.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/localStorage.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/useTypedSelector.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/useTranslate.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/state/index.ts","/home/kamil/projects/scrabble-solver/packages/configs/build/literaki/tiles/tilesFr.js","/home/kamil/projects/scrabble-solver/packages/configs/build/isConfigId.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/redux/es/redux.js","/home/kamil/projects/scrabble-solver/packages/configs/build/literaki/bonuses.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","/home/kamil/projects/scrabble-solver/packages/types/build/HorizontalPattern.js","/home/kamil/projects/scrabble-solver/packages/configs/build/literaki/tiles/tilesEs.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","/home/kamil/projects/scrabble-solver/packages/types/build/Tile.js","/home/kamil/projects/scrabble-solver/packages/types/build/Board.js","/home/kamil/projects/scrabble-solver/packages/configs/build/literaki/index.js","/home/kamil/projects/scrabble-solver/packages/configs/build/scrabble/tiles/tilesEn.js","/home/kamil/projects/scrabble-solver/packages/configs/build/scrabble/tiles/tilesEs.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/symbol-observable/es/ponyfill.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-is/index.js","/home/kamil/projects/scrabble-solver/packages/configs/build/scrabble/tiles/tilesDe.js","/home/kamil/projects/scrabble-solver/packages/constants/build/index.js","/home/kamil/projects/scrabble-solver/packages/configs/build/scrabble/tiles/tilesFr.js","/home/kamil/projects/scrabble-solver/packages/types/build/Config.js","/home/kamil/projects/scrabble-solver/packages/configs/build/scrabble/scrabble.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","/home/kamil/projects/scrabble-solver/packages/configs/build/getLocaleConfig.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/symbol-observable/es/index.js","/home/kamil/projects/scrabble-solver/packages/configs/build/getConfig.js","/home/kamil/projects/scrabble-solver/packages/types/build/Result.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/parameters/index.ts","/home/kamil/projects/scrabble-solver/packages/configs/build/scrabble/tiles/index.js","/home/kamil/projects/scrabble-solver/packages/types/build/WordBonus.js","/home/kamil/projects/scrabble-solver/packages/types/build/Locale.js","/home/kamil/projects/scrabble-solver/packages/types/build/Bonus.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/canUseDom.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/numberComparator.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/stringComparator.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/comparator.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/createArray.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/createGridOf.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/noop.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/createKeyboardNavigation.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/createKeyComparator.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/createNullMovingComparator.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/detectLocale.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/findCell.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/getCellSize.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/getRemainingTiles.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/getRemainingTilesCount.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/getTotalRemainingTilesCount.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/getRemainingTilesGroups.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/getTileSizes.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/inverseDirection.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/isCtrl.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/isLocale.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/isMac.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/memoize.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/reverseComparator.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/sortResults.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/unorderedArraysEqual.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/zipCharactersAndTiles.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/loaders/next-babel-loader.js??ref--4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/lib/index.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-is/cjs/react-is.production.min.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/defineProperty.js","/home/kamil/projects/scrabble-solver/packages/configs/build/scrabble/bonuses.js","/home/kamil/projects/scrabble-solver/packages/configs/build/scrabble/index.js","/home/kamil/projects/scrabble-solver/packages/types/build/VerticalPattern.js","/home/kamil/projects/scrabble-solver/packages/types/build/index.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/extends.js","/home/kamil/projects/scrabble-solver/packages/types/build/Cell.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/store2/dist/store2.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAA0B;AACnB,qCAAqC,eAAK;;AAEjD,IAAI,KAAqC,EAAE,EAE1C;;AAEc,wEAAiB,E;;ACPhC;AACA;AACA;AACA;;AAEA,IAAI,WAAK,oBAAoB;;AAEtB;AACP,SAAS,WAAK;AACd,EAAE;;AAEK;AACP,SAAS,WAAK;AACd,E;;ACbmC;AACnC;AACA;;AAEA;AACA;AACA;;AAEA;AACA,cAAc,QAAQ;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,CAAC;;;;ACvHiD;AACf;AACW;AACG;;AAEjD;AACA;AACA;AACA;AACA,qBAAqB,wBAAO;AAC5B,2BAA2B,YAAY;AACvC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,sBAAsB,wBAAO;AAC7B;AACA,GAAG;AACH,EAAE,0BAAS;AACX;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH,2BAA2B,iBAAiB;AAC5C,sBAAsB,eAAK;AAC3B;AACA,GAAG;AACH;;AAEA,IAAI,KAAqC,EAAE,EAU1C;;AAEc,gEAAQ,E;;;;;;;;;;;;;;;ACnD4B;AACnD;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;;AAEO,kKAAkK,wBAAe,GAAG,kBAAS,C;;ACT1I;AAC0C;AACjD;AACoB;AACN;AAChB;AAC8B;AACjC;;AAE9C;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,EAAE,yBAAyB;AAC3B;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,oCAAoC;;AAEpC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,wCAAwC;;AAExC;AACA,6BAA6B;;AAE7B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA,KAAK;;;AAGL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;;AAEvC;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,IAAI;;;AAGJ;AACA,8BAA8B;AAC9B;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,iBAAiB;AAC5D,uBAAuB,uDAA6B;;AAEpD,MAAM,KAAqC,EAAE,kCAc1C;;AAEH;AACA;AACA,QAAQ,KAA8E,EAAE,EAEnF;;AAEL;AACA;;AAEA,iCAAiC,sCAAQ,GAAG;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA,KAAK;AACL;AACA;;;AAGA,iCAAiC,gBAAO;AACxC;AACA;;AAEA;AACA,qBAAqB,wBAAO;AAC5B;AACA;AACA;AACA;AACA,2BAA2B,uDAA6B;;AAExD;AACA,OAAO;AACP;AACA;AACA;;AAEA,yBAAyB,wBAAO;AAChC;AACA;AACA,wDAAwD,qCAAiB,eAAe,eAAK;AAC7F,OAAO,2BAA2B;;AAElC,yBAAyB,2BAAU,eAAe;AAClD;AACA;;AAEA;AACA;;AAEA,UAAU,KAA2F,EAAE,EAEhG;;;AAGP;AACA,+BAA+B,wBAAO;AACtC;AACA;AACA;AACA,OAAO;;AAEP,sBAAsB,wBAAO;AAC7B,oEAAoE;AACpE;;AAEA,+BAA+B,YAAY,kEAAkE;AAC7G;AACA;AACA;;AAEA;AACA;AACA,OAAO;AACP;AACA,0CAA0C,oBAAoB,oBAAoB;AAClF;;;AAGA,mCAAmC,wBAAO;AAC1C;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;;AAGA,eAAe,sCAAQ,GAAG;AAC1B;AACA,SAAS;AACT,OAAO,uDAAuD;AAC9D;;AAEA,wBAAwB,2BAAU;AAClC;AACA;AACA,wDAAwD;;;AAGxD;AACA;AACA,OAAO;;;AAGP,2BAA2B,uBAAM;AACjC,6BAA6B,uBAAM;AACnC,sCAAsC,uBAAM;AAC5C,8BAA8B,uBAAM;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;;AAGA;AACA,OAAO,oDAAoD;AAC3D;AACA;;AAEA,iMAAiM;;AAEjM,0SAA0S;AAC1S;;AAEA,qCAAqC,wBAAO;AAC5C,4BAA4B,eAAK,iCAAiC,sCAAQ,GAAG;AAC7E;AACA,SAAS;AACT,OAAO,gEAAgE;AACvE;;AAEA,0BAA0B,wBAAO;AACjC;AACA;AACA;AACA;AACA,8BAA8B,eAAK;AACnC;AACA,WAAW;AACX;;AAEA;AACA,OAAO;AACP;AACA,KAAK;;;AAGL,yBAAyB,eAAK;AAC9B;AACA;;AAEA;AACA,sBAAsB,eAAK;AAC3B,4BAA4B,eAAK,wBAAwB,sCAAQ,GAAG;AACpE;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA,aAAa,qCAAY;AACzB;;AAEA,WAAW,qCAAY;AACvB;AACA,C;;AChXA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEe;AACf;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;;AAEA;AACA,C;;;;;AC1BA;AACA,WAAW,IAAI;AACf,aAAa,QAAQ;AACrB;AACe;AACf;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,C;;ACfA;AACA;AACA;AACA,WAAW,OAAO;AAClB,aAAa;AACb;AACe;AACf;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA,C;;ACvB4C;AACZ;AACjB;AACf,OAAO,aAAa;AACpB,IAAI,OAAO;AACX;AACA,C;;ACN2D;AACpD;AACP;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;;AAEA;AACA;AACA,MAAM;;;AAGN;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,UAAU,KAAqC,EAAE,EAAkD;AACnG;AACA;;AAEA;AACA;AACA,C;;AC/D2C;AACmC;AACvE;AACP,oDAAoD,kBAAkB;AACtE;AACO;AACP,+BAA+B,sBAAsB;AACrD;AACA;AACA;AACA,GAAG;AACH;AACO;AACP,wEAAwE,sBAAsB;AAC9F,WAAW,2CAAkB;AAC7B,GAAG;AACH;AACe,kKAAmG,E;;ACjBpC;AACvE;AACP,iDAAiD,kBAAkB;AACnE;AACO;AACP,4BAA4B,sBAAsB;AAClD;AACA,GAAG;AACH;AACe,yHAA6D,E;;ACTlB;AACC;AACpD;AACP,SAAS,sCAAQ,GAAG;AACpB;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,OAAO;AACP;AACA;AACA,YAAY,KAAqC,EAAE,EAA0D;AAC7G;;AAEA;AACA;AACA;AACA;AACO;AACP;AACA;AACO;AACP;AACA;AACA,GAAG;AACH;AACe,0GAAmD,E;;ACnC3B;;AAEvC;AACA;AACA;AACA,GAAG;AACH;AACA,MAAM,OAAO;AACb;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA,C;;AChBoG;AAC9C;AAC/C;AACP;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA,gBAAgB,uDAA6B;;AAE7C;AACA;AACA;;AAEA,MAAM,KAAqC,EAAE,EAE1C;;AAEH;AACA;AACA,C;;ACtF0D;AAC0C;AACxC;AACX;AACqB;AACN;AACV;AACC;AACvD;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,oCAAoC,QAAQ;AAC5C;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;;AAGO;AACP,kCAAkC;AAClC;AACA,gDAAgD,eAAe;AAC/D;AACA,oEAAoE,uBAA+B;AACnG;AACA,uEAAuE,0BAAkC;AACzG;AACA,+DAA+D,kBAA0B;AACzF;AACA,0DAA0D,yBAAsB;;AAEhF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D,YAAY;AAC1E;AACA,gEAAgE,YAAY;AAC5E;AACA,iEAAiE,YAAY;AAC7E,uBAAuB,uDAA6B;;AAEpD;AACA;AACA;AACA,uCAAuC,sCAAQ;AAC/C;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AAC4B,gFAAe,E;;ACjGR;AACuB;AAC1D;AACA;AACA;AACA;AACA,aAAa,IAAI;AACjB;AACA;AACA;AACA;AACA,WAAW,kBAAkB;AAC7B;AACA,qCAAqC,QAAQ;AAC7C,YAAY,QAAQ;AACpB,kBAAkB,iBAAiB;AACnC;AACA;;AAEO,SAAS,+BAAe;AAC/B,qBAAqB,2BAAU,CAAC,iBAAiB;;AAEjD,MAAM,KAAsD,EAAE,EAE3D;;AAEH;AACA,C;;AC3BmC;AACuB;AACoB;AAC9E;AACA;AACA;AACA,WAAW,cAAc;AACzB,aAAa,SAAS;AACtB;;AAEO;AACP;AACA,cAAc,iBAAiB;AAC/B;;AAEA,oCAAoC,iBAAiB,GAAG,+BAAsB;AAC9E,WAAW,2BAAU;AACrB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,IAAI;AACjB;AACA;AACA;AACA;AACA,WAAW,WAAW;AACtB;AACA;AACA;AACA,kBAAkB,iBAAiB;AACnC;AACA;;AAEO,IAAI,iBAAQ,kC;;ACzCuC;AACgB;AAC1E;AACA;AACA;AACA,WAAW,cAAc;AACzB,aAAa,SAAS;AACtB;;AAEO;AACP;AACA,cAAc,iBAAiB;AAC/B;;AAEA,6BAA6B,iBAAiB,GAAG,iBAAe,GAAG,eAAe;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,aAAa;AAC1B;AACA;AACA;AACA,kBAAkB,cAAc;AAChC,WAAW,cAAc;AACzB;AACA,qCAAqC,QAAQ;AAC7C;AACA,yDAAyD,2BAA2B;AACpF;AACA;AACA,gBAAgB,MAAM;AACtB,0BAA0B,gBAAgB;AAC1C;AACA;AACA;AACA;;AAEO,oD;;AC1CwE;AACD;AAC7B;AAC8B;AACrB;;AAE1D;AACA;AACA;;AAEA;AACA,oBAAoB,2BAAU;AAC9B;AACA,GAAG;AACH;;AAEA,qBAAqB,wBAAO;AAC5B,eAAe,YAAY;AAC3B,GAAG;AACH,wCAAwC,uBAAM;AAC9C,uBAAuB,uBAAM;AAC7B,yBAAyB,uBAAM;AAC/B,4BAA4B,uBAAM;AAClC;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA,EAAE,yBAAyB;AAC3B;AACA;AACA;AACA;AACA,GAAG;AACH,EAAE,yBAAyB;AAC3B;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,WAAW,cAAc;AACzB,aAAa,SAAS;AACtB;;;AAGO;AACP;AACA,cAAc,iBAAiB;AAC/B;;AAEA,oCAAoC,iBAAiB,GAAG,+BAAsB;AAC9E,WAAW,2BAAU;AACrB;AACA;AACA;AACA;AACA;;AAEA,QAAQ,KAAkD,EAAE,EAEvD;;AAEL;AACA;AACA;;AAEA;AACA,IAAI,8BAAa;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,SAAS;AACpB,WAAW,UAAU;AACrB;AACA,aAAa,IAAI;AACjB;AACA;AACA;AACA;AACA,WAAW,cAAc;AACzB;AACA;AACA;AACA,kBAAkB,QAAQ;AAC1B;AACA;;AAEO,IAAI,uBAAW,qC;;;;;ACtItB;;;ACA6C;AACc;AACF;AACjB;AAC8B;AACA;AACT;AACpB;AACsC;AAC/B;AAChD,QAAQ,CAAC,oCAAK;;;;;;;;;ACVD;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,qBAAqB,EAAE;AAC1E,SAAS;AACT;AACA;AACA;AACA,gDAAgD,mDAAmD,EAAE;AACrG;AACA;AACA,qDAAqD,wBAAwB,EAAE;AAC/E;AACA;AACA,kDAAkD,qBAAqB,EAAE;AACzE;AACA;AACA;AACA,gDAAgD,2FAA2F,EAAE;AAC7I;AACA;AACA,gDAAgD,qBAAqB,EAAE;AACvE;AACA;AACA,gDAAgD,sBAAsB,EAAE;AACxE;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,sBAAsB,EAAE;AAC3E,uEAAuE,2BAA2B,EAAE;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;;;;;;;;ACvDa;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,gBAAgB,mBAAO,CAAC,MAAW;AACnC,2CAA2C,qCAAqC,2CAA2C,EAAE,EAAE;AAC/H,gBAAgB,mBAAO,CAAC,MAAW;AACnC,2CAA2C,qCAAqC,2CAA2C,EAAE,EAAE;AAC/H,gBAAgB,mBAAO,CAAC,MAAW;AACnC,2CAA2C,qCAAqC,2CAA2C,EAAE,EAAE;AAC/H,gBAAgB,mBAAO,CAAC,MAAW;AACnC,2CAA2C,qCAAqC,2CAA2C,EAAE,EAAE;AAC/H,gBAAgB,mBAAO,CAAC,MAAW;AACnC,2CAA2C,qCAAqC,2CAA2C,EAAE,EAAE;;;;;;;;;;;;;;;;ACflH;;AAEb,cAAc,mBAAO,CAAC,MAAU;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,mBAAmB,iBAAiB;AACpC;;AAEA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;;AAEA;;;;;;;;;ACtGa;AACb,8CAA8C,cAAc;AAC5D;AACA,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C;AACA;;;;;;;;;ACpCa;AACb,8CAA8C,cAAc;AAC5D;AACA,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C;AACA;;;;;;;;;ACpCa;AACb,8CAA8C,cAAc;AAC5D;AACA,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,sCAAsC;AAC3C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,sCAAsC;AAC3C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,sCAAsC;AAC3C;AACA;;;;;;;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;;;;;;;;ACvBa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA,8CAA8C,cAAc;AAC5D,cAAc,mBAAO,CAAC,MAAwB;AAC9C,gCAAgC,mBAAO,CAAC,MAAW;AACnD,cAAc,mBAAO,CAAC,MAAS;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,2EAA2E,UAAU,yBAAyB;AAC9G,2EAA2E,UAAU,yBAAyB;AAC9G,2EAA2E,UAAU,yBAAyB;AAC9G,2EAA2E,UAAU,yBAAyB;AAC9G,2EAA2E,UAAU,yBAAyB;AAC9G,2EAA2E,UAAU,yBAAyB;AAC9G;AACA;;;;;;;;;;;;;;;;AC1Ca;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,kBAAkB,mBAAO,CAAC,MAAa;AACvC,6CAA6C,qCAAqC,6CAA6C,EAAE,EAAE;AACnI,wBAAwB,mBAAO,CAAC,MAAmB;AACnD,mDAAmD,qCAAqC,mDAAmD,EAAE,EAAE;AAC/I,mBAAmB,mBAAO,CAAC,MAAc;AACzC,8CAA8C,qCAAqC,8CAA8C,EAAE,EAAE;AACrI,iBAAiB,mBAAO,CAAC,MAAY;AACrC,4CAA4C,qCAAqC,4CAA4C,EAAE,EAAE;AACjI,iBAAiB,mBAAO,CAAC,MAAY;AACrC,4CAA4C,qCAAqC,4CAA4C,EAAE,EAAE;;;;;;;;;ACfpH;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,aAAa,EAAE;AAC5C,KAAK;AACL;AACA,CAAC;AACD;;;;;;;;;AClCa;AACb;AACA;AACA;AACA,cAAc,gBAAgB,sCAAsC,iBAAiB,EAAE;AACvF,6BAA6B,8EAA8E;AAC3G;AACA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C;AACA;AACA,CAAC;AACD;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,kBAAkB,mBAAO,CAAC,MAA4B;AACtD,8BAA8B,mBAAO,CAAC,MAAS;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA,CAAC;AACD;;;;;;;;;AChDa;AACb,8CAA8C,cAAc;AAC5D;AACA,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,sCAAsC;AAC3C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,sCAAsC;AAC3C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,qCAAqC;AAC1C,KAAK,sCAAsC;AAC3C,KAAK,qCAAqC;AAC1C;AACA;;;;;;;;;ACjCA;AAAA;AAAO;;AAEP;AACA;AACA;AACA,CAAC,sCAAsC;;AAEhC;;AAEP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,oCAAoC,G;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACjBrC,SAAS,WAAC,IAAI,kDAAkD,IAAI,wBAAwB,GAAG,KAAmC,CAAC,aAAwG,6EAA6E,gBAAgB,qEAAqE,cAAc,kBAAkB,cAAc,wBAAwB,mCAAmC,+BAA+B,+BAA+B,+DAA+D,cAAc,aAAa,WAAC,cAAc,SAAS,WAAC,QAAQ,sEAAsE,mCAAmC,4BAA4B,gBAAgB,GAAG,cAAc,WAAW,4DAA4D,gBAAgB,mEAAmE,SAAS,WAAC,MAAM,8BAA8B,kBAAkB,WAAW,qDAAqD,gBAAgB,wCAAwC,cAAc,2BAA2B,cAAc,2BAA2B,cAAc,gBAAgB,cAAc,yDAAyD,YAAY,YAAY,mBAAmB,WAAW,KAAK,kBAAkB,0EAA0E,+DAA+D,EAAE,iDAAiD,gBAAgB,0BAA0B,WAAC,iFAAiF,WAAC,kBAAkB,eAAe,SAAS,aAAa,WAAC,IAAI,SAAS,WAAC,IAAI,uDAAuD,cAAc,YAAY,UAAU,WAAC,SAAS,gBAAgB,iBAAiB,aAAa,MAAM,KAAsC,EAAE,KAAI,GAAG,gBAAgB,sCAAsC,cAAc,6BAA6B,cAAc,eAAe,cAAc,UAAU,uBAAuB,cAAc,WAAW,8BAA8B,gBAAgB,eAAe,iCAAiC,iDAAiD,WAAC,0BAA0B,WAAC,8FAA8F,kBAAkB,GAAG,WAAC,aAAa,WAAW,aAAa,WAAC,kBAAkB,sBAAsB,QAAQ,oBAAoB,eAAe,WAAC,eAAe,SAAS,eAAe,sCAAsC,WAAC,qCAAqC,sBAAsB,GAAG,WAAC,6CAA6C,WAAW,wBAAwB,GAAG,MAA0C,EAAE,KAAI,OAAO,yDAAyD,yBAAyB,OAAO,UAAU,WAAC,KAAK,wBAAwB,iBAAiB,WAAC,OAAO,SAAS,WAAC,QAAQ,sCAAsC,gBAAgB,WAAW,oBAAoB,gBAAgB,6CAA6C,EAAE,EAAE,2CAA2C,cAAc,4BAA4B,cAAc,0BAA0B,cAAc,kBAAkB,kBAAkB,wEAAwE,0BAA0B,kCAAkC,mCAAmC,UAAU,gBAAgB,gDAAgD,qBAAqB,sBAAsB,8BAA8B,cAAc,aAAa,WAAC,qBAAqB,kBAAkB,oBAAoB,MAAM,4CAA4C,uBAAuB,cAAc,OAAO,WAAC,kBAAkB,GAAG,WAAC,yBAAyB,sBAAsB,IAAI,gBAAgB,UAAU,yBAAyB,4BAA4B,YAAY,aAAa,gBAAgB,WAAW,gCAAgC,4CAA4C,cAAc,MAAM,MAAmC,EAAE,KAAI,aAAa,iBAAiB,cAAc,MAAmC,EAAE,KAAI,gBAAgB,GAAG,cAAc,qBAAqB,KAAK,KAAK,cAAc,oBAAoB,kBAAkB,MAAM,oBAAoB,cAAc,wCAAwC,KAAK,KAAK,WAAW,UAAU,WAAW,gCAAgC,qBAAqB,+BAA+B,aAAa,sCAAsC,cAAc,UAAU,kCAAkC,oDAAoD,mBAAmB,cAAc,KAAK,WAAC,yBAAyB,SAAS,SAAS,gBAAgB,uCAAuC,MAAM,8BAA8B,WAAW,0CAA0C,SAAS,YAAY,YAAY,mBAAmB,WAAW,KAAK,WAAW,+BAA+B,iDAAiD,SAAS,kCAAkC,+BAA+B,kCAAkC,oBAAoB,IAAI,mBAAmB,+CAA+C,0BAA0B,WAAW,MAAM,4BAA4B,SAAS,WAAC,gBAAgB,4DAA4D,GAAG,WAAC,gBAAgB,sCAAsC,GAAG,eAAe,iEAAiE,WAAW,YAAY,wBAAwB,WAAW,YAAY,0CAA0C,IAAI,8BAA8B,iBAAiB,eAAe,0BAA0B,EAAE,aAAa,cAAc,kBAAkB,oCAAoC,gEAAgE,qBAAqB,IAAI,6CAA6C,8CAA8C,4BAA4B,SAAS,cAAc,mBAAmB,YAAY,aAAa,gBAAgB,8BAA8B,gCAAgC,aAAa,KAAK,kBAAkB,kDAAkD,WAAC,4CAA4C,WAAC,wBAAwB,WAAC,QAAQ,WAAC,iBAAiB,wCAAwC,UAAU,wBAAwB,yBAAyB,OAAO,WAAC,KAAK,sBAAsB,iBAAiB,8BAA8B,yBAAyB,uBAAuB,sBAAsB,uBAAuB,4BAA4B,0BAA0B,gCAAgC,2BAA2B,QAAQ,WAAC,QAAQ,KAAK,qBAAqB,YAAY,8CAA8C,gBAAgB,WAAC,oBAAoB,MAAM,WAAC,QAAQ,WAAC,sCAAsC,yBAAyB,kBAAkB,qBAAqB,YAAY,EAAE,oBAAoB,gBAAgB,mBAAmB,eAAe,uBAAuB,EAAE,+BAA+B,GAAG,GAAG,UAAU,uCAAuC,sBAAsB,sBAAsB,YAAY,cAAc,YAAY,cAAc,YAAY,WAAW,0BAA0B,oBAAoB,QAAQ,kCAAkC,UAAU,kCAAkC,EAAE,mBAAmB,WAAW,KAAK,oBAAoB,QAAQ,0BAA0B,EAAE,2BAA2B,sDAAsD,EAAE,UAAU,gCAAgC,oBAAoB,uBAAuB,cAAc,oBAAoB,QAAQ,2BAA2B,aAAa,oBAAoB,EAAE,IAAI,8BAA8B,cAAc,oBAAoB,QAAQ,oBAAoB,aAAa,2BAA2B,EAAE,IAAI,GAAG,WAAW,qBAAqB,QAAQ,6BAA6B,UAAU,+BAA+B,GAAG,EAAE,aAAa,gBAAgB,aAAa,mBAAmB,mDAAmD,cAAc,oCAAoC,cAAc,2CAA2C,SAAS,mBAAmB,wBAAwB,gBAAgB,IAAI,cAAc,KAAK,WAAC,yBAAyB,oBAAoB,iCAAiC,aAAa,gCAAgC,cAAc,gBAAgB,gDAAgD,OAAO,cAAc,gBAAgB,gBAAgB,qEAAqE,MAAM,SAAS,kBAAkB,uCAAuC,eAAe,wBAAwB,oBAAoB,yBAAyB,qBAAqB,cAAc,oGAAoG,sBAAsB,yBAAyB,cAAc,qDAAqD,oBAAoB,cAAc,uCAAuC,WAAC,kBAAkB,cAAc,gBAAgB,yBAAyB,WAAW,kCAAkC,uBAAuB,GAAG,mBAAmB,cAAc,KAAK,kBAAkB,uBAAuB,2BAA2B,mBAAmB,2BAA2B,mBAAmB,yBAAyB,qBAAqB,2BAA2B,WAAW,gBAAgB,kBAAkB,mBAAmB,eAAe,iBAAiB,8BAA8B,GAAG,sBAAsB,2BAA2B,WAAW,gBAAgB,mBAAmB,mBAAmB,eAAe,mBAAmB,qBAAqB,OAAO,2BAA2B,GAAG,iBAAiB,sBAAsB,GAAG,gBAAgB,gBAAgB,gBAAgB,sEAAsE,MAAM,SAAS,kBAAkB,uCAAuC,eAAe,wBAAwB,oBAAoB,cAAc,8EAA8E,mBAAmB,cAAc,qDAAqD,sBAAsB,yBAAyB,cAAc,0EAA0E,oBAAoB,cAAc,wCAAwC,qBAAqB,cAAc,8BAA8B,sBAAsB,cAAc,+BAA+B,mBAAmB,qBAAqB,iBAAiB,qBAAqB,yBAAyB,mCAAmC,QAAQ,2CAA2C,GAAG,GAAG,YAAY,gBAAgB,kBAAkB,iBAAiB,mBAAmB,EAAE,aAAa,YAAY,cAAc,SAAS,cAAc,SAAS,gPAAgP,8LAA8L,2IAA2I,+HAA+H,2vBAA2vB,qDAAqD,yDAAyD,wCAAwC,gBAAgB,yJAAyJ,+FAA+F,kKAAkK,gBAAgB,2CAA2C,gBAAgB,4CAA4C,4FAA4F,kHAAkH,6EAA6E,6EAA6E,SAAS,iCAAiC,0CAA0C,KAAK,MAAM,KAAK,kBAAkB,kBAAkB,WAAW,kCAAkC,eAAe,oFAAoF,QAAQ,WAAW,8DAA8D,mBAAmB,iBAAiB,qBAAqB,6BAA6B,qBAAqB,gBAAgB,oDAAoD,SAAS,sCAAsC,2CAA2C,2CAA2C,UAAU,6BAA6B,8BAA8B,6FAA6F,wCAAwC,mDAAmD,UAAU,kFAAkF,GAAG,2BAA2B,WAAC,KAAK,4BAA4B,kCAAkC,2BAA2B,WAAC,MAAM,OAAO,WAAC,mBAAmB,iBAAiB,6DAA6D,mCAAmC,MAAM,MAAuD,EAAE,KAAK,qCAAqC,wBAAwB,MAAM,MAAqE,EAAE,KAAK,kCAAkC,kBAAkB,cAAc,qRAAqR,kBAAkB,iCAAiC,+CAA+C,QAAQ,IAAI,WAAW,mBAAmB,WAAW,kBAAkB,kDAAkD,IAAI,wBAAwB,gCAAgC,MAAM,0CAA0C,IAAI,MAAM,yBAAyB,WAAC,sCAAsC,WAAC,UAAU,sCAAsC,IAAI,YAAY,QAAQ,YAAY,4EAA4E,qBAAqB,eAAe,aAAa,mBAAmB,2BAA2B,uBAAuB,2CAA2C,WAAC,OAAO,oCAAoC,eAAe,uCAAuC,kDAAkD,IAAI,wBAAwB,2CAA2C,qCAAqC,GAAG,kCAAkC,QAAQ,QAAQ,2BAA2B,MAAM,WAAC,mBAAmB,iCAAiC,wBAAwB,6BAA6B,cAAc,MAAmC,GAAG,KAAuB,EAAE,UAAU,0BAA0B,6BAA6B,SAAS,6BAA6B,OAAO,WAAC,cAAc,8BAA8B,MAAM,iBAAiB,KAAK,KAAK,WAAW,wCAAwC,UAAU,OAAO,qBAAqB,+CAA+C,yBAAyB,GAAG,GAAG,yMAAwN,gDAAE,EAAwW;AAC/2iB;;;;;;ACDA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB,YAAY;AAC7B;AACA;AACA;AACA;;AAEA;AACA;;AAEO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEO;AACP,8FAA8F,aAAa;AAC3G;AACA;;AAEA;AACA,uEAAuE,eAAe;AACtF;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA,qBAAqB,YAAY;AACjC;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO;;AAEA;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,wEAAwE,eAAe;AACvF;AACA;;AAEA;AACA;AACA;AACA,KAAK,IAAI;AACT,GAAG;AACH,C;;ACvHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,IAAI,QAAK;AACT,QAAK;;AAEU,+CAAK,E;;ACnB8D;AACd;AACW;AACzD;AACoB;AACA;AACA;;AAE1C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAI,yCAAuB;AAC3B,iBAAiB,cAAc;;AAE/B;AACA,0FAA0F,aAAa;AACvG;AACA;;AAEA,mCAAmC,CAAO,UAAU,CAAO;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA,mBAAmB,sBAAsB;AACzC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,2EAA2E;AAC3E;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,+CAA+C,wBAAO;AACtD,SAAS,wBAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,IAAI;AACf,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,sEAAsE,aAAa;AACnF;AACA;;AAEA;AACA;;AAEA;AACA,yEAAyE,eAAe;AACxF;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,CAAC;AACD;AACA;;AAEA,mBAAmB,YAAoB;AACvC,gCAAgC;AAChC;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;;;AAGA;AACA;AACA,GAAG;AACH;;;AAGA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;;AAEA,iBAAiB,iBAAiB;AAClC;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C;;AAE7C;AACA,gCAAgC,MAAqC,GAAG,SAAoO;AAC5S,SAAS;AACT;AACA;AACA;AACA,6CAA6C;;AAE7C;AACA,sDAAsD,MAAqC,GAAG,SAA2Q;AACzW,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,8IAA8I;AAC9I;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,2BAA2B,EAAe;AAC1C,KAAK;AACL,2BAA2B,EAAe;AAC1C;AACA;;AAEA,MAAM,KAAqC,EAAE,8CAsB1C;;AAEH;AACA;;AAEA,oBAAoB,YAAoB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH,kBAAkB,wCAAe;AACjC,GAAG;AACH;AACA;;AAEA,2BAA2B,gCAAe;AAC1C,qBAAqB,wBAAO;;AAE5B;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA,SAAS,oCAAW;AACpB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA,OAAO,IAAI;AACX;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC,EAAE,EAa1C;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA,UAAU,KAAqC,EAAE,EAI1C;;AAEP;AACA;AACA;AACA,OAAO;AACP;AACA,KAAK;AACL;AACA,UAAU,KAAqC,EAAE,EAI1C;;AAEP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,YAAY,CAAO;AACnB;AACA;AACA;AACA,oCAAoC;;AAEpC;;AAEA;AACA;AACA;;AAEA;AACA,SAAS,WAAW,CAAW;AAC/B;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,SAAS;AACT;AACA;AACA;AACA,iBAAiB,SAAe;AAChC;AACA,WAAW;AACX;AACA;;AAEA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,2CAA2C;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH,qCAAqC,mBAAmB;;AAExD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,oBAAoB,yCAAuB;AAC3C;AACA;AACA,OAAO;AACP,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;;AAEA,sBAAsB,yCAAuB;AAC7C;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,yCAAuB;AAC3C;AACA;;AAEA,mCAAmC,yCAAuB;AAC1D;AACA,iBAAiB,yCAAuB;AACxC;AACA,iBAAiB,yCAAuB;AACxC,mBAAmB,yCAAuB;AAC1C,kBAAkB,yCAAuB;AACzC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA,QAAQ,CAAO;AACf;AACA;AACA;AACA,wBAAwB;;AAExB;AACA,KAAK;AACL;AACA;AACA;AACA,aAAa,SAAe;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA,MAAM,KAA0D,EAAE,EAE/D;;AAEH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,iJAAiJ;AACjJ;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA,kCAAkC;AAClC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,8EAA8E;AAC5G;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,yJAAyJ;AACzJ;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,iJAAiJ;AACjJ;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,mBAAmB,8BAA8B;AACjD;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,sBAAsB;;AAEtB;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,kBAAkB,sBAAsB;AAC3C;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,cAAc,8CAA8C,UAAU;;AAEtE;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,EAAE;;;AAGF;AACA;AACA;;AAEA,yJAAyJ;AACzJ;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD;AACxD;AACA;AACA,SAAS;AACT,sCAAsC;AACtC;AACA;AACA;;AAEA;;AAEA;AACA,UAAU,KAAqC,EAAE,EAK1C;AACP;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,SAAS;AACT,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA,aAAa;AACb;AACA,aAAa;AACb,WAAW;AACX;AACA,WAAW;;AAEX;AACA,SAAS;AACT;AACA;AACA,OAAO;;AAEP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA,yEAAyE,aAAa;AACtF;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,4EAA4E,eAAe;AAC3F;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,+EAA+E,eAAe;AAC9F;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,+EAA+E,eAAe;AAC9F;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,+EAA+E,eAAe;AAC9F;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,+EAA+E,eAAe;AAC9F;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,+EAA+E,eAAe;AAC9F;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,oJAAoJ;AACpJ;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,CAAS;;AAE2b;AACpc;;;ACl6DgD;AACzC,iBAAiB,YAAY;AAC7B,IAAI,aAAK,GAAG,YAAY,U;;ACF/B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEuI;;;;;;;;;ACtChE;;AAEvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,yBAAO;AACX;AACA;AACA,IAAI,0BAAQ;AACZ;AACA;AACA;AACA;AACA;AACA,IAAI,sBAAI;AACR,gBAAgB,IAAI;AACpB;AACA,IAAI,4BAAU;AACd,wBAAwB,WAAW;AACnC;AACA;AACA;AACA;AACA,IAAI,wBAAM;AACV;AACA;AACA,IAAI,yBAAO;AACX;AACA;AACA,IAAI,yBAAO;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,2BAAS;AACb,SAAS,yBAAO,WAAW,SAAS;AACpC;AACA,IAAI,wBAAM;AACV,oBAAoB,EAAE;AACtB;;AAEgM;;;AC7DnJ;;AAE7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH,UAAU,MAAM;AAChB;AACA;;AAEA;AACA;;AAEe,iEAAM,EAAC;;;ACnB0F;AACtD;AACuE;AACxF;;AAEzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,IAAI,KAAqE,EAAE,EAQ1E;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,6BAAiB;AACrB,EAAE,sCAAQ;;AAEV;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6lBAA6lB;;AAE7lB;AACA;AACA;AACA,IAAI,4BAAgB;AACpB;AACA,QAAQ,KAAqC,EAAE,EAI1C;;AAEL,kDAAkD,WAAW;AAC7D;AACA,KAAK;AACL;AACA;AACA,IAAI,2BAAe;AACnB,iBAAiB,SAAS;AAC1B;AACA,IAAI,wBAAY;AAChB,iBAAiB,WAAW;AAC5B;AACA;AACA,SAAS,2BAAe,SAAS,wBAAY;AAC7C;AACA;AACA;AACA;;AAEA,MAAM,KAAqC,EAAE,EAI1C;;AAEH;AACA;AACA,gBAAgB,KAAK;AACrB;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,aAAa;AACnC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,kBAAM;AACV;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,kBAAM;AAChB;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA,IAAI,sBAAU;AACd;;AAEA,kBAAkB,OAAO,EAAE;AAC3B;;AAEA,IAAI,wBAAY;AAChB,SAAS,wBAAM;AACf;;AAEA,IAAI,kBAAM;AACV,MAAM,KAAqC,EAAE,EAE1C;;AAEH,SAAS,sBAAU,OAAO,sCAAQ,GAAG;AACrC;AACA,GAAG;AACH;AACA,SAAS,gBAAI;AACb;AACA;AACA;;AAEA,MAAM,KAAyD,EAAE,EAE9D;;AAEH,MAAM,yBAAO;AACb,WAAW,sBAAU;AACrB;AACA,KAAK;AACL;;AAEA,MAAM,2BAAS,sBAAsB,QAAQ,sBAAsB,yBAAO;AAC1E,WAAW,sBAAU;AACrB;AACA;AACA,KAAK;AACL;;AAEA,MAAM,yBAAO;AACb,WAAW,sBAAU;AACrB;AACA,KAAK;AACL;;AAEA,MAAM,KAAqC,EAAE,EAE1C;AACH;AACA;AACA,YAAY,gBAAI;AAChB;AACA;AACA;AACA,SAAS,eAAG;AACZ,MAAM,KAAqC,EAAE,EAQ1C;;AAEH,MAAM,KAAK;AACX,uBAAuB;;AAEvB;AACA;;AAEA,SAAS,sBAAU;AACnB;AACA;AACA,GAAG;AACH;AACA;AACA,YAAY,eAAG;AACf;AACA;AACA;AACA,SAAS,eAAG;AACZ,YAAY,sBAAU;AACtB;AACA;AACA;AACA;AACA,YAAY,sBAAU;AACtB;AACA;AACA,CAAC;;AAED,IAAI,gCAAoB;AACxB,sBAAsB,QAAQ;;AAE9B,MAAM,IAAI;AACV;AACA;;AAEA;AACA;;AAEA,MAAM,KAAK;AACX;AACA;AACA,cAAc,QAAQ;AACtB,GAAG,UAAU,MAAM;AACnB;AACA;AACA,cAAc,QAAQ,oCAAoC,YAAY;AACtE,GAAG;AACH,wBAAwB,IAAI;AAC5B;AACA;;AAEA,iBAAiB,MAAM;AACvB,uBAAuB,IAAI;AAC3B;AACA;;AAEA,YAAY,IAAI,+DAA+D,YAAY;AAC3F;;AAEA;AACA;AACA;;AAEA,MAAM,IAAI;AACV;AACA,GAAG;AACH,QAAQ,KAAK;AACb;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA,mBAAmB,MAAM,QAAQ,IAAI;AACrC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,wFAAwF,aAAa;AACrG;AACA;;AAEA,MAAM,KAAqC,EAAE,aAI1C;;AAEH,SAAS,sBAAU;AACnB;AACA;AACA;AACA;AACA;;AAEA;;AAEA,MAAM,KAAqC,EAAE,EAE1C;;AAEH,SAAS,sBAAU;AACnB;AACA;AACA,MAAM,KAAqC,EAAE,EAE1C;;AAEH,4FAA4F,eAAe;AAC3G;AACA;;AAEA,SAAS,sBAAU;AACnB;AACA;AACA,MAAM,KAAqC,EAAE,EAK1C;;AAEH,4FAA4F,eAAe;AAC3G;AACA;;AAEA,SAAS,sBAAU;AACnB;AACA;AACA,MAAM,KAAqC,EAAE,EAE1C;;AAEH,4FAA4F,eAAe;AAC3G;AACA;;AAEA,SAAS,kBAAM;AACf;AACA;AACA,MAAM,KAAqC,EAAE,EAY1C;;AAEH,SAAS,sBAAU;AACnB;AACA,SAAS,kBAAM;AACf;AACA,kBAAkB,iBAAiB;AACnC;;AAEA,MAAM,KAAqC,EAAE,EAY1C;;AAEH,SAAS,sBAAU,CAAC,kBAAM;AAC1B;AACA,SAAS,kBAAM;AACf;AACA;AACA;;AAEA,4FAA4F,eAAe;AAC3G;AACA;;AAEA,MAAM,KAAyD,EAAE,EAG9D;;AAEH,SAAS,sBAAU;AACnB;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA,MAAM,KAAqC,EAAE,EAO1C;;AAEH,SAAS,sBAAU;AACnB;AACA;AACA,GAAG;AACH;AACA;AACA,SAAS,sBAAU,cAAc;AACjC;AACA,SAAS,iBAAK;AACd,MAAM,KAAqC,EAAE,EAE1C;;AAEH,SAAS,sBAAU;AACnB;AACA;AACA,MAAM,KAAqC,EAAE,EAE1C;;AAEH,SAAS,sBAAU;AACnB;AACA,SAAS,sBAAU;AACnB,MAAM,KAAqC,EAAE,EAE1C;;AAEH,SAAS,sBAAU;AACnB;AACA;AACA;AACA,gBAAgB,sBAAM;;AAE26B;;;ACzqBj8B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA,iBAAiB,YAAY;AAC7B;AACA;;AAEA;AACA;;AAEe,oEAAQ,EAAC;AACG;;;ACnBwH;AACvF;AACF;AAC0C;AACsF;AAC0d;AACvlB;AAC7B;AACY;AACf;;AAE7B,IAAI,yBAAK;AACT;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA,EAAE,yBAAK;;AAEP;AACA;AACA,IAAI,yBAAK;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH,IAAI,yBAAK;AACT;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;;;AAGA,SAAS,yBAAK;AACd;AACA;;AAEA,+BAA+B,yBAAK;AACpC;AACA;AACA;;AAEA,IAAI,yBAAK;AACT;AACA;AACA,aAAa,2BAAO;AACpB,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,0BAAM;AACV;AACA;AACA;AACA;AACA,IAAI,0BAAM;AACV;AACA;AACA;AACA;AACA,IAAI,4BAAQ;AACZ,SAAS,KAAK;AACd;AACA,SAAS,2BAAO;AAChB;AACA,yCAAyC,4BAAQ,GAAG,MAAQ,YAAY,0BAAM,GAAG,KAAO,YAAY,yBAAK,GAAG,cAAc,YAAY,0BAAM,GAAG,IAAI,wBAAwB,MAAQ,YAAY,0BAAM;;AAErM;AACA;AACA;;AAEA;AACA;;AAEA;AACA,QAAQ,gBAAgB;AACxB;AACA,IAAI,yBAAK;AACT,yBAAyB,gBAAgB;AACzC;AACA;AACA;AACA;AACA,SAAS,2BAAO;AAChB;AACA,eAAe,SAAS;AACxB;;AAEA;AACA;;AAEA,MAAM,KAAqC,EAAE,EAE1C;;AAEH;AACA;AACA,YAAY,WAAW;AACvB;;AAEA;AACA,YAAY,WAAW;AACvB;AACA;;AAEA;AACA,QAAQ,KAAqC,EAAE,EAG1C;;AAEL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,QAAQ,KAAqC,EAAE,EAG1C;;AAEL;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;;AAEA;AACA,QAAQ,MAAM;AACd;AACA;AACA;;AAEA;AACA,QAAQ,KAAqC,EAAE,EAG1C;;AAEL;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,QAAQ,KAAqC,EAAE,EAE1C;;AAEL;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qCAAqC,SAAS;AAC9C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,IAAI;AACjB;;AAEA;AACA;AACA,aAAa,2BAAO;;AAEpB;AACA;AACA;AACA;;AAEA;;AAEA,QAAQ,IAAI;AACZ;AACA;;AAEA;AACA;;AAEA;AACA,QAAQ,yBAAK;AACb;AACA;AACA;;AAEA;AACA,GAAG;;AAEH,MAAM,KAAqC,EAAE,EAE1C;;AAEH,gBAAgB,IAAI;;AAEpB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,WAAW;AACvB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,QAAQ,KAAqC,EAAE,EAE1C;;AAEL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA,kBAAkB,OAAO,SAAS;AAClC,QAAQ,KAAqC,EAAE,EAG1C;;AAEL;AACA;AACA;;AAEA,QAAQ,yBAAK;AACb;AACA;AACA;;AAEA;;AAEA,wCAAwC,SAAS;AACjD;;AAEA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,gBAAgB,4BAAQ;AACxB;;AAEA,QAAQ,KAAqC,EAAE,EAE1C;;AAEL;AACA;AACA;AACA;;AAEA,OAAO,KAAK;AACZ;AACA;AACA,gBAAgB,IAAI;AACpB;AACA,MAAM,MAAM;AACZ,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA,cAAc,WAAW;AACzB;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA,IAAI,6BAAS;AACb;AACA;;AAEA;AACA,8BAA8B,MAAM;;AAEpC,MAAM,IAAI;AACV;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAAS,WAAW;AACpB;;AAEA;AACA;AACA;AACA;;AAEA,gCAAgC;AAChC;AACA,yCAAyC;;AAEzC,QAAQ,0BAAQ;AAChB;AACA;;AAEA;;AAEA;AACA;AACA,wBAAwB;;AAExB;AACA;AACA,iBAAiB,yBAAO;AACxB;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;;AAEA,WAAW,YAAY;AACvB,GAAG;AACH;AACA;AACA,WAAW,YAAY;AACvB;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA,mBAAmB,yBAAO;AAC1B;AACA,KAAK;AACL;AACA;AACA,GAAG,EAAE;AACL;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,QAAQ,yBAAK;AACb,SAAS,SAAS;AAClB;AACA;;AAEA;AACA;;AAEA;AACA,yBAAyB,QAAQ,YAAY,2BAAO;AACpD,GAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,gCAAgC;AAChC;AACA;;AAEA,QAAQ,yBAAO;AACf;AACA;AACA;;AAEA,QAAQ,0BAAQ;AAChB;AACA,+CAA+C,WAAW;AAC1D;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,gCAAgC;AAChC;AACA;AACA,UAAU,KAAK;AACf;AACA,OAAO;AACP;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA,GAAG,EAAE;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oCAAoC,MAAM;AAC1C;;AAEA;AACA,KAAK;AACL;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA,MAAM,KAAO;AACb;AACA;AACA;AACA;;AAEA,yBAAyB,4BAA4B;AACrD;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,sBAAsB,iBAAiB;AACvC;AACA,GAAG,UAAU,KAAO;AACpB;AACA,GAAG;AACH;AACA;;AAEA,OAAO;AACP;;AAEA;AACA;AACA;AACA;;AAEA;AACA,OAAO,KAAO,mBAAmB;AACjC;AACA;;AAEA,uBAAuB,4BAA4B;AACnD;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,iBAAiB,KAAO,YAAY,gBAAgB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB,cAAc;AACjC;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;;AAEA,uBAAuB,IAAI;AAC3B;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa,2BAAO;AACpB,cAAc,2BAAO;;AAErB;AACA,SAAS,yBAAK;AACd;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,EAAE,6BAAiB;AACnB;AACA;;AAEA,4CAA4C,mBAAmB,IAAI,oCAAoC,GAAG,mCAAmC,GAAG,mCAAmC,IAAI,oCAAoC,IAAI,oCAAoC,GAAG,mCAAmC,IAAI,oCAAoC,IAAI,oCAAoC,kBAAQ,sCAAsC,MAAM,sCAAsC,cAAc,uCAAuC,SAAW,yCAAyC,KAAK,qCAAqC,WAAW,0CAA0C,WAAW;;AAEtqB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,MAAM,MAAM;AACZ,kBAAkB,IAAI;;AAEtB;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,eAAe,IAAI;AACnB;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,iBAAiB,WAAW;;AAE5B;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,uBAAuB,OAAO;AAC9B;AACA,GAAG;;AAEH;AACA;AACA;;AAEA;AACA;;AAEA;AACA,IAAI,6BAAS;AACb;AACA;AACA,EAAE,6BAAS;AACX;AACA;AACA;AACA,EAAE,6BAAS;AACX,EAAE;AACF;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY;;AAEZ;AACA,mDAAmD;AACnD,6BAA6B,oCAAoC,GAAG;AACpE,4BAA4B;AAC5B,2BAA2B;AAC3B;;AAEA,IAAI,4BAAQ;AACZ,kBAAkB,6BAAS;AAC3B,mBAAmB,6BAAS;AAC5B;AACA;AACA;AACA;AACA,GAAG,2BAA2B,6BAAS;AACvC;;AAEA;AACA;;AAEA;AACA,WAAW,IAAI;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,6BAAS;AACxB,wBAAwB;;AAExB,UAAU,WAAW;AACrB;AACA;;AAEA;AACA;AACA;AACA;AACA,qBAAqB,WAAW;AAChC,iBAAiB,6BAAS;AAC1B,OAAO,qBAAqB,6BAAS;AACrC;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA,wBAAwB,4BAAQ,GAAG;AACnC;;AAEA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA,QAAQ,KAAqC,EAAE,EAE1C;;AAEL,IAAI,6BAAiB;AACrB;;AAEA;AACA;AACA;AACA;;AAEA,kBAAkB,uBAAQ;;AAE1B;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA,wBAAwB,QAAQ,IAAI;AACpC;AACA,GAAG;AACH,sBAAsB,6BAAS,8CAA8C,6BAAS;AACtF,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;;AAEA;AACA,MAAM,KAAwE,EAAE,EAE7E;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA,gBAAgB,IAAI;AACpB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,wBAAwB,6BAAS;AACjC,WAAW,WAAW;AACtB;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA,GAAG;;;AAGH,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA,aAAa,iDAAiD;AAC9D,aAAa,QAAQ;AACrB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,uCAAuC;;AAEvC;AACA,OAAO,UAAU,wBAAY;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,6BAAS;AACnC;AACA,qCAAqC;AACrC;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,IAAI,wCAAwC,WAAW;AACxE;AACA,iBAAiB,WAAW;AAC5B;AACA,OAAO,UAAU,2BAAe;AAChC;AACA,iBAAiB,IAAI;AACrB;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,gCAAgC,6BAAS;AACzC;AACA;;AAEA;AACA;AACA,KAAK;AACL,8BAA8B,6BAAS;AACvC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE;AAClE;AACA;AACA;AACA;AACA;AACA,QAAQ,yBAAO;AACf;AACA,KAAK,UAAU,0BAAQ;AACvB;AACA;AACA;AACA;AACA,KAAK,2BAA2B,EAAE;AAClC;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA,sBAAsB;;AAEtB;AACA;AACA;AACA;;AAEA;AACA,kBAAkB,IAAI,CAAC;;AAEvB;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAK;;;AAGL,oBAAoB,IAAI,CAAC;;AAEzB;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB;;AAEtB,sBAAsB,IAAI,CAAC;;AAE3B;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA,0CAA0C,QAAQ;;AAElD,MAAM,KAAqC,EAAE,EAE1C;;AAEH,wFAAwF,aAAa;AACrG;AACA;;AAEA;;AAEA,MAAM,KAAqC,EAAE,EAE1C;;AAEH;;AAEA;AACA;AACA,iEAAiE,IAAI;AACrE,iEAAiE,IAAI;AACrE,+DAA+D,IAAI;AACnE,+DAA+D,IAAI;AACnE,iEAAiE,IAAI;AACrE,mEAAmE,IAAI;AACvE;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA,MAAM,KAAqC,EAAE,8BAkB1C;;AAEH;;AAEA;AACA,qBAAqB,wBAAO;;AAE5B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH,wBAAwB,QAAQ;AAChC;;AAEA;AACA;AACA,cAAc,4BAAgB;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,WAAW;AACnE;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAG;AACH;;AA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K;AACL;AACA,aAAa,uBAAa,CAAC,uBAAa,GAAG,YAAY;AACvD;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA,aAAa,uBAAa,CAAC,uBAAa,GAAG,YAAY;AACvD;AACA;AACA,OAAO;AACP;AACA;AACA,CAAC;AACc,gEAAU,E;;AC/B0C;AACd;AACwB;AACd;AACE;AACd;AACoB;AACd;AACgB;AACd;AACQ;;;ACV3B;AACmE;AAC3G,IAAI,uBAAW,GAAG,wCAAe;AACjC,SAAS,iBAAU;AACnB,cAAc,sBAAe;AAC7B,QAAQ,gBAAS;AACjB,WAAW,mBAAY;AACvB,YAAY,oBAAa;AACzB,SAAS,iBAAU;AACnB,CAAC;AACc,6EAAW,E;;;;;;ACVG;AACe;AAC6B;AAC+F;AAC0J;AACrS;;AAE7B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM,yBAAO;AACb;AACA;;AAEA,MAAM,cAAc;AACpB;AACA;;AAEA,MAAM,IAAI;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAAS,YAAY;AACrB;AACA,GAAG;AACH;;AAEA;AACA,wFAAwF,aAAa;AACrG;AACA;;AAEA;AACA;AACA,WAAW,gBAAI;AACf;;AAEA;AACA;AACA;AACA,aAAa,IAAI;AACjB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA,wFAAwF,aAAa;AACrG;AACA;;AAEA;AACA;AACA,WAAW,gBAAI;AACf;;AAEA;AACA;AACA;AACA,aAAa,IAAI;AACjB;AACA;;AAEA;AACA;AACA;AACA,aAAa,kBAAM;AACnB;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA,wFAAwF,aAAa;AACrG;AACA;;AAEA;AACA;AACA,WAAW,gBAAI;AACf;;AAEA;AACA;AACA;AACA,aAAa,IAAI;AACjB;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA,wFAAwF,aAAa;AACrG;AACA;;AAEA;AACA;AACA;AACA,WAAW,aAAa,UAAU,OAAO;AACzC;;AAEA;AACA;AACA;AACA,aAAa,gBAAI;AACjB;AACA;;AAEA;AACA;AACA;AACA,aAAa,IAAI;AACjB;AACA;;AAEA;AACA;AACA,WAAW,KAAK;AAChB;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;;AAEA,wFAAwF,aAAa;AACrG;AACA;;AAEA;AACA;AACA,WAAW,IAAI;AACf;AACA;AACA;AACA,WAAW,KAAK;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA,wFAAwF,aAAa;AACrG;AACA;;AAEA;AACA;AACA;AACA,WAAW,gBAAI;AACf;AACA;AACA;AACA,WAAW,IAAI;AACf,cAAc,gBAAI;AAClB,gBAAgB,KAAK;AACrB,KAAK;AACL;;AAEA;AACA;AACA;AACA,aAAa,IAAI;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA,IAAI,yCAAkB;AACtB,EAAE,KAAK,mBAAmB,QAAQ;AAClC,EAAE,KAAK,SAAS,QAAQ;AACxB;;AAEA;AACA,MAAM,KAAqC,EAAE,EAE1C;;AAEH,wFAAwF,aAAa;AACrG;AACA;;AAEA,SAAS,IAAI;AACb;AACA;AACA,MAAM,KAAqC,EAAE,EAE1C;;AAEH,4FAA4F,eAAe;AAC3G;AACA;;AAEA,SAAS,IAAI;AACb;AACA;AACA,MAAM,KAAqC,EAAE,EAE1C;;AAEH,4FAA4F,eAAe;AAC3G;AACA;;AAEA,SAAS,IAAI;AACb;AACA;AACA,MAAM,KAAqC,EAAE,EAG1C;;AAEH,4FAA4F,eAAe;AAC3G;AACA;;AAEA,SAAS,IAAI;AACb;AACA;AACA,4FAA4F,eAAe;AAC3G;AACA;;AAEA,SAAS,IAAI;AACb;AACA;AACA,4FAA4F,eAAe;AAC3G;AACA;;AAEA,SAAS,IAAI;AACb;;AAEkJ;;;AC7bzG;;;ACAzC;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA,C;;AClC6D;AACe;AACpB;;AAExD;AACA,aAAa,iBAAiB,eAAe,qBAAmB;AAChE;AACA,WAAW,qBAAmB;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;;AAEb;AACA;AACA,6CAA6C,6BAAc;;AAE3D;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;;AAEH;AACA;AACA;AACA,CAAC;;AAEc,6EAAkB,E;;AClCjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;A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AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,IAAI;AACnB;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,SAAS;AACtB,eAAe,SAAS;AACxB;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA,mBAAmB,sBAAsB;AACzC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,SAAS;AACtB,eAAe;AACf;;;AAGA;AACA;AACA;AACA;;AAEA,iCAAiC;AACjC;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,eAAe,WAAW;AAC1B;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA,mBAAmB,aAAa;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,OAAO,iEAAY;AACxB;AACA,KAAK;AACL,GAAG;AACH;AACA;;;AAGA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG,QAAQ,iEAAY;AACvB;;AAEA;AACA;AACA;AACA,WAAW,OAAO;AAClB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA,GAAG,aAAa;;AAEhB;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,oEAAoE;AACpE;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,SAAS;AACtB;AACA;;;AAGA;AACA;AACA;;AAEA,iBAAiB,wBAAwB;AACzC;;AAEA,QAAQ,KAAqC,EAAE,EAI1C;;AAEL;AACA;AACA;AACA;;AAEA,oDAAoD;AACpD;;AAEA;;AAEA,MAAM,KAAqC,EAAE,EAE1C;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,QAAQ,KAAqC,EAAE,uBAM1C;;AAEL;AACA;;AAEA,oBAAoB,8BAA8B;AAClD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,gBAAgB;AAC3B;AACA;AACA;AACA,WAAW,SAAS;AACpB;AACA;AACA,aAAa,gBAAgB;AAC7B;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA,iBAAiB,sBAAsB;AACvC;;AAEA;AACA;AACA;AACA,OA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AC1C,KAAK,sCAAsC;AAC3C;AACA;;;;;;;;;;;;;;;;;AChC2E;AAC5D;AACf,iCAAiC,2CAAgB;AACjD,C;;ACHe;AACf;AACA,C;;;;;ACFe;AACf;AACA,C;;ACF6E;AACJ;AACsB;AAClB;AAC9D;AACf,SAAS,kBAAiB,SAAS,gBAAe,SAAS,qDAA0B,SAAS,kBAAiB;AAC/G,C;;;;;;;;ACNa;AACb,8CAA8C,cAAc;AAC5D,kBAAkB,mBAAO,CAAC,MAA4B;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,kBAAkB,EAAE;AAChD,kCAAkC,4BAA4B,EAAE;AAChE,6BAA6B,aAAa,EAAE;AAC5C,+BAA+B,+BAA+B,EAAE;AAChE,KAAK;AACL;AACA,CAAC;AACD;;;;;;;;;AC9Ca;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,kBAAkB,mBAAO,CAAC,MAA4B;AACtD,6BAA6B,mBAAO,CAAC,MAAQ;AAC7C,6BAA6B,mBAAO,CAAC,MAAQ;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,yCAAyC,EAAE;AACtF,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+GAA+G,uBAAuB;AACtI;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA,iDAAiD,iCAAiC,qBAAqB,EAAE,EAAE,EAAE;AAC7G,0BAA0B,aAAa;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,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;AACL;AACA,mDAAmD,2CAA2C,EAAE;AAChG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,yCAAyC,EAAE;AAC7G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,qCAAqC;AACrC;AACA;AACA,CAAC,EAAE;AACH;AACA;AACA;AACA;AACA,oCAAoC,sBAAsB;AAC1D,KAAK,IAAI;AACT;AACA;;;;;;;;;ACxJa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA,8CAA8C,cAAc;AAC5D,cAAc,mBAAO,CAAC,MAAwB;AAC9C,gCAAgC,mBAAO,CAAC,MAAW;AACnD,cAAc,mBAAO,CAAC,MAAS;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,2EAA2E,UAAU,yBAAyB;AAC9G,2EAA2E,UAAU,yBAAyB;AAC9G,2EAA2E,UAAU,yBAAyB;AAC9G,2EAA2E,UAAU,yBAAyB;AAC9G,2EAA2E,UAAU,yBAAyB;AAC9G,2EAA2E,UAAU,yBAAyB;AAC9G;AACA;;;;;;;;;AC1CA;AAAe;AACf;;AAEA,wCAAwC,SAAS;AACjD;AACA;;AAEA;AACA,C;;;;;;;;ACRa;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,kCAAkC,mBAAO,CAAC,MAAa;AACvD;AACA;AACA;AACA;;;;;;;;;ACTA;AAAA;AACqC;;AAErC;;AAEA;AACA;AACA,CAAC;AACD;AACA,CAAC;AACD;AACA,CAAC,UAAU,IAA6B;AACxC;AACA,CAAC,MAAM,EAEN;;AAED,aAAa,oEAAQ;AACN,+DAAM,EAAC;;;;;;;;;;AClBT;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,iCAAiC,mBAAO,CAAC,MAAY;AACrD,iCAAiC,mBAAO,CAAC,MAAY;AACrD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;;;;;;;;ACrBa;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,kBAAkB,mBAAO,CAAC,MAA4B;AACtD,6BAA6B,mBAAO,CAAC,MAAQ;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,mDAAmD,sBAAsB,EAAE;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,4CAA4C,2BAA2B;AACvE,kCAAkC;AAClC;AACA;AACA,CAAC,EAAE;AACH,sCAAsC,kCAAkC;AACxE,kCAAkC,8BAA8B;AAChE,8CAA8C;AAC9C;AACA;AACA,CAAC,EAAE;AACH,qCAAqC;AACrC;AACA;AACA,CAAC,EAAE;AACH,+CAA+C,8BAA8B;AAC7E,iCAAiC;AACjC;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC,EAAE;AACH,2CAA2C,yEAAyE;AACpH,gCAAgC,mCAAmC;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;AC7EA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8B;;;;;;;;ACxCM;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,gBAAgB,mBAAO,CAAC,MAAW;AACnC,2CAA2C,qCAAqC,2CAA2C,EAAE,EAAE;AAC/H,gBAAgB,mBAAO,CAAC,MAAW;AACnC,2CAA2C,qCAAqC,2CAA2C,EAAE,EAAE;AAC/H,gBAAgB,mBAAO,CAAC,MAAW;AACnC,2CAA2C,qCAAqC,2CAA2C,EAAE,EAAE;AAC/H,gBAAgB,mBAAO,CAAC,MAAW;AACnC,2CAA2C,qCAAqC,2CAA2C,EAAE,EAAE;AAC/H,gBAAgB,mBAAO,CAAC,MAAW;AACnC,2CAA2C,qCAAqC,2CAA2C,EAAE,EAAE;;;;;;;;;ACflH;AACb;AACA;AACA;AACA,cAAc,gBAAgB,sCAAsC,iBAAiB,EAAE;AACvF,6BAA6B,8EAA8E;AAC3G;AACA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C;AACA;AACA,CAAC;AACD;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,kBAAkB,mBAAO,CAAC,MAA4B;AACtD,8BAA8B,mBAAO,CAAC,MAAS;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA,CAAC;AACD;;;;;;;;;ACvCa;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,wBAAwB;AACzB;;;;;;;;;ACZa;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AA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AACA,mDAAmD,KAAK,KAAK,EAAE;AAC/D;AACA;AACA,aAAa;AACb;AACA,sDAAsD,cAAc,EAAE;AACtE,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,qDAAqD,YAAY,EAAE,eAAe;AAClF,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,iBAAiB;AACjB,0CAA0C,mCAAmC,EAAE;AAC/E;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;;AAEb;AACA;AACA,2CAA2C,oBAAoB;AAC/D;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,4CAA4C,UAAU,cAAc;AACpE,SAAS;AACT;AACA;AACA,6BAA6B,qCAAqC,EAAE;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,iCAAiC,2CAA2C,EAAE;AAC9E,8BAA8B,2BAA2B,oBAAoB,EAAE;AAC/E,SAAS;AACT;;AAEA;AACA;AACA,qCAAqC,IAAI,qBAAqB,EAAE,WAAW;AAC3E,wBAAwB;AACxB,gBAAgB;AAChB;AACA,sCAAsC,IAAI,uBAAuB,EAAE,WAAW;AAC9E;;AAEA;AACA;AACA;AACA,SAAS;AACT,KAAK,UAAU,KAA6B;AAC5C;AACA,KAAK;AACL;AACA,0BAA0B,2BAA2B;AACrD;AACA;;AAEA,CAAC;;;;;;;;;AC1QD;AAAe;AACf;AACA;AACA;AACA;;AAEA,aAAa,uBAAuB;AACpC;AACA;AACA;AACA;;AAEA;AACA,C","file":"x","sourcesContent":["import React from 'react';\nexport var ReactReduxContext = /*#__PURE__*/React.createContext(null);\n\nif (process.env.NODE_ENV !== 'production') {\n ReactReduxContext.displayName = 'ReactRedux';\n}\n\nexport default ReactReduxContext;","// Default to a dummy \"batch\" implementation that just runs the callback\nfunction defaultNoopBatch(callback) {\n callback();\n}\n\nvar batch = defaultNoopBatch; // Allow injecting another batching function later\n\nexport var setBatch = function setBatch(newBatch) {\n return batch = newBatch;\n}; // Supply a getter just to skip dealing with ESM bindings\n\nexport var getBatch = function getBatch() {\n return batch;\n};","import { getBatch } from './batch'; // encapsulates the subscription logic for connecting a component to the redux store, as\n// well as nesting subscriptions of descendant components, so that we can ensure the\n// ancestor components re-render before descendants\n\nvar nullListeners = {\n notify: function notify() {}\n};\n\nfunction createListenerCollection() {\n var batch = getBatch();\n var first = null;\n var last = null;\n return {\n clear: function clear() {\n first = null;\n last = null;\n },\n notify: function notify() {\n batch(function () {\n var listener = first;\n\n while (listener) {\n listener.callback();\n listener = listener.next;\n }\n });\n },\n get: function get() {\n var listeners = [];\n var listener = first;\n\n while (listener) {\n listeners.push(listener);\n listener = listener.next;\n }\n\n return listeners;\n },\n subscribe: function subscribe(callback) {\n var isSubscribed = true;\n var listener = last = {\n callback: callback,\n next: null,\n prev: last\n };\n\n if (listener.prev) {\n listener.prev.next = listener;\n } else {\n first = listener;\n }\n\n return function unsubscribe() {\n if (!isSubscribed || first === null) return;\n isSubscribed = false;\n\n if (listener.next) {\n listener.next.prev = listener.prev;\n } else {\n last = listener.prev;\n }\n\n if (listener.prev) {\n listener.prev.next = listener.next;\n } else {\n first = listener.next;\n }\n };\n }\n };\n}\n\nvar Subscription = /*#__PURE__*/function () {\n function Subscription(store, parentSub) {\n this.store = store;\n this.parentSub = parentSub;\n this.unsubscribe = null;\n this.listeners = nullListeners;\n this.handleChangeWrapper = this.handleChangeWrapper.bind(this);\n }\n\n var _proto = Subscription.prototype;\n\n _proto.addNestedSub = function addNestedSub(listener) {\n this.trySubscribe();\n return this.listeners.subscribe(listener);\n };\n\n _proto.notifyNestedSubs = function notifyNestedSubs() {\n this.listeners.notify();\n };\n\n _proto.handleChangeWrapper = function handleChangeWrapper() {\n if (this.onStateChange) {\n this.onStateChange();\n }\n };\n\n _proto.isSubscribed = function isSubscribed() {\n return Boolean(this.unsubscribe);\n };\n\n _proto.trySubscribe = function trySubscribe() {\n if (!this.unsubscribe) {\n this.unsubscribe = this.parentSub ? this.parentSub.addNestedSub(this.handleChangeWrapper) : this.store.subscribe(this.handleChangeWrapper);\n this.listeners = createListenerCollection();\n }\n };\n\n _proto.tryUnsubscribe = function tryUnsubscribe() {\n if (this.unsubscribe) {\n this.unsubscribe();\n this.unsubscribe = null;\n this.listeners.clear();\n this.listeners = nullListeners;\n }\n };\n\n return Subscription;\n}();\n\nexport { Subscription as default };","import React, { useMemo, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { ReactReduxContext } from './Context';\nimport Subscription from '../utils/Subscription';\n\nfunction Provider(_ref) {\n var store = _ref.store,\n context = _ref.context,\n children = _ref.children;\n var contextValue = useMemo(function () {\n var subscription = new Subscription(store);\n subscription.onStateChange = subscription.notifyNestedSubs;\n return {\n store: store,\n subscription: subscription\n };\n }, [store]);\n var previousState = useMemo(function () {\n return store.getState();\n }, [store]);\n useEffect(function () {\n var subscription = contextValue.subscription;\n subscription.trySubscribe();\n\n if (previousState !== store.getState()) {\n subscription.notifyNestedSubs();\n }\n\n return function () {\n subscription.tryUnsubscribe();\n subscription.onStateChange = null;\n };\n }, [contextValue, previousState]);\n var Context = context || ReactReduxContext;\n return /*#__PURE__*/React.createElement(Context.Provider, {\n value: contextValue\n }, children);\n}\n\nif (process.env.NODE_ENV !== 'production') {\n Provider.propTypes = {\n store: PropTypes.shape({\n subscribe: PropTypes.func.isRequired,\n dispatch: PropTypes.func.isRequired,\n getState: PropTypes.func.isRequired\n }),\n context: PropTypes.object,\n children: PropTypes.any\n };\n}\n\nexport default Provider;","import { useEffect, useLayoutEffect } from 'react'; // React currently throws a warning when using useLayoutEffect on the server.\n// To get around it, we can conditionally useEffect on the server (no-op) and\n// useLayoutEffect in the browser. We need useLayoutEffect to ensure the store\n// subscription callback always has the selector from the latest render commit\n// available, otherwise a store update may happen between render and the effect,\n// which may cause missed updates; we also must ensure the store subscription\n// is created synchronously, otherwise a store update may occur before the\n// subscription is created and an inconsistent state may be observed\n\nexport var useIsomorphicLayoutEffect = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined' ? useLayoutEffect : useEffect;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport hoistStatics from 'hoist-non-react-statics';\nimport React, { useContext, useMemo, useRef, useReducer } from 'react';\nimport { isValidElementType, isContextConsumer } from 'react-is';\nimport Subscription from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\nimport { ReactReduxContext } from './Context'; // Define some constant arrays just to avoid re-creating these\n\nvar EMPTY_ARRAY = [];\nvar NO_SUBSCRIPTION_ARRAY = [null, null];\n\nvar stringifyComponent = function stringifyComponent(Comp) {\n try {\n return JSON.stringify(Comp);\n } catch (err) {\n return String(Comp);\n }\n};\n\nfunction storeStateUpdatesReducer(state, action) {\n var updateCount = state[1];\n return [action.payload, updateCount + 1];\n}\n\nfunction useIsomorphicLayoutEffectWithArgs(effectFunc, effectArgs, dependencies) {\n useIsomorphicLayoutEffect(function () {\n return effectFunc.apply(void 0, effectArgs);\n }, dependencies);\n}\n\nfunction captureWrapperProps(lastWrapperProps, lastChildProps, renderIsScheduled, wrapperProps, actualChildProps, childPropsFromStoreUpdate, notifyNestedSubs) {\n // We want to capture the wrapper props and child props we used for later comparisons\n lastWrapperProps.current = wrapperProps;\n lastChildProps.current = actualChildProps;\n renderIsScheduled.current = false; // If the render was from a store update, clear out that reference and cascade the subscriber update\n\n if (childPropsFromStoreUpdate.current) {\n childPropsFromStoreUpdate.current = null;\n notifyNestedSubs();\n }\n}\n\nfunction subscribeUpdates(shouldHandleStateChanges, store, subscription, childPropsSelector, lastWrapperProps, lastChildProps, renderIsScheduled, childPropsFromStoreUpdate, notifyNestedSubs, forceComponentUpdateDispatch) {\n // If we're not subscribed to the store, nothing to do here\n if (!shouldHandleStateChanges) return; // Capture values for checking if and when this component unmounts\n\n var didUnsubscribe = false;\n var lastThrownError = null; // We'll run this callback every time a store subscription update propagates to this component\n\n var checkForUpdates = function checkForUpdates() {\n if (didUnsubscribe) {\n // Don't run stale listeners.\n // Redux doesn't guarantee unsubscriptions happen until next dispatch.\n return;\n }\n\n var latestStoreState = store.getState();\n var newChildProps, error;\n\n try {\n // Actually run the selector with the most recent store state and wrapper props\n // to determine what the child props should be\n newChildProps = childPropsSelector(latestStoreState, lastWrapperProps.current);\n } catch (e) {\n error = e;\n lastThrownError = e;\n }\n\n if (!error) {\n lastThrownError = null;\n } // If the child props haven't changed, nothing to do here - cascade the subscription update\n\n\n if (newChildProps === lastChildProps.current) {\n if (!renderIsScheduled.current) {\n notifyNestedSubs();\n }\n } else {\n // Save references to the new child props. Note that we track the \"child props from store update\"\n // as a ref instead of a useState/useReducer because we need a way to determine if that value has\n // been processed. If this went into useState/useReducer, we couldn't clear out the value without\n // forcing another re-render, which we don't want.\n lastChildProps.current = newChildProps;\n childPropsFromStoreUpdate.current = newChildProps;\n renderIsScheduled.current = true; // If the child props _did_ change (or we caught an error), this wrapper component needs to re-render\n\n forceComponentUpdateDispatch({\n type: 'STORE_UPDATED',\n payload: {\n error: error\n }\n });\n }\n }; // Actually subscribe to the nearest connected ancestor (or store)\n\n\n subscription.onStateChange = checkForUpdates;\n subscription.trySubscribe(); // Pull data from the store after first render in case the store has\n // changed since we began.\n\n checkForUpdates();\n\n var unsubscribeWrapper = function unsubscribeWrapper() {\n didUnsubscribe = true;\n subscription.tryUnsubscribe();\n subscription.onStateChange = null;\n\n if (lastThrownError) {\n // It's possible that we caught an error due to a bad mapState function, but the\n // parent re-rendered without this component and we're about to unmount.\n // This shouldn't happen as long as we do top-down subscriptions correctly, but\n // if we ever do those wrong, this throw will surface the error in our tests.\n // In that case, throw the error from here so it doesn't get lost.\n throw lastThrownError;\n }\n };\n\n return unsubscribeWrapper;\n}\n\nvar initStateUpdates = function initStateUpdates() {\n return [null, 0];\n};\n\nexport default function connectAdvanced(\n/*\n selectorFactory is a func that is responsible for returning the selector function used to\n compute new props from state, props, and dispatch. For example:\n export default connectAdvanced((dispatch, options) => (state, props) => ({\n thing: state.things[props.thingId],\n saveThing: fields => dispatch(actionCreators.saveThing(props.thingId, fields)),\n }))(YourComponent)\n Access to dispatch is provided to the factory so selectorFactories can bind actionCreators\n outside of their selector as an optimization. Options passed to connectAdvanced are passed to\n the selectorFactory, along with displayName and WrappedComponent, as the second argument.\n Note that selectorFactory is responsible for all caching/memoization of inbound and outbound\n props. Do not use connectAdvanced directly without memoizing results between calls to your\n selector, otherwise the Connect component will re-render on every state or props change.\n*/\nselectorFactory, // options object:\n_ref) {\n if (_ref === void 0) {\n _ref = {};\n }\n\n var _ref2 = _ref,\n _ref2$getDisplayName = _ref2.getDisplayName,\n getDisplayName = _ref2$getDisplayName === void 0 ? function (name) {\n return \"ConnectAdvanced(\" + name + \")\";\n } : _ref2$getDisplayName,\n _ref2$methodName = _ref2.methodName,\n methodName = _ref2$methodName === void 0 ? 'connectAdvanced' : _ref2$methodName,\n _ref2$renderCountProp = _ref2.renderCountProp,\n renderCountProp = _ref2$renderCountProp === void 0 ? undefined : _ref2$renderCountProp,\n _ref2$shouldHandleSta = _ref2.shouldHandleStateChanges,\n shouldHandleStateChanges = _ref2$shouldHandleSta === void 0 ? true : _ref2$shouldHandleSta,\n _ref2$storeKey = _ref2.storeKey,\n storeKey = _ref2$storeKey === void 0 ? 'store' : _ref2$storeKey,\n _ref2$withRef = _ref2.withRef,\n withRef = _ref2$withRef === void 0 ? false : _ref2$withRef,\n _ref2$forwardRef = _ref2.forwardRef,\n forwardRef = _ref2$forwardRef === void 0 ? false : _ref2$forwardRef,\n _ref2$context = _ref2.context,\n context = _ref2$context === void 0 ? ReactReduxContext : _ref2$context,\n connectOptions = _objectWithoutPropertiesLoose(_ref2, [\"getDisplayName\", \"methodName\", \"renderCountProp\", \"shouldHandleStateChanges\", \"storeKey\", \"withRef\", \"forwardRef\", \"context\"]);\n\n if (process.env.NODE_ENV !== 'production') {\n if (renderCountProp !== undefined) {\n throw new Error(\"renderCountProp is removed. render counting is built into the latest React Dev Tools profiling extension\");\n }\n\n if (withRef) {\n throw new Error('withRef is removed. To access the wrapped instance, use a ref on the connected component');\n }\n\n var customStoreWarningMessage = 'To use a custom Redux store for specific components, create a custom React context with ' + \"React.createContext(), and pass the context object to React Redux's Provider and specific components\" + ' like: <Provider context={MyContext}><ConnectedComponent context={MyContext} /></Provider>. ' + 'You may also pass a {context : MyContext} option to connect';\n\n if (storeKey !== 'store') {\n throw new Error('storeKey has been removed and does not do anything. ' + customStoreWarningMessage);\n }\n }\n\n var Context = context;\n return function wrapWithConnect(WrappedComponent) {\n if (process.env.NODE_ENV !== 'production' && !isValidElementType(WrappedComponent)) {\n throw new Error(\"You must pass a component to the function returned by \" + (methodName + \". Instead received \" + stringifyComponent(WrappedComponent)));\n }\n\n var wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || 'Component';\n var displayName = getDisplayName(wrappedComponentName);\n\n var selectorFactoryOptions = _extends({}, connectOptions, {\n getDisplayName: getDisplayName,\n methodName: methodName,\n renderCountProp: renderCountProp,\n shouldHandleStateChanges: shouldHandleStateChanges,\n storeKey: storeKey,\n displayName: displayName,\n wrappedComponentName: wrappedComponentName,\n WrappedComponent: WrappedComponent\n });\n\n var pure = connectOptions.pure;\n\n function createChildSelector(store) {\n return selectorFactory(store.dispatch, selectorFactoryOptions);\n } // If we aren't running in \"pure\" mode, we don't want to memoize values.\n // To avoid conditionally calling hooks, we fall back to a tiny wrapper\n // that just executes the given callback immediately.\n\n\n var usePureOnlyMemo = pure ? useMemo : function (callback) {\n return callback();\n };\n\n function ConnectFunction(props) {\n var _useMemo = useMemo(function () {\n // Distinguish between actual \"data\" props that were passed to the wrapper component,\n // and values needed to control behavior (forwarded refs, alternate context instances).\n // To maintain the wrapperProps object reference, memoize this destructuring.\n var reactReduxForwardedRef = props.reactReduxForwardedRef,\n wrapperProps = _objectWithoutPropertiesLoose(props, [\"reactReduxForwardedRef\"]);\n\n return [props.context, reactReduxForwardedRef, wrapperProps];\n }, [props]),\n propsContext = _useMemo[0],\n reactReduxForwardedRef = _useMemo[1],\n wrapperProps = _useMemo[2];\n\n var ContextToUse = useMemo(function () {\n // Users may optionally pass in a custom context instance to use instead of our ReactReduxContext.\n // Memoize the check that determines which context instance we should use.\n return propsContext && propsContext.Consumer && isContextConsumer( /*#__PURE__*/React.createElement(propsContext.Consumer, null)) ? propsContext : Context;\n }, [propsContext, Context]); // Retrieve the store and ancestor subscription via context, if available\n\n var contextValue = useContext(ContextToUse); // The store _must_ exist as either a prop or in context.\n // We'll check to see if it _looks_ like a Redux store first.\n // This allows us to pass through a `store` prop that is just a plain value.\n\n var didStoreComeFromProps = Boolean(props.store) && Boolean(props.store.getState) && Boolean(props.store.dispatch);\n var didStoreComeFromContext = Boolean(contextValue) && Boolean(contextValue.store);\n\n if (process.env.NODE_ENV !== 'production' && !didStoreComeFromProps && !didStoreComeFromContext) {\n throw new Error(\"Could not find \\\"store\\\" in the context of \" + (\"\\\"\" + displayName + \"\\\". Either wrap the root component in a <Provider>, \") + \"or pass a custom React context provider to <Provider> and the corresponding \" + (\"React context consumer to \" + displayName + \" in connect options.\"));\n } // Based on the previous check, one of these must be true\n\n\n var store = didStoreComeFromProps ? props.store : contextValue.store;\n var childPropsSelector = useMemo(function () {\n // The child props selector needs the store reference as an input.\n // Re-create this selector whenever the store changes.\n return createChildSelector(store);\n }, [store]);\n\n var _useMemo2 = useMemo(function () {\n if (!shouldHandleStateChanges) return NO_SUBSCRIPTION_ARRAY; // This Subscription's source should match where store came from: props vs. context. A component\n // connected to the store via props shouldn't use subscription from context, or vice versa.\n\n var subscription = new Subscription(store, didStoreComeFromProps ? null : contextValue.subscription); // `notifyNestedSubs` is duplicated to handle the case where the component is unmounted in\n // the middle of the notification loop, where `subscription` will then be null. This can\n // probably be avoided if Subscription's listeners logic is changed to not call listeners\n // that have been unsubscribed in the middle of the notification loop.\n\n var notifyNestedSubs = subscription.notifyNestedSubs.bind(subscription);\n return [subscription, notifyNestedSubs];\n }, [store, didStoreComeFromProps, contextValue]),\n subscription = _useMemo2[0],\n notifyNestedSubs = _useMemo2[1]; // Determine what {store, subscription} value should be put into nested context, if necessary,\n // and memoize that value to avoid unnecessary context updates.\n\n\n var overriddenContextValue = useMemo(function () {\n if (didStoreComeFromProps) {\n // This component is directly subscribed to a store from props.\n // We don't want descendants reading from this store - pass down whatever\n // the existing context value is from the nearest connected ancestor.\n return contextValue;\n } // Otherwise, put this component's subscription instance into context, so that\n // connected descendants won't update until after this component is done\n\n\n return _extends({}, contextValue, {\n subscription: subscription\n });\n }, [didStoreComeFromProps, contextValue, subscription]); // We need to force this wrapper component to re-render whenever a Redux store update\n // causes a change to the calculated child component props (or we caught an error in mapState)\n\n var _useReducer = useReducer(storeStateUpdatesReducer, EMPTY_ARRAY, initStateUpdates),\n _useReducer$ = _useReducer[0],\n previousStateUpdateResult = _useReducer$[0],\n forceComponentUpdateDispatch = _useReducer[1]; // Propagate any mapState/mapDispatch errors upwards\n\n\n if (previousStateUpdateResult && previousStateUpdateResult.error) {\n throw previousStateUpdateResult.error;\n } // Set up refs to coordinate values between the subscription effect and the render logic\n\n\n var lastChildProps = useRef();\n var lastWrapperProps = useRef(wrapperProps);\n var childPropsFromStoreUpdate = useRef();\n var renderIsScheduled = useRef(false);\n var actualChildProps = usePureOnlyMemo(function () {\n // Tricky logic here:\n // - This render may have been triggered by a Redux store update that produced new child props\n // - However, we may have gotten new wrapper props after that\n // If we have new child props, and the same wrapper props, we know we should use the new child props as-is.\n // But, if we have new wrapper props, those might change the child props, so we have to recalculate things.\n // So, we'll use the child props from store update only if the wrapper props are the same as last time.\n if (childPropsFromStoreUpdate.current && wrapperProps === lastWrapperProps.current) {\n return childPropsFromStoreUpdate.current;\n } // TODO We're reading the store directly in render() here. Bad idea?\n // This will likely cause Bad Things (TM) to happen in Concurrent Mode.\n // Note that we do this because on renders _not_ caused by store updates, we need the latest store state\n // to determine what the child props should be.\n\n\n return childPropsSelector(store.getState(), wrapperProps);\n }, [store, previousStateUpdateResult, wrapperProps]); // We need this to execute synchronously every time we re-render. However, React warns\n // about useLayoutEffect in SSR, so we try to detect environment and fall back to\n // just useEffect instead to avoid the warning, since neither will run anyway.\n\n useIsomorphicLayoutEffectWithArgs(captureWrapperProps, [lastWrapperProps, lastChildProps, renderIsScheduled, wrapperProps, actualChildProps, childPropsFromStoreUpdate, notifyNestedSubs]); // Our re-subscribe logic only runs when the store/subscription setup changes\n\n useIsomorphicLayoutEffectWithArgs(subscribeUpdates, [shouldHandleStateChanges, store, subscription, childPropsSelector, lastWrapperProps, lastChildProps, renderIsScheduled, childPropsFromStoreUpdate, notifyNestedSubs, forceComponentUpdateDispatch], [store, subscription, childPropsSelector]); // Now that all that's done, we can finally try to actually render the child component.\n // We memoize the elements for the rendered child component as an optimization.\n\n var renderedWrappedComponent = useMemo(function () {\n return /*#__PURE__*/React.createElement(WrappedComponent, _extends({}, actualChildProps, {\n ref: reactReduxForwardedRef\n }));\n }, [reactReduxForwardedRef, WrappedComponent, actualChildProps]); // If React sees the exact same element reference as last time, it bails out of re-rendering\n // that child, same as if it was wrapped in React.memo() or returned false from shouldComponentUpdate.\n\n var renderedChild = useMemo(function () {\n if (shouldHandleStateChanges) {\n // If this component is subscribed to store updates, we need to pass its own\n // subscription instance down to our descendants. That means rendering the same\n // Context instance, and putting a different value into the context.\n return /*#__PURE__*/React.createElement(ContextToUse.Provider, {\n value: overriddenContextValue\n }, renderedWrappedComponent);\n }\n\n return renderedWrappedComponent;\n }, [ContextToUse, renderedWrappedComponent, overriddenContextValue]);\n return renderedChild;\n } // If we're in \"pure\" mode, ensure our wrapper component only re-renders when incoming props have changed.\n\n\n var Connect = pure ? React.memo(ConnectFunction) : ConnectFunction;\n Connect.WrappedComponent = WrappedComponent;\n Connect.displayName = displayName;\n\n if (forwardRef) {\n var forwarded = React.forwardRef(function forwardConnectRef(props, ref) {\n return /*#__PURE__*/React.createElement(Connect, _extends({}, props, {\n reactReduxForwardedRef: ref\n }));\n });\n forwarded.displayName = displayName;\n forwarded.WrappedComponent = WrappedComponent;\n return hoistStatics(forwarded, WrappedComponent);\n }\n\n return hoistStatics(Connect, WrappedComponent);\n };\n}","function is(x, y) {\n if (x === y) {\n return x !== 0 || y !== 0 || 1 / x === 1 / y;\n } else {\n return x !== x && y !== y;\n }\n}\n\nexport default function shallowEqual(objA, objB) {\n if (is(objA, objB)) return true;\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n if (keysA.length !== keysB.length) return false;\n\n for (var i = 0; i < keysA.length; i++) {\n if (!Object.prototype.hasOwnProperty.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n\n return true;\n}","/**\n * @param {any} obj The object to inspect.\n * @returns {boolean} True if the argument appears to be a plain object.\n */\nexport default function isPlainObject(obj) {\n if (typeof obj !== 'object' || obj === null) return false;\n var proto = Object.getPrototypeOf(obj);\n if (proto === null) return true;\n var baseProto = proto;\n\n while (Object.getPrototypeOf(baseProto) !== null) {\n baseProto = Object.getPrototypeOf(baseProto);\n }\n\n return proto === baseProto;\n}","/**\n * Prints a warning in the console if it exists.\n *\n * @param {String} message The warning message.\n * @returns {void}\n */\nexport default function warning(message) {\n /* eslint-disable no-console */\n if (typeof console !== 'undefined' && typeof console.error === 'function') {\n console.error(message);\n }\n /* eslint-enable no-console */\n\n\n try {\n // This error was thrown as a convenience so that if you enable\n // \"break on all exceptions\" in your console,\n // it would pause the execution at this line.\n throw new Error(message);\n /* eslint-disable no-empty */\n } catch (e) {}\n /* eslint-enable no-empty */\n\n}","import isPlainObject from './isPlainObject';\nimport warning from './warning';\nexport default function verifyPlainObject(value, displayName, methodName) {\n if (!isPlainObject(value)) {\n warning(methodName + \"() in \" + displayName + \" must return a plain object. Instead received \" + value + \".\");\n }\n}","import verifyPlainObject from '../utils/verifyPlainObject';\nexport function wrapMapToPropsConstant(getConstant) {\n return function initConstantSelector(dispatch, options) {\n var constant = getConstant(dispatch, options);\n\n function constantSelector() {\n return constant;\n }\n\n constantSelector.dependsOnOwnProps = false;\n return constantSelector;\n };\n} // dependsOnOwnProps is used by createMapToPropsProxy to determine whether to pass props as args\n// to the mapToProps function being wrapped. It is also used by makePurePropsSelector to determine\n// whether mapToProps needs to be invoked when props have changed.\n//\n// A length of one signals that mapToProps does not depend on props from the parent component.\n// A length of zero is assumed to mean mapToProps is getting args via arguments or ...args and\n// therefore not reporting its length accurately..\n\nexport function getDependsOnOwnProps(mapToProps) {\n return mapToProps.dependsOnOwnProps !== null && mapToProps.dependsOnOwnProps !== undefined ? Boolean(mapToProps.dependsOnOwnProps) : mapToProps.length !== 1;\n} // Used by whenMapStateToPropsIsFunction and whenMapDispatchToPropsIsFunction,\n// this function wraps mapToProps in a proxy function which does several things:\n//\n// * Detects whether the mapToProps function being called depends on props, which\n// is used by selectorFactory to decide if it should reinvoke on props changes.\n//\n// * On first call, handles mapToProps if returns another function, and treats that\n// new function as the true mapToProps for subsequent calls.\n//\n// * On first call, verifies the first result is a plain object, in order to warn\n// the developer that their mapToProps function is not returning a valid result.\n//\n\nexport function wrapMapToPropsFunc(mapToProps, methodName) {\n return function initProxySelector(dispatch, _ref) {\n var displayName = _ref.displayName;\n\n var proxy = function mapToPropsProxy(stateOrDispatch, ownProps) {\n return proxy.dependsOnOwnProps ? proxy.mapToProps(stateOrDispatch, ownProps) : proxy.mapToProps(stateOrDispatch);\n }; // allow detectFactoryAndVerify to get ownProps\n\n\n proxy.dependsOnOwnProps = true;\n\n proxy.mapToProps = function detectFactoryAndVerify(stateOrDispatch, ownProps) {\n proxy.mapToProps = mapToProps;\n proxy.dependsOnOwnProps = getDependsOnOwnProps(mapToProps);\n var props = proxy(stateOrDispatch, ownProps);\n\n if (typeof props === 'function') {\n proxy.mapToProps = props;\n proxy.dependsOnOwnProps = getDependsOnOwnProps(props);\n props = proxy(stateOrDispatch, ownProps);\n }\n\n if (process.env.NODE_ENV !== 'production') verifyPlainObject(props, displayName, methodName);\n return props;\n };\n\n return proxy;\n };\n}","import { bindActionCreators } from 'redux';\nimport { wrapMapToPropsConstant, wrapMapToPropsFunc } from './wrapMapToProps';\nexport function whenMapDispatchToPropsIsFunction(mapDispatchToProps) {\n return typeof mapDispatchToProps === 'function' ? wrapMapToPropsFunc(mapDispatchToProps, 'mapDispatchToProps') : undefined;\n}\nexport function whenMapDispatchToPropsIsMissing(mapDispatchToProps) {\n return !mapDispatchToProps ? wrapMapToPropsConstant(function (dispatch) {\n return {\n dispatch: dispatch\n };\n }) : undefined;\n}\nexport function whenMapDispatchToPropsIsObject(mapDispatchToProps) {\n return mapDispatchToProps && typeof mapDispatchToProps === 'object' ? wrapMapToPropsConstant(function (dispatch) {\n return bindActionCreators(mapDispatchToProps, dispatch);\n }) : undefined;\n}\nexport default [whenMapDispatchToPropsIsFunction, whenMapDispatchToPropsIsMissing, whenMapDispatchToPropsIsObject];","import { wrapMapToPropsConstant, wrapMapToPropsFunc } from './wrapMapToProps';\nexport function whenMapStateToPropsIsFunction(mapStateToProps) {\n return typeof mapStateToProps === 'function' ? wrapMapToPropsFunc(mapStateToProps, 'mapStateToProps') : undefined;\n}\nexport function whenMapStateToPropsIsMissing(mapStateToProps) {\n return !mapStateToProps ? wrapMapToPropsConstant(function () {\n return {};\n }) : undefined;\n}\nexport default [whenMapStateToPropsIsFunction, whenMapStateToPropsIsMissing];","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport verifyPlainObject from '../utils/verifyPlainObject';\nexport function defaultMergeProps(stateProps, dispatchProps, ownProps) {\n return _extends({}, ownProps, stateProps, dispatchProps);\n}\nexport function wrapMergePropsFunc(mergeProps) {\n return function initMergePropsProxy(dispatch, _ref) {\n var displayName = _ref.displayName,\n pure = _ref.pure,\n areMergedPropsEqual = _ref.areMergedPropsEqual;\n var hasRunOnce = false;\n var mergedProps;\n return function mergePropsProxy(stateProps, dispatchProps, ownProps) {\n var nextMergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n\n if (hasRunOnce) {\n if (!pure || !areMergedPropsEqual(nextMergedProps, mergedProps)) mergedProps = nextMergedProps;\n } else {\n hasRunOnce = true;\n mergedProps = nextMergedProps;\n if (process.env.NODE_ENV !== 'production') verifyPlainObject(mergedProps, displayName, 'mergeProps');\n }\n\n return mergedProps;\n };\n };\n}\nexport function whenMergePropsIsFunction(mergeProps) {\n return typeof mergeProps === 'function' ? wrapMergePropsFunc(mergeProps) : undefined;\n}\nexport function whenMergePropsIsOmitted(mergeProps) {\n return !mergeProps ? function () {\n return defaultMergeProps;\n } : undefined;\n}\nexport default [whenMergePropsIsFunction, whenMergePropsIsOmitted];","import warning from '../utils/warning';\n\nfunction verify(selector, methodName, displayName) {\n if (!selector) {\n throw new Error(\"Unexpected value for \" + methodName + \" in \" + displayName + \".\");\n } else if (methodName === 'mapStateToProps' || methodName === 'mapDispatchToProps') {\n if (!Object.prototype.hasOwnProperty.call(selector, 'dependsOnOwnProps')) {\n warning(\"The selector for \" + methodName + \" of \" + displayName + \" did not specify a value for dependsOnOwnProps.\");\n }\n }\n}\n\nexport default function verifySubselectors(mapStateToProps, mapDispatchToProps, mergeProps, displayName) {\n verify(mapStateToProps, 'mapStateToProps', displayName);\n verify(mapDispatchToProps, 'mapDispatchToProps', displayName);\n verify(mergeProps, 'mergeProps', displayName);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport verifySubselectors from './verifySubselectors';\nexport function impureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch) {\n return function impureFinalPropsSelector(state, ownProps) {\n return mergeProps(mapStateToProps(state, ownProps), mapDispatchToProps(dispatch, ownProps), ownProps);\n };\n}\nexport function pureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, _ref) {\n var areStatesEqual = _ref.areStatesEqual,\n areOwnPropsEqual = _ref.areOwnPropsEqual,\n areStatePropsEqual = _ref.areStatePropsEqual;\n var hasRunAtLeastOnce = false;\n var state;\n var ownProps;\n var stateProps;\n var dispatchProps;\n var mergedProps;\n\n function handleFirstCall(firstState, firstOwnProps) {\n state = firstState;\n ownProps = firstOwnProps;\n stateProps = mapStateToProps(state, ownProps);\n dispatchProps = mapDispatchToProps(dispatch, ownProps);\n mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n hasRunAtLeastOnce = true;\n return mergedProps;\n }\n\n function handleNewPropsAndNewState() {\n stateProps = mapStateToProps(state, ownProps);\n if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);\n mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n return mergedProps;\n }\n\n function handleNewProps() {\n if (mapStateToProps.dependsOnOwnProps) stateProps = mapStateToProps(state, ownProps);\n if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);\n mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n return mergedProps;\n }\n\n function handleNewState() {\n var nextStateProps = mapStateToProps(state, ownProps);\n var statePropsChanged = !areStatePropsEqual(nextStateProps, stateProps);\n stateProps = nextStateProps;\n if (statePropsChanged) mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n return mergedProps;\n }\n\n function handleSubsequentCalls(nextState, nextOwnProps) {\n var propsChanged = !areOwnPropsEqual(nextOwnProps, ownProps);\n var stateChanged = !areStatesEqual(nextState, state);\n state = nextState;\n ownProps = nextOwnProps;\n if (propsChanged && stateChanged) return handleNewPropsAndNewState();\n if (propsChanged) return handleNewProps();\n if (stateChanged) return handleNewState();\n return mergedProps;\n }\n\n return function pureFinalPropsSelector(nextState, nextOwnProps) {\n return hasRunAtLeastOnce ? handleSubsequentCalls(nextState, nextOwnProps) : handleFirstCall(nextState, nextOwnProps);\n };\n} // TODO: Add more comments\n// If pure is true, the selector returned by selectorFactory will memoize its results,\n// allowing connectAdvanced's shouldComponentUpdate to return false if final\n// props have not changed. If false, the selector will always return a new\n// object and shouldComponentUpdate will always return true.\n\nexport default function finalPropsSelectorFactory(dispatch, _ref2) {\n var initMapStateToProps = _ref2.initMapStateToProps,\n initMapDispatchToProps = _ref2.initMapDispatchToProps,\n initMergeProps = _ref2.initMergeProps,\n options = _objectWithoutPropertiesLoose(_ref2, [\"initMapStateToProps\", \"initMapDispatchToProps\", \"initMergeProps\"]);\n\n var mapStateToProps = initMapStateToProps(dispatch, options);\n var mapDispatchToProps = initMapDispatchToProps(dispatch, options);\n var mergeProps = initMergeProps(dispatch, options);\n\n if (process.env.NODE_ENV !== 'production') {\n verifySubselectors(mapStateToProps, mapDispatchToProps, mergeProps, options.displayName);\n }\n\n var selectorFactory = options.pure ? pureFinalPropsSelectorFactory : impureFinalPropsSelectorFactory;\n return selectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, options);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport connectAdvanced from '../components/connectAdvanced';\nimport shallowEqual from '../utils/shallowEqual';\nimport defaultMapDispatchToPropsFactories from './mapDispatchToProps';\nimport defaultMapStateToPropsFactories from './mapStateToProps';\nimport defaultMergePropsFactories from './mergeProps';\nimport defaultSelectorFactory from './selectorFactory';\n/*\n connect is a facade over connectAdvanced. It turns its args into a compatible\n selectorFactory, which has the signature:\n\n (dispatch, options) => (nextState, nextOwnProps) => nextFinalProps\n \n connect passes its args to connectAdvanced as options, which will in turn pass them to\n selectorFactory each time a Connect component instance is instantiated or hot reloaded.\n\n selectorFactory returns a final props selector from its mapStateToProps,\n mapStateToPropsFactories, mapDispatchToProps, mapDispatchToPropsFactories, mergeProps,\n mergePropsFactories, and pure args.\n\n The resulting final props selector is called by the Connect component instance whenever\n it receives new props or store state.\n */\n\nfunction match(arg, factories, name) {\n for (var i = factories.length - 1; i >= 0; i--) {\n var result = factories[i](arg);\n if (result) return result;\n }\n\n return function (dispatch, options) {\n throw new Error(\"Invalid value of type \" + typeof arg + \" for \" + name + \" argument when connecting component \" + options.wrappedComponentName + \".\");\n };\n}\n\nfunction strictEqual(a, b) {\n return a === b;\n} // createConnect with default args builds the 'official' connect behavior. Calling it with\n// different options opens up some testing and extensibility scenarios\n\n\nexport function createConnect(_temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$connectHOC = _ref.connectHOC,\n connectHOC = _ref$connectHOC === void 0 ? connectAdvanced : _ref$connectHOC,\n _ref$mapStateToPropsF = _ref.mapStateToPropsFactories,\n mapStateToPropsFactories = _ref$mapStateToPropsF === void 0 ? defaultMapStateToPropsFactories : _ref$mapStateToPropsF,\n _ref$mapDispatchToPro = _ref.mapDispatchToPropsFactories,\n mapDispatchToPropsFactories = _ref$mapDispatchToPro === void 0 ? defaultMapDispatchToPropsFactories : _ref$mapDispatchToPro,\n _ref$mergePropsFactor = _ref.mergePropsFactories,\n mergePropsFactories = _ref$mergePropsFactor === void 0 ? defaultMergePropsFactories : _ref$mergePropsFactor,\n _ref$selectorFactory = _ref.selectorFactory,\n selectorFactory = _ref$selectorFactory === void 0 ? defaultSelectorFactory : _ref$selectorFactory;\n\n return function connect(mapStateToProps, mapDispatchToProps, mergeProps, _ref2) {\n if (_ref2 === void 0) {\n _ref2 = {};\n }\n\n var _ref3 = _ref2,\n _ref3$pure = _ref3.pure,\n pure = _ref3$pure === void 0 ? true : _ref3$pure,\n _ref3$areStatesEqual = _ref3.areStatesEqual,\n areStatesEqual = _ref3$areStatesEqual === void 0 ? strictEqual : _ref3$areStatesEqual,\n _ref3$areOwnPropsEqua = _ref3.areOwnPropsEqual,\n areOwnPropsEqual = _ref3$areOwnPropsEqua === void 0 ? shallowEqual : _ref3$areOwnPropsEqua,\n _ref3$areStatePropsEq = _ref3.areStatePropsEqual,\n areStatePropsEqual = _ref3$areStatePropsEq === void 0 ? shallowEqual : _ref3$areStatePropsEq,\n _ref3$areMergedPropsE = _ref3.areMergedPropsEqual,\n areMergedPropsEqual = _ref3$areMergedPropsE === void 0 ? shallowEqual : _ref3$areMergedPropsE,\n extraOptions = _objectWithoutPropertiesLoose(_ref3, [\"pure\", \"areStatesEqual\", \"areOwnPropsEqual\", \"areStatePropsEqual\", \"areMergedPropsEqual\"]);\n\n var initMapStateToProps = match(mapStateToProps, mapStateToPropsFactories, 'mapStateToProps');\n var initMapDispatchToProps = match(mapDispatchToProps, mapDispatchToPropsFactories, 'mapDispatchToProps');\n var initMergeProps = match(mergeProps, mergePropsFactories, 'mergeProps');\n return connectHOC(selectorFactory, _extends({\n // used in error messages\n methodName: 'connect',\n // used to compute Connect's displayName from the wrapped component's displayName.\n getDisplayName: function getDisplayName(name) {\n return \"Connect(\" + name + \")\";\n },\n // if mapStateToProps is falsy, the Connect component doesn't subscribe to store state changes\n shouldHandleStateChanges: Boolean(mapStateToProps),\n // passed through to selectorFactory\n initMapStateToProps: initMapStateToProps,\n initMapDispatchToProps: initMapDispatchToProps,\n initMergeProps: initMergeProps,\n pure: pure,\n areStatesEqual: areStatesEqual,\n areOwnPropsEqual: areOwnPropsEqual,\n areStatePropsEqual: areStatePropsEqual,\n areMergedPropsEqual: areMergedPropsEqual\n }, extraOptions));\n };\n}\nexport default /*#__PURE__*/createConnect();","import { useContext } from 'react';\nimport { ReactReduxContext } from '../components/Context';\n/**\n * A hook to access the value of the `ReactReduxContext`. This is a low-level\n * hook that you should usually not need to call directly.\n *\n * @returns {any} the value of the `ReactReduxContext`\n *\n * @example\n *\n * import React from 'react'\n * import { useReduxContext } from 'react-redux'\n *\n * export const CounterComponent = ({ value }) => {\n * const { store } = useReduxContext()\n * return <div>{store.getState()}</div>\n * }\n */\n\nexport function useReduxContext() {\n var contextValue = useContext(ReactReduxContext);\n\n if (process.env.NODE_ENV !== 'production' && !contextValue) {\n throw new Error('could not find react-redux context value; please ensure the component is wrapped in a <Provider>');\n }\n\n return contextValue;\n}","import { useContext } from 'react';\nimport { ReactReduxContext } from '../components/Context';\nimport { useReduxContext as useDefaultReduxContext } from './useReduxContext';\n/**\n * Hook factory, which creates a `useStore` hook bound to a given context.\n *\n * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.\n * @returns {Function} A `useStore` hook bound to the specified context.\n */\n\nexport function createStoreHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useReduxContext = context === ReactReduxContext ? useDefaultReduxContext : function () {\n return useContext(context);\n };\n return function useStore() {\n var _useReduxContext = useReduxContext(),\n store = _useReduxContext.store;\n\n return store;\n };\n}\n/**\n * A hook to access the redux store.\n *\n * @returns {any} the redux store\n *\n * @example\n *\n * import React from 'react'\n * import { useStore } from 'react-redux'\n *\n * export const ExampleComponent = () => {\n * const store = useStore()\n * return <div>{store.getState()}</div>\n * }\n */\n\nexport var useStore = /*#__PURE__*/createStoreHook();","import { ReactReduxContext } from '../components/Context';\nimport { useStore as useDefaultStore, createStoreHook } from './useStore';\n/**\n * Hook factory, which creates a `useDispatch` hook bound to a given context.\n *\n * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.\n * @returns {Function} A `useDispatch` hook bound to the specified context.\n */\n\nexport function createDispatchHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useStore = context === ReactReduxContext ? useDefaultStore : createStoreHook(context);\n return function useDispatch() {\n var store = useStore();\n return store.dispatch;\n };\n}\n/**\n * A hook to access the redux `dispatch` function.\n *\n * @returns {any|function} redux store's `dispatch` function\n *\n * @example\n *\n * import React, { useCallback } from 'react'\n * import { useDispatch } from 'react-redux'\n *\n * export const CounterComponent = ({ value }) => {\n * const dispatch = useDispatch()\n * const increaseCounter = useCallback(() => dispatch({ type: 'increase-counter' }), [])\n * return (\n * <div>\n * <span>{value}</span>\n * <button onClick={increaseCounter}>Increase counter</button>\n * </div>\n * )\n * }\n */\n\nexport var useDispatch = /*#__PURE__*/createDispatchHook();","import { useReducer, useRef, useMemo, useContext, useDebugValue } from 'react';\nimport { useReduxContext as useDefaultReduxContext } from './useReduxContext';\nimport Subscription from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\nimport { ReactReduxContext } from '../components/Context';\n\nvar refEquality = function refEquality(a, b) {\n return a === b;\n};\n\nfunction useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub) {\n var _useReducer = useReducer(function (s) {\n return s + 1;\n }, 0),\n forceRender = _useReducer[1];\n\n var subscription = useMemo(function () {\n return new Subscription(store, contextSub);\n }, [store, contextSub]);\n var latestSubscriptionCallbackError = useRef();\n var latestSelector = useRef();\n var latestStoreState = useRef();\n var latestSelectedState = useRef();\n var storeState = store.getState();\n var selectedState;\n\n try {\n if (selector !== latestSelector.current || storeState !== latestStoreState.current || latestSubscriptionCallbackError.current) {\n selectedState = selector(storeState);\n } else {\n selectedState = latestSelectedState.current;\n }\n } catch (err) {\n if (latestSubscriptionCallbackError.current) {\n err.message += \"\\nThe error may be correlated with this previous error:\\n\" + latestSubscriptionCallbackError.current.stack + \"\\n\\n\";\n }\n\n throw err;\n }\n\n useIsomorphicLayoutEffect(function () {\n latestSelector.current = selector;\n latestStoreState.current = storeState;\n latestSelectedState.current = selectedState;\n latestSubscriptionCallbackError.current = undefined;\n });\n useIsomorphicLayoutEffect(function () {\n function checkForUpdates() {\n try {\n var newSelectedState = latestSelector.current(store.getState());\n\n if (equalityFn(newSelectedState, latestSelectedState.current)) {\n return;\n }\n\n latestSelectedState.current = newSelectedState;\n } catch (err) {\n // we ignore all errors here, since when the component\n // is re-rendered, the selectors are called again, and\n // will throw again, if neither props nor store state\n // changed\n latestSubscriptionCallbackError.current = err;\n }\n\n forceRender();\n }\n\n subscription.onStateChange = checkForUpdates;\n subscription.trySubscribe();\n checkForUpdates();\n return function () {\n return subscription.tryUnsubscribe();\n };\n }, [store, subscription]);\n return selectedState;\n}\n/**\n * Hook factory, which creates a `useSelector` hook bound to a given context.\n *\n * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.\n * @returns {Function} A `useSelector` hook bound to the specified context.\n */\n\n\nexport function createSelectorHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useReduxContext = context === ReactReduxContext ? useDefaultReduxContext : function () {\n return useContext(context);\n };\n return function useSelector(selector, equalityFn) {\n if (equalityFn === void 0) {\n equalityFn = refEquality;\n }\n\n if (process.env.NODE_ENV !== 'production' && !selector) {\n throw new Error(\"You must pass a selector to useSelector\");\n }\n\n var _useReduxContext = useReduxContext(),\n store = _useReduxContext.store,\n contextSub = _useReduxContext.subscription;\n\n var selectedState = useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub);\n useDebugValue(selectedState);\n return selectedState;\n };\n}\n/**\n * A hook to access the redux store's state. This hook takes a selector function\n * as an argument. The selector is called with the store state.\n *\n * This hook takes an optional equality comparison function as the second parameter\n * that allows you to customize the way the selected state is compared to determine\n * whether the component needs to be re-rendered.\n *\n * @param {Function} selector the selector function\n * @param {Function=} equalityFn the function that will be used to determine equality\n *\n * @returns {any} the selected state\n *\n * @example\n *\n * import React from 'react'\n * import { useSelector } from 'react-redux'\n *\n * export const CounterComponent = () => {\n * const counter = useSelector(state => state.counter)\n * return <div>{counter}</div>\n * }\n */\n\nexport var useSelector = /*#__PURE__*/createSelectorHook();","/* eslint-disable import/no-unresolved */\nexport { unstable_batchedUpdates } from 'react-dom';","import Provider from './components/Provider';\nimport connectAdvanced from './components/connectAdvanced';\nimport { ReactReduxContext } from './components/Context';\nimport connect from './connect/connect';\nimport { useDispatch, createDispatchHook } from './hooks/useDispatch';\nimport { useSelector, createSelectorHook } from './hooks/useSelector';\nimport { useStore, createStoreHook } from './hooks/useStore';\nimport { setBatch } from './utils/batch';\nimport { unstable_batchedUpdates as batch } from './utils/reactBatchedUpdates';\nimport shallowEqual from './utils/shallowEqual';\nsetBatch(batch);\nexport { Provider, connectAdvanced, ReactReduxContext, connect, batch, useDispatch, createDispatchHook, useSelector, createSelectorHook, useStore, createStoreHook, shallowEqual };","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar Pattern = /** @class */ (function () {\n function Pattern(_a) {\n var board = _a.board, cells = _a.cells;\n this.board = board;\n this.cells = cells;\n }\n Pattern.prototype.canBePlaced = function (config) {\n var numberOfEmptyCells = this.getNumberOfEmptyCells();\n var isNumberOfUsedCellsInRange = numberOfEmptyCells >= 1 && numberOfEmptyCells <= config.maximumNumberOfCharacters;\n return (isNumberOfUsedCellsInRange &&\n (this.hasAtLeast1NonEmptyCell() || this.collides() || (this.goesThroughBoardCenter() && this.board.isEmpty())));\n };\n Pattern.prototype.clone = function () {\n return new Pattern({\n board: this.board,\n cells: this.cells.map(function (cell) { return cell.clone(); }),\n });\n };\n Pattern.prototype.collides = function () {\n var _this = this;\n return this.cells.some(function (cell) { return cell.isEmpty && _this.board.collides(cell); });\n };\n Pattern.prototype.getIndexOfFirstCellWithoutTile = function () {\n return this.cells.findIndex(function (cell) { return !cell.hasTile(); });\n };\n Pattern.prototype.getNumberOfEmptyCells = function () {\n return this.cells.filter(function (cell) { return cell.isEmpty; }).length;\n };\n Pattern.prototype.goesThroughBoardCenter = function () {\n var _this = this;\n return this.cells.some(function (cell) { return cell.x === _this.board.center.x && cell.y === _this.board.center.y && cell.isEmpty; });\n };\n Pattern.prototype.hasAtLeast1EmptyCell = function () {\n return this.cells.some(function (cell) { return cell.isEmpty; });\n };\n Pattern.prototype.hasAtLeast1NonEmptyCell = function () {\n return this.cells.some(function (cell) { return !cell.isEmpty; });\n };\n Pattern.prototype.getCollisions = function () {\n return [];\n };\n Pattern.prototype.toJson = function () {\n return {\n cells: this.cells.map(function (cell) { return cell.toJson(); }),\n collisions: this.getCollisions().map(function (collision) { return collision.toJson(); }),\n word: this.toString(),\n };\n };\n Pattern.prototype.toString = function () {\n return this.cells.map(String).join('');\n };\n return Pattern;\n}());\nexports.default = Pattern;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.tilesDe = exports.tilesPl = exports.tilesFr = exports.tilesEs = exports.tilesEn = void 0;\nvar tilesEn_1 = require(\"./tilesEn\");\nObject.defineProperty(exports, \"tilesEn\", { enumerable: true, get: function () { return __importDefault(tilesEn_1).default; } });\nvar tilesEs_1 = require(\"./tilesEs\");\nObject.defineProperty(exports, \"tilesEs\", { enumerable: true, get: function () { return __importDefault(tilesEs_1).default; } });\nvar tilesFr_1 = require(\"./tilesFr\");\nObject.defineProperty(exports, \"tilesFr\", { enumerable: true, get: function () { return __importDefault(tilesFr_1).default; } });\nvar tilesPl_1 = require(\"./tilesPl\");\nObject.defineProperty(exports, \"tilesPl\", { enumerable: true, get: function () { return __importDefault(tilesPl_1).default; } });\nvar tilesDe_1 = require(\"./tilesDe\");\nObject.defineProperty(exports, \"tilesDe\", { enumerable: true, get: function () { return __importDefault(tilesDe_1).default; } });\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesPl = [\n { character: 'a', count: 9, score: 1 },\n { character: 'ą', count: 1, score: 5 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 3, score: 2 },\n { character: 'ć', count: 1, score: 5 },\n { character: 'd', count: 3, score: 2 },\n { character: 'e', count: 7, score: 1 },\n { character: 'ę', count: 1, score: 5 },\n { character: 'f', count: 1, score: 5 },\n { character: 'g', count: 2, score: 3 },\n { character: 'h', count: 2, score: 3 },\n { character: 'i', count: 8, score: 1 },\n { character: 'j', count: 2, score: 3 },\n { character: 'k', count: 3, score: 2 },\n { character: 'l', count: 3, score: 2 },\n { character: 'ł', count: 2, score: 3 },\n { character: 'm', count: 3, score: 2 },\n { character: 'n', count: 5, score: 1 },\n { character: 'ń', count: 1, score: 5 },\n { character: 'o', count: 6, score: 1 },\n { character: 'ó', count: 1, score: 5 },\n { character: 'p', count: 3, score: 2 },\n { character: 'r', count: 4, score: 1 },\n { character: 's', count: 4, score: 1 },\n { character: 'ś', count: 1, score: 5 },\n { character: 't', count: 3, score: 2 },\n { character: 'u', count: 2, score: 3 },\n { character: 'w', count: 4, score: 1 },\n { character: 'y', count: 4, score: 2 },\n { character: 'z', count: 5, score: 1 },\n { character: 'ź', count: 1, score: 5 },\n { character: 'ż', count: 1, score: 5 },\n];\nexports.default = tilesPl;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesPl = [\n { character: 'a', count: 9, score: 1 },\n { character: 'ą', count: 1, score: 5 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 3, score: 2 },\n { character: 'ć', count: 1, score: 6 },\n { character: 'd', count: 3, score: 2 },\n { character: 'e', count: 7, score: 1 },\n { character: 'ę', count: 1, score: 5 },\n { character: 'f', count: 1, score: 5 },\n { character: 'g', count: 2, score: 3 },\n { character: 'h', count: 2, score: 3 },\n { character: 'i', count: 8, score: 1 },\n { character: 'j', count: 2, score: 3 },\n { character: 'k', count: 3, score: 2 },\n { character: 'l', count: 3, score: 2 },\n { character: 'ł', count: 2, score: 3 },\n { character: 'm', count: 3, score: 2 },\n { character: 'n', count: 5, score: 1 },\n { character: 'ń', count: 1, score: 7 },\n { character: 'o', count: 6, score: 1 },\n { character: 'ó', count: 1, score: 5 },\n { character: 'p', count: 3, score: 2 },\n { character: 'r', count: 4, score: 1 },\n { character: 's', count: 4, score: 1 },\n { character: 'ś', count: 1, score: 5 },\n { character: 't', count: 3, score: 2 },\n { character: 'u', count: 2, score: 3 },\n { character: 'w', count: 4, score: 1 },\n { character: 'y', count: 4, score: 2 },\n { character: 'z', count: 5, score: 1 },\n { character: 'ź', count: 1, score: 9 },\n { character: 'ż', count: 1, score: 5 },\n];\nexports.default = tilesPl;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesEn = [\n { character: 'a', count: 9, score: 1 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 2, score: 3 },\n { character: 'd', count: 4, score: 2 },\n { character: 'e', count: 12, score: 1 },\n { character: 'f', count: 2, score: 4 },\n { character: 'g', count: 3, score: 2 },\n { character: 'h', count: 2, score: 4 },\n { character: 'i', count: 9, score: 1 },\n { character: 'j', count: 1, score: 8 },\n { character: 'k', count: 1, score: 5 },\n { character: 'l', count: 4, score: 1 },\n { character: 'm', count: 2, score: 3 },\n { character: 'n', count: 6, score: 1 },\n { character: 'o', count: 8, score: 1 },\n { character: 'p', count: 2, score: 3 },\n { character: 'q', count: 1, score: 10 },\n { character: 'r', count: 6, score: 1 },\n { character: 's', count: 4, score: 1 },\n { character: 't', count: 6, score: 1 },\n { character: 'u', count: 4, score: 1 },\n { character: 'v', count: 2, score: 4 },\n { character: 'w', count: 2, score: 4 },\n { character: 'x', count: 1, score: 8 },\n { character: 'y', count: 2, score: 4 },\n { character: 'z', count: 1, score: 10 },\n];\nexports.default = tilesEn;\n","module.exports = function(originalModule) {\n\tif (!originalModule.webpackPolyfill) {\n\t\tvar module = Object.create(originalModule);\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"exports\", {\n\t\t\tenumerable: true\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nvar _a;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar types_1 = require(\"@scrabble-solver/types\");\nvar bonuses_1 = __importDefault(require(\"./bonuses\"));\nvar tiles_1 = require(\"./tiles\");\nvar base = {\n allTilesBonusScore: 50,\n blankScore: 0,\n boardHeight: 15,\n boardWidth: 15,\n bonuses: bonuses_1.default,\n id: 'literaki',\n maximumNumberOfCharacters: 7,\n name: 'Literaki',\n numberOfBlanks: 2,\n};\nvar literaki = (_a = {\n id: base.id,\n name: base.name\n },\n _a[types_1.Locale.DE_DE] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesDe })),\n _a[types_1.Locale.EN_GB] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesEn })),\n _a[types_1.Locale.EN_US] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesEn })),\n _a[types_1.Locale.ES_ES] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesEs })),\n _a[types_1.Locale.FR_FR] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesFr })),\n _a[types_1.Locale.PL_PL] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesPl })),\n _a);\nexports.default = literaki;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.scrabble = exports.literaki = exports.isConfigId = exports.getLocaleConfig = exports.getConfig = void 0;\nvar getConfig_1 = require(\"./getConfig\");\nObject.defineProperty(exports, \"getConfig\", { enumerable: true, get: function () { return __importDefault(getConfig_1).default; } });\nvar getLocaleConfig_1 = require(\"./getLocaleConfig\");\nObject.defineProperty(exports, \"getLocaleConfig\", { enumerable: true, get: function () { return __importDefault(getLocaleConfig_1).default; } });\nvar isConfigId_1 = require(\"./isConfigId\");\nObject.defineProperty(exports, \"isConfigId\", { enumerable: true, get: function () { return __importDefault(isConfigId_1).default; } });\nvar literaki_1 = require(\"./literaki\");\nObject.defineProperty(exports, \"literaki\", { enumerable: true, get: function () { return __importDefault(literaki_1).default; } });\nvar scrabble_1 = require(\"./scrabble\");\nObject.defineProperty(exports, \"scrabble\", { enumerable: true, get: function () { return __importDefault(scrabble_1).default; } });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar WordDefinition = /** @class */ (function () {\n function WordDefinition(_a) {\n var definitions = _a.definitions, isAllowed = _a.isAllowed, word = _a.word;\n this.definitions = definitions;\n this.isAllowed = isAllowed;\n this.word = word;\n }\n WordDefinition.fromJson = function (json) {\n if (!json) {\n return WordDefinition.Null;\n }\n return new WordDefinition({\n definitions: json.definitions,\n isAllowed: json.isAllowed,\n word: json.word,\n });\n };\n WordDefinition.prototype.toJson = function () {\n return {\n definitions: this.definitions,\n isAllowed: this.isAllowed,\n word: this.word,\n };\n };\n WordDefinition.Null = Object.freeze({\n definitions: [],\n isAllowed: false,\n word: '',\n toJson: function () { return null; },\n });\n return WordDefinition;\n}());\nexports.default = WordDefinition;\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = require(\"@scrabble-solver/constants\");\nvar Bonus_1 = __importDefault(require(\"./Bonus\"));\nvar CharacterBonus = /** @class */ (function (_super) {\n __extends(CharacterBonus, _super);\n function CharacterBonus() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.type = constants_1.BONUS_CHARACTER;\n return _this;\n }\n CharacterBonus.prototype.canApply = function (config, cell) {\n return _super.prototype.canApply.call(this, config, cell) && this.matchesCellTileScore(config, cell);\n };\n CharacterBonus.prototype.matchesCellTileScore = function (config, cell) {\n if (typeof this.score === 'undefined') {\n return true;\n }\n return this.score === config.pointsMap[cell.tile.character];\n };\n Object.defineProperty(CharacterBonus.prototype, \"value\", {\n get: function () {\n return {\n characterMultiplier: this.multiplier,\n wordMultiplier: 1,\n };\n },\n enumerable: false,\n configurable: true\n });\n return CharacterBonus;\n}(Bonus_1.default));\nexports.default = CharacterBonus;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesDe = [\n { character: 'a', count: 5, score: 1 },\n { character: 'ä', count: 1, score: 6 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 2, score: 4 },\n { character: 'd', count: 4, score: 1 },\n { character: 'e', count: 15, score: 1 },\n { character: 'f', count: 2, score: 4 },\n { character: 'g', count: 3, score: 2 },\n { character: 'h', count: 4, score: 2 },\n { character: 'i', count: 6, score: 1 },\n { character: 'j', count: 1, score: 6 },\n { character: 'k', count: 2, score: 4 },\n { character: 'l', count: 3, score: 2 },\n { character: 'm', count: 4, score: 3 },\n { character: 'n', count: 9, score: 1 },\n { character: 'o', count: 3, score: 2 },\n { character: 'ö', count: 1, score: 8 },\n { character: 'p', count: 1, score: 4 },\n { character: 'q', count: 1, score: 10 },\n { character: 'r', count: 6, score: 1 },\n { character: 's', count: 7, score: 1 },\n { character: 't', count: 6, score: 1 },\n { character: 'u', count: 6, score: 1 },\n { character: 'ü', count: 1, score: 6 },\n { character: 'v', count: 1, score: 6 },\n { character: 'w', count: 1, score: 3 },\n { character: 'x', count: 1, score: 8 },\n { character: 'y', count: 1, score: 10 },\n { character: 'z', count: 1, score: 3 },\n];\nexports.default = tilesDe;\n","export var SortDirection;\n\n(function (SortDirection) {\n SortDirection[\"Ascending\"] = \"ascending\";\n SortDirection[\"Descending\"] = \"descending\";\n})(SortDirection || (SortDirection = {}));\n\nexport var ResultColumn;\n\n(function (ResultColumn) {\n ResultColumn[\"BlanksCount\"] = \"blanks-count\";\n ResultColumn[\"ConsonantsCount\"] = \"consonants-count\";\n ResultColumn[\"Points\"] = \"points\";\n ResultColumn[\"TilesCount\"] = \"tiles-count\";\n ResultColumn[\"VowelsCount\"] = \"vowels-count\";\n ResultColumn[\"Word\"] = \"word\";\n ResultColumn[\"WordsCount\"] = \"words-count\";\n})(ResultColumn || (ResultColumn = {}));","function t(t){for(var n=arguments.length,r=Array(n>1?n-1:0),e=1;e<n;e++)r[e-1]=arguments[e];if(\"production\"!==process.env.NODE_ENV){var i=Y[t],o=i?\"function\"==typeof i?i.apply(null,r):i:\"unknown error nr: \"+t;throw Error(\"[Immer] \"+o)}throw Error(\"[Immer] minified error nr: \"+t+(r.length?\" \"+r.map((function(t){return\"'\"+t+\"'\"})).join(\",\"):\"\")+\". Find the full error at: https://bit.ly/3cXEKWf\")}function n(t){return!!t&&!!t[Q]}function r(t){return!!t&&(function(t){if(!t||\"object\"!=typeof t)return!1;var n=Object.getPrototypeOf(t);return!n||n===Object.prototype}(t)||Array.isArray(t)||!!t[L]||!!t.constructor[L]||s(t)||v(t))}function e(r){return n(r)||t(23,r),r[Q].t}function i(t,n,r){void 0===r&&(r=!1),0===o(t)?(r?Object.keys:Z)(t).forEach((function(e){r&&\"symbol\"==typeof e||n(e,t[e],t)})):t.forEach((function(r,e){return n(e,r,t)}))}function o(t){var n=t[Q];return n?n.i>3?n.i-4:n.i:Array.isArray(t)?1:s(t)?2:v(t)?3:0}function u(t,n){return 2===o(t)?t.has(n):Object.prototype.hasOwnProperty.call(t,n)}function a(t,n){return 2===o(t)?t.get(n):t[n]}function f(t,n,r){var e=o(t);2===e?t.set(n,r):3===e?(t.delete(n),t.add(r)):t[n]=r}function c(t,n){return t===n?0!==t||1/t==1/n:t!=t&&n!=n}function s(t){return X&&t instanceof Map}function v(t){return q&&t instanceof Set}function p(t){return t.o||t.t}function l(t){if(Array.isArray(t))return Array.prototype.slice.call(t);var n=tt(t);delete n[Q];for(var r=Z(n),e=0;e<r.length;e++){var i=r[e],o=n[i];!1===o.writable&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(n[i]={configurable:!0,writable:!0,enumerable:o.enumerable,value:t[i]})}return Object.create(Object.getPrototypeOf(t),n)}function d(t,e){return void 0===e&&(e=!1),y(t)||n(t)||!r(t)?t:(o(t)>1&&(t.set=t.add=t.clear=t.delete=h),Object.freeze(t),e&&i(t,(function(t,n){return d(n,!0)}),!0),t)}function h(){t(2)}function y(t){return null==t||\"object\"!=typeof t||Object.isFrozen(t)}function b(n){var r=nt[n];return r||t(18,n),r}function m(t,n){nt[t]||(nt[t]=n)}function _(){return\"production\"===process.env.NODE_ENV||U||t(0),U}function j(t,n){n&&(b(\"Patches\"),t.u=[],t.s=[],t.v=n)}function g(t){w(t),t.p.forEach(S),t.p=null}function w(t){t===U&&(U=t.l)}function O(t){return U={p:[],l:U,h:t,m:!0,_:0}}function S(t){var n=t[Q];0===n.i||1===n.i?n.j():n.g=!0}function P(n,e){e._=e.p.length;var i=e.p[0],o=void 0!==n&&n!==i;return e.h.O||b(\"ES5\").S(e,n,o),o?(i[Q].P&&(g(e),t(4)),r(n)&&(n=M(e,n),e.l||x(e,n)),e.u&&b(\"Patches\").M(i[Q],n,e.u,e.s)):n=M(e,i,[]),g(e),e.u&&e.v(e.u,e.s),n!==H?n:void 0}function M(t,n,r){if(y(n))return n;var e=n[Q];if(!e)return i(n,(function(i,o){return A(t,e,n,i,o,r)}),!0),n;if(e.A!==t)return n;if(!e.P)return x(t,e.t,!0),e.t;if(!e.I){e.I=!0,e.A._--;var o=4===e.i||5===e.i?e.o=l(e.k):e.o;i(3===e.i?new Set(o):o,(function(n,i){return A(t,e,o,n,i,r)})),x(t,o,!1),r&&t.u&&b(\"Patches\").R(e,r,t.u,t.s)}return e.o}function A(e,i,o,a,c,s){if(\"production\"!==process.env.NODE_ENV&&c===o&&t(5),n(c)){var v=M(e,c,s&&i&&3!==i.i&&!u(i.D,a)?s.concat(a):void 0);if(f(o,a,v),!n(v))return;e.m=!1}if(r(c)&&!y(c)){if(!e.h.N&&e._<1)return;M(e,c),i&&i.A.l||x(e,c)}}function x(t,n,r){void 0===r&&(r=!1),t.h.N&&t.m&&d(n,r)}function z(t,n){var r=t[Q];return(r?p(r):t)[n]}function I(t,n){if(n in t)for(var r=Object.getPrototypeOf(t);r;){var e=Object.getOwnPropertyDescriptor(r,n);if(e)return e;r=Object.getPrototypeOf(r)}}function k(t){t.P||(t.P=!0,t.l&&k(t.l))}function E(t){t.o||(t.o=l(t.t))}function R(t,n,r){var e=s(n)?b(\"MapSet\").T(n,r):v(n)?b(\"MapSet\").F(n,r):t.O?function(t,n){var r=Array.isArray(t),e={i:r?1:0,A:n?n.A:_(),P:!1,I:!1,D:{},l:n,t:t,k:null,o:null,j:null,C:!1},i=e,o=rt;r&&(i=[e],o=et);var u=Proxy.revocable(i,o),a=u.revoke,f=u.proxy;return e.k=f,e.j=a,f}(n,r):b(\"ES5\").J(n,r);return(r?r.A:_()).p.push(e),e}function D(e){return n(e)||t(22,e),function t(n){if(!r(n))return n;var e,u=n[Q],c=o(n);if(u){if(!u.P&&(u.i<4||!b(\"ES5\").K(u)))return u.t;u.I=!0,e=N(n,c),u.I=!1}else e=N(n,c);return i(e,(function(n,r){u&&a(u.t,n)===r||f(e,n,t(r))})),3===c?new Set(e):e}(e)}function N(t,n){switch(n){case 2:return new Map(t);case 3:return Array.from(t)}return l(t)}function T(){function r(t,n){var r=s[t];return r?r.enumerable=n:s[t]=r={configurable:!0,enumerable:n,get:function(){var n=this[Q];return\"production\"!==process.env.NODE_ENV&&f(n),rt.get(n,t)},set:function(n){var r=this[Q];\"production\"!==process.env.NODE_ENV&&f(r),rt.set(r,t,n)}},r}function e(t){for(var n=t.length-1;n>=0;n--){var r=t[n][Q];if(!r.P)switch(r.i){case 5:a(r)&&k(r);break;case 4:o(r)&&k(r)}}}function o(t){for(var n=t.t,r=t.k,e=Z(r),i=e.length-1;i>=0;i--){var o=e[i];if(o!==Q){var a=n[o];if(void 0===a&&!u(n,o))return!0;var f=r[o],s=f&&f[Q];if(s?s.t!==a:!c(f,a))return!0}}var v=!!n[Q];return e.length!==Z(n).length+(v?0:1)}function a(t){var n=t.k;if(n.length!==t.t.length)return!0;var r=Object.getOwnPropertyDescriptor(n,n.length-1);return!(!r||r.get)}function f(n){n.g&&t(3,JSON.stringify(p(n)))}var s={};m(\"ES5\",{J:function(t,n){var e=Array.isArray(t),i=function(t,n){if(t){for(var e=Array(n.length),i=0;i<n.length;i++)Object.defineProperty(e,\"\"+i,r(i,!0));return e}var o=tt(n);delete o[Q];for(var u=Z(o),a=0;a<u.length;a++){var f=u[a];o[f]=r(f,t||!!o[f].enumerable)}return Object.create(Object.getPrototypeOf(n),o)}(e,t),o={i:e?5:4,A:n?n.A:_(),P:!1,I:!1,D:{},l:n,t:t,k:i,o:null,g:!1,C:!1};return Object.defineProperty(i,Q,{value:o,writable:!0}),i},S:function(t,r,o){o?n(r)&&r[Q].A===t&&e(t.p):(t.u&&function t(n){if(n&&\"object\"==typeof n){var r=n[Q];if(r){var e=r.t,o=r.k,f=r.D,c=r.i;if(4===c)i(o,(function(n){n!==Q&&(void 0!==e[n]||u(e,n)?f[n]||t(o[n]):(f[n]=!0,k(r)))})),i(e,(function(t){void 0!==o[t]||u(o,t)||(f[t]=!1,k(r))}));else if(5===c){if(a(r)&&(k(r),f.length=!0),o.length<e.length)for(var s=o.length;s<e.length;s++)f[s]=!1;else for(var v=e.length;v<o.length;v++)f[v]=!0;for(var p=Math.min(o.length,e.length),l=0;l<p;l++)void 0===f[l]&&t(o[l])}}}}(t.p[0]),e(t.p))},K:function(t){return 4===t.i?o(t):a(t)}})}function F(){function e(t){if(!r(t))return t;if(Array.isArray(t))return t.map(e);if(s(t))return new Map(Array.from(t.entries()).map((function(t){return[t[0],e(t[1])]})));if(v(t))return new Set(Array.from(t).map(e));var n=Object.create(Object.getPrototypeOf(t));for(var i in t)n[i]=e(t[i]);return n}function f(t){return n(t)?e(t):t}var c=\"add\";m(\"Patches\",{$:function(n,r){return r.forEach((function(r){for(var i=r.path,u=r.op,f=n,s=0;s<i.length-1;s++){var v=o(f),p=i[s];0!==v&&1!==v||\"__proto__\"!==p&&\"constructor\"!==p||t(24),\"function\"==typeof f&&\"prototype\"===p&&t(24),\"object\"!=typeof(f=a(f,p))&&t(15,i.join(\"/\"))}var l=o(f),d=e(r.value),h=i[i.length-1];switch(u){case\"replace\":switch(l){case 2:return f.set(h,d);case 3:t(16);default:return f[h]=d}case c:switch(l){case 1:return f.splice(h,0,d);case 2:return f.set(h,d);case 3:return f.add(d);default:return f[h]=d}case\"remove\":switch(l){case 1:return f.splice(h,1);case 2:return f.delete(h);case 3:return f.delete(r.value);default:return delete f[h]}default:t(17,u)}})),n},R:function(t,n,r,e){switch(t.i){case 0:case 4:case 2:return function(t,n,r,e){var o=t.t,s=t.o;i(t.D,(function(t,i){var v=a(o,t),p=a(s,t),l=i?u(o,t)?\"replace\":c:\"remove\";if(v!==p||\"replace\"!==l){var d=n.concat(t);r.push(\"remove\"===l?{op:l,path:d}:{op:l,path:d,value:p}),e.push(l===c?{op:\"remove\",path:d}:\"remove\"===l?{op:c,path:d,value:f(v)}:{op:\"replace\",path:d,value:f(v)})}}))}(t,n,r,e);case 5:case 1:return function(t,n,r,e){var i=t.t,o=t.D,u=t.o;if(u.length<i.length){var a=[u,i];i=a[0],u=a[1];var s=[e,r];r=s[0],e=s[1]}for(var v=0;v<i.length;v++)if(o[v]&&u[v]!==i[v]){var p=n.concat([v]);r.push({op:\"replace\",path:p,value:f(u[v])}),e.push({op:\"replace\",path:p,value:f(i[v])})}for(var l=i.length;l<u.length;l++){var d=n.concat([l]);r.push({op:c,path:d,value:f(u[l])})}i.length<u.length&&e.push({op:\"replace\",path:n.concat([\"length\"]),value:i.length})}(t,n,r,e);case 3:return function(t,n,r,e){var i=t.t,o=t.o,u=0;i.forEach((function(t){if(!o.has(t)){var i=n.concat([u]);r.push({op:\"remove\",path:i,value:t}),e.unshift({op:c,path:i,value:t})}u++})),u=0,o.forEach((function(t){if(!i.has(t)){var o=n.concat([u]);r.push({op:c,path:o,value:t}),e.unshift({op:\"remove\",path:o,value:t})}u++}))}(t,n,r,e)}},M:function(t,n,r,e){r.push({op:\"replace\",path:[],value:n}),e.push({op:\"replace\",path:[],value:t.t})}})}function C(){function n(t,n){function r(){this.constructor=t}a(t,n),t.prototype=(r.prototype=n.prototype,new r)}function e(t){t.o||(t.D=new Map,t.o=new Map(t.t))}function o(t){t.o||(t.o=new Set,t.t.forEach((function(n){if(r(n)){var e=R(t.A.h,n,t);t.p.set(n,e),t.o.add(e)}else t.o.add(n)})))}function u(n){n.g&&t(3,JSON.stringify(p(n)))}var a=function(t,n){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var r in n)n.hasOwnProperty(r)&&(t[r]=n[r])})(t,n)},f=function(){function t(t,n){return this[Q]={i:2,l:n,A:n?n.A:_(),P:!1,I:!1,o:void 0,D:void 0,t:t,k:this,C:!1,g:!1},this}n(t,Map);var o=t.prototype;return Object.defineProperty(o,\"size\",{get:function(){return p(this[Q]).size}}),o.has=function(t){return p(this[Q]).has(t)},o.set=function(t,n){var r=this[Q];return u(r),p(r).has(t)&&p(r).get(t)===n||(e(r),k(r),r.D.set(t,!0),r.o.set(t,n),r.D.set(t,!0)),this},o.delete=function(t){if(!this.has(t))return!1;var n=this[Q];return u(n),e(n),k(n),n.D.set(t,!1),n.o.delete(t),!0},o.clear=function(){var t=this[Q];u(t),p(t).size&&(e(t),k(t),t.D=new Map,i(t.t,(function(n){t.D.set(n,!1)})),t.o.clear())},o.forEach=function(t,n){var r=this;p(this[Q]).forEach((function(e,i){t.call(n,r.get(i),i,r)}))},o.get=function(t){var n=this[Q];u(n);var i=p(n).get(t);if(n.I||!r(i))return i;if(i!==n.t.get(t))return i;var o=R(n.A.h,i,n);return e(n),n.o.set(t,o),o},o.keys=function(){return p(this[Q]).keys()},o.values=function(){var t,n=this,r=this.keys();return(t={})[V]=function(){return n.values()},t.next=function(){var t=r.next();return t.done?t:{done:!1,value:n.get(t.value)}},t},o.entries=function(){var t,n=this,r=this.keys();return(t={})[V]=function(){return n.entries()},t.next=function(){var t=r.next();if(t.done)return t;var e=n.get(t.value);return{done:!1,value:[t.value,e]}},t},o[V]=function(){return this.entries()},t}(),c=function(){function t(t,n){return this[Q]={i:3,l:n,A:n?n.A:_(),P:!1,I:!1,o:void 0,t:t,k:this,p:new Map,g:!1,C:!1},this}n(t,Set);var r=t.prototype;return Object.defineProperty(r,\"size\",{get:function(){return p(this[Q]).size}}),r.has=function(t){var n=this[Q];return u(n),n.o?!!n.o.has(t)||!(!n.p.has(t)||!n.o.has(n.p.get(t))):n.t.has(t)},r.add=function(t){var n=this[Q];return u(n),this.has(t)||(o(n),k(n),n.o.add(t)),this},r.delete=function(t){if(!this.has(t))return!1;var n=this[Q];return u(n),o(n),k(n),n.o.delete(t)||!!n.p.has(t)&&n.o.delete(n.p.get(t))},r.clear=function(){var t=this[Q];u(t),p(t).size&&(o(t),k(t),t.o.clear())},r.values=function(){var t=this[Q];return u(t),o(t),t.o.values()},r.entries=function(){var t=this[Q];return u(t),o(t),t.o.entries()},r.keys=function(){return this.values()},r[V]=function(){return this.values()},r.forEach=function(t,n){for(var r=this.values(),e=r.next();!e.done;)t.call(n,e.value,e.value,this),e=r.next()},t}();m(\"MapSet\",{T:function(t,n){return new f(t,n)},F:function(t,n){return new c(t,n)}})}function J(){T(),C(),F()}function K(t){return t}function $(t){return t}var G,U,W=\"undefined\"!=typeof Symbol&&\"symbol\"==typeof Symbol(\"x\"),X=\"undefined\"!=typeof Map,q=\"undefined\"!=typeof Set,B=\"undefined\"!=typeof Proxy&&void 0!==Proxy.revocable&&\"undefined\"!=typeof Reflect,H=W?Symbol.for(\"immer-nothing\"):((G={})[\"immer-nothing\"]=!0,G),L=W?Symbol.for(\"immer-draftable\"):\"__$immer_draftable\",Q=W?Symbol.for(\"immer-state\"):\"__$immer_state\",V=\"undefined\"!=typeof Symbol&&Symbol.iterator||\"@@iterator\",Y={0:\"Illegal state\",1:\"Immer drafts cannot have computed properties\",2:\"This object has been frozen and should not be mutated\",3:function(t){return\"Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? \"+t},4:\"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.\",5:\"Immer forbids circular references\",6:\"The first or second argument to `produce` must be a function\",7:\"The third argument to `produce` must be a function or undefined\",8:\"First argument to `createDraft` must be a plain object, an array, or an immerable object\",9:\"First argument to `finishDraft` must be a draft returned by `createDraft`\",10:\"The given draft is already finalized\",11:\"Object.defineProperty() cannot be used on an Immer draft\",12:\"Object.setPrototypeOf() cannot be used on an Immer draft\",13:\"Immer only supports deleting array indices\",14:\"Immer only supports setting array indices and the 'length' property\",15:function(t){return\"Cannot apply patch, path doesn't resolve: \"+t},16:'Sets cannot have \"replace\" patches.',17:function(t){return\"Unsupported patch operation: \"+t},18:function(t){return\"The plugin for '\"+t+\"' has not been loaded into Immer. To enable the plugin, import and call `enable\"+t+\"()` when initializing your application.\"},20:\"Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available\",21:function(t){return\"produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '\"+t+\"'\"},22:function(t){return\"'current' expects a draft, got: \"+t},23:function(t){return\"'original' expects a draft, got: \"+t},24:\"Patching reserved attributes like __proto__, prototype and constructor is not allowed\"},Z=\"undefined\"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:Object.getOwnPropertyNames,tt=Object.getOwnPropertyDescriptors||function(t){var n={};return Z(t).forEach((function(r){n[r]=Object.getOwnPropertyDescriptor(t,r)})),n},nt={},rt={get:function(t,n){if(n===Q)return t;var e=p(t);if(!u(e,n))return function(t,n,r){var e,i=I(n,r);return i?\"value\"in i?i.value:null===(e=i.get)||void 0===e?void 0:e.call(t.k):void 0}(t,e,n);var i=e[n];return t.I||!r(i)?i:i===z(t.t,n)?(E(t),t.o[n]=R(t.A.h,i,t)):i},has:function(t,n){return n in p(t)},ownKeys:function(t){return Reflect.ownKeys(p(t))},set:function(t,n,r){var e=I(p(t),n);if(null==e?void 0:e.set)return e.set.call(t.k,r),!0;if(!t.P){var i=z(p(t),n),o=null==i?void 0:i[Q];if(o&&o.t===r)return t.o[n]=r,t.D[n]=!1,!0;if(c(r,i)&&(void 0!==r||u(t.t,n)))return!0;E(t),k(t)}return t.o[n]=r,t.D[n]=!0,!0},deleteProperty:function(t,n){return void 0!==z(t.t,n)||n in t.t?(t.D[n]=!1,E(t),k(t)):delete t.D[n],t.o&&delete t.o[n],!0},getOwnPropertyDescriptor:function(t,n){var r=p(t),e=Reflect.getOwnPropertyDescriptor(r,n);return e?{writable:!0,configurable:1!==t.i||\"length\"!==n,enumerable:e.enumerable,value:r[n]}:e},defineProperty:function(){t(11)},getPrototypeOf:function(t){return Object.getPrototypeOf(t.t)},setPrototypeOf:function(){t(12)}},et={};i(rt,(function(t,n){et[t]=function(){return arguments[0]=arguments[0][0],n.apply(this,arguments)}})),et.deleteProperty=function(n,r){return\"production\"!==process.env.NODE_ENV&&isNaN(parseInt(r))&&t(13),rt.deleteProperty.call(this,n[0],r)},et.set=function(n,r,e){return\"production\"!==process.env.NODE_ENV&&\"length\"!==r&&isNaN(parseInt(r))&&t(14),rt.set.call(this,n[0],r,e,n[0])};var it=function(){function e(t){this.O=B,this.N=!0,\"boolean\"==typeof(null==t?void 0:t.useProxies)&&this.setUseProxies(t.useProxies),\"boolean\"==typeof(null==t?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),this.produce=this.produce.bind(this),this.produceWithPatches=this.produceWithPatches.bind(this)}var i=e.prototype;return i.produce=function(n,e,i){if(\"function\"==typeof n&&\"function\"!=typeof e){var o=e;e=n;var u=this;return function(t){var n=this;void 0===t&&(t=o);for(var r=arguments.length,i=Array(r>1?r-1:0),a=1;a<r;a++)i[a-1]=arguments[a];return u.produce(t,(function(t){var r;return(r=e).call.apply(r,[n,t].concat(i))}))}}var a;if(\"function\"!=typeof e&&t(6),void 0!==i&&\"function\"!=typeof i&&t(7),r(n)){var f=O(this),c=R(this,n,void 0),s=!0;try{a=e(c),s=!1}finally{s?g(f):w(f)}return\"undefined\"!=typeof Promise&&a instanceof Promise?a.then((function(t){return j(f,i),P(t,f)}),(function(t){throw g(f),t})):(j(f,i),P(a,f))}if(!n||\"object\"!=typeof n){if((a=e(n))===H)return;return void 0===a&&(a=n),this.N&&d(a,!0),a}t(21,n)},i.produceWithPatches=function(t,n){var r,e,i=this;return\"function\"==typeof t?function(n){for(var r=arguments.length,e=Array(r>1?r-1:0),o=1;o<r;o++)e[o-1]=arguments[o];return i.produceWithPatches(n,(function(n){return t.apply(void 0,[n].concat(e))}))}:[this.produce(t,n,(function(t,n){r=t,e=n})),r,e]},i.createDraft=function(e){r(e)||t(8),n(e)&&(e=D(e));var i=O(this),o=R(this,e,void 0);return o[Q].C=!0,w(i),o},i.finishDraft=function(n,r){var e=n&&n[Q];\"production\"!==process.env.NODE_ENV&&(e&&e.C||t(9),e.I&&t(10));var i=e.A;return j(i,r),P(void 0,i)},i.setAutoFreeze=function(t){this.N=t},i.setUseProxies=function(n){n&&!B&&t(20),this.O=n},i.applyPatches=function(t,r){var e;for(e=r.length-1;e>=0;e--){var i=r[e];if(0===i.path.length&&\"replace\"===i.op){t=i.value;break}}var o=b(\"Patches\").$;return n(t)?o(t,r):this.produce(t,(function(t){return o(t,r.slice(e+1))}))},e}(),ot=new it,ut=ot.produce,at=ot.produceWithPatches.bind(ot),ft=ot.setAutoFreeze.bind(ot),ct=ot.setUseProxies.bind(ot),st=ot.applyPatches.bind(ot),vt=ot.createDraft.bind(ot),pt=ot.finishDraft.bind(ot);export default ut;export{it as Immer,st as applyPatches,K as castDraft,$ as castImmutable,vt as createDraft,D as current,J as enableAllPlugins,T as enableES5,C as enableMapSet,F as enablePatches,pt as finishDraft,d as freeze,L as immerable,n as isDraft,r as isDraftable,H as nothing,e as original,ut as produce,at as produceWithPatches,ft as setAutoFreeze,ct as setUseProxies};\n//# sourceMappingURL=immer.esm.js.map\n","function defaultEqualityCheck(a, b) {\n return a === b;\n}\n\nfunction areArgumentsShallowlyEqual(equalityCheck, prev, next) {\n if (prev === null || next === null || prev.length !== next.length) {\n return false;\n }\n\n // Do this in a for loop (and not a `forEach` or an `every`) so we can determine equality as fast as possible.\n var length = prev.length;\n for (var i = 0; i < length; i++) {\n if (!equalityCheck(prev[i], next[i])) {\n return false;\n }\n }\n\n return true;\n}\n\nexport function defaultMemoize(func) {\n var equalityCheck = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultEqualityCheck;\n\n var lastArgs = null;\n var lastResult = null;\n // we reference arguments instead of spreading them for performance reasons\n return function () {\n if (!areArgumentsShallowlyEqual(equalityCheck, lastArgs, arguments)) {\n // apply arguments instead of spreading for performance.\n lastResult = func.apply(null, arguments);\n }\n\n lastArgs = arguments;\n return lastResult;\n };\n}\n\nfunction getDependencies(funcs) {\n var dependencies = Array.isArray(funcs[0]) ? funcs[0] : funcs;\n\n if (!dependencies.every(function (dep) {\n return typeof dep === 'function';\n })) {\n var dependencyTypes = dependencies.map(function (dep) {\n return typeof dep;\n }).join(', ');\n throw new Error('Selector creators expect all input-selectors to be functions, ' + ('instead received the following types: [' + dependencyTypes + ']'));\n }\n\n return dependencies;\n}\n\nexport function createSelectorCreator(memoize) {\n for (var _len = arguments.length, memoizeOptions = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n memoizeOptions[_key - 1] = arguments[_key];\n }\n\n return function () {\n for (var _len2 = arguments.length, funcs = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n funcs[_key2] = arguments[_key2];\n }\n\n var recomputations = 0;\n var resultFunc = funcs.pop();\n var dependencies = getDependencies(funcs);\n\n var memoizedResultFunc = memoize.apply(undefined, [function () {\n recomputations++;\n // apply arguments instead of spreading for performance.\n return resultFunc.apply(null, arguments);\n }].concat(memoizeOptions));\n\n // If a selector is called with the exact same arguments we don't need to traverse our dependencies again.\n var selector = memoize(function () {\n var params = [];\n var length = dependencies.length;\n\n for (var i = 0; i < length; i++) {\n // apply arguments instead of spreading and mutate a local list of params for performance.\n params.push(dependencies[i].apply(null, arguments));\n }\n\n // apply arguments instead of spreading for performance.\n return memoizedResultFunc.apply(null, params);\n });\n\n selector.resultFunc = resultFunc;\n selector.dependencies = dependencies;\n selector.recomputations = function () {\n return recomputations;\n };\n selector.resetRecomputations = function () {\n return recomputations = 0;\n };\n return selector;\n };\n}\n\nexport var createSelector = createSelectorCreator(defaultMemoize);\n\nexport function createStructuredSelector(selectors) {\n var selectorCreator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : createSelector;\n\n if (typeof selectors !== 'object') {\n throw new Error('createStructuredSelector expects first argument to be an object ' + ('where each property is a selector, instead received a ' + typeof selectors));\n }\n var objectKeys = Object.keys(selectors);\n return selectorCreator(objectKeys.map(function (key) {\n return selectors[key];\n }), function () {\n for (var _len3 = arguments.length, values = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n values[_key3] = arguments[_key3];\n }\n\n return values.reduce(function (composition, value, index) {\n composition[objectKeys[index]] = value;\n return composition;\n }, {});\n });\n}","function createThunkMiddleware(extraArgument) {\n return function (_ref) {\n var dispatch = _ref.dispatch,\n getState = _ref.getState;\n return function (next) {\n return function (action) {\n if (typeof action === 'function') {\n return action(dispatch, getState, extraArgument);\n }\n\n return next(action);\n };\n };\n };\n}\n\nvar thunk = createThunkMiddleware();\nthunk.withExtraArgument = createThunkMiddleware;\n\nexport default thunk;","import createNextState, { isDraft, current, isDraftable, enableES5 } from 'immer';\nexport { default as createNextState, current, freeze } from 'immer';\nimport { compose, combineReducers, applyMiddleware, createStore } from 'redux';\nexport * from 'redux';\nimport { createSelector } from 'reselect';\nexport { createSelector } from 'reselect';\nimport thunkMiddleware from 'redux-thunk';\n\n/**\r\n * \"Draft-Safe\" version of `reselect`'s `createSelector`:\r\n * If an `immer`-drafted object is passed into the resulting selector's first argument,\r\n * the selector will act on the current draft value, instead of returning a cached value\r\n * that might be possibly outdated if the draft has been modified since.\r\n * @public\r\n */\n\nvar createDraftSafeSelector = function createDraftSafeSelector() {\n var selector = createSelector.apply(void 0, arguments);\n\n var wrappedSelector = function wrappedSelector(value) {\n for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n rest[_key - 1] = arguments[_key];\n }\n\n return selector.apply(void 0, [isDraft(value) ? current(value) : value].concat(rest));\n };\n\n return wrappedSelector;\n};\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n _construct = Reflect.construct;\n } else {\n _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) _setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n\n return _construct.apply(null, arguments);\n}\n\nfunction _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\n\nfunction _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !_isNativeFunction(Class)) return Class;\n\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n\n _cache.set(Class, Wrapper);\n }\n\n function Wrapper() {\n return _construct(Class, arguments, _getPrototypeOf(this).constructor);\n }\n\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return _setPrototypeOf(Wrapper, Class);\n };\n\n return _wrapNativeSuper(Class);\n}\n\n/**\r\n * @public\r\n */\n\nvar composeWithDevTools = typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ : function () {\n if (arguments.length === 0) return undefined;\n if (typeof arguments[0] === 'object') return compose;\n return compose.apply(null, arguments);\n};\n\n/**\r\n * Returns true if the passed value is \"plain\" object, i.e. an object whose\r\n * protoype is the root `Object.prototype`. This includes objects created\r\n * using object literals, but not for instance for class instances.\r\n *\r\n * @param {any} value The value to inspect.\r\n * @returns {boolean} True if the argument appears to be a plain object.\r\n *\r\n * @public\r\n */\nfunction isPlainObject(value) {\n if (typeof value !== 'object' || value === null) return false;\n var proto = value;\n\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n\n return Object.getPrototypeOf(value) === proto;\n}\n\nfunction getTimeMeasureUtils(maxDelay, fnName) {\n var elapsed = 0;\n return {\n measureTime: function measureTime(fn) {\n var started = Date.now();\n\n try {\n return fn();\n } finally {\n var finished = Date.now();\n elapsed += finished - started;\n }\n },\n warnIfExceeded: function warnIfExceeded() {\n if (elapsed > maxDelay) {\n console.warn(fnName + \" took \" + elapsed + \"ms, which is more than the warning threshold of \" + maxDelay + \"ms. \\nIf your state or actions are very large, you may want to disable the middleware as it might cause too much of a slowdown in development mode. See https://redux-toolkit.js.org/api/getDefaultMiddleware for instructions.\\nIt is disabled in production builds, so you don't need to worry about that.\");\n }\n }\n };\n}\n/**\r\n * @public\r\n */\n\nvar MiddlewareArray =\n/*#__PURE__*/\nfunction (_Array) {\n _inheritsLoose(MiddlewareArray, _Array);\n\n function MiddlewareArray() {\n return _Array.apply(this, arguments) || this;\n }\n\n var _proto = MiddlewareArray.prototype;\n\n _proto.concat = function concat() {\n var _Array$prototype$conc;\n\n for (var _len = arguments.length, arr = new Array(_len), _key = 0; _key < _len; _key++) {\n arr[_key] = arguments[_key];\n }\n\n return _construct(MiddlewareArray, (_Array$prototype$conc = _Array.prototype.concat).call.apply(_Array$prototype$conc, [this].concat(arr)));\n };\n\n _proto.prepend = function prepend() {\n for (var _len2 = arguments.length, arr = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n arr[_key2] = arguments[_key2];\n }\n\n if (arr.length === 1 && Array.isArray(arr[0])) {\n return _construct(MiddlewareArray, arr[0].concat(this));\n }\n\n return _construct(MiddlewareArray, arr.concat(this));\n };\n\n return MiddlewareArray;\n}(\n/*#__PURE__*/\n_wrapNativeSuper(Array));\n\nvar isProduction = process.env.NODE_ENV === 'production';\nvar prefix = 'Invariant failed'; // Throw an error if the condition fails\n// Strip out error messages for production\n// > Not providing an inline default argument for message as the result is smaller\n\nfunction invariant(condition, message) {\n if (condition) {\n return;\n } // Condition not passed\n // In production we strip the message but still throw\n\n\n if (isProduction) {\n throw new Error(prefix);\n } // When not in production we allow the message to pass through\n // *This block will be removed in production builds*\n\n\n throw new Error(prefix + \": \" + (message || ''));\n}\n\nfunction stringify(obj, serializer, indent, decycler) {\n return JSON.stringify(obj, getSerialize(serializer, decycler), indent);\n}\n\nfunction getSerialize(serializer, decycler) {\n var stack = [],\n keys = [];\n if (!decycler) decycler = function decycler(_, value) {\n if (stack[0] === value) return '[Circular ~]';\n return '[Circular ~.' + keys.slice(0, stack.indexOf(value)).join('.') + ']';\n };\n return function (key, value) {\n if (stack.length > 0) {\n var thisPos = stack.indexOf(this);\n ~thisPos ? stack.splice(thisPos + 1) : stack.push(this);\n ~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key);\n if (~stack.indexOf(value)) value = decycler.call(this, key, value);\n } else stack.push(value);\n\n return serializer == null ? value : serializer.call(this, key, value);\n };\n}\n/**\r\n * The default `isImmutable` function.\r\n *\r\n * @public\r\n */\n\n\nfunction isImmutableDefault(value) {\n return typeof value !== 'object' || value === null || typeof value === 'undefined';\n}\nfunction trackForMutations(isImmutable, ignorePaths, obj) {\n var trackedProperties = trackProperties(isImmutable, ignorePaths, obj);\n return {\n detectMutations: function detectMutations() {\n return _detectMutations(isImmutable, ignorePaths, trackedProperties, obj);\n }\n };\n}\n\nfunction trackProperties(isImmutable, ignorePaths, obj, path) {\n if (ignorePaths === void 0) {\n ignorePaths = [];\n }\n\n if (path === void 0) {\n path = [];\n }\n\n var tracked = {\n value: obj\n };\n\n if (!isImmutable(obj)) {\n tracked.children = {};\n\n for (var key in obj) {\n var childPath = path.concat(key);\n\n if (ignorePaths.length && ignorePaths.indexOf(childPath.join('.')) !== -1) {\n continue;\n }\n\n tracked.children[key] = trackProperties(isImmutable, ignorePaths, obj[key], childPath);\n }\n }\n\n return tracked;\n}\n\nfunction _detectMutations(isImmutable, ignorePaths, trackedProperty, obj, sameParentRef, path) {\n if (ignorePaths === void 0) {\n ignorePaths = [];\n }\n\n if (sameParentRef === void 0) {\n sameParentRef = false;\n }\n\n if (path === void 0) {\n path = [];\n }\n\n var prevObj = trackedProperty ? trackedProperty.value : undefined;\n var sameRef = prevObj === obj;\n\n if (sameParentRef && !sameRef && !Number.isNaN(obj)) {\n return {\n wasMutated: true,\n path: path\n };\n }\n\n if (isImmutable(prevObj) || isImmutable(obj)) {\n return {\n wasMutated: false\n };\n } // Gather all keys from prev (tracked) and after objs\n\n\n var keysToDetect = {};\n Object.keys(trackedProperty.children).forEach(function (key) {\n keysToDetect[key] = true;\n });\n Object.keys(obj).forEach(function (key) {\n keysToDetect[key] = true;\n });\n var keys = Object.keys(keysToDetect);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var childPath = path.concat(key);\n\n if (ignorePaths.length && ignorePaths.indexOf(childPath.join('.')) !== -1) {\n continue;\n }\n\n var result = _detectMutations(isImmutable, ignorePaths, trackedProperty.children[key], obj[key], sameRef, childPath);\n\n if (result.wasMutated) {\n return result;\n }\n }\n\n return {\n wasMutated: false\n };\n}\n/**\r\n * Creates a middleware that checks whether any state was mutated in between\r\n * dispatches or during a dispatch. If any mutations are detected, an error is\r\n * thrown.\r\n *\r\n * @param options Middleware options.\r\n *\r\n * @public\r\n */\n\n\nfunction createImmutableStateInvariantMiddleware(options) {\n if (options === void 0) {\n options = {};\n }\n\n if (process.env.NODE_ENV === 'production') {\n return function () {\n return function (next) {\n return function (action) {\n return next(action);\n };\n };\n };\n }\n\n var _options = options,\n _options$isImmutable = _options.isImmutable,\n isImmutable = _options$isImmutable === void 0 ? isImmutableDefault : _options$isImmutable,\n ignoredPaths = _options.ignoredPaths,\n _options$warnAfter = _options.warnAfter,\n warnAfter = _options$warnAfter === void 0 ? 32 : _options$warnAfter,\n ignore = _options.ignore; // Alias ignore->ignoredPaths, but prefer ignoredPaths if present\n\n ignoredPaths = ignoredPaths || ignore;\n var track = trackForMutations.bind(null, isImmutable, ignoredPaths);\n return function (_ref) {\n var getState = _ref.getState;\n var state = getState();\n var tracker = track(state);\n var result;\n return function (next) {\n return function (action) {\n var measureUtils = getTimeMeasureUtils(warnAfter, 'ImmutableStateInvariantMiddleware');\n measureUtils.measureTime(function () {\n state = getState();\n result = tracker.detectMutations(); // Track before potentially not meeting the invariant\n\n tracker = track(state);\n !!result.wasMutated ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"A state mutation was detected between dispatches, in the path '\" + (result.path || []).join('.') + \"'. This may cause incorrect behavior. (https://redux.js.org/troubleshooting#never-mutate-reducer-arguments)\") : invariant(false) : void 0;\n });\n var dispatchedAction = next(action);\n measureUtils.measureTime(function () {\n state = getState();\n result = tracker.detectMutations(); // Track before potentially not meeting the invariant\n\n tracker = track(state);\n result.wasMutated && (!!result.wasMutated ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"A state mutation was detected inside a dispatch, in the path: \" + (result.path || []).join('.') + \". Take a look at the reducer(s) handling the action \" + stringify(action) + \". (https://redux.js.org/troubleshooting#never-mutate-reducer-arguments)\") : invariant(false) : void 0);\n });\n measureUtils.warnIfExceeded();\n return dispatchedAction;\n };\n };\n };\n}\n\n/**\r\n * Returns true if the passed value is \"plain\", i.e. a value that is either\r\n * directly JSON-serializable (boolean, number, string, array, plain object)\r\n * or `undefined`.\r\n *\r\n * @param val The value to check.\r\n *\r\n * @public\r\n */\n\nfunction isPlain(val) {\n return typeof val === 'undefined' || val === null || typeof val === 'string' || typeof val === 'boolean' || typeof val === 'number' || Array.isArray(val) || isPlainObject(val);\n}\n/**\r\n * @public\r\n */\n\nfunction findNonSerializableValue(value, path, isSerializable, getEntries, ignoredPaths) {\n if (path === void 0) {\n path = [];\n }\n\n if (isSerializable === void 0) {\n isSerializable = isPlain;\n }\n\n if (ignoredPaths === void 0) {\n ignoredPaths = [];\n }\n\n var foundNestedSerializable;\n\n if (!isSerializable(value)) {\n return {\n keyPath: path.join('.') || '<root>',\n value: value\n };\n }\n\n if (typeof value !== 'object' || value === null) {\n return false;\n }\n\n var entries = getEntries != null ? getEntries(value) : Object.entries(value);\n var hasIgnoredPaths = ignoredPaths.length > 0;\n\n for (var _iterator = entries, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n var _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[_i++];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n var _ref2 = _ref,\n property = _ref2[0],\n nestedValue = _ref2[1];\n var nestedPath = path.concat(property);\n\n if (hasIgnoredPaths && ignoredPaths.indexOf(nestedPath.join('.')) >= 0) {\n continue;\n }\n\n if (!isSerializable(nestedValue)) {\n return {\n keyPath: nestedPath.join('.'),\n value: nestedValue\n };\n }\n\n if (typeof nestedValue === 'object') {\n foundNestedSerializable = findNonSerializableValue(nestedValue, nestedPath, isSerializable, getEntries, ignoredPaths);\n\n if (foundNestedSerializable) {\n return foundNestedSerializable;\n }\n }\n }\n\n return false;\n}\n/**\r\n * Creates a middleware that, after every state change, checks if the new\r\n * state is serializable. If a non-serializable value is found within the\r\n * state, an error is printed to the console.\r\n *\r\n * @param options Middleware options.\r\n *\r\n * @public\r\n */\n\nfunction createSerializableStateInvariantMiddleware(options) {\n if (options === void 0) {\n options = {};\n }\n\n if (process.env.NODE_ENV === 'production') {\n return function () {\n return function (next) {\n return function (action) {\n return next(action);\n };\n };\n };\n }\n\n var _options = options,\n _options$isSerializab = _options.isSerializable,\n isSerializable = _options$isSerializab === void 0 ? isPlain : _options$isSerializab,\n getEntries = _options.getEntries,\n _options$ignoredActio = _options.ignoredActions,\n ignoredActions = _options$ignoredActio === void 0 ? [] : _options$ignoredActio,\n _options$ignoredActio2 = _options.ignoredActionPaths,\n ignoredActionPaths = _options$ignoredActio2 === void 0 ? ['meta.arg'] : _options$ignoredActio2,\n _options$ignoredPaths = _options.ignoredPaths,\n ignoredPaths = _options$ignoredPaths === void 0 ? [] : _options$ignoredPaths,\n _options$warnAfter = _options.warnAfter,\n warnAfter = _options$warnAfter === void 0 ? 32 : _options$warnAfter;\n return function (storeAPI) {\n return function (next) {\n return function (action) {\n if (ignoredActions.length && ignoredActions.indexOf(action.type) !== -1) {\n return next(action);\n }\n\n var measureUtils = getTimeMeasureUtils(warnAfter, 'SerializableStateInvariantMiddleware');\n measureUtils.measureTime(function () {\n var foundActionNonSerializableValue = findNonSerializableValue(action, [], isSerializable, getEntries, ignoredActionPaths);\n\n if (foundActionNonSerializableValue) {\n var keyPath = foundActionNonSerializableValue.keyPath,\n value = foundActionNonSerializableValue.value;\n console.error(\"A non-serializable value was detected in an action, in the path: `\" + keyPath + \"`. Value:\", value, '\\nTake a look at the logic that dispatched this action: ', action, '\\n(See https://redux.js.org/faq/actions#why-should-type-be-a-string-or-at-least-serializable-why-should-my-action-types-be-constants)', '\\n(To allow non-serializable values see: https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data)');\n }\n });\n var result = next(action);\n measureUtils.measureTime(function () {\n var state = storeAPI.getState();\n var foundStateNonSerializableValue = findNonSerializableValue(state, [], isSerializable, getEntries, ignoredPaths);\n\n if (foundStateNonSerializableValue) {\n var keyPath = foundStateNonSerializableValue.keyPath,\n value = foundStateNonSerializableValue.value;\n console.error(\"A non-serializable value was detected in the state, in the path: `\" + keyPath + \"`. Value:\", value, \"\\nTake a look at the reducer(s) handling this action type: \" + action.type + \".\\n(See https://redux.js.org/faq/organizing-state#can-i-put-functions-promises-or-other-non-serializable-items-in-my-store-state)\");\n }\n });\n measureUtils.warnIfExceeded();\n return result;\n };\n };\n };\n}\n\nfunction isBoolean(x) {\n return typeof x === 'boolean';\n}\n\nfunction curryGetDefaultMiddleware() {\n return function curriedGetDefaultMiddleware(options) {\n return getDefaultMiddleware(options);\n };\n}\n/**\r\n * Returns any array containing the default middleware installed by\r\n * `configureStore()`. Useful if you want to configure your store with a custom\r\n * `middleware` array but still keep the default set.\r\n *\r\n * @return The default middleware used by `configureStore()`.\r\n *\r\n * @public\r\n */\n\nfunction getDefaultMiddleware(options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$thunk = _options.thunk,\n thunk = _options$thunk === void 0 ? true : _options$thunk,\n _options$immutableChe = _options.immutableCheck,\n immutableCheck = _options$immutableChe === void 0 ? true : _options$immutableChe,\n _options$serializable = _options.serializableCheck,\n serializableCheck = _options$serializable === void 0 ? true : _options$serializable;\n var middlewareArray = new MiddlewareArray();\n\n if (thunk) {\n if (isBoolean(thunk)) {\n middlewareArray.push(thunkMiddleware);\n } else {\n middlewareArray.push(thunkMiddleware.withExtraArgument(thunk.extraArgument));\n }\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (immutableCheck) {\n /* PROD_START_REMOVE_UMD */\n var immutableOptions = {};\n\n if (!isBoolean(immutableCheck)) {\n immutableOptions = immutableCheck;\n }\n\n middlewareArray.unshift(createImmutableStateInvariantMiddleware(immutableOptions));\n /* PROD_STOP_REMOVE_UMD */\n }\n\n if (serializableCheck) {\n var serializableOptions = {};\n\n if (!isBoolean(serializableCheck)) {\n serializableOptions = serializableCheck;\n }\n\n middlewareArray.push(createSerializableStateInvariantMiddleware(serializableOptions));\n }\n }\n\n return middlewareArray;\n}\n\nvar IS_PRODUCTION = process.env.NODE_ENV === 'production';\n/**\r\n * A friendly abstraction over the standard Redux `createStore()` function.\r\n *\r\n * @param config The store configuration.\r\n * @returns A configured Redux store.\r\n *\r\n * @public\r\n */\n\nfunction configureStore(options) {\n var curriedGetDefaultMiddleware = curryGetDefaultMiddleware();\n\n var _ref = options || {},\n _ref$reducer = _ref.reducer,\n reducer = _ref$reducer === void 0 ? undefined : _ref$reducer,\n _ref$middleware = _ref.middleware,\n middleware = _ref$middleware === void 0 ? curriedGetDefaultMiddleware() : _ref$middleware,\n _ref$devTools = _ref.devTools,\n devTools = _ref$devTools === void 0 ? true : _ref$devTools,\n _ref$preloadedState = _ref.preloadedState,\n preloadedState = _ref$preloadedState === void 0 ? undefined : _ref$preloadedState,\n _ref$enhancers = _ref.enhancers,\n enhancers = _ref$enhancers === void 0 ? undefined : _ref$enhancers;\n\n var rootReducer;\n\n if (typeof reducer === 'function') {\n rootReducer = reducer;\n } else if (isPlainObject(reducer)) {\n rootReducer = combineReducers(reducer);\n } else {\n throw new Error('\"reducer\" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');\n }\n\n var middlewareEnhancer = applyMiddleware.apply(void 0, typeof middleware === 'function' ? middleware(curriedGetDefaultMiddleware) : middleware);\n var finalCompose = compose;\n\n if (devTools) {\n finalCompose = composeWithDevTools(_extends({\n // Enable capture of stack traces for dispatched Redux actions\n trace: !IS_PRODUCTION\n }, typeof devTools === 'object' && devTools));\n }\n\n var storeEnhancers = [middlewareEnhancer];\n\n if (Array.isArray(enhancers)) {\n storeEnhancers = [middlewareEnhancer].concat(enhancers);\n } else if (typeof enhancers === 'function') {\n storeEnhancers = enhancers(storeEnhancers);\n }\n\n var composedEnhancer = finalCompose.apply(void 0, storeEnhancers);\n return createStore(rootReducer, preloadedState, composedEnhancer);\n}\n\nfunction createAction(type, prepareAction) {\n function actionCreator() {\n if (prepareAction) {\n var prepared = prepareAction.apply(void 0, arguments);\n\n if (!prepared) {\n throw new Error('prepareAction did not return an object');\n }\n\n return _extends({\n type: type,\n payload: prepared.payload\n }, 'meta' in prepared && {\n meta: prepared.meta\n }, {}, 'error' in prepared && {\n error: prepared.error\n });\n }\n\n return {\n type: type,\n payload: arguments.length <= 0 ? undefined : arguments[0]\n };\n }\n\n actionCreator.toString = function () {\n return \"\" + type;\n };\n\n actionCreator.type = type;\n\n actionCreator.match = function (action) {\n return action.type === type;\n };\n\n return actionCreator;\n}\nfunction isFSA(action) {\n return isPlainObject(action) && typeof action.type === 'string' && Object.keys(action).every(isValidKey);\n}\n\nfunction isValidKey(key) {\n return ['type', 'payload', 'error', 'meta'].indexOf(key) > -1;\n}\n/**\r\n * Returns the action type of the actions created by the passed\r\n * `createAction()`-generated action creator (arbitrary action creators\r\n * are not supported).\r\n *\r\n * @param action The action creator whose action type to get.\r\n * @returns The action type used by the action creator.\r\n *\r\n * @public\r\n */\n\n\nfunction getType(actionCreator) {\n return \"\" + actionCreator;\n}\n\nfunction executeReducerBuilderCallback(builderCallback) {\n var actionsMap = {};\n var actionMatchers = [];\n var defaultCaseReducer;\n var builder = {\n addCase: function addCase(typeOrActionCreator, reducer) {\n if (process.env.NODE_ENV !== 'production') {\n /*\r\n to keep the definition by the user in line with actual behavior,\r\n we enforce `addCase` to always be called before calling `addMatcher`\r\n as matching cases take precedence over matchers\r\n */\n if (actionMatchers.length > 0) {\n throw new Error('`builder.addCase` should only be called before calling `builder.addMatcher`');\n }\n\n if (defaultCaseReducer) {\n throw new Error('`builder.addCase` should only be called before calling `builder.addDefaultCase`');\n }\n }\n\n var type = typeof typeOrActionCreator === 'string' ? typeOrActionCreator : typeOrActionCreator.type;\n\n if (type in actionsMap) {\n throw new Error('addCase cannot be called with two reducers for the same action type');\n }\n\n actionsMap[type] = reducer;\n return builder;\n },\n addMatcher: function addMatcher(matcher, reducer) {\n if (process.env.NODE_ENV !== 'production') {\n if (defaultCaseReducer) {\n throw new Error('`builder.addMatcher` should only be called before calling `builder.addDefaultCase`');\n }\n }\n\n actionMatchers.push({\n matcher: matcher,\n reducer: reducer\n });\n return builder;\n },\n addDefaultCase: function addDefaultCase(reducer) {\n if (process.env.NODE_ENV !== 'production') {\n if (defaultCaseReducer) {\n throw new Error('`builder.addDefaultCase` can only be called once');\n }\n }\n\n defaultCaseReducer = reducer;\n return builder;\n }\n };\n builderCallback(builder);\n return [actionsMap, actionMatchers, defaultCaseReducer];\n}\n\nfunction createReducer(initialState, mapOrBuilderCallback, actionMatchers, defaultCaseReducer) {\n if (actionMatchers === void 0) {\n actionMatchers = [];\n }\n\n var _ref = typeof mapOrBuilderCallback === 'function' ? executeReducerBuilderCallback(mapOrBuilderCallback) : [mapOrBuilderCallback, actionMatchers, defaultCaseReducer],\n actionsMap = _ref[0],\n finalActionMatchers = _ref[1],\n finalDefaultCaseReducer = _ref[2];\n\n return function (state, action) {\n if (state === void 0) {\n state = initialState;\n }\n\n var caseReducers = [actionsMap[action.type]].concat(finalActionMatchers.filter(function (_ref2) {\n var matcher = _ref2.matcher;\n return matcher(action);\n }).map(function (_ref3) {\n var reducer = _ref3.reducer;\n return reducer;\n }));\n\n if (caseReducers.filter(function (cr) {\n return !!cr;\n }).length === 0) {\n caseReducers = [finalDefaultCaseReducer];\n }\n\n return caseReducers.reduce(function (previousState, caseReducer) {\n if (caseReducer) {\n if (isDraft(previousState)) {\n // If it's already a draft, we must already be inside a `createNextState` call,\n // likely because this is being wrapped in `createReducer`, `createSlice`, or nested\n // inside an existing draft. It's safe to just pass the draft to the mutator.\n var draft = previousState; // We can assume this is already a draft\n\n var result = caseReducer(draft, action);\n\n if (typeof result === 'undefined') {\n return previousState;\n }\n\n return result;\n } else if (!isDraftable(previousState)) {\n // If state is not draftable (ex: a primitive, such as 0), we want to directly\n // return the caseReducer func and not wrap it with produce.\n var _result = caseReducer(previousState, action);\n\n if (typeof _result === 'undefined') {\n if (previousState === null) {\n return previousState;\n }\n\n throw Error('A case reducer on a non-draftable value must not return undefined');\n }\n\n return _result;\n } else {\n // @ts-ignore createNextState() produces an Immutable<Draft<S>> rather\n // than an Immutable<S>, and TypeScript cannot find out how to reconcile\n // these two types.\n return createNextState(previousState, function (draft) {\n return caseReducer(draft, action);\n });\n }\n }\n\n return previousState;\n }, state);\n };\n}\n\nfunction getType$1(slice, actionKey) {\n return slice + \"/\" + actionKey;\n}\n/**\r\n * A function that accepts an initial state, an object full of reducer\r\n * functions, and a \"slice name\", and automatically generates\r\n * action creators and action types that correspond to the\r\n * reducers and state.\r\n *\r\n * The `reducer` argument is passed to `createReducer()`.\r\n *\r\n * @public\r\n */\n\n\nfunction createSlice(options) {\n var name = options.name,\n initialState = options.initialState;\n\n if (!name) {\n throw new Error('`name` is a required option for createSlice');\n }\n\n var reducers = options.reducers || {};\n\n var _ref = typeof options.extraReducers === 'undefined' ? [] : typeof options.extraReducers === 'function' ? executeReducerBuilderCallback(options.extraReducers) : [options.extraReducers],\n _ref$ = _ref[0],\n extraReducers = _ref$ === void 0 ? {} : _ref$,\n _ref$2 = _ref[1],\n actionMatchers = _ref$2 === void 0 ? [] : _ref$2,\n _ref$3 = _ref[2],\n defaultCaseReducer = _ref$3 === void 0 ? undefined : _ref$3;\n\n var reducerNames = Object.keys(reducers);\n var sliceCaseReducersByName = {};\n var sliceCaseReducersByType = {};\n var actionCreators = {};\n reducerNames.forEach(function (reducerName) {\n var maybeReducerWithPrepare = reducers[reducerName];\n var type = getType$1(name, reducerName);\n var caseReducer;\n var prepareCallback;\n\n if ('reducer' in maybeReducerWithPrepare) {\n caseReducer = maybeReducerWithPrepare.reducer;\n prepareCallback = maybeReducerWithPrepare.prepare;\n } else {\n caseReducer = maybeReducerWithPrepare;\n }\n\n sliceCaseReducersByName[reducerName] = caseReducer;\n sliceCaseReducersByType[type] = caseReducer;\n actionCreators[reducerName] = prepareCallback ? createAction(type, prepareCallback) : createAction(type);\n });\n\n var finalCaseReducers = _extends({}, extraReducers, {}, sliceCaseReducersByType);\n\n var reducer = createReducer(initialState, finalCaseReducers, actionMatchers, defaultCaseReducer);\n return {\n name: name,\n reducer: reducer,\n actions: actionCreators,\n caseReducers: sliceCaseReducersByName\n };\n}\n\nfunction getInitialEntityState() {\n return {\n ids: [],\n entities: {}\n };\n}\nfunction createInitialStateFactory() {\n function getInitialState(additionalState) {\n if (additionalState === void 0) {\n additionalState = {};\n }\n\n return Object.assign(getInitialEntityState(), additionalState);\n }\n\n return {\n getInitialState: getInitialState\n };\n}\n\nfunction createSelectorsFactory() {\n function getSelectors(selectState) {\n var selectIds = function selectIds(state) {\n return state.ids;\n };\n\n var selectEntities = function selectEntities(state) {\n return state.entities;\n };\n\n var selectAll = createDraftSafeSelector(selectIds, selectEntities, function (ids, entities) {\n return ids.map(function (id) {\n return entities[id];\n });\n });\n\n var selectId = function selectId(_, id) {\n return id;\n };\n\n var selectById = function selectById(entities, id) {\n return entities[id];\n };\n\n var selectTotal = createDraftSafeSelector(selectIds, function (ids) {\n return ids.length;\n });\n\n if (!selectState) {\n return {\n selectIds: selectIds,\n selectEntities: selectEntities,\n selectAll: selectAll,\n selectTotal: selectTotal,\n selectById: createDraftSafeSelector(selectEntities, selectId, selectById)\n };\n }\n\n var selectGlobalizedEntities = createDraftSafeSelector(selectState, selectEntities);\n return {\n selectIds: createDraftSafeSelector(selectState, selectIds),\n selectEntities: selectGlobalizedEntities,\n selectAll: createDraftSafeSelector(selectState, selectAll),\n selectTotal: createDraftSafeSelector(selectState, selectTotal),\n selectById: createDraftSafeSelector(selectGlobalizedEntities, selectId, selectById)\n };\n }\n\n return {\n getSelectors: getSelectors\n };\n}\n\nfunction createSingleArgumentStateOperator(mutator) {\n var operator = createStateOperator(function (_, state) {\n return mutator(state);\n });\n return function operation(state) {\n return operator(state, undefined);\n };\n}\nfunction createStateOperator(mutator) {\n return function operation(state, arg) {\n function isPayloadActionArgument(arg) {\n return isFSA(arg);\n }\n\n var runMutator = function runMutator(draft) {\n if (isPayloadActionArgument(arg)) {\n mutator(arg.payload, draft);\n } else {\n mutator(arg, draft);\n }\n };\n\n if (isDraft(state)) {\n // we must already be inside a `createNextState` call, likely because\n // this is being wrapped in `createReducer` or `createSlice`.\n // It's safe to just pass the draft to the mutator.\n runMutator(state); // since it's a draft, we'll just return it\n\n return state;\n } else {\n // @ts-ignore createNextState() produces an Immutable<Draft<S>> rather\n // than an Immutable<S>, and TypeScript cannot find out how to reconcile\n // these two types.\n return createNextState(state, runMutator);\n }\n };\n}\n\nfunction selectIdValue(entity, selectId) {\n var key = selectId(entity);\n\n if (process.env.NODE_ENV !== 'production' && key === undefined) {\n console.warn('The entity passed to the `selectId` implementation returned undefined.', 'You should probably provide your own `selectId` implementation.', 'The entity that was passed:', entity, 'The `selectId` implementation:', selectId.toString());\n }\n\n return key;\n}\n\nfunction createUnsortedStateAdapter(selectId) {\n function addOneMutably(entity, state) {\n var key = selectIdValue(entity, selectId);\n\n if (key in state.entities) {\n return;\n }\n\n state.ids.push(key);\n state.entities[key] = entity;\n }\n\n function addManyMutably(entities, state) {\n if (!Array.isArray(entities)) {\n entities = Object.values(entities);\n }\n\n for (var _iterator = entities, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n var _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[_i++];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n var entity = _ref;\n addOneMutably(entity, state);\n }\n }\n\n function setAllMutably(entities, state) {\n if (!Array.isArray(entities)) {\n entities = Object.values(entities);\n }\n\n state.ids = [];\n state.entities = {};\n addManyMutably(entities, state);\n }\n\n function removeOneMutably(key, state) {\n return removeManyMutably([key], state);\n }\n\n function removeManyMutably(keys, state) {\n var didMutate = false;\n keys.forEach(function (key) {\n if (key in state.entities) {\n delete state.entities[key];\n didMutate = true;\n }\n });\n\n if (didMutate) {\n state.ids = state.ids.filter(function (id) {\n return id in state.entities;\n });\n }\n }\n\n function removeAllMutably(state) {\n Object.assign(state, {\n ids: [],\n entities: {}\n });\n }\n\n function takeNewKey(keys, update, state) {\n var original = state.entities[update.id];\n var updated = Object.assign({}, original, update.changes);\n var newKey = selectIdValue(updated, selectId);\n var hasNewKey = newKey !== update.id;\n\n if (hasNewKey) {\n keys[update.id] = newKey;\n delete state.entities[update.id];\n }\n\n state.entities[newKey] = updated;\n return hasNewKey;\n }\n\n function updateOneMutably(update, state) {\n return updateManyMutably([update], state);\n }\n\n function updateManyMutably(updates, state) {\n var newKeys = {};\n var updatesPerEntity = {};\n updates.forEach(function (update) {\n // Only apply updates to entities that currently exist\n if (update.id in state.entities) {\n // If there are multiple updates to one entity, merge them together\n updatesPerEntity[update.id] = {\n id: update.id,\n // Spreads ignore falsy values, so this works even if there isn't\n // an existing update already at this key\n changes: _extends({}, updatesPerEntity[update.id] ? updatesPerEntity[update.id].changes : null, {}, update.changes)\n };\n }\n });\n updates = Object.values(updatesPerEntity);\n var didMutateEntities = updates.length > 0;\n\n if (didMutateEntities) {\n var didMutateIds = updates.filter(function (update) {\n return takeNewKey(newKeys, update, state);\n }).length > 0;\n\n if (didMutateIds) {\n state.ids = state.ids.map(function (id) {\n return newKeys[id] || id;\n });\n }\n }\n }\n\n function upsertOneMutably(entity, state) {\n return upsertManyMutably([entity], state);\n }\n\n function upsertManyMutably(entities, state) {\n if (!Array.isArray(entities)) {\n entities = Object.values(entities);\n }\n\n var added = [];\n var updated = [];\n\n for (var _iterator2 = entities, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) {\n var _ref2;\n\n if (_isArray2) {\n if (_i2 >= _iterator2.length) break;\n _ref2 = _iterator2[_i2++];\n } else {\n _i2 = _iterator2.next();\n if (_i2.done) break;\n _ref2 = _i2.value;\n }\n\n var entity = _ref2;\n var id = selectIdValue(entity, selectId);\n\n if (id in state.entities) {\n updated.push({\n id: id,\n changes: entity\n });\n } else {\n added.push(entity);\n }\n }\n\n updateManyMutably(updated, state);\n addManyMutably(added, state);\n }\n\n return {\n removeAll: createSingleArgumentStateOperator(removeAllMutably),\n addOne: createStateOperator(addOneMutably),\n addMany: createStateOperator(addManyMutably),\n setAll: createStateOperator(setAllMutably),\n updateOne: createStateOperator(updateOneMutably),\n updateMany: createStateOperator(updateManyMutably),\n upsertOne: createStateOperator(upsertOneMutably),\n upsertMany: createStateOperator(upsertManyMutably),\n removeOne: createStateOperator(removeOneMutably),\n removeMany: createStateOperator(removeManyMutably)\n };\n}\n\nfunction createSortedStateAdapter(selectId, sort) {\n var _createUnsortedStateA = createUnsortedStateAdapter(selectId),\n removeOne = _createUnsortedStateA.removeOne,\n removeMany = _createUnsortedStateA.removeMany,\n removeAll = _createUnsortedStateA.removeAll;\n\n function addOneMutably(entity, state) {\n return addManyMutably([entity], state);\n }\n\n function addManyMutably(newModels, state) {\n if (!Array.isArray(newModels)) {\n newModels = Object.values(newModels);\n }\n\n var models = newModels.filter(function (model) {\n return !(selectIdValue(model, selectId) in state.entities);\n });\n\n if (models.length !== 0) {\n merge(models, state);\n }\n }\n\n function setAllMutably(models, state) {\n if (!Array.isArray(models)) {\n models = Object.values(models);\n }\n\n state.entities = {};\n state.ids = [];\n addManyMutably(models, state);\n }\n\n function updateOneMutably(update, state) {\n return updateManyMutably([update], state);\n }\n\n function takeUpdatedModel(models, update, state) {\n if (!(update.id in state.entities)) {\n return false;\n }\n\n var original = state.entities[update.id];\n var updated = Object.assign({}, original, update.changes);\n var newKey = selectIdValue(updated, selectId);\n delete state.entities[update.id];\n models.push(updated);\n return newKey !== update.id;\n }\n\n function updateManyMutably(updates, state) {\n var models = [];\n updates.forEach(function (update) {\n return takeUpdatedModel(models, update, state);\n });\n\n if (models.length !== 0) {\n merge(models, state);\n }\n }\n\n function upsertOneMutably(entity, state) {\n return upsertManyMutably([entity], state);\n }\n\n function upsertManyMutably(entities, state) {\n if (!Array.isArray(entities)) {\n entities = Object.values(entities);\n }\n\n var added = [];\n var updated = [];\n\n for (var _iterator = entities, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n var _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[_i++];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n var entity = _ref;\n var id = selectIdValue(entity, selectId);\n\n if (id in state.entities) {\n updated.push({\n id: id,\n changes: entity\n });\n } else {\n added.push(entity);\n }\n }\n\n updateManyMutably(updated, state);\n addManyMutably(added, state);\n }\n\n function areArraysEqual(a, b) {\n if (a.length !== b.length) {\n return false;\n }\n\n for (var i = 0; i < a.length && i < b.length; i++) {\n if (a[i] === b[i]) {\n continue;\n }\n\n return false;\n }\n\n return true;\n }\n\n function merge(models, state) {\n models.sort(sort); // Insert/overwrite all new/updated\n\n models.forEach(function (model) {\n state.entities[selectId(model)] = model;\n });\n var allEntities = Object.values(state.entities);\n allEntities.sort(sort);\n var newSortedIds = allEntities.map(selectId);\n var ids = state.ids;\n\n if (!areArraysEqual(ids, newSortedIds)) {\n state.ids = newSortedIds;\n }\n }\n\n return {\n removeOne: removeOne,\n removeMany: removeMany,\n removeAll: removeAll,\n addOne: createStateOperator(addOneMutably),\n updateOne: createStateOperator(updateOneMutably),\n upsertOne: createStateOperator(upsertOneMutably),\n setAll: createStateOperator(setAllMutably),\n addMany: createStateOperator(addManyMutably),\n updateMany: createStateOperator(updateManyMutably),\n upsertMany: createStateOperator(upsertManyMutably)\n };\n}\n\n/**\r\n *\r\n * @param options\r\n *\r\n * @public\r\n */\n\nfunction createEntityAdapter(options) {\n if (options === void 0) {\n options = {};\n }\n\n var _sortComparer$selectI = _extends({\n sortComparer: false,\n selectId: function selectId(instance) {\n return instance.id;\n }\n }, options),\n selectId = _sortComparer$selectI.selectId,\n sortComparer = _sortComparer$selectI.sortComparer;\n\n var stateFactory = createInitialStateFactory();\n var selectorsFactory = createSelectorsFactory();\n var stateAdapter = sortComparer ? createSortedStateAdapter(selectId, sortComparer) : createUnsortedStateAdapter(selectId);\n return _extends({\n selectId: selectId,\n sortComparer: sortComparer\n }, stateFactory, {}, selectorsFactory, {}, stateAdapter);\n}\n\n// A type of promise-like that resolves synchronously and supports only one observer\n\nconst _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.iterator || (Symbol.iterator = Symbol(\"Symbol.iterator\"))) : \"@@iterator\";\n\nconst _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol(\"Symbol.asyncIterator\"))) : \"@@asyncIterator\";\n\n// Asynchronously call a function and send errors to recovery continuation\nfunction _catch(body, recover) {\n\ttry {\n\t\tvar result = body();\n\t} catch(e) {\n\t\treturn recover(e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(void 0, recover);\n\t}\n\treturn result;\n}\n\n// Borrowed from https://github.com/ai/nanoid/blob/3.0.2/non-secure/index.js\n// This alphabet uses `A-Za-z0-9_-` symbols. A genetic algorithm helped\n// optimize the gzip compression for this alphabet.\nvar urlAlphabet = 'ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW';\n/**\r\n *\r\n * @public\r\n */\n\nvar nanoid = function nanoid(size) {\n if (size === void 0) {\n size = 21;\n }\n\n var id = ''; // A compact alternative for `for (var i = 0; i < step; i++)`.\n\n var i = size;\n\n while (i--) {\n // `| 0` is more compact and faster than `Math.floor()`.\n id += urlAlphabet[Math.random() * 64 | 0];\n }\n\n return id;\n};\n\nvar commonProperties = ['name', 'message', 'stack', 'code'];\n\nvar RejectWithValue = function RejectWithValue(payload) {\n this.payload = payload;\n this.name = 'RejectWithValue';\n this.message = 'Rejected';\n}; // Reworked from https://github.com/sindresorhus/serialize-error\n\n\nvar miniSerializeError = function miniSerializeError(value) {\n if (typeof value === 'object' && value !== null) {\n var simpleError = {};\n\n for (var _iterator = commonProperties, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n var _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[_i++];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n var property = _ref;\n\n if (typeof value[property] === 'string') {\n simpleError[property] = value[property];\n }\n }\n\n return simpleError;\n }\n\n return {\n message: String(value)\n };\n};\n/**\r\n *\r\n * @param typePrefix\r\n * @param payloadCreator\r\n * @param options\r\n *\r\n * @public\r\n */\n\nfunction createAsyncThunk(typePrefix, payloadCreator, options) {\n var fulfilled = createAction(typePrefix + '/fulfilled', function (result, requestId, arg) {\n return {\n payload: result,\n meta: {\n arg: arg,\n requestId: requestId,\n requestStatus: 'fulfilled'\n }\n };\n });\n var pending = createAction(typePrefix + '/pending', function (requestId, arg) {\n return {\n payload: undefined,\n meta: {\n arg: arg,\n requestId: requestId,\n requestStatus: 'pending'\n }\n };\n });\n var rejected = createAction(typePrefix + '/rejected', function (error, requestId, arg) {\n var rejectedWithValue = error instanceof RejectWithValue;\n var aborted = !!error && error.name === 'AbortError';\n var condition = !!error && error.name === 'ConditionError';\n return {\n payload: error instanceof RejectWithValue ? error.payload : undefined,\n error: (options && options.serializeError || miniSerializeError)(error || 'Rejected'),\n meta: {\n arg: arg,\n requestId: requestId,\n rejectedWithValue: rejectedWithValue,\n requestStatus: 'rejected',\n aborted: aborted,\n condition: condition\n }\n };\n });\n var displayedWarning = false;\n var AC = typeof AbortController !== 'undefined' ? AbortController :\n /*#__PURE__*/\n function () {\n function _class() {\n this.signal = {\n aborted: false,\n addEventListener: function addEventListener() {},\n dispatchEvent: function dispatchEvent() {\n return false;\n },\n onabort: function onabort() {},\n removeEventListener: function removeEventListener() {}\n };\n }\n\n var _proto = _class.prototype;\n\n _proto.abort = function abort() {\n if (process.env.NODE_ENV !== 'production') {\n if (!displayedWarning) {\n displayedWarning = true;\n console.info(\"This platform does not implement AbortController. \\nIf you want to use the AbortController to react to `abort` events, please consider importing a polyfill like 'abortcontroller-polyfill/dist/abortcontroller-polyfill-only'.\");\n }\n }\n };\n\n return _class;\n }();\n\n function actionCreator(arg) {\n return function (dispatch, getState, extra) {\n var requestId = nanoid();\n var abortController = new AC();\n var abortReason;\n var abortedPromise = new Promise(function (_, reject) {\n return abortController.signal.addEventListener('abort', function () {\n return reject({\n name: 'AbortError',\n message: abortReason || 'Aborted'\n });\n });\n });\n var started = false;\n\n function abort(reason) {\n if (started) {\n abortReason = reason;\n abortController.abort();\n }\n }\n\n var promise = function () {\n try {\n var _temp3 = function _temp3(_result) {\n if (_exit2) return _result;\n // We dispatch the result action _after_ the catch, to avoid having any errors\n // here get swallowed by the try/catch block,\n // per https://twitter.com/dan_abramov/status/770914221638942720\n // and https://redux-toolkit.js.org/tutorials/advanced-tutorial#async-error-handling-logic-in-thunks\n var skipDispatch = options && !options.dispatchConditionRejection && rejected.match(finalAction) && finalAction.meta.condition;\n\n if (!skipDispatch) {\n dispatch(finalAction);\n }\n\n return finalAction;\n };\n\n var _exit2 = false;\n var finalAction;\n\n var _temp4 = _catch(function () {\n if (options && options.condition && options.condition(arg, {\n getState: getState,\n extra: extra\n }) === false) {\n // eslint-disable-next-line no-throw-literal\n throw {\n name: 'ConditionError',\n message: 'Aborted due to condition callback returning false.'\n };\n }\n\n started = true;\n dispatch(pending(requestId, arg));\n return Promise.resolve(Promise.race([abortedPromise, Promise.resolve(payloadCreator(arg, {\n dispatch: dispatch,\n getState: getState,\n extra: extra,\n requestId: requestId,\n signal: abortController.signal,\n rejectWithValue: function rejectWithValue(value) {\n return new RejectWithValue(value);\n }\n })).then(function (result) {\n if (result instanceof RejectWithValue) {\n return rejected(result, requestId, arg);\n }\n\n return fulfilled(result, requestId, arg);\n })])).then(function (_Promise$race) {\n finalAction = _Promise$race;\n });\n }, function (err) {\n finalAction = rejected(err, requestId, arg);\n });\n\n return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));\n } catch (e) {\n return Promise.reject(e);\n }\n }();\n\n return Object.assign(promise, {\n abort: abort,\n requestId: requestId,\n arg: arg\n });\n };\n }\n\n return Object.assign(actionCreator, {\n pending: pending,\n rejected: rejected,\n fulfilled: fulfilled,\n typePrefix: typePrefix\n });\n}\n/**\r\n * @public\r\n */\n\nfunction unwrapResult(action) {\n if (action.meta && action.meta.rejectedWithValue) {\n throw action.payload;\n }\n\n if (action.error) {\n throw action.error;\n }\n\n return action.payload;\n}\n\nvar hasMatchFunction = function hasMatchFunction(v) {\n return v && typeof v.match === 'function';\n};\n\nvar matches = function matches(matcher, action) {\n if (hasMatchFunction(matcher)) {\n return matcher.match(action);\n } else {\n return matcher(action);\n }\n};\n/**\r\n * A higher-order function that returns a function that may be used to check\r\n * whether an action matches any one of the supplied type guards or action\r\n * creators.\r\n *\r\n * @param matchers The type guards or action creators to match against.\r\n *\r\n * @public\r\n */\n\n\nfunction isAnyOf() {\n for (var _len = arguments.length, matchers = new Array(_len), _key = 0; _key < _len; _key++) {\n matchers[_key] = arguments[_key];\n }\n\n return function (action) {\n return matchers.some(function (matcher) {\n return matches(matcher, action);\n });\n };\n}\n/**\r\n * A higher-order function that returns a function that may be used to check\r\n * whether an action matches all of the supplied type guards or action\r\n * creators.\r\n *\r\n * @param matchers The type guards or action creators to match against.\r\n *\r\n * @public\r\n */\n\nfunction isAllOf() {\n for (var _len2 = arguments.length, matchers = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n matchers[_key2] = arguments[_key2];\n }\n\n return function (action) {\n return matchers.every(function (matcher) {\n return matches(matcher, action);\n });\n };\n}\n/**\r\n * @param action A redux action\r\n * @param validStatus An array of valid meta.requestStatus values\r\n *\r\n * @internal\r\n */\n\nfunction hasExpectedRequestMetadata(action, validStatus) {\n if (!action || !action.meta) return false;\n var hasValidRequestId = typeof action.meta.requestId === 'string';\n var hasValidRequestStatus = validStatus.indexOf(action.meta.requestStatus) > -1;\n return hasValidRequestId && hasValidRequestStatus;\n}\n\nfunction isAsyncThunkArray(a) {\n return typeof a[0] === 'function' && 'pending' in a[0] && 'fulfilled' in a[0] && 'rejected' in a[0];\n}\n\nfunction isPending() {\n for (var _len3 = arguments.length, asyncThunks = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n asyncThunks[_key3] = arguments[_key3];\n }\n\n if (asyncThunks.length === 0) {\n return function (action) {\n return hasExpectedRequestMetadata(action, ['pending']);\n };\n }\n\n if (!isAsyncThunkArray(asyncThunks)) {\n return isPending()(asyncThunks[0]);\n }\n\n return function (action) {\n // note: this type will be correct because we have at least 1 asyncThunk\n var matchers = asyncThunks.map(function (asyncThunk) {\n return asyncThunk.pending;\n });\n var combinedMatcher = isAnyOf.apply(void 0, matchers);\n return combinedMatcher(action);\n };\n}\nfunction isRejected() {\n for (var _len4 = arguments.length, asyncThunks = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n asyncThunks[_key4] = arguments[_key4];\n }\n\n if (asyncThunks.length === 0) {\n return function (action) {\n return hasExpectedRequestMetadata(action, ['rejected']);\n };\n }\n\n if (!isAsyncThunkArray(asyncThunks)) {\n return isRejected()(asyncThunks[0]);\n }\n\n return function (action) {\n // note: this type will be correct because we have at least 1 asyncThunk\n var matchers = asyncThunks.map(function (asyncThunk) {\n return asyncThunk.rejected;\n });\n var combinedMatcher = isAnyOf.apply(void 0, matchers);\n return combinedMatcher(action);\n };\n}\nfunction isRejectedWithValue() {\n for (var _len5 = arguments.length, asyncThunks = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n asyncThunks[_key5] = arguments[_key5];\n }\n\n var hasFlag = function hasFlag(action) {\n return action && action.meta && action.meta.rejectedWithValue;\n };\n\n if (asyncThunks.length === 0) {\n return function (action) {\n var combinedMatcher = isAllOf(isRejected.apply(void 0, asyncThunks), hasFlag);\n return combinedMatcher(action);\n };\n }\n\n if (!isAsyncThunkArray(asyncThunks)) {\n return isRejectedWithValue()(asyncThunks[0]);\n }\n\n return function (action) {\n var combinedMatcher = isAllOf(isRejected.apply(void 0, asyncThunks), hasFlag);\n return combinedMatcher(action);\n };\n}\nfunction isFulfilled() {\n for (var _len6 = arguments.length, asyncThunks = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n asyncThunks[_key6] = arguments[_key6];\n }\n\n if (asyncThunks.length === 0) {\n return function (action) {\n return hasExpectedRequestMetadata(action, ['fulfilled']);\n };\n }\n\n if (!isAsyncThunkArray(asyncThunks)) {\n return isFulfilled()(asyncThunks[0]);\n }\n\n return function (action) {\n // note: this type will be correct because we have at least 1 asyncThunk\n var matchers = asyncThunks.map(function (asyncThunk) {\n return asyncThunk.fulfilled;\n });\n var combinedMatcher = isAnyOf.apply(void 0, matchers);\n return combinedMatcher(action);\n };\n}\nfunction isAsyncThunkAction() {\n for (var _len7 = arguments.length, asyncThunks = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {\n asyncThunks[_key7] = arguments[_key7];\n }\n\n if (asyncThunks.length === 0) {\n return function (action) {\n return hasExpectedRequestMetadata(action, ['pending', 'fulfilled', 'rejected']);\n };\n }\n\n if (!isAsyncThunkArray(asyncThunks)) {\n return isAsyncThunkAction()(asyncThunks[0]);\n }\n\n return function (action) {\n // note: this type will be correct because we have at least 1 asyncThunk\n var matchers = [];\n\n for (var _iterator = asyncThunks, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n var _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[_i++];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n var asyncThunk = _ref;\n matchers.push(asyncThunk.pending, asyncThunk.rejected, asyncThunk.fulfilled);\n }\n\n var combinedMatcher = isAnyOf.apply(void 0, matchers);\n return combinedMatcher(action);\n };\n}\n\n// we assume RTK will be used with React Native and other Proxy-less\n// environments. In addition, that's how Immer 4 behaved, and since\n// we want to ship this in an RTK minor, we should keep the same behavior.\n\nenableES5();\n\nexport { MiddlewareArray, configureStore, createAction, createAsyncThunk, createDraftSafeSelector, createEntityAdapter, createImmutableStateInvariantMiddleware, createReducer, createSerializableStateInvariantMiddleware, createSlice, findNonSerializableValue, getDefaultMiddleware, getType, isAllOf, isAnyOf, isAsyncThunkAction, isFulfilled, isImmutableDefault, isPending, isPlain, isPlainObject, isRejected, isRejectedWithValue, nanoid, unwrapResult };\n//# sourceMappingURL=redux-toolkit.esm.js.map\n","import { createAction } from '@reduxjs/toolkit';\nexport var initialize = createAction('initialize');\nexport var reset = createAction('reset');","var createSymbol = function createSymbol(name) {\n return \"@@redux-saga/\" + name;\n};\n\nvar CANCEL =\n/*#__PURE__*/\ncreateSymbol('CANCEL_PROMISE');\nvar CHANNEL_END_TYPE =\n/*#__PURE__*/\ncreateSymbol('CHANNEL_END');\nvar IO =\n/*#__PURE__*/\ncreateSymbol('IO');\nvar MATCH =\n/*#__PURE__*/\ncreateSymbol('MATCH');\nvar MULTICAST =\n/*#__PURE__*/\ncreateSymbol('MULTICAST');\nvar SAGA_ACTION =\n/*#__PURE__*/\ncreateSymbol('SAGA_ACTION');\nvar SELF_CANCELLATION =\n/*#__PURE__*/\ncreateSymbol('SELF_CANCELLATION');\nvar TASK =\n/*#__PURE__*/\ncreateSymbol('TASK');\nvar TASK_CANCEL =\n/*#__PURE__*/\ncreateSymbol('TASK_CANCEL');\nvar TERMINATE =\n/*#__PURE__*/\ncreateSymbol('TERMINATE');\nvar SAGA_LOCATION =\n/*#__PURE__*/\ncreateSymbol('LOCATION');\n\nexport { CANCEL, CHANNEL_END_TYPE, IO, MATCH, MULTICAST, SAGA_ACTION, SAGA_LOCATION, SELF_CANCELLATION, TASK, TASK_CANCEL, TERMINATE };\n","import { TASK, SAGA_ACTION, MULTICAST, IO } from '@redux-saga/symbols';\n\nvar undef = function undef(v) {\n return v === null || v === undefined;\n};\nvar notUndef = function notUndef(v) {\n return v !== null && v !== undefined;\n};\nvar func = function func(f) {\n return typeof f === 'function';\n};\nvar number = function number(n) {\n return typeof n === 'number';\n};\nvar string = function string(s) {\n return typeof s === 'string';\n};\nvar array = Array.isArray;\nvar object = function object(obj) {\n return obj && !array(obj) && typeof obj === 'object';\n};\nvar promise = function promise(p) {\n return p && func(p.then);\n};\nvar iterator = function iterator(it) {\n return it && func(it.next) && func(it.throw);\n};\nvar iterable = function iterable(it) {\n return it && func(Symbol) ? func(it[Symbol.iterator]) : array(it);\n};\nvar task = function task(t) {\n return t && t[TASK];\n};\nvar sagaAction = function sagaAction(a) {\n return Boolean(a && a[SAGA_ACTION]);\n};\nvar observable = function observable(ob) {\n return ob && func(ob.subscribe);\n};\nvar buffer = function buffer(buf) {\n return buf && func(buf.isEmpty) && func(buf.take) && func(buf.put);\n};\nvar pattern = function pattern(pat) {\n return pat && (string(pat) || symbol(pat) || func(pat) || array(pat) && pat.every(pattern));\n};\nvar channel = function channel(ch) {\n return ch && func(ch.take) && func(ch.close);\n};\nvar stringableFunc = function stringableFunc(f) {\n return func(f) && f.hasOwnProperty('toString');\n};\nvar symbol = function symbol(sym) {\n return Boolean(sym) && typeof Symbol === 'function' && sym.constructor === Symbol && sym !== Symbol.prototype;\n};\nvar multicast = function multicast(ch) {\n return channel(ch) && ch[MULTICAST];\n};\nvar effect = function effect(eff) {\n return eff && eff[IO];\n};\n\nexport { array, buffer, channel, effect, func, iterable, iterator, multicast, notUndef, number, object, observable, pattern, promise, sagaAction, string, stringableFunc, symbol, task, undef };\n","import { CANCEL } from '@redux-saga/symbols';\n\nfunction delayP(ms, val) {\n if (val === void 0) {\n val = true;\n }\n\n var timeoutId;\n var promise = new Promise(function (resolve) {\n timeoutId = setTimeout(resolve, ms, val);\n });\n\n promise[CANCEL] = function () {\n clearTimeout(timeoutId);\n };\n\n return promise;\n}\n\nexport default delayP;\n","import { TASK_CANCEL, TERMINATE, SAGA_LOCATION, SAGA_ACTION, IO, SELF_CANCELLATION } from '@redux-saga/symbols';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport { array, notUndef, pattern, multicast, channel, undef, effect, task, func, buffer, string, object } from '@redux-saga/is';\nimport delayP from '@redux-saga/delay-p';\n\nvar konst = function konst(v) {\n return function () {\n return v;\n };\n};\nvar kTrue =\n/*#__PURE__*/\nkonst(true);\n\nvar noop = function noop() {};\n\nif (process.env.NODE_ENV !== 'production' && typeof Proxy !== 'undefined') {\n noop =\n /*#__PURE__*/\n new Proxy(noop, {\n set: function set() {\n throw internalErr('There was an attempt to assign a property to internal `noop` function.');\n }\n });\n}\nvar identity = function identity(v) {\n return v;\n};\nvar hasSymbol = typeof Symbol === 'function';\nvar asyncIteratorSymbol = hasSymbol && Symbol.asyncIterator ? Symbol.asyncIterator : '@@asyncIterator';\nfunction check(value, predicate, error) {\n if (!predicate(value)) {\n throw new Error(error);\n }\n}\nvar assignWithSymbols = function assignWithSymbols(target, source) {\n _extends(target, source);\n\n if (Object.getOwnPropertySymbols) {\n Object.getOwnPropertySymbols(source).forEach(function (s) {\n target[s] = source[s];\n });\n }\n};\nvar flatMap = function flatMap(mapper, arr) {\n var _ref;\n\n return (_ref = []).concat.apply(_ref, arr.map(mapper));\n};\nfunction remove(array, item) {\n var index = array.indexOf(item);\n\n if (index >= 0) {\n array.splice(index, 1);\n }\n}\nfunction once(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n\n called = true;\n fn();\n };\n}\n\nvar kThrow = function kThrow(err) {\n throw err;\n};\n\nvar kReturn = function kReturn(value) {\n return {\n value: value,\n done: true\n };\n};\n\nfunction makeIterator(next, thro, name) {\n if (thro === void 0) {\n thro = kThrow;\n }\n\n if (name === void 0) {\n name = 'iterator';\n }\n\n var iterator = {\n meta: {\n name: name\n },\n next: next,\n throw: thro,\n return: kReturn,\n isSagaIterator: true\n };\n\n if (typeof Symbol !== 'undefined') {\n iterator[Symbol.iterator] = function () {\n return iterator;\n };\n }\n\n return iterator;\n}\nfunction logError(error, _ref2) {\n var sagaStack = _ref2.sagaStack;\n\n /*eslint-disable no-console*/\n console.error(error);\n console.error(sagaStack);\n}\nvar internalErr = function internalErr(err) {\n return new Error(\"\\n redux-saga: Error checking hooks detected an inconsistent state. This is likely a bug\\n in redux-saga code and not yours. Thanks for reporting this in the project's github repo.\\n Error: \" + err + \"\\n\");\n};\nvar createSetContextWarning = function createSetContextWarning(ctx, props) {\n return (ctx ? ctx + '.' : '') + \"setContext(props): argument \" + props + \" is not a plain object\";\n};\nvar FROZEN_ACTION_ERROR = \"You can't put (a.k.a. dispatch from saga) frozen actions.\\nWe have to define a special non-enumerable property on those actions for scheduling purposes.\\nOtherwise you wouldn't be able to communicate properly between sagas & other subscribers (action ordering would become far less predictable).\\nIf you are using redux and you care about this behaviour (frozen actions),\\nthen you might want to switch to freezing actions in a middleware rather than in action creator.\\nExample implementation:\\n\\nconst freezeActions = store => next => action => next(Object.freeze(action))\\n\"; // creates empty, but not-holey array\n\nvar createEmptyArray = function createEmptyArray(n) {\n return Array.apply(null, new Array(n));\n};\nvar wrapSagaDispatch = function wrapSagaDispatch(dispatch) {\n return function (action) {\n if (process.env.NODE_ENV !== 'production') {\n check(action, function (ac) {\n return !Object.isFrozen(ac);\n }, FROZEN_ACTION_ERROR);\n }\n\n return dispatch(Object.defineProperty(action, SAGA_ACTION, {\n value: true\n }));\n };\n};\nvar shouldTerminate = function shouldTerminate(res) {\n return res === TERMINATE;\n};\nvar shouldCancel = function shouldCancel(res) {\n return res === TASK_CANCEL;\n};\nvar shouldComplete = function shouldComplete(res) {\n return shouldTerminate(res) || shouldCancel(res);\n};\nfunction createAllStyleChildCallbacks(shape, parentCallback) {\n var keys = Object.keys(shape);\n var totalCount = keys.length;\n\n if (process.env.NODE_ENV !== 'production') {\n check(totalCount, function (c) {\n return c > 0;\n }, 'createAllStyleChildCallbacks: get an empty array or object');\n }\n\n var completedCount = 0;\n var completed;\n var results = array(shape) ? createEmptyArray(totalCount) : {};\n var childCallbacks = {};\n\n function checkEnd() {\n if (completedCount === totalCount) {\n completed = true;\n parentCallback(results);\n }\n }\n\n keys.forEach(function (key) {\n var chCbAtKey = function chCbAtKey(res, isErr) {\n if (completed) {\n return;\n }\n\n if (isErr || shouldComplete(res)) {\n parentCallback.cancel();\n parentCallback(res, isErr);\n } else {\n results[key] = res;\n completedCount++;\n checkEnd();\n }\n };\n\n chCbAtKey.cancel = noop;\n childCallbacks[key] = chCbAtKey;\n });\n\n parentCallback.cancel = function () {\n if (!completed) {\n completed = true;\n keys.forEach(function (key) {\n return childCallbacks[key].cancel();\n });\n }\n };\n\n return childCallbacks;\n}\nfunction getMetaInfo(fn) {\n return {\n name: fn.name || 'anonymous',\n location: getLocation(fn)\n };\n}\nfunction getLocation(instrumented) {\n return instrumented[SAGA_LOCATION];\n}\n\nvar BUFFER_OVERFLOW = \"Channel's Buffer overflow!\";\nvar ON_OVERFLOW_THROW = 1;\nvar ON_OVERFLOW_DROP = 2;\nvar ON_OVERFLOW_SLIDE = 3;\nvar ON_OVERFLOW_EXPAND = 4;\nvar zeroBuffer = {\n isEmpty: kTrue,\n put: noop,\n take: noop\n};\n\nfunction ringBuffer(limit, overflowAction) {\n if (limit === void 0) {\n limit = 10;\n }\n\n var arr = new Array(limit);\n var length = 0;\n var pushIndex = 0;\n var popIndex = 0;\n\n var push = function push(it) {\n arr[pushIndex] = it;\n pushIndex = (pushIndex + 1) % limit;\n length++;\n };\n\n var take = function take() {\n if (length != 0) {\n var it = arr[popIndex];\n arr[popIndex] = null;\n length--;\n popIndex = (popIndex + 1) % limit;\n return it;\n }\n };\n\n var flush = function flush() {\n var items = [];\n\n while (length) {\n items.push(take());\n }\n\n return items;\n };\n\n return {\n isEmpty: function isEmpty() {\n return length == 0;\n },\n put: function put(it) {\n if (length < limit) {\n push(it);\n } else {\n var doubledLimit;\n\n switch (overflowAction) {\n case ON_OVERFLOW_THROW:\n throw new Error(BUFFER_OVERFLOW);\n\n case ON_OVERFLOW_SLIDE:\n arr[pushIndex] = it;\n pushIndex = (pushIndex + 1) % limit;\n popIndex = pushIndex;\n break;\n\n case ON_OVERFLOW_EXPAND:\n doubledLimit = 2 * limit;\n arr = flush();\n length = arr.length;\n pushIndex = arr.length;\n popIndex = 0;\n arr.length = doubledLimit;\n limit = doubledLimit;\n push(it);\n break;\n\n default: // DROP\n\n }\n }\n },\n take: take,\n flush: flush\n };\n}\n\nvar none = function none() {\n return zeroBuffer;\n};\nvar fixed = function fixed(limit) {\n return ringBuffer(limit, ON_OVERFLOW_THROW);\n};\nvar dropping = function dropping(limit) {\n return ringBuffer(limit, ON_OVERFLOW_DROP);\n};\nvar sliding = function sliding(limit) {\n return ringBuffer(limit, ON_OVERFLOW_SLIDE);\n};\nvar expanding = function expanding(initialSize) {\n return ringBuffer(initialSize, ON_OVERFLOW_EXPAND);\n};\n\nvar buffers = /*#__PURE__*/Object.freeze({\n __proto__: null,\n none: none,\n fixed: fixed,\n dropping: dropping,\n sliding: sliding,\n expanding: expanding\n});\n\nvar TAKE = 'TAKE';\nvar PUT = 'PUT';\nvar ALL = 'ALL';\nvar RACE = 'RACE';\nvar CALL = 'CALL';\nvar CPS = 'CPS';\nvar FORK = 'FORK';\nvar JOIN = 'JOIN';\nvar CANCEL = 'CANCEL';\nvar SELECT = 'SELECT';\nvar ACTION_CHANNEL = 'ACTION_CHANNEL';\nvar CANCELLED = 'CANCELLED';\nvar FLUSH = 'FLUSH';\nvar GET_CONTEXT = 'GET_CONTEXT';\nvar SET_CONTEXT = 'SET_CONTEXT';\n\nvar effectTypes = /*#__PURE__*/Object.freeze({\n __proto__: null,\n TAKE: TAKE,\n PUT: PUT,\n ALL: ALL,\n RACE: RACE,\n CALL: CALL,\n CPS: CPS,\n FORK: FORK,\n JOIN: JOIN,\n CANCEL: CANCEL,\n SELECT: SELECT,\n ACTION_CHANNEL: ACTION_CHANNEL,\n CANCELLED: CANCELLED,\n FLUSH: FLUSH,\n GET_CONTEXT: GET_CONTEXT,\n SET_CONTEXT: SET_CONTEXT\n});\n\nvar TEST_HINT = '\\n(HINT: if you are getting these errors in tests, consider using createMockTask from @redux-saga/testing-utils)';\n\nvar makeEffect = function makeEffect(type, payload) {\n var _ref;\n\n return _ref = {}, _ref[IO] = true, _ref.combinator = false, _ref.type = type, _ref.payload = payload, _ref;\n};\n\nvar isForkEffect = function isForkEffect(eff) {\n return effect(eff) && eff.type === FORK;\n};\n\nvar detach = function detach(eff) {\n if (process.env.NODE_ENV !== 'production') {\n check(eff, isForkEffect, 'detach(eff): argument must be a fork effect');\n }\n\n return makeEffect(FORK, _extends({}, eff.payload, {\n detached: true\n }));\n};\nfunction take(patternOrChannel, multicastPattern) {\n if (patternOrChannel === void 0) {\n patternOrChannel = '*';\n }\n\n if (process.env.NODE_ENV !== 'production' && arguments.length) {\n check(arguments[0], notUndef, 'take(patternOrChannel): patternOrChannel is undefined');\n }\n\n if (pattern(patternOrChannel)) {\n return makeEffect(TAKE, {\n pattern: patternOrChannel\n });\n }\n\n if (multicast(patternOrChannel) && notUndef(multicastPattern) && pattern(multicastPattern)) {\n return makeEffect(TAKE, {\n channel: patternOrChannel,\n pattern: multicastPattern\n });\n }\n\n if (channel(patternOrChannel)) {\n return makeEffect(TAKE, {\n channel: patternOrChannel\n });\n }\n\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\"take(patternOrChannel): argument \" + patternOrChannel + \" is not valid channel or a valid pattern\");\n }\n}\nvar takeMaybe = function takeMaybe() {\n var eff = take.apply(void 0, arguments);\n eff.payload.maybe = true;\n return eff;\n};\nfunction put(channel$1, action) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n check(channel$1, notUndef, 'put(channel, action): argument channel is undefined');\n check(channel$1, channel, \"put(channel, action): argument \" + channel$1 + \" is not a valid channel\");\n check(action, notUndef, 'put(channel, action): argument action is undefined');\n } else {\n check(channel$1, notUndef, 'put(action): argument action is undefined');\n }\n }\n\n if (undef(action)) {\n action = channel$1; // `undefined` instead of `null` to make default parameter work\n\n channel$1 = undefined;\n }\n\n return makeEffect(PUT, {\n channel: channel$1,\n action: action\n });\n}\nvar putResolve = function putResolve() {\n var eff = put.apply(void 0, arguments);\n eff.payload.resolve = true;\n return eff;\n};\nfunction all(effects) {\n var eff = makeEffect(ALL, effects);\n eff.combinator = true;\n return eff;\n}\nfunction race(effects) {\n var eff = makeEffect(RACE, effects);\n eff.combinator = true;\n return eff;\n} // this match getFnCallDescriptor logic\n\nvar validateFnDescriptor = function validateFnDescriptor(effectName, fnDescriptor) {\n check(fnDescriptor, notUndef, effectName + \": argument fn is undefined or null\");\n\n if (func(fnDescriptor)) {\n return;\n }\n\n var context = null;\n var fn;\n\n if (array(fnDescriptor)) {\n context = fnDescriptor[0];\n fn = fnDescriptor[1];\n check(fn, notUndef, effectName + \": argument of type [context, fn] has undefined or null `fn`\");\n } else if (object(fnDescriptor)) {\n context = fnDescriptor.context;\n fn = fnDescriptor.fn;\n check(fn, notUndef, effectName + \": argument of type {context, fn} has undefined or null `fn`\");\n } else {\n check(fnDescriptor, func, effectName + \": argument fn is not function\");\n return;\n }\n\n if (context && string(fn)) {\n check(context[fn], func, effectName + \": context arguments has no such method - \\\"\" + fn + \"\\\"\");\n return;\n }\n\n check(fn, func, effectName + \": unpacked fn argument (from [context, fn] or {context, fn}) is not a function\");\n};\n\nfunction getFnCallDescriptor(fnDescriptor, args) {\n var context = null;\n var fn;\n\n if (func(fnDescriptor)) {\n fn = fnDescriptor;\n } else {\n if (array(fnDescriptor)) {\n context = fnDescriptor[0];\n fn = fnDescriptor[1];\n } else {\n context = fnDescriptor.context;\n fn = fnDescriptor.fn;\n }\n\n if (context && string(fn) && func(context[fn])) {\n fn = context[fn];\n }\n }\n\n return {\n context: context,\n fn: fn,\n args: args\n };\n}\n\nvar isNotDelayEffect = function isNotDelayEffect(fn) {\n return fn !== delay;\n};\n\nfunction call(fnDescriptor) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (process.env.NODE_ENV !== 'production') {\n var arg0 = typeof args[0] === 'number' ? args[0] : 'ms';\n check(fnDescriptor, isNotDelayEffect, \"instead of writing `yield call(delay, \" + arg0 + \")` where delay is an effect from `redux-saga/effects` you should write `yield delay(\" + arg0 + \")`\");\n validateFnDescriptor('call', fnDescriptor);\n }\n\n return makeEffect(CALL, getFnCallDescriptor(fnDescriptor, args));\n}\nfunction apply(context, fn, args) {\n if (args === void 0) {\n args = [];\n }\n\n var fnDescriptor = [context, fn];\n\n if (process.env.NODE_ENV !== 'production') {\n validateFnDescriptor('apply', fnDescriptor);\n }\n\n return makeEffect(CALL, getFnCallDescriptor([context, fn], args));\n}\nfunction cps(fnDescriptor) {\n if (process.env.NODE_ENV !== 'production') {\n validateFnDescriptor('cps', fnDescriptor);\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n return makeEffect(CPS, getFnCallDescriptor(fnDescriptor, args));\n}\nfunction fork(fnDescriptor) {\n if (process.env.NODE_ENV !== 'production') {\n validateFnDescriptor('fork', fnDescriptor);\n check(fnDescriptor, function (arg) {\n return !effect(arg);\n }, 'fork: argument must not be an effect');\n }\n\n for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n args[_key3 - 1] = arguments[_key3];\n }\n\n return makeEffect(FORK, getFnCallDescriptor(fnDescriptor, args));\n}\nfunction spawn(fnDescriptor) {\n if (process.env.NODE_ENV !== 'production') {\n validateFnDescriptor('spawn', fnDescriptor);\n }\n\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n return detach(fork.apply(void 0, [fnDescriptor].concat(args)));\n}\nfunction join(taskOrTasks) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n throw new Error('join(...tasks) is not supported any more. Please use join([...tasks]) to join multiple tasks.');\n }\n\n if (array(taskOrTasks)) {\n taskOrTasks.forEach(function (t) {\n check(t, task, \"join([...tasks]): argument \" + t + \" is not a valid Task object \" + TEST_HINT);\n });\n } else {\n check(taskOrTasks, task, \"join(task): argument \" + taskOrTasks + \" is not a valid Task object \" + TEST_HINT);\n }\n }\n\n return makeEffect(JOIN, taskOrTasks);\n}\nfunction cancel(taskOrTasks) {\n if (taskOrTasks === void 0) {\n taskOrTasks = SELF_CANCELLATION;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n throw new Error('cancel(...tasks) is not supported any more. Please use cancel([...tasks]) to cancel multiple tasks.');\n }\n\n if (array(taskOrTasks)) {\n taskOrTasks.forEach(function (t) {\n check(t, task, \"cancel([...tasks]): argument \" + t + \" is not a valid Task object \" + TEST_HINT);\n });\n } else if (taskOrTasks !== SELF_CANCELLATION && notUndef(taskOrTasks)) {\n check(taskOrTasks, task, \"cancel(task): argument \" + taskOrTasks + \" is not a valid Task object \" + TEST_HINT);\n }\n }\n\n return makeEffect(CANCEL, taskOrTasks);\n}\nfunction select(selector) {\n if (selector === void 0) {\n selector = identity;\n }\n\n for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {\n args[_key5 - 1] = arguments[_key5];\n }\n\n if (process.env.NODE_ENV !== 'production' && arguments.length) {\n check(arguments[0], notUndef, 'select(selector, [...]): argument selector is undefined');\n check(selector, func, \"select(selector, [...]): argument \" + selector + \" is not a function\");\n }\n\n return makeEffect(SELECT, {\n selector: selector,\n args: args\n });\n}\n/**\n channel(pattern, [buffer]) => creates a proxy channel for store actions\n**/\n\nfunction actionChannel(pattern$1, buffer$1) {\n if (process.env.NODE_ENV !== 'production') {\n check(pattern$1, pattern, 'actionChannel(pattern,...): argument pattern is not valid');\n\n if (arguments.length > 1) {\n check(buffer$1, notUndef, 'actionChannel(pattern, buffer): argument buffer is undefined');\n check(buffer$1, buffer, \"actionChannel(pattern, buffer): argument \" + buffer$1 + \" is not a valid buffer\");\n }\n }\n\n return makeEffect(ACTION_CHANNEL, {\n pattern: pattern$1,\n buffer: buffer$1\n });\n}\nfunction cancelled() {\n return makeEffect(CANCELLED, {});\n}\nfunction flush(channel$1) {\n if (process.env.NODE_ENV !== 'production') {\n check(channel$1, channel, \"flush(channel): argument \" + channel$1 + \" is not valid channel\");\n }\n\n return makeEffect(FLUSH, channel$1);\n}\nfunction getContext(prop) {\n if (process.env.NODE_ENV !== 'production') {\n check(prop, string, \"getContext(prop): argument \" + prop + \" is not a string\");\n }\n\n return makeEffect(GET_CONTEXT, prop);\n}\nfunction setContext(props) {\n if (process.env.NODE_ENV !== 'production') {\n check(props, object, createSetContextWarning(null, props));\n }\n\n return makeEffect(SET_CONTEXT, props);\n}\nvar delay =\n/*#__PURE__*/\ncall.bind(null, delayP);\n\nexport { apply as $, ALL as A, logError as B, CALL as C, wrapSagaDispatch as D, identity as E, FORK as F, GET_CONTEXT as G, buffers as H, detach as I, JOIN as J, take as K, fork as L, cancel as M, call as N, actionChannel as O, PUT as P, sliding as Q, RACE as R, SELECT as S, TAKE as T, delay as U, race as V, effectTypes as W, takeMaybe as X, put as Y, putResolve as Z, all as _, CPS as a, cps as a0, spawn as a1, join as a2, select as a3, cancelled as a4, flush as a5, getContext as a6, setContext as a7, CANCEL as b, check as c, ACTION_CHANNEL as d, expanding as e, CANCELLED as f, FLUSH as g, SET_CONTEXT as h, internalErr as i, getMetaInfo as j, kTrue as k, createAllStyleChildCallbacks as l, createEmptyArray as m, none as n, once as o, assignWithSymbols as p, makeIterator as q, remove as r, shouldComplete as s, noop as t, flatMap as u, getLocation as v, createSetContextWarning as w, asyncIteratorSymbol as x, shouldCancel as y, shouldTerminate as z };\n","function deferred() {\n var def = {};\n def.promise = new Promise(function (resolve, reject) {\n def.resolve = resolve;\n def.reject = reject;\n });\n return def;\n}\nfunction arrayOfDeferred(length) {\n var arr = [];\n\n for (var i = 0; i < length; i++) {\n arr.push(deferred());\n }\n\n return arr;\n}\n\nexport default deferred;\nexport { arrayOfDeferred };\n","import { CHANNEL_END_TYPE, MULTICAST, MATCH, SAGA_ACTION, CANCEL, SELF_CANCELLATION, TERMINATE, TASK, TASK_CANCEL, IO } from '@redux-saga/symbols';\nexport { CANCEL, SAGA_LOCATION } from '@redux-saga/symbols';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutPropertiesLoose from '@babel/runtime/helpers/esm/objectWithoutPropertiesLoose';\nimport { string as string$1, array as array$1, stringableFunc, func, symbol as symbol$1, buffer, notUndef, promise, iterator, undef, object, channel as channel$1 } from '@redux-saga/is';\nimport { k as kTrue, e as expanding, c as check, o as once, r as remove, n as none, i as internalErr, T as TAKE, P as PUT, A as ALL, R as RACE, C as CALL, a as CPS, F as FORK, J as JOIN, b as CANCEL$1, S as SELECT, d as ACTION_CHANNEL, f as CANCELLED$1, g as FLUSH, G as GET_CONTEXT, h as SET_CONTEXT, j as getMetaInfo, l as createAllStyleChildCallbacks, m as createEmptyArray, p as assignWithSymbols, q as makeIterator, s as shouldComplete, t as noop, u as flatMap, v as getLocation, w as createSetContextWarning, x as asyncIteratorSymbol, y as shouldCancel, z as shouldTerminate, B as logError, D as wrapSagaDispatch, E as identity } from './io-6de156f3.js';\nexport { H as buffers, I as detach } from './io-6de156f3.js';\nimport { compose } from 'redux';\nimport deferred from '@redux-saga/deferred';\nimport '@redux-saga/delay-p';\n\nvar queue = [];\n/**\n Variable to hold a counting semaphore\n - Incrementing adds a lock and puts the scheduler in a `suspended` state (if it's not\n already suspended)\n - Decrementing releases a lock. Zero locks puts the scheduler in a `released` state. This\n triggers flushing the queued tasks.\n**/\n\nvar semaphore = 0;\n/**\n Executes a task 'atomically'. Tasks scheduled during this execution will be queued\n and flushed after this task has finished (assuming the scheduler endup in a released\n state).\n**/\n\nfunction exec(task) {\n try {\n suspend();\n task();\n } finally {\n release();\n }\n}\n/**\n Executes or queues a task depending on the state of the scheduler (`suspended` or `released`)\n**/\n\n\nfunction asap(task) {\n queue.push(task);\n\n if (!semaphore) {\n suspend();\n flush();\n }\n}\n/**\n * Puts the scheduler in a `suspended` state and executes a task immediately.\n */\n\nfunction immediately(task) {\n try {\n suspend();\n return task();\n } finally {\n flush();\n }\n}\n/**\n Puts the scheduler in a `suspended` state. Scheduled tasks will be queued until the\n scheduler is released.\n**/\n\nfunction suspend() {\n semaphore++;\n}\n/**\n Puts the scheduler in a `released` state.\n**/\n\n\nfunction release() {\n semaphore--;\n}\n/**\n Releases the current lock. Executes all queued tasks if the scheduler is in the released state.\n**/\n\n\nfunction flush() {\n release();\n var task;\n\n while (!semaphore && (task = queue.shift()) !== undefined) {\n exec(task);\n }\n}\n\nvar array = function array(patterns) {\n return function (input) {\n return patterns.some(function (p) {\n return matcher(p)(input);\n });\n };\n};\nvar predicate = function predicate(_predicate) {\n return function (input) {\n return _predicate(input);\n };\n};\nvar string = function string(pattern) {\n return function (input) {\n return input.type === String(pattern);\n };\n};\nvar symbol = function symbol(pattern) {\n return function (input) {\n return input.type === pattern;\n };\n};\nvar wildcard = function wildcard() {\n return kTrue;\n};\nfunction matcher(pattern) {\n // prettier-ignore\n var matcherCreator = pattern === '*' ? wildcard : string$1(pattern) ? string : array$1(pattern) ? array : stringableFunc(pattern) ? string : func(pattern) ? predicate : symbol$1(pattern) ? symbol : null;\n\n if (matcherCreator === null) {\n throw new Error(\"invalid pattern: \" + pattern);\n }\n\n return matcherCreator(pattern);\n}\n\nvar END = {\n type: CHANNEL_END_TYPE\n};\nvar isEnd = function isEnd(a) {\n return a && a.type === CHANNEL_END_TYPE;\n};\nvar CLOSED_CHANNEL_WITH_TAKERS = 'Cannot have a closed channel with pending takers';\nvar INVALID_BUFFER = 'invalid buffer passed to channel factory function';\nvar UNDEFINED_INPUT_ERROR = \"Saga or channel was provided with an undefined action\\nHints:\\n - check that your Action Creator returns a non-undefined value\\n - if the Saga was started using runSaga, check that your subscribe source provides the action to its listeners\";\nfunction channel(buffer$1) {\n if (buffer$1 === void 0) {\n buffer$1 = expanding();\n }\n\n var closed = false;\n var takers = [];\n\n if (process.env.NODE_ENV !== 'production') {\n check(buffer$1, buffer, INVALID_BUFFER);\n }\n\n function checkForbiddenStates() {\n if (closed && takers.length) {\n throw internalErr(CLOSED_CHANNEL_WITH_TAKERS);\n }\n\n if (takers.length && !buffer$1.isEmpty()) {\n throw internalErr('Cannot have pending takers with non empty buffer');\n }\n }\n\n function put(input) {\n if (process.env.NODE_ENV !== 'production') {\n checkForbiddenStates();\n check(input, notUndef, UNDEFINED_INPUT_ERROR);\n }\n\n if (closed) {\n return;\n }\n\n if (takers.length === 0) {\n return buffer$1.put(input);\n }\n\n var cb = takers.shift();\n cb(input);\n }\n\n function take(cb) {\n if (process.env.NODE_ENV !== 'production') {\n checkForbiddenStates();\n check(cb, func, \"channel.take's callback must be a function\");\n }\n\n if (closed && buffer$1.isEmpty()) {\n cb(END);\n } else if (!buffer$1.isEmpty()) {\n cb(buffer$1.take());\n } else {\n takers.push(cb);\n\n cb.cancel = function () {\n remove(takers, cb);\n };\n }\n }\n\n function flush(cb) {\n if (process.env.NODE_ENV !== 'production') {\n checkForbiddenStates();\n check(cb, func, \"channel.flush' callback must be a function\");\n }\n\n if (closed && buffer$1.isEmpty()) {\n cb(END);\n return;\n }\n\n cb(buffer$1.flush());\n }\n\n function close() {\n if (process.env.NODE_ENV !== 'production') {\n checkForbiddenStates();\n }\n\n if (closed) {\n return;\n }\n\n closed = true;\n var arr = takers;\n takers = [];\n\n for (var i = 0, len = arr.length; i < len; i++) {\n var taker = arr[i];\n taker(END);\n }\n }\n\n return {\n take: take,\n put: put,\n flush: flush,\n close: close\n };\n}\nfunction eventChannel(subscribe, buffer) {\n if (buffer === void 0) {\n buffer = none();\n }\n\n var closed = false;\n var unsubscribe;\n var chan = channel(buffer);\n\n var close = function close() {\n if (closed) {\n return;\n }\n\n closed = true;\n\n if (func(unsubscribe)) {\n unsubscribe();\n }\n\n chan.close();\n };\n\n unsubscribe = subscribe(function (input) {\n if (isEnd(input)) {\n close();\n return;\n }\n\n chan.put(input);\n });\n\n if (process.env.NODE_ENV !== 'production') {\n check(unsubscribe, func, 'in eventChannel: subscribe should return a function to unsubscribe');\n }\n\n unsubscribe = once(unsubscribe);\n\n if (closed) {\n unsubscribe();\n }\n\n return {\n take: chan.take,\n flush: chan.flush,\n close: close\n };\n}\nfunction multicastChannel() {\n var _ref;\n\n var closed = false;\n var currentTakers = [];\n var nextTakers = currentTakers;\n\n function checkForbiddenStates() {\n if (closed && nextTakers.length) {\n throw internalErr(CLOSED_CHANNEL_WITH_TAKERS);\n }\n }\n\n var ensureCanMutateNextTakers = function ensureCanMutateNextTakers() {\n if (nextTakers !== currentTakers) {\n return;\n }\n\n nextTakers = currentTakers.slice();\n };\n\n var close = function close() {\n if (process.env.NODE_ENV !== 'production') {\n checkForbiddenStates();\n }\n\n closed = true;\n var takers = currentTakers = nextTakers;\n nextTakers = [];\n takers.forEach(function (taker) {\n taker(END);\n });\n };\n\n return _ref = {}, _ref[MULTICAST] = true, _ref.put = function put(input) {\n if (process.env.NODE_ENV !== 'production') {\n checkForbiddenStates();\n check(input, notUndef, UNDEFINED_INPUT_ERROR);\n }\n\n if (closed) {\n return;\n }\n\n if (isEnd(input)) {\n close();\n return;\n }\n\n var takers = currentTakers = nextTakers;\n\n for (var i = 0, len = takers.length; i < len; i++) {\n var taker = takers[i];\n\n if (taker[MATCH](input)) {\n taker.cancel();\n taker(input);\n }\n }\n }, _ref.take = function take(cb, matcher) {\n if (matcher === void 0) {\n matcher = wildcard;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n checkForbiddenStates();\n }\n\n if (closed) {\n cb(END);\n return;\n }\n\n cb[MATCH] = matcher;\n ensureCanMutateNextTakers();\n nextTakers.push(cb);\n cb.cancel = once(function () {\n ensureCanMutateNextTakers();\n remove(nextTakers, cb);\n });\n }, _ref.close = close, _ref;\n}\nfunction stdChannel() {\n var chan = multicastChannel();\n var put = chan.put;\n\n chan.put = function (input) {\n if (input[SAGA_ACTION]) {\n put(input);\n return;\n }\n\n asap(function () {\n put(input);\n });\n };\n\n return chan;\n}\n\nvar RUNNING = 0;\nvar CANCELLED = 1;\nvar ABORTED = 2;\nvar DONE = 3;\n\nfunction resolvePromise(promise, cb) {\n var cancelPromise = promise[CANCEL];\n\n if (func(cancelPromise)) {\n cb.cancel = cancelPromise;\n }\n\n promise.then(cb, function (error) {\n cb(error, true);\n });\n}\n\nvar current = 0;\nvar nextSagaId = (function () {\n return ++current;\n});\n\nvar _effectRunnerMap;\n\nfunction getIteratorMetaInfo(iterator, fn) {\n if (iterator.isSagaIterator) {\n return {\n name: iterator.meta.name\n };\n }\n\n return getMetaInfo(fn);\n}\n\nfunction createTaskIterator(_ref) {\n var context = _ref.context,\n fn = _ref.fn,\n args = _ref.args;\n\n // catch synchronous failures; see #152 and #441\n try {\n var result = fn.apply(context, args); // i.e. a generator function returns an iterator\n\n if (iterator(result)) {\n return result;\n }\n\n var resolved = false;\n\n var next = function next(arg) {\n if (!resolved) {\n resolved = true; // Only promises returned from fork will be interpreted. See #1573\n\n return {\n value: result,\n done: !promise(result)\n };\n } else {\n return {\n value: arg,\n done: true\n };\n }\n };\n\n return makeIterator(next);\n } catch (err) {\n // do not bubble up synchronous failures for detached forks\n // instead create a failed task. See #152 and #441\n return makeIterator(function () {\n throw err;\n });\n }\n}\n\nfunction runPutEffect(env, _ref2, cb) {\n var channel = _ref2.channel,\n action = _ref2.action,\n resolve = _ref2.resolve;\n\n /**\n Schedule the put in case another saga is holding a lock.\n The put will be executed atomically. ie nested puts will execute after\n this put has terminated.\n **/\n asap(function () {\n var result;\n\n try {\n result = (channel ? channel.put : env.dispatch)(action);\n } catch (error) {\n cb(error, true);\n return;\n }\n\n if (resolve && promise(result)) {\n resolvePromise(result, cb);\n } else {\n cb(result);\n }\n }); // Put effects are non cancellables\n}\n\nfunction runTakeEffect(env, _ref3, cb) {\n var _ref3$channel = _ref3.channel,\n channel = _ref3$channel === void 0 ? env.channel : _ref3$channel,\n pattern = _ref3.pattern,\n maybe = _ref3.maybe;\n\n var takeCb = function takeCb(input) {\n if (input instanceof Error) {\n cb(input, true);\n return;\n }\n\n if (isEnd(input) && !maybe) {\n cb(TERMINATE);\n return;\n }\n\n cb(input);\n };\n\n try {\n channel.take(takeCb, notUndef(pattern) ? matcher(pattern) : null);\n } catch (err) {\n cb(err, true);\n return;\n }\n\n cb.cancel = takeCb.cancel;\n}\n\nfunction runCallEffect(env, _ref4, cb, _ref5) {\n var context = _ref4.context,\n fn = _ref4.fn,\n args = _ref4.args;\n var task = _ref5.task;\n\n // catch synchronous failures; see #152\n try {\n var result = fn.apply(context, args);\n\n if (promise(result)) {\n resolvePromise(result, cb);\n return;\n }\n\n if (iterator(result)) {\n // resolve iterator\n proc(env, result, task.context, current, getMetaInfo(fn),\n /* isRoot */\n false, cb);\n return;\n }\n\n cb(result);\n } catch (error) {\n cb(error, true);\n }\n}\n\nfunction runCPSEffect(env, _ref6, cb) {\n var context = _ref6.context,\n fn = _ref6.fn,\n args = _ref6.args;\n\n // CPS (ie node style functions) can define their own cancellation logic\n // by setting cancel field on the cb\n // catch synchronous failures; see #152\n try {\n var cpsCb = function cpsCb(err, res) {\n if (undef(err)) {\n cb(res);\n } else {\n cb(err, true);\n }\n };\n\n fn.apply(context, args.concat(cpsCb));\n\n if (cpsCb.cancel) {\n cb.cancel = cpsCb.cancel;\n }\n } catch (error) {\n cb(error, true);\n }\n}\n\nfunction runForkEffect(env, _ref7, cb, _ref8) {\n var context = _ref7.context,\n fn = _ref7.fn,\n args = _ref7.args,\n detached = _ref7.detached;\n var parent = _ref8.task;\n var taskIterator = createTaskIterator({\n context: context,\n fn: fn,\n args: args\n });\n var meta = getIteratorMetaInfo(taskIterator, fn);\n immediately(function () {\n var child = proc(env, taskIterator, parent.context, current, meta, detached, undefined);\n\n if (detached) {\n cb(child);\n } else {\n if (child.isRunning()) {\n parent.queue.addTask(child);\n cb(child);\n } else if (child.isAborted()) {\n parent.queue.abort(child.error());\n } else {\n cb(child);\n }\n }\n }); // Fork effects are non cancellables\n}\n\nfunction runJoinEffect(env, taskOrTasks, cb, _ref9) {\n var task = _ref9.task;\n\n var joinSingleTask = function joinSingleTask(taskToJoin, cb) {\n if (taskToJoin.isRunning()) {\n var joiner = {\n task: task,\n cb: cb\n };\n\n cb.cancel = function () {\n if (taskToJoin.isRunning()) remove(taskToJoin.joiners, joiner);\n };\n\n taskToJoin.joiners.push(joiner);\n } else {\n if (taskToJoin.isAborted()) {\n cb(taskToJoin.error(), true);\n } else {\n cb(taskToJoin.result());\n }\n }\n };\n\n if (array$1(taskOrTasks)) {\n if (taskOrTasks.length === 0) {\n cb([]);\n return;\n }\n\n var childCallbacks = createAllStyleChildCallbacks(taskOrTasks, cb);\n taskOrTasks.forEach(function (t, i) {\n joinSingleTask(t, childCallbacks[i]);\n });\n } else {\n joinSingleTask(taskOrTasks, cb);\n }\n}\n\nfunction cancelSingleTask(taskToCancel) {\n if (taskToCancel.isRunning()) {\n taskToCancel.cancel();\n }\n}\n\nfunction runCancelEffect(env, taskOrTasks, cb, _ref10) {\n var task = _ref10.task;\n\n if (taskOrTasks === SELF_CANCELLATION) {\n cancelSingleTask(task);\n } else if (array$1(taskOrTasks)) {\n taskOrTasks.forEach(cancelSingleTask);\n } else {\n cancelSingleTask(taskOrTasks);\n }\n\n cb(); // cancel effects are non cancellables\n}\n\nfunction runAllEffect(env, effects, cb, _ref11) {\n var digestEffect = _ref11.digestEffect;\n var effectId = current;\n var keys = Object.keys(effects);\n\n if (keys.length === 0) {\n cb(array$1(effects) ? [] : {});\n return;\n }\n\n var childCallbacks = createAllStyleChildCallbacks(effects, cb);\n keys.forEach(function (key) {\n digestEffect(effects[key], effectId, childCallbacks[key], key);\n });\n}\n\nfunction runRaceEffect(env, effects, cb, _ref12) {\n var digestEffect = _ref12.digestEffect;\n var effectId = current;\n var keys = Object.keys(effects);\n var response = array$1(effects) ? createEmptyArray(keys.length) : {};\n var childCbs = {};\n var completed = false;\n keys.forEach(function (key) {\n var chCbAtKey = function chCbAtKey(res, isErr) {\n if (completed) {\n return;\n }\n\n if (isErr || shouldComplete(res)) {\n // Race Auto cancellation\n cb.cancel();\n cb(res, isErr);\n } else {\n cb.cancel();\n completed = true;\n response[key] = res;\n cb(response);\n }\n };\n\n chCbAtKey.cancel = noop;\n childCbs[key] = chCbAtKey;\n });\n\n cb.cancel = function () {\n // prevents unnecessary cancellation\n if (!completed) {\n completed = true;\n keys.forEach(function (key) {\n return childCbs[key].cancel();\n });\n }\n };\n\n keys.forEach(function (key) {\n if (completed) {\n return;\n }\n\n digestEffect(effects[key], effectId, childCbs[key], key);\n });\n}\n\nfunction runSelectEffect(env, _ref13, cb) {\n var selector = _ref13.selector,\n args = _ref13.args;\n\n try {\n var state = selector.apply(void 0, [env.getState()].concat(args));\n cb(state);\n } catch (error) {\n cb(error, true);\n }\n}\n\nfunction runChannelEffect(env, _ref14, cb) {\n var pattern = _ref14.pattern,\n buffer = _ref14.buffer;\n var chan = channel(buffer);\n var match = matcher(pattern);\n\n var taker = function taker(action) {\n if (!isEnd(action)) {\n env.channel.take(taker, match);\n }\n\n chan.put(action);\n };\n\n var close = chan.close;\n\n chan.close = function () {\n taker.cancel();\n close();\n };\n\n env.channel.take(taker, match);\n cb(chan);\n}\n\nfunction runCancelledEffect(env, data, cb, _ref15) {\n var task = _ref15.task;\n cb(task.isCancelled());\n}\n\nfunction runFlushEffect(env, channel, cb) {\n channel.flush(cb);\n}\n\nfunction runGetContextEffect(env, prop, cb, _ref16) {\n var task = _ref16.task;\n cb(task.context[prop]);\n}\n\nfunction runSetContextEffect(env, props, cb, _ref17) {\n var task = _ref17.task;\n assignWithSymbols(task.context, props);\n cb();\n}\n\nvar effectRunnerMap = (_effectRunnerMap = {}, _effectRunnerMap[TAKE] = runTakeEffect, _effectRunnerMap[PUT] = runPutEffect, _effectRunnerMap[ALL] = runAllEffect, _effectRunnerMap[RACE] = runRaceEffect, _effectRunnerMap[CALL] = runCallEffect, _effectRunnerMap[CPS] = runCPSEffect, _effectRunnerMap[FORK] = runForkEffect, _effectRunnerMap[JOIN] = runJoinEffect, _effectRunnerMap[CANCEL$1] = runCancelEffect, _effectRunnerMap[SELECT] = runSelectEffect, _effectRunnerMap[ACTION_CHANNEL] = runChannelEffect, _effectRunnerMap[CANCELLED$1] = runCancelledEffect, _effectRunnerMap[FLUSH] = runFlushEffect, _effectRunnerMap[GET_CONTEXT] = runGetContextEffect, _effectRunnerMap[SET_CONTEXT] = runSetContextEffect, _effectRunnerMap);\n\n/**\n Used to track a parent task and its forks\n In the fork model, forked tasks are attached by default to their parent\n We model this using the concept of Parent task && main Task\n main task is the main flow of the current Generator, the parent tasks is the\n aggregation of the main tasks + all its forked tasks.\n Thus the whole model represents an execution tree with multiple branches (vs the\n linear execution tree in sequential (non parallel) programming)\n\n A parent tasks has the following semantics\n - It completes if all its forks either complete or all cancelled\n - If it's cancelled, all forks are cancelled as well\n - It aborts if any uncaught error bubbles up from forks\n - If it completes, the return value is the one returned by the main task\n **/\n\nfunction forkQueue(mainTask, onAbort, cont) {\n var tasks = [];\n var result;\n var completed = false;\n addTask(mainTask);\n\n var getTasks = function getTasks() {\n return tasks;\n };\n\n function abort(err) {\n onAbort();\n cancelAll();\n cont(err, true);\n }\n\n function addTask(task) {\n tasks.push(task);\n\n task.cont = function (res, isErr) {\n if (completed) {\n return;\n }\n\n remove(tasks, task);\n task.cont = noop;\n\n if (isErr) {\n abort(res);\n } else {\n if (task === mainTask) {\n result = res;\n }\n\n if (!tasks.length) {\n completed = true;\n cont(result);\n }\n }\n };\n }\n\n function cancelAll() {\n if (completed) {\n return;\n }\n\n completed = true;\n tasks.forEach(function (t) {\n t.cont = noop;\n t.cancel();\n });\n tasks = [];\n }\n\n return {\n addTask: addTask,\n cancelAll: cancelAll,\n abort: abort,\n getTasks: getTasks\n };\n}\n\n// there can be only a single saga error created at any given moment\n\nfunction formatLocation(fileName, lineNumber) {\n return fileName + \"?\" + lineNumber;\n}\n\nfunction effectLocationAsString(effect) {\n var location = getLocation(effect);\n\n if (location) {\n var code = location.code,\n fileName = location.fileName,\n lineNumber = location.lineNumber;\n var source = code + \" \" + formatLocation(fileName, lineNumber);\n return source;\n }\n\n return '';\n}\n\nfunction sagaLocationAsString(sagaMeta) {\n var name = sagaMeta.name,\n location = sagaMeta.location;\n\n if (location) {\n return name + \" \" + formatLocation(location.fileName, location.lineNumber);\n }\n\n return name;\n}\n\nfunction cancelledTasksAsString(sagaStack) {\n var cancelledTasks = flatMap(function (i) {\n return i.cancelledTasks;\n }, sagaStack);\n\n if (!cancelledTasks.length) {\n return '';\n }\n\n return ['Tasks cancelled due to error:'].concat(cancelledTasks).join('\\n');\n}\n\nvar crashedEffect = null;\nvar sagaStack = [];\nvar addSagaFrame = function addSagaFrame(frame) {\n frame.crashedEffect = crashedEffect;\n sagaStack.push(frame);\n};\nvar clear = function clear() {\n crashedEffect = null;\n sagaStack.length = 0;\n}; // this sets crashed effect for the soon-to-be-reported saga frame\n// this slightly streatches the singleton nature of this module into wrong direction\n// as it's even less obvious what's the data flow here, but it is what it is for now\n\nvar setCrashedEffect = function setCrashedEffect(effect) {\n crashedEffect = effect;\n};\n/**\n @returns {string}\n\n @example\n The above error occurred in task errorInPutSaga {pathToFile}\n when executing effect put({type: 'REDUCER_ACTION_ERROR_IN_PUT'}) {pathToFile}\n created by fetchSaga {pathToFile}\n created by rootSaga {pathToFile}\n*/\n\nvar toString = function toString() {\n var firstSaga = sagaStack[0],\n otherSagas = sagaStack.slice(1);\n var crashedEffectLocation = firstSaga.crashedEffect ? effectLocationAsString(firstSaga.crashedEffect) : null;\n var errorMessage = \"The above error occurred in task \" + sagaLocationAsString(firstSaga.meta) + (crashedEffectLocation ? \" \\n when executing effect \" + crashedEffectLocation : '');\n return [errorMessage].concat(otherSagas.map(function (s) {\n return \" created by \" + sagaLocationAsString(s.meta);\n }), [cancelledTasksAsString(sagaStack)]).join('\\n');\n};\n\nfunction newTask(env, mainTask, parentContext, parentEffectId, meta, isRoot, cont) {\n var _task;\n\n if (cont === void 0) {\n cont = noop;\n }\n\n var status = RUNNING;\n var taskResult;\n var taskError;\n var deferredEnd = null;\n var cancelledDueToErrorTasks = [];\n var context = Object.create(parentContext);\n var queue = forkQueue(mainTask, function onAbort() {\n cancelledDueToErrorTasks.push.apply(cancelledDueToErrorTasks, queue.getTasks().map(function (t) {\n return t.meta.name;\n }));\n }, end);\n /**\n This may be called by a parent generator to trigger/propagate cancellation\n cancel all pending tasks (including the main task), then end the current task.\n Cancellation propagates down to the whole execution tree held by this Parent task\n It's also propagated to all joiners of this task and their execution tree/joiners\n Cancellation is noop for terminated/Cancelled tasks tasks\n **/\n\n function cancel() {\n if (status === RUNNING) {\n // Setting status to CANCELLED does not necessarily mean that the task/iterators are stopped\n // effects in the iterator's finally block will still be executed\n status = CANCELLED;\n queue.cancelAll(); // Ending with a TASK_CANCEL will propagate the Cancellation to all joiners\n\n end(TASK_CANCEL, false);\n }\n }\n\n function end(result, isErr) {\n if (!isErr) {\n // The status here may be RUNNING or CANCELLED\n // If the status is CANCELLED, then we do not need to change it here\n if (result === TASK_CANCEL) {\n status = CANCELLED;\n } else if (status !== CANCELLED) {\n status = DONE;\n }\n\n taskResult = result;\n deferredEnd && deferredEnd.resolve(result);\n } else {\n status = ABORTED;\n addSagaFrame({\n meta: meta,\n cancelledTasks: cancelledDueToErrorTasks\n });\n\n if (task.isRoot) {\n var sagaStack = toString(); // we've dumped the saga stack to string and are passing it to user's code\n // we know that it won't be needed anymore and we need to clear it\n\n clear();\n env.onError(result, {\n sagaStack: sagaStack\n });\n }\n\n taskError = result;\n deferredEnd && deferredEnd.reject(result);\n }\n\n task.cont(result, isErr);\n task.joiners.forEach(function (joiner) {\n joiner.cb(result, isErr);\n });\n task.joiners = null;\n }\n\n function setContext(props) {\n if (process.env.NODE_ENV !== 'production') {\n check(props, object, createSetContextWarning('task', props));\n }\n\n assignWithSymbols(context, props);\n }\n\n function toPromise() {\n if (deferredEnd) {\n return deferredEnd.promise;\n }\n\n deferredEnd = deferred();\n\n if (status === ABORTED) {\n deferredEnd.reject(taskError);\n } else if (status !== RUNNING) {\n deferredEnd.resolve(taskResult);\n }\n\n return deferredEnd.promise;\n }\n\n var task = (_task = {}, _task[TASK] = true, _task.id = parentEffectId, _task.meta = meta, _task.isRoot = isRoot, _task.context = context, _task.joiners = [], _task.queue = queue, _task.cancel = cancel, _task.cont = cont, _task.end = end, _task.setContext = setContext, _task.toPromise = toPromise, _task.isRunning = function isRunning() {\n return status === RUNNING;\n }, _task.isCancelled = function isCancelled() {\n return status === CANCELLED || status === RUNNING && mainTask.status === CANCELLED;\n }, _task.isAborted = function isAborted() {\n return status === ABORTED;\n }, _task.result = function result() {\n return taskResult;\n }, _task.error = function error() {\n return taskError;\n }, _task);\n return task;\n}\n\nfunction proc(env, iterator$1, parentContext, parentEffectId, meta, isRoot, cont) {\n if (process.env.NODE_ENV !== 'production' && iterator$1[asyncIteratorSymbol]) {\n throw new Error(\"redux-saga doesn't support async generators, please use only regular ones\");\n }\n\n var finalRunEffect = env.finalizeRunEffect(runEffect);\n /**\n Tracks the current effect cancellation\n Each time the generator progresses. calling runEffect will set a new value\n on it. It allows propagating cancellation to child effects\n **/\n\n next.cancel = noop;\n /** Creates a main task to track the main flow */\n\n var mainTask = {\n meta: meta,\n cancel: cancelMain,\n status: RUNNING\n };\n /**\n Creates a new task descriptor for this generator.\n A task is the aggregation of it's mainTask and all it's forked tasks.\n **/\n\n var task = newTask(env, mainTask, parentContext, parentEffectId, meta, isRoot, cont);\n var executingContext = {\n task: task,\n digestEffect: digestEffect\n };\n /**\n cancellation of the main task. We'll simply resume the Generator with a TASK_CANCEL\n **/\n\n function cancelMain() {\n if (mainTask.status === RUNNING) {\n mainTask.status = CANCELLED;\n next(TASK_CANCEL);\n }\n }\n /**\n attaches cancellation logic to this task's continuation\n this will permit cancellation to propagate down the call chain\n **/\n\n\n if (cont) {\n cont.cancel = task.cancel;\n } // kicks up the generator\n\n\n next(); // then return the task descriptor to the caller\n\n return task;\n /**\n * This is the generator driver\n * It's a recursive async/continuation function which calls itself\n * until the generator terminates or throws\n * @param {internal commands(TASK_CANCEL | TERMINATE) | any} arg - value, generator will be resumed with.\n * @param {boolean} isErr - the flag shows if effect finished with an error\n *\n * receives either (command | effect result, false) or (any thrown thing, true)\n */\n\n function next(arg, isErr) {\n try {\n var result;\n\n if (isErr) {\n result = iterator$1.throw(arg); // user handled the error, we can clear bookkept values\n\n clear();\n } else if (shouldCancel(arg)) {\n /**\n getting TASK_CANCEL automatically cancels the main task\n We can get this value here\n - By cancelling the parent task manually\n - By joining a Cancelled task\n **/\n mainTask.status = CANCELLED;\n /**\n Cancels the current effect; this will propagate the cancellation down to any called tasks\n **/\n\n next.cancel();\n /**\n If this Generator has a `return` method then invokes it\n This will jump to the finally block\n **/\n\n result = func(iterator$1.return) ? iterator$1.return(TASK_CANCEL) : {\n done: true,\n value: TASK_CANCEL\n };\n } else if (shouldTerminate(arg)) {\n // We get TERMINATE flag, i.e. by taking from a channel that ended using `take` (and not `takem` used to trap End of channels)\n result = func(iterator$1.return) ? iterator$1.return() : {\n done: true\n };\n } else {\n result = iterator$1.next(arg);\n }\n\n if (!result.done) {\n digestEffect(result.value, parentEffectId, next);\n } else {\n /**\n This Generator has ended, terminate the main task and notify the fork queue\n **/\n if (mainTask.status !== CANCELLED) {\n mainTask.status = DONE;\n }\n\n mainTask.cont(result.value);\n }\n } catch (error) {\n if (mainTask.status === CANCELLED) {\n throw error;\n }\n\n mainTask.status = ABORTED;\n mainTask.cont(error, true);\n }\n }\n\n function runEffect(effect, effectId, currCb) {\n /**\n each effect runner must attach its own logic of cancellation to the provided callback\n it allows this generator to propagate cancellation downward.\n ATTENTION! effect runners must setup the cancel logic by setting cb.cancel = [cancelMethod]\n And the setup must occur before calling the callback\n This is a sort of inversion of control: called async functions are responsible\n of completing the flow by calling the provided continuation; while caller functions\n are responsible for aborting the current flow by calling the attached cancel function\n Library users can attach their own cancellation logic to promises by defining a\n promise[CANCEL] method in their returned promises\n ATTENTION! calling cancel must have no effect on an already completed or cancelled effect\n **/\n if (promise(effect)) {\n resolvePromise(effect, currCb);\n } else if (iterator(effect)) {\n // resolve iterator\n proc(env, effect, task.context, effectId, meta,\n /* isRoot */\n false, currCb);\n } else if (effect && effect[IO]) {\n var effectRunner = effectRunnerMap[effect.type];\n effectRunner(env, effect.payload, currCb, executingContext);\n } else {\n // anything else returned as is\n currCb(effect);\n }\n }\n\n function digestEffect(effect, parentEffectId, cb, label) {\n if (label === void 0) {\n label = '';\n }\n\n var effectId = nextSagaId();\n env.sagaMonitor && env.sagaMonitor.effectTriggered({\n effectId: effectId,\n parentEffectId: parentEffectId,\n label: label,\n effect: effect\n });\n /**\n completion callback and cancel callback are mutually exclusive\n We can't cancel an already completed effect\n And We can't complete an already cancelled effectId\n **/\n\n var effectSettled; // Completion callback passed to the appropriate effect runner\n\n function currCb(res, isErr) {\n if (effectSettled) {\n return;\n }\n\n effectSettled = true;\n cb.cancel = noop; // defensive measure\n\n if (env.sagaMonitor) {\n if (isErr) {\n env.sagaMonitor.effectRejected(effectId, res);\n } else {\n env.sagaMonitor.effectResolved(effectId, res);\n }\n }\n\n if (isErr) {\n setCrashedEffect(effect);\n }\n\n cb(res, isErr);\n } // tracks down the current cancel\n\n\n currCb.cancel = noop; // setup cancellation logic on the parent cb\n\n cb.cancel = function () {\n // prevents cancelling an already completed effect\n if (effectSettled) {\n return;\n }\n\n effectSettled = true;\n currCb.cancel(); // propagates cancel downward\n\n currCb.cancel = noop; // defensive measure\n\n env.sagaMonitor && env.sagaMonitor.effectCancelled(effectId);\n };\n\n finalRunEffect(effect, effectId, currCb);\n }\n}\n\nvar RUN_SAGA_SIGNATURE = 'runSaga(options, saga, ...args)';\nvar NON_GENERATOR_ERR = RUN_SAGA_SIGNATURE + \": saga argument must be a Generator function!\";\nfunction runSaga(_ref, saga) {\n var _ref$channel = _ref.channel,\n channel = _ref$channel === void 0 ? stdChannel() : _ref$channel,\n dispatch = _ref.dispatch,\n getState = _ref.getState,\n _ref$context = _ref.context,\n context = _ref$context === void 0 ? {} : _ref$context,\n sagaMonitor = _ref.sagaMonitor,\n effectMiddlewares = _ref.effectMiddlewares,\n _ref$onError = _ref.onError,\n onError = _ref$onError === void 0 ? logError : _ref$onError;\n\n if (process.env.NODE_ENV !== 'production') {\n check(saga, func, NON_GENERATOR_ERR);\n }\n\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var iterator$1 = saga.apply(void 0, args);\n\n if (process.env.NODE_ENV !== 'production') {\n check(iterator$1, iterator, NON_GENERATOR_ERR);\n }\n\n var effectId = nextSagaId();\n\n if (sagaMonitor) {\n // monitors are expected to have a certain interface, let's fill-in any missing ones\n sagaMonitor.rootSagaStarted = sagaMonitor.rootSagaStarted || noop;\n sagaMonitor.effectTriggered = sagaMonitor.effectTriggered || noop;\n sagaMonitor.effectResolved = sagaMonitor.effectResolved || noop;\n sagaMonitor.effectRejected = sagaMonitor.effectRejected || noop;\n sagaMonitor.effectCancelled = sagaMonitor.effectCancelled || noop;\n sagaMonitor.actionDispatched = sagaMonitor.actionDispatched || noop;\n sagaMonitor.rootSagaStarted({\n effectId: effectId,\n saga: saga,\n args: args\n });\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (notUndef(dispatch)) {\n check(dispatch, func, 'dispatch must be a function');\n }\n\n if (notUndef(getState)) {\n check(getState, func, 'getState must be a function');\n }\n\n if (notUndef(effectMiddlewares)) {\n var MIDDLEWARE_TYPE_ERROR = 'effectMiddlewares must be an array of functions';\n check(effectMiddlewares, array$1, MIDDLEWARE_TYPE_ERROR);\n effectMiddlewares.forEach(function (effectMiddleware) {\n return check(effectMiddleware, func, MIDDLEWARE_TYPE_ERROR);\n });\n }\n\n check(onError, func, 'onError passed to the redux-saga is not a function!');\n }\n\n var finalizeRunEffect;\n\n if (effectMiddlewares) {\n var middleware = compose.apply(void 0, effectMiddlewares);\n\n finalizeRunEffect = function finalizeRunEffect(runEffect) {\n return function (effect, effectId, currCb) {\n var plainRunEffect = function plainRunEffect(eff) {\n return runEffect(eff, effectId, currCb);\n };\n\n return middleware(plainRunEffect)(effect);\n };\n };\n } else {\n finalizeRunEffect = identity;\n }\n\n var env = {\n channel: channel,\n dispatch: wrapSagaDispatch(dispatch),\n getState: getState,\n sagaMonitor: sagaMonitor,\n onError: onError,\n finalizeRunEffect: finalizeRunEffect\n };\n return immediately(function () {\n var task = proc(env, iterator$1, context, effectId, getMetaInfo(saga),\n /* isRoot */\n true, undefined);\n\n if (sagaMonitor) {\n sagaMonitor.effectResolved(effectId, task);\n }\n\n return task;\n });\n}\n\nfunction sagaMiddlewareFactory(_temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$context = _ref.context,\n context = _ref$context === void 0 ? {} : _ref$context,\n _ref$channel = _ref.channel,\n channel = _ref$channel === void 0 ? stdChannel() : _ref$channel,\n sagaMonitor = _ref.sagaMonitor,\n options = _objectWithoutPropertiesLoose(_ref, [\"context\", \"channel\", \"sagaMonitor\"]);\n\n var boundRunSaga;\n\n if (process.env.NODE_ENV !== 'production') {\n check(channel, channel$1, 'options.channel passed to the Saga middleware is not a channel');\n }\n\n function sagaMiddleware(_ref2) {\n var getState = _ref2.getState,\n dispatch = _ref2.dispatch;\n boundRunSaga = runSaga.bind(null, _extends({}, options, {\n context: context,\n channel: channel,\n dispatch: dispatch,\n getState: getState,\n sagaMonitor: sagaMonitor\n }));\n return function (next) {\n return function (action) {\n if (sagaMonitor && sagaMonitor.actionDispatched) {\n sagaMonitor.actionDispatched(action);\n }\n\n var result = next(action); // hit reducers\n\n channel.put(action);\n return result;\n };\n };\n }\n\n sagaMiddleware.run = function () {\n if (process.env.NODE_ENV !== 'production' && !boundRunSaga) {\n throw new Error('Before running a Saga, you must mount the Saga middleware on the Store using applyMiddleware');\n }\n\n return boundRunSaga.apply(void 0, arguments);\n };\n\n sagaMiddleware.setContext = function (props) {\n if (process.env.NODE_ENV !== 'production') {\n check(props, object, createSetContextWarning('sagaMiddleware', props));\n }\n\n assignWithSymbols(context, props);\n };\n\n return sagaMiddleware;\n}\n\nexport default sagaMiddlewareFactory;\nexport { END, channel, eventChannel, isEnd, multicastChannel, runSaga, stdChannel };\n","import createSagaMiddleware__default from '@redux-saga/core';\nexport * from '@redux-saga/core';\n\n\n\nexport default createSagaMiddleware__default;\n","import { scrabble } from '@scrabble-solver/configs';\nimport { Locale } from '@scrabble-solver/types';\nvar settingsInitialState = {\n autoGroupTiles: 'left',\n configId: scrabble.id,\n locale: Locale.EN_US\n};\nexport default settingsInitialState;","import { getLocaleConfig } from '@scrabble-solver/configs';\nimport { Board } from '@scrabble-solver/types';\nimport settingsInitialState from './settingsInitialState';\nvar configId = settingsInitialState.configId,\n locale = settingsInitialState.locale;\n\nvar _getLocaleConfig = getLocaleConfig(configId, locale),\n boardHeight = _getLocaleConfig.boardHeight,\n boardWidth = _getLocaleConfig.boardWidth;\n\nvar boardInitialState = Board.create(boardWidth, boardHeight);\nexport default boardInitialState;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { createSlice } from '@reduxjs/toolkit';\nimport { EMPTY_CELL } from '@scrabble-solver/constants';\nimport { Cell, Tile } from '@scrabble-solver/types';\nimport boardInitialState from './boardInitialState';\nvar boardSlice = createSlice({\n initialState: boardInitialState,\n name: 'board',\n reducers: {\n applyResult: function applyResult(state, action) {\n var newBoard = state.clone();\n var result = action.payload;\n result.cells.forEach(function (cell) {\n newBoard.updateCell(cell.x, cell.y, function () {\n return new Cell(_objectSpread(_objectSpread({}, cell), {}, {\n isEmpty: false\n }));\n });\n });\n return newBoard;\n },\n changeCellValue: function changeCellValue(state, action) {\n var newBoard = state.clone();\n var _action$payload = action.payload,\n value = _action$payload.value,\n x = _action$payload.x,\n y = _action$payload.y;\n var isEmpty = !value || value === EMPTY_CELL;\n var tile = isEmpty ? Tile.Null : new Tile({\n character: value\n });\n newBoard.updateCell(x, y, function (cell) {\n return new Cell(_objectSpread(_objectSpread({}, cell), {}, {\n isEmpty: isEmpty,\n tile: tile\n }));\n });\n return newBoard;\n },\n change: function change(_state, action) {\n var board = action.payload;\n return board;\n },\n init: function init(_state, action) {\n var board = action.payload;\n return board;\n },\n reset: function reset() {\n return boardInitialState;\n },\n toggleCellIsBlank: function toggleCellIsBlank(state, action) {\n var newBoard = state.clone();\n var _action$payload2 = action.payload,\n x = _action$payload2.x,\n y = _action$payload2.y;\n newBoard.updateCell(x, y, function (cell) {\n var tile = cell.isEmpty ? cell.tile : new Tile(_objectSpread(_objectSpread({}, cell.tile), {}, {\n isBlank: !cell.tile.isBlank\n }));\n return new Cell(_objectSpread(_objectSpread({}, cell), {}, {\n tile: tile\n }));\n });\n return newBoard;\n }\n }\n});\nexport default boardSlice;","var dictionaryInitialState = {\n definitions: [],\n input: '',\n isAllowed: null,\n isLoading: false,\n word: undefined\n};\nexport default dictionaryInitialState;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { createSlice } from '@reduxjs/toolkit';\nimport dictionaryInitialState from './dictionaryInitialState';\nvar dictionarySlice = createSlice({\n initialState: dictionaryInitialState,\n name: 'dictionary',\n reducers: {\n changeInput: function changeInput(state, action) {\n return _objectSpread(_objectSpread({}, state), {}, {\n input: action.payload\n });\n },\n reset: function reset() {\n return dictionaryInitialState;\n },\n submit: function submit(state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n definitions: dictionaryInitialState.definitions,\n isAllowed: dictionaryInitialState.isAllowed,\n isLoading: true,\n word: dictionaryInitialState.word\n });\n },\n submitFailure: function submitFailure(state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n definitions: dictionaryInitialState.definitions,\n isAllowed: false,\n isLoading: false,\n word: state.input\n });\n },\n submitSuccess: function submitSuccess(state, action) {\n return _objectSpread(_objectSpread({}, state), {}, {\n definitions: action.payload.definitions,\n isAllowed: action.payload.isAllowed,\n isLoading: false,\n word: action.payload.word\n });\n }\n }\n});\nexport default dictionarySlice;","var rackInitialState = [null, null, null, null, null, null, null];\nexport default rackInitialState;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport { createSlice } from '@reduxjs/toolkit';\nimport { createNullMovingComparator, inverseDirection, zipCharactersAndTiles } from 'lib';\nimport rackInitialState from './rackInitialState';\nvar rackSlice = createSlice({\n initialState: rackInitialState,\n name: 'rack',\n reducers: {\n change: function change(_state, action) {\n var rack = action.payload;\n return rack;\n },\n changeCharacter: function changeCharacter(state, action) {\n var _action$payload = action.payload,\n character = _action$payload.character,\n index = _action$payload.index;\n return [].concat(_toConsumableArray(state.slice(0, index)), [character], _toConsumableArray(state.slice(index + 1)));\n },\n groupTiles: function groupTiles(state, action) {\n var direction = action.payload;\n\n if (direction === null) {\n return state;\n }\n\n var nullMovingComparator = createNullMovingComparator(inverseDirection(direction));\n\n var sortedTiles = _toConsumableArray(state).sort(nullMovingComparator);\n\n return sortedTiles;\n },\n init: function init(_state, action) {\n var rack = action.payload;\n return rack;\n },\n removeTiles: function removeTiles(state, action) {\n var tilesToRemove = action.payload;\n var charactersAndTiles = zipCharactersAndTiles(state, tilesToRemove);\n var charactersWithoutMatchingTiles = charactersAndTiles.map(function (_ref) {\n var character = _ref.character,\n tile = _ref.tile;\n return tile ? null : character;\n });\n return charactersWithoutMatchingTiles;\n },\n reset: function reset() {\n return rackInitialState;\n }\n }\n});\nexport default rackSlice;","import { ResultColumn, SortDirection } from 'types';\nvar resultsInitialState = {\n candidate: null,\n query: '',\n results: undefined,\n sort: {\n column: ResultColumn.Points,\n direction: SortDirection.Descending\n }\n};\nexport default resultsInitialState;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { createSlice } from '@reduxjs/toolkit';\nimport { SortDirection } from 'types';\nimport resultsInitialState from './resultsInitialState';\n\nvar toggleDirection = function toggleDirection(direction) {\n return direction === SortDirection.Ascending ? SortDirection.Descending : SortDirection.Ascending;\n};\n\nvar resultsSlice = createSlice({\n initialState: resultsInitialState,\n name: 'results',\n reducers: {\n applyResult: function applyResult(_state, _action) {\n return resultsInitialState;\n },\n changeQuery: function changeQuery(state, action) {\n var newQuery = action.payload;\n return _objectSpread(_objectSpread({}, state), {}, {\n query: newQuery\n });\n },\n changeResultCandidate: function changeResultCandidate(state, action) {\n var candidate = action.payload;\n return _objectSpread(_objectSpread({}, state), {}, {\n candidate: candidate\n });\n },\n changeResults: function changeResults(state, action) {\n var newResults = action.payload;\n return _objectSpread(_objectSpread({}, state), {}, {\n candidate: resultsInitialState.candidate,\n query: resultsInitialState.query,\n results: newResults\n });\n },\n sort: function sort(state, action) {\n var columndId = action.payload;\n var _state$sort = state.sort,\n column = _state$sort.column,\n direction = _state$sort.direction;\n return _objectSpread(_objectSpread({}, state), {}, {\n sort: {\n column: columndId,\n direction: column === columndId ? toggleDirection(direction) : direction\n }\n });\n },\n reset: function reset() {\n return resultsInitialState;\n }\n }\n});\nexport default resultsSlice;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { createSlice } from '@reduxjs/toolkit';\nimport settingsInitialState from './settingsInitialState';\nvar settingsSlice = createSlice({\n initialState: settingsInitialState,\n name: 'settings',\n reducers: {\n changeAutoGroupTiles: function changeAutoGroupTiles(state, action) {\n var autoGroupTiles = action.payload;\n return _objectSpread(_objectSpread({}, state), {}, {\n autoGroupTiles: autoGroupTiles\n });\n },\n changeConfigId: function changeConfigId(state, action) {\n var configId = action.payload;\n return _objectSpread(_objectSpread({}, state), {}, {\n configId: configId\n });\n },\n changeLocale: function changeLocale(state, action) {\n var locale = action.payload;\n return _objectSpread(_objectSpread({}, state), {}, {\n locale: locale\n });\n },\n init: function init(state, action) {\n return _objectSpread(_objectSpread({}, state), action.payload);\n }\n }\n});\nexport default settingsSlice;","import boardInitialState from './boardInitialState';\nvar solveInitialState = {\n isLoading: false,\n lastSolvedParameters: {\n board: boardInitialState,\n characters: []\n }\n};\nexport default solveInitialState;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { createSlice } from '@reduxjs/toolkit';\nimport solveInitialState from './solveInitialState';\nvar solveSlice = createSlice({\n initialState: solveInitialState,\n name: 'solve',\n reducers: {\n submit: function submit(state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n isLoading: true\n });\n },\n submitFailure: function submitFailure(state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n isLoading: false\n });\n },\n submitSuccess: function submitSuccess(state, action) {\n var lastSolvedParameters = action.payload;\n return _objectSpread(_objectSpread({}, state), {}, {\n isLoading: false,\n lastSolvedParameters: lastSolvedParameters\n });\n }\n }\n});\nexport default solveSlice;","export { default as boardInitialState } from './boardInitialState';\nexport { default as boardSlice } from './boardSlice';\nexport { default as dictionaryInitialState } from './dictionaryInitialState';\nexport { default as dictionarySlice } from './dictionarySlice';\nexport { default as rackInitialState } from './rackInitialState';\nexport { default as rackSlice } from './rackSlice';\nexport { default as resultsInitialState } from './resultsInitialState';\nexport { default as resultsSlice } from './resultsSlice';\nexport { default as settingsInitialState } from './settingsInitialState';\nexport { default as settingsSlice } from './settingsSlice';\nexport { default as solveInitialState } from './solveInitialState';\nexport { default as solveSlice } from './solveSlice';","import { combineReducers } from 'redux';\nimport { boardSlice, dictionarySlice, rackSlice, resultsSlice, settingsSlice, solveSlice } from './slices';\nvar rootReducer = combineReducers({\n board: boardSlice.reducer,\n dictionary: dictionarySlice.reducer,\n rack: rackSlice.reducer,\n results: resultsSlice.reducer,\n settings: settingsSlice.reducer,\n solve: solveSlice.reducer\n});\nexport default rootReducer;","import '@redux-saga/symbols';\nimport '@babel/runtime/helpers/esm/extends';\nimport { channel, stringableFunc, func, notUndef } from '@redux-saga/is';\nimport { q as makeIterator, K as take, L as fork, M as cancel, N as call, O as actionChannel, Q as sliding, U as delay, V as race, c as check } from './io-6de156f3.js';\nexport { O as actionChannel, _ as all, $ as apply, N as call, M as cancel, a4 as cancelled, a0 as cps, U as delay, W as effectTypes, a5 as flush, L as fork, a6 as getContext, a2 as join, Y as put, Z as putResolve, V as race, a3 as select, a7 as setContext, a1 as spawn, K as take, X as takeMaybe } from './io-6de156f3.js';\nimport '@redux-saga/delay-p';\n\nvar done = function done(value) {\n return {\n done: true,\n value: value\n };\n};\n\nvar qEnd = {};\nfunction safeName(patternOrChannel) {\n if (channel(patternOrChannel)) {\n return 'channel';\n }\n\n if (stringableFunc(patternOrChannel)) {\n return String(patternOrChannel);\n }\n\n if (func(patternOrChannel)) {\n return patternOrChannel.name;\n }\n\n return String(patternOrChannel);\n}\nfunction fsmIterator(fsm, startState, name) {\n var stateUpdater,\n errorState,\n effect,\n nextState = startState;\n\n function next(arg, error) {\n if (nextState === qEnd) {\n return done(arg);\n }\n\n if (error && !errorState) {\n nextState = qEnd;\n throw error;\n } else {\n stateUpdater && stateUpdater(arg);\n var currentState = error ? fsm[errorState](error) : fsm[nextState]();\n nextState = currentState.nextState;\n effect = currentState.effect;\n stateUpdater = currentState.stateUpdater;\n errorState = currentState.errorState;\n return nextState === qEnd ? done(arg) : effect;\n }\n }\n\n return makeIterator(next, function (error) {\n return next(null, error);\n }, name);\n}\n\nfunction takeEvery(patternOrChannel, worker) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var yTake = {\n done: false,\n value: take(patternOrChannel)\n };\n\n var yFork = function yFork(ac) {\n return {\n done: false,\n value: fork.apply(void 0, [worker].concat(args, [ac]))\n };\n };\n\n var action,\n setAction = function setAction(ac) {\n return action = ac;\n };\n\n return fsmIterator({\n q1: function q1() {\n return {\n nextState: 'q2',\n effect: yTake,\n stateUpdater: setAction\n };\n },\n q2: function q2() {\n return {\n nextState: 'q1',\n effect: yFork(action)\n };\n }\n }, 'q1', \"takeEvery(\" + safeName(patternOrChannel) + \", \" + worker.name + \")\");\n}\n\nfunction takeLatest(patternOrChannel, worker) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var yTake = {\n done: false,\n value: take(patternOrChannel)\n };\n\n var yFork = function yFork(ac) {\n return {\n done: false,\n value: fork.apply(void 0, [worker].concat(args, [ac]))\n };\n };\n\n var yCancel = function yCancel(task) {\n return {\n done: false,\n value: cancel(task)\n };\n };\n\n var task, action;\n\n var setTask = function setTask(t) {\n return task = t;\n };\n\n var setAction = function setAction(ac) {\n return action = ac;\n };\n\n return fsmIterator({\n q1: function q1() {\n return {\n nextState: 'q2',\n effect: yTake,\n stateUpdater: setAction\n };\n },\n q2: function q2() {\n return task ? {\n nextState: 'q3',\n effect: yCancel(task)\n } : {\n nextState: 'q1',\n effect: yFork(action),\n stateUpdater: setTask\n };\n },\n q3: function q3() {\n return {\n nextState: 'q1',\n effect: yFork(action),\n stateUpdater: setTask\n };\n }\n }, 'q1', \"takeLatest(\" + safeName(patternOrChannel) + \", \" + worker.name + \")\");\n}\n\nfunction takeLeading(patternOrChannel, worker) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var yTake = {\n done: false,\n value: take(patternOrChannel)\n };\n\n var yCall = function yCall(ac) {\n return {\n done: false,\n value: call.apply(void 0, [worker].concat(args, [ac]))\n };\n };\n\n var action;\n\n var setAction = function setAction(ac) {\n return action = ac;\n };\n\n return fsmIterator({\n q1: function q1() {\n return {\n nextState: 'q2',\n effect: yTake,\n stateUpdater: setAction\n };\n },\n q2: function q2() {\n return {\n nextState: 'q1',\n effect: yCall(action)\n };\n }\n }, 'q1', \"takeLeading(\" + safeName(patternOrChannel) + \", \" + worker.name + \")\");\n}\n\nfunction throttle(delayLength, pattern, worker) {\n for (var _len = arguments.length, args = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {\n args[_key - 3] = arguments[_key];\n }\n\n var action, channel;\n var yActionChannel = {\n done: false,\n value: actionChannel(pattern, sliding(1))\n };\n\n var yTake = function yTake() {\n return {\n done: false,\n value: take(channel)\n };\n };\n\n var yFork = function yFork(ac) {\n return {\n done: false,\n value: fork.apply(void 0, [worker].concat(args, [ac]))\n };\n };\n\n var yDelay = {\n done: false,\n value: delay(delayLength)\n };\n\n var setAction = function setAction(ac) {\n return action = ac;\n };\n\n var setChannel = function setChannel(ch) {\n return channel = ch;\n };\n\n return fsmIterator({\n q1: function q1() {\n return {\n nextState: 'q2',\n effect: yActionChannel,\n stateUpdater: setChannel\n };\n },\n q2: function q2() {\n return {\n nextState: 'q3',\n effect: yTake(),\n stateUpdater: setAction\n };\n },\n q3: function q3() {\n return {\n nextState: 'q4',\n effect: yFork(action)\n };\n },\n q4: function q4() {\n return {\n nextState: 'q2',\n effect: yDelay\n };\n }\n }, 'q1', \"throttle(\" + safeName(pattern) + \", \" + worker.name + \")\");\n}\n\nfunction retry(maxTries, delayLength, fn) {\n var counter = maxTries;\n\n for (var _len = arguments.length, args = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {\n args[_key - 3] = arguments[_key];\n }\n\n var yCall = {\n done: false,\n value: call.apply(void 0, [fn].concat(args))\n };\n var yDelay = {\n done: false,\n value: delay(delayLength)\n };\n return fsmIterator({\n q1: function q1() {\n return {\n nextState: 'q2',\n effect: yCall,\n errorState: 'q10'\n };\n },\n q2: function q2() {\n return {\n nextState: qEnd\n };\n },\n q10: function q10(error) {\n counter -= 1;\n\n if (counter <= 0) {\n throw error;\n }\n\n return {\n nextState: 'q1',\n effect: yDelay\n };\n }\n }, 'q1', \"retry(\" + fn.name + \")\");\n}\n\nfunction debounceHelper(delayLength, patternOrChannel, worker) {\n for (var _len = arguments.length, args = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {\n args[_key - 3] = arguments[_key];\n }\n\n var action, raceOutput;\n var yTake = {\n done: false,\n value: take(patternOrChannel)\n };\n var yRace = {\n done: false,\n value: race({\n action: take(patternOrChannel),\n debounce: delay(delayLength)\n })\n };\n\n var yFork = function yFork(ac) {\n return {\n done: false,\n value: fork.apply(void 0, [worker].concat(args, [ac]))\n };\n };\n\n var yNoop = function yNoop(value) {\n return {\n done: false,\n value: value\n };\n };\n\n var setAction = function setAction(ac) {\n return action = ac;\n };\n\n var setRaceOutput = function setRaceOutput(ro) {\n return raceOutput = ro;\n };\n\n return fsmIterator({\n q1: function q1() {\n return {\n nextState: 'q2',\n effect: yTake,\n stateUpdater: setAction\n };\n },\n q2: function q2() {\n return {\n nextState: 'q3',\n effect: yRace,\n stateUpdater: setRaceOutput\n };\n },\n q3: function q3() {\n return raceOutput.debounce ? {\n nextState: 'q1',\n effect: yFork(action)\n } : {\n nextState: 'q2',\n effect: yNoop(raceOutput.action),\n stateUpdater: setAction\n };\n }\n }, 'q1', \"debounce(\" + safeName(patternOrChannel) + \", \" + worker.name + \")\");\n}\n\nvar validateTakeEffect = function validateTakeEffect(fn, patternOrChannel, worker) {\n check(patternOrChannel, notUndef, fn.name + \" requires a pattern or channel\");\n check(worker, notUndef, fn.name + \" requires a saga parameter\");\n};\n\nfunction takeEvery$1(patternOrChannel, worker) {\n if (process.env.NODE_ENV !== 'production') {\n validateTakeEffect(takeEvery$1, patternOrChannel, worker);\n }\n\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n return fork.apply(void 0, [takeEvery, patternOrChannel, worker].concat(args));\n}\nfunction takeLatest$1(patternOrChannel, worker) {\n if (process.env.NODE_ENV !== 'production') {\n validateTakeEffect(takeLatest$1, patternOrChannel, worker);\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n args[_key2 - 2] = arguments[_key2];\n }\n\n return fork.apply(void 0, [takeLatest, patternOrChannel, worker].concat(args));\n}\nfunction takeLeading$1(patternOrChannel, worker) {\n if (process.env.NODE_ENV !== 'production') {\n validateTakeEffect(takeLeading$1, patternOrChannel, worker);\n }\n\n for (var _len3 = arguments.length, args = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n args[_key3 - 2] = arguments[_key3];\n }\n\n return fork.apply(void 0, [takeLeading, patternOrChannel, worker].concat(args));\n}\nfunction throttle$1(ms, pattern, worker) {\n if (process.env.NODE_ENV !== 'production') {\n check(pattern, notUndef, 'throttle requires a pattern');\n check(worker, notUndef, 'throttle requires a saga parameter');\n }\n\n for (var _len4 = arguments.length, args = new Array(_len4 > 3 ? _len4 - 3 : 0), _key4 = 3; _key4 < _len4; _key4++) {\n args[_key4 - 3] = arguments[_key4];\n }\n\n return fork.apply(void 0, [throttle, ms, pattern, worker].concat(args));\n}\nfunction retry$1(maxTries, delayLength, worker) {\n for (var _len5 = arguments.length, args = new Array(_len5 > 3 ? _len5 - 3 : 0), _key5 = 3; _key5 < _len5; _key5++) {\n args[_key5 - 3] = arguments[_key5];\n }\n\n return call.apply(void 0, [retry, maxTries, delayLength, worker].concat(args));\n}\nfunction debounce(delayLength, pattern, worker) {\n for (var _len6 = arguments.length, args = new Array(_len6 > 3 ? _len6 - 3 : 0), _key6 = 3; _key6 < _len6; _key6++) {\n args[_key6 - 3] = arguments[_key6];\n }\n\n return fork.apply(void 0, [debounceHelper, delayLength, pattern, worker].concat(args));\n}\n\nexport { debounce, retry$1 as retry, takeEvery$1 as takeEvery, takeLatest$1 as takeLatest, takeLeading$1 as takeLeading, throttle$1 as throttle };\n","export * from '@redux-saga/core/effects';\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}","import _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/esm/asyncToGenerator\";\nimport { WordDefinition } from '@scrabble-solver/types';\n\nvar findWordDefinition = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(locale, word) {\n var url, json;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n url = \"/api/dictionary/\".concat(locale, \"/\").concat(word);\n _context.next = 3;\n return fetch(url).then(function (response) {\n return response.json();\n });\n\n case 3:\n json = _context.sent;\n return _context.abrupt(\"return\", WordDefinition.fromJson(json));\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function findWordDefinition(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n\nexport default findWordDefinition;","var solve = function solve(_ref) {\n var board = _ref.board,\n characters = _ref.characters,\n configId = _ref.configId,\n locale = _ref.locale;\n return fetch('/api/solve', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify({\n board: board,\n characters: characters,\n configId: configId,\n locale: locale\n })\n }).then(function (response) {\n return response.json();\n });\n};\n\nexport default solve;","var visit = function visit() {\n return fetch('/api/visit', {\n method: 'PUT'\n });\n};\n\nexport default visit;","export { default as findWordDefinition } from './findWordDefinition';\nexport { default as solve } from './solve';\nexport { default as visit } from './visit';","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nvar _i18n;\n\nimport { Locale } from '@scrabble-solver/types';\nimport de from './de.json';\nimport en from './en.json';\nimport es from './es.json';\nimport fr from './fr.json';\nimport pl from './pl.json';\nvar i18n = (_i18n = {}, _defineProperty(_i18n, Locale.DE_DE, de), _defineProperty(_i18n, Locale.EN_GB, en), _defineProperty(_i18n, Locale.EN_US, en), _defineProperty(_i18n, Locale.ES_ES, es), _defineProperty(_i18n, Locale.FR_FR, fr), _defineProperty(_i18n, Locale.PL_PL, pl), _i18n);\nexport default i18n;","import { createSelector } from '@reduxjs/toolkit';\nimport { getLocaleConfig } from '@scrabble-solver/configs';\nimport i18n from 'i18n';\nimport { findCell, getRemainingTiles, getRemainingTilesGroups, sortResults, unorderedArraysEqual } from 'lib';\n\nvar selectCell = function selectCell(_, cell) {\n return cell;\n};\n\nvar selectCharacter = function selectCharacter(_, character) {\n return character;\n};\n\nvar selectTile = function selectTile(_, tile) {\n return tile;\n};\n\nvar selectBoardRoot = function selectBoardRoot(state) {\n return state.board;\n};\n\nvar selectDictionaryRoot = function selectDictionaryRoot(state) {\n return state.dictionary;\n};\n\nvar selectRackRoot = function selectRackRoot(state) {\n return state.rack;\n};\n\nvar selectResultsRoot = function selectResultsRoot(state) {\n return state.results;\n};\n\nvar selectSettingsRoot = function selectSettingsRoot(state) {\n return state.settings;\n};\n\nvar selectSolveRoot = function selectSolveRoot(state) {\n return state.solve;\n};\n\nexport var selectDictionary = selectDictionaryRoot;\nexport var selectAutoGroupTiles = createSelector([selectSettingsRoot], function (settings) {\n return settings.autoGroupTiles;\n});\nexport var selectLocale = createSelector([selectSettingsRoot], function (settings) {\n return settings.locale;\n});\nexport var selectBoard = selectBoardRoot;\nexport var selectConfigId = createSelector([selectSettingsRoot], function (settings) {\n return settings.configId;\n});\nexport var selectConfig = createSelector([selectConfigId, selectLocale], getLocaleConfig);\nexport var selectResults = createSelector([selectResultsRoot], function (results) {\n return results.results;\n});\nexport var selectResultsQuery = createSelector([selectResultsRoot], function (results) {\n return results.query;\n});\nexport var selectResultsSortColumn = createSelector([selectResultsRoot], function (results) {\n return results.sort.column;\n});\nexport var selectResultsSortDirection = createSelector([selectResultsRoot], function (results) {\n return results.sort.direction;\n});\nexport var selectSortedResults = createSelector([selectResults, selectResultsSortColumn, selectResultsSortDirection], sortResults);\nexport var selectSortedFilteredResults = createSelector([selectSortedResults, selectResultsQuery], function (results, query) {\n if (!results || query.trim().length === 0) {\n return results;\n }\n\n return results.filter(function (result) {\n var regExp = new RegExp(query, 'gi');\n return regExp.test(result.word);\n });\n});\nexport var selectResultCandidate = createSelector([selectResultsRoot], function (results) {\n return results.candidate;\n});\nexport var selectResultCandidateCells = createSelector([selectResultCandidate], function (resultCandidate) {\n return (resultCandidate === null || resultCandidate === void 0 ? void 0 : resultCandidate.cells) || [];\n});\nexport var selectResultCandidateTiles = createSelector([selectResultCandidate], function (resultCandidate) {\n return (resultCandidate === null || resultCandidate === void 0 ? void 0 : resultCandidate.tiles) || [];\n});\nexport var selectRowsWithCandidate = createSelector([selectBoardRoot, selectResultCandidateCells], function (board, cells) {\n return board.rows.map(function (row, y) {\n return row.map(function (cell, x) {\n return findCell(cells, x, y) || cell;\n });\n });\n});\nexport var selectCellBonus = createSelector([selectConfig, selectCell], function (config, cell) {\n return config.getCellBonus(cell);\n});\nexport var selectCharacterPoints = createSelector([selectConfig, selectCharacter], function (config, character) {\n return config.getCharacterPoints(character);\n});\nexport var selectTilePoints = createSelector([selectConfig, selectTile], function (config, tile) {\n return config.getTilePoints(tile);\n});\nexport var selectTranslations = createSelector([selectLocale], function (locale) {\n return i18n[locale];\n});\nexport var selectTranslation = createSelector([selectTranslations, selectLocale, function (_, id) {\n return id;\n}], function (translations, locale, id) {\n var translation = translations[id];\n\n if (typeof translation === 'undefined') {\n throw new Error(\"Untranslated key \\\"\".concat(id, \"\\\" in locale \\\"\").concat(locale, \"\\\"\"));\n }\n\n return translation;\n});\nexport var selectRack = selectRackRoot;\nexport var selectCharacters = createSelector(selectRackRoot, function (rack) {\n return rack.filter(function (tile) {\n return tile !== null;\n });\n});\nexport var selectLastSolvedParameters = createSelector([selectSolveRoot], function (solve) {\n return solve.lastSolvedParameters;\n});\nexport var selectIsLoading = createSelector([selectSolveRoot], function (solve) {\n return solve.isLoading;\n});\nexport var selectHaveCharactersChanged = createSelector([selectLastSolvedParameters, selectCharacters], function (lastSolvedParameters, characters) {\n return !unorderedArraysEqual(lastSolvedParameters.characters, characters);\n});\nexport var selectHasBoardChanged = createSelector([selectLastSolvedParameters, selectBoardRoot], function (lastSolvedParameters, board) {\n return !lastSolvedParameters.board.equals(board);\n});\nexport var selectAreResultsOutdated = createSelector([selectHasBoardChanged, selectHaveCharactersChanged], function (hasBoardChanged, haveCharactersChanged) {\n return hasBoardChanged || haveCharactersChanged;\n});\nexport var selectRemainingTiles = createSelector([selectConfig, selectBoardRoot, selectCharacters], getRemainingTiles);\nexport var selectHasOverusedTiles = createSelector([selectRemainingTiles], function (remainingTiles) {\n return remainingTiles.some(function (_ref) {\n var count = _ref.count,\n usedCount = _ref.usedCount;\n return usedCount > count;\n });\n});\nexport var selectRemainingTilesGroups = createSelector([selectRemainingTiles], getRemainingTilesGroups);","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\n\nvar _marked = /*#__PURE__*/_regeneratorRuntime.mark(rootSaga),\n _marked2 = /*#__PURE__*/_regeneratorRuntime.mark(onApplyResult),\n _marked3 = /*#__PURE__*/_regeneratorRuntime.mark(onConfigIdChange),\n _marked4 = /*#__PURE__*/_regeneratorRuntime.mark(onDictionarySubmit),\n _marked5 = /*#__PURE__*/_regeneratorRuntime.mark(onInitialize),\n _marked6 = /*#__PURE__*/_regeneratorRuntime.mark(onReset),\n _marked7 = /*#__PURE__*/_regeneratorRuntime.mark(onLocaleChange),\n _marked8 = /*#__PURE__*/_regeneratorRuntime.mark(onResultCandidateChange),\n _marked9 = /*#__PURE__*/_regeneratorRuntime.mark(onSubmit),\n _marked10 = /*#__PURE__*/_regeneratorRuntime.mark(ensureProperTilesCount);\n\nimport { Result } from '@scrabble-solver/types';\nimport { call, delay, put, select, takeEvery, takeLatest } from 'redux-saga/effects';\nimport { memoize } from 'lib';\nimport { findWordDefinition, solve, visit } from 'sdk';\nimport { initialize, reset } from './actions';\nimport { selectAutoGroupTiles, selectBoard, selectCharacters, selectConfig, selectDictionary, selectLocale } from './selectors';\nimport { boardSlice, dictionarySlice, rackSlice, resultsSlice, settingsSlice, solveSlice } from './slices';\nvar SUBMIT_DELAY = 150;\nvar memoizedFindWordDefinition = memoize(findWordDefinition);\nexport function rootSaga() {\n return _regeneratorRuntime.wrap(function rootSaga$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return takeEvery(resultsSlice.actions.applyResult.type, onApplyResult);\n\n case 2:\n _context.next = 4;\n return takeEvery(resultsSlice.actions.changeResultCandidate.type, onResultCandidateChange);\n\n case 4:\n _context.next = 6;\n return takeEvery(settingsSlice.actions.changeConfigId.type, onConfigIdChange);\n\n case 6:\n _context.next = 8;\n return takeEvery(settingsSlice.actions.changeLocale.type, onLocaleChange);\n\n case 8:\n _context.next = 10;\n return takeLatest(dictionarySlice.actions.submit.type, onDictionarySubmit);\n\n case 10:\n _context.next = 12;\n return takeLatest(initialize.type, onInitialize);\n\n case 12:\n _context.next = 14;\n return takeLatest(reset.type, onReset);\n\n case 14:\n _context.next = 16;\n return takeLatest(solveSlice.actions.submit.type, onSubmit);\n\n case 16:\n case \"end\":\n return _context.stop();\n }\n }\n }, _marked);\n}\n\nfunction onApplyResult(_ref) {\n var result, autoGroupTiles;\n return _regeneratorRuntime.wrap(function onApplyResult$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n result = _ref.payload;\n _context2.next = 3;\n return select(selectAutoGroupTiles);\n\n case 3:\n autoGroupTiles = _context2.sent;\n _context2.next = 6;\n return put(boardSlice.actions.applyResult(result));\n\n case 6:\n _context2.next = 8;\n return put(rackSlice.actions.removeTiles(result.tiles));\n\n case 8:\n _context2.next = 10;\n return put(rackSlice.actions.groupTiles(autoGroupTiles));\n\n case 10:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _marked2);\n}\n\nfunction onConfigIdChange() {\n return _regeneratorRuntime.wrap(function onConfigIdChange$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return put(resultsSlice.actions.reset());\n\n case 2:\n _context3.next = 4;\n return put(solveSlice.actions.submit());\n\n case 4:\n return _context3.delegateYield(ensureProperTilesCount(), \"t0\", 5);\n\n case 5:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _marked3);\n}\n\nfunction onDictionarySubmit() {\n var _yield$select, word, locale, wordDefinition;\n\n return _regeneratorRuntime.wrap(function onDictionarySubmit$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return select(selectDictionary);\n\n case 2:\n _yield$select = _context4.sent;\n word = _yield$select.input;\n _context4.next = 6;\n return select(selectLocale);\n\n case 6:\n locale = _context4.sent;\n\n if (memoizedFindWordDefinition.hasCache(locale, word)) {\n _context4.next = 10;\n break;\n }\n\n _context4.next = 10;\n return delay(SUBMIT_DELAY);\n\n case 10:\n _context4.prev = 10;\n _context4.next = 13;\n return call(memoizedFindWordDefinition, locale, word);\n\n case 13:\n wordDefinition = _context4.sent;\n _context4.next = 16;\n return put(dictionarySlice.actions.submitSuccess(wordDefinition));\n\n case 16:\n _context4.next = 22;\n break;\n\n case 18:\n _context4.prev = 18;\n _context4.t0 = _context4[\"catch\"](10);\n _context4.next = 22;\n return put(dictionarySlice.actions.submitFailure());\n\n case 22:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _marked4, null, [[10, 18]]);\n}\n\nfunction onInitialize() {\n return _regeneratorRuntime.wrap(function onInitialize$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n _context5.next = 2;\n return call(visit);\n\n case 2:\n return _context5.delegateYield(ensureProperTilesCount(), \"t0\", 3);\n\n case 3:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _marked5);\n}\n\nfunction onReset() {\n return _regeneratorRuntime.wrap(function onReset$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n _context6.next = 2;\n return put(boardSlice.actions.reset());\n\n case 2:\n _context6.next = 4;\n return put(dictionarySlice.actions.reset());\n\n case 4:\n _context6.next = 6;\n return put(rackSlice.actions.reset());\n\n case 6:\n _context6.next = 8;\n return put(resultsSlice.actions.reset());\n\n case 8:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _marked6);\n}\n\nfunction onLocaleChange() {\n return _regeneratorRuntime.wrap(function onLocaleChange$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n _context7.next = 2;\n return put(solveSlice.actions.submit());\n\n case 2:\n _context7.next = 4;\n return put(resultsSlice.actions.changeResultCandidate(null));\n\n case 4:\n _context7.next = 6;\n return put(dictionarySlice.actions.reset());\n\n case 6:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _marked7);\n}\n\nfunction onResultCandidateChange(_ref2) {\n var result;\n return _regeneratorRuntime.wrap(function onResultCandidateChange$(_context8) {\n while (1) {\n switch (_context8.prev = _context8.next) {\n case 0:\n result = _ref2.payload;\n\n if (!result) {\n _context8.next = 6;\n break;\n }\n\n _context8.next = 4;\n return put(dictionarySlice.actions.changeInput(result.word));\n\n case 4:\n _context8.next = 6;\n return put(dictionarySlice.actions.submit());\n\n case 6:\n case \"end\":\n return _context8.stop();\n }\n }\n }, _marked8);\n}\n\nfunction onSubmit() {\n var board, _yield$select2, config, locale, characters, results;\n\n return _regeneratorRuntime.wrap(function onSubmit$(_context9) {\n while (1) {\n switch (_context9.prev = _context9.next) {\n case 0:\n _context9.next = 2;\n return select(selectBoard);\n\n case 2:\n board = _context9.sent;\n _context9.next = 5;\n return select(selectConfig);\n\n case 5:\n _yield$select2 = _context9.sent;\n config = _yield$select2.config;\n _context9.next = 9;\n return select(selectLocale);\n\n case 9:\n locale = _context9.sent;\n _context9.next = 12;\n return select(selectCharacters);\n\n case 12:\n characters = _context9.sent;\n\n if (!(characters.length === 0)) {\n _context9.next = 19;\n break;\n }\n\n _context9.next = 16;\n return put(solveSlice.actions.submitSuccess({\n board: board,\n characters: characters\n }));\n\n case 16:\n _context9.next = 18;\n return put(resultsSlice.actions.changeResults([]));\n\n case 18:\n return _context9.abrupt(\"return\");\n\n case 19:\n _context9.prev = 19;\n _context9.next = 22;\n return call(solve, {\n board: board.toJson(),\n characters: characters,\n configId: config.id,\n locale: locale\n });\n\n case 22:\n results = _context9.sent;\n _context9.next = 25;\n return put(solveSlice.actions.submitSuccess({\n board: board,\n characters: characters\n }));\n\n case 25:\n _context9.next = 27;\n return put(resultsSlice.actions.changeResults(results.map(Result.fromJson)));\n\n case 27:\n _context9.next = 35;\n break;\n\n case 29:\n _context9.prev = 29;\n _context9.t0 = _context9[\"catch\"](19);\n _context9.next = 33;\n return put(resultsSlice.actions.changeResults([]));\n\n case 33:\n _context9.next = 35;\n return put(solveSlice.actions.submitFailure());\n\n case 35:\n case \"end\":\n return _context9.stop();\n }\n }\n }, _marked9, null, [[19, 29]]);\n}\n\nfunction ensureProperTilesCount() {\n var _yield$select3, config, characters, differenceCount, nonNulls, _differenceCount, autoGroupTiles;\n\n return _regeneratorRuntime.wrap(function ensureProperTilesCount$(_context10) {\n while (1) {\n switch (_context10.prev = _context10.next) {\n case 0:\n _context10.next = 2;\n return select(selectConfig);\n\n case 2:\n _yield$select3 = _context10.sent;\n config = _yield$select3.config;\n _context10.next = 6;\n return select(selectCharacters);\n\n case 6:\n characters = _context10.sent;\n\n if (!(config.maximumNumberOfCharacters > characters.length)) {\n _context10.next = 13;\n break;\n }\n\n differenceCount = Math.abs(config.maximumNumberOfCharacters - characters.length);\n _context10.next = 11;\n return put(rackSlice.actions.init([].concat(_toConsumableArray(characters), _toConsumableArray(Array(differenceCount).fill(null)))));\n\n case 11:\n _context10.next = 23;\n break;\n\n case 13:\n if (!(config.maximumNumberOfCharacters < characters.length)) {\n _context10.next = 23;\n break;\n }\n\n nonNulls = characters.filter(Boolean).slice(0, config.maximumNumberOfCharacters);\n _differenceCount = Math.abs(config.maximumNumberOfCharacters - nonNulls.length);\n _context10.next = 18;\n return select(selectAutoGroupTiles);\n\n case 18:\n autoGroupTiles = _context10.sent;\n _context10.next = 21;\n return put(rackSlice.actions.init([].concat(_toConsumableArray(nonNulls), _toConsumableArray(Array(_differenceCount).fill(null)))));\n\n case 21:\n _context10.next = 23;\n return put(rackSlice.actions.groupTiles(autoGroupTiles));\n\n case 23:\n case \"end\":\n return _context10.stop();\n }\n }\n }, _marked10);\n}","import { createStore, applyMiddleware } from 'redux';\nimport reduxSaga from 'redux-saga';\nimport rootReducer from './rootReducer';\nimport { rootSaga } from './sagas';\nvar sagaMiddleware = reduxSaga();\nvar initialState = undefined;\n\nvar createAppStore = function createAppStore() {\n var store = createStore(rootReducer, initialState, createEnhancer());\n sagaMiddleware.run(rootSaga);\n return store;\n};\n\nvar createEnhancer = function createEnhancer() {\n return applyMiddleware(sagaMiddleware);\n};\n\nexport default createAppStore;","import { Board } from '@scrabble-solver/types';\nimport store2 from 'store2';\nvar BOARD = 'board';\nvar CONFIG_ID = 'config-id';\nvar HAS_VISITED = 'has-visited';\nvar LOCALE = 'locale';\nvar RACK = 'rack';\nvar store = store2.namespace('scrabble-solver');\nvar localStorage = {\n getBoard: function getBoard() {\n var serialized = store.get(BOARD);\n return serialized ? Board.fromJson(JSON.parse(serialized)) : serialized;\n },\n setBoard: function setBoard(board) {\n var serialized = board ? JSON.stringify(board.toJson()) : board;\n store.set(BOARD, serialized, true);\n },\n getConfigId: function getConfigId() {\n return store.get(CONFIG_ID);\n },\n setConfigId: function setConfigId(configId) {\n store.set(CONFIG_ID, configId, true);\n },\n getHasVisited: function getHasVisited() {\n return Boolean(store.get(HAS_VISITED));\n },\n setHasVisited: function setHasVisited(hasVisited) {\n store.set(HAS_VISITED, hasVisited, true);\n },\n getLocale: function getLocale() {\n return store.get(LOCALE);\n },\n setLocale: function setLocale(locale) {\n store.set(LOCALE, locale, true);\n },\n getRack: function getRack() {\n return store.get(RACK);\n },\n setRack: function setRack(rack) {\n store.set(RACK, rack, true);\n }\n};\nexport default localStorage;","import { useSelector } from 'react-redux';\nvar useTypedSelector = useSelector;\nexport default useTypedSelector;","import { useCallback } from 'react';\nimport { selectLocale, selectTranslations } from './selectors';\nimport useTypedSelector from './useTypedSelector';\n\nvar useTranslate = function useTranslate() {\n var translations = useTypedSelector(selectTranslations);\n var locale = useTypedSelector(selectLocale);\n var translate = useCallback(function (id) {\n var translation = translations[id];\n\n if (typeof translation === 'undefined') {\n throw new Error(\"Untranslated key \\\"\".concat(id, \"\\\" in locale \\\"\").concat(locale, \"\\\"\"));\n }\n\n return translation;\n }, [translations, locale]);\n return translate;\n};\n\nexport default useTranslate;","export * from './actions';\nexport { default as createAppStore } from './createAppStore';\nexport { default as localStorage } from './localStorage';\nexport * from './selectors';\nexport * from './slices';\nexport { default as useTranslate } from './useTranslate';\nexport { default as useTypedSelector } from './useTypedSelector';","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesFr = [\n { character: 'a', count: 9, score: 1 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 2, score: 3 },\n { character: 'd', count: 3, score: 2 },\n { character: 'e', count: 15, score: 1 },\n { character: 'f', count: 2, score: 1 },\n { character: 'g', count: 2, score: 2 },\n { character: 'h', count: 2, score: 4 },\n { character: 'i', count: 8, score: 1 },\n { character: 'j', count: 1, score: 8 },\n { character: 'k', count: 1, score: 10 },\n { character: 'l', count: 5, score: 1 },\n { character: 'm', count: 3, score: 2 },\n { character: 'n', count: 6, score: 1 },\n { character: 'o', count: 6, score: 1 },\n { character: 'p', count: 2, score: 3 },\n { character: 'q', count: 1, score: 8 },\n { character: 'r', count: 6, score: 1 },\n { character: 's', count: 6, score: 1 },\n { character: 't', count: 6, score: 1 },\n { character: 'u', count: 6, score: 1 },\n { character: 'v', count: 2, score: 4 },\n { character: 'w', count: 1, score: 10 },\n { character: 'x', count: 1, score: 10 },\n { character: 'y', count: 1, score: 10 },\n { character: 'z', count: 1, score: 10 },\n];\nexports.default = tilesFr;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar literaki_1 = __importDefault(require(\"./literaki\"));\nvar scrabble_1 = __importDefault(require(\"./scrabble\"));\nvar configs = [literaki_1.default, scrabble_1.default];\nvar isConfigId = function (configId) {\n return configs.some(function (_a) {\n var id = _a.id;\n return id === configId;\n });\n};\nexports.default = isConfigId;\n","import $$observable from 'symbol-observable';\n\n/**\n * These are private action types reserved by Redux.\n * For any unknown actions, you must return the current state.\n * If the current state is undefined, you must return the initial state.\n * Do not reference these action types directly in your code.\n */\nvar randomString = function randomString() {\n return Math.random().toString(36).substring(7).split('').join('.');\n};\n\nvar ActionTypes = {\n INIT: \"@@redux/INIT\" + randomString(),\n REPLACE: \"@@redux/REPLACE\" + randomString(),\n PROBE_UNKNOWN_ACTION: function PROBE_UNKNOWN_ACTION() {\n return \"@@redux/PROBE_UNKNOWN_ACTION\" + randomString();\n }\n};\n\n/**\n * @param {any} obj The object to inspect.\n * @returns {boolean} True if the argument appears to be a plain object.\n */\nfunction isPlainObject(obj) {\n if (typeof obj !== 'object' || obj === null) return false;\n var proto = obj;\n\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n\n return Object.getPrototypeOf(obj) === proto;\n}\n\n/**\n * Creates a Redux store that holds the state tree.\n * The only way to change the data in the store is to call `dispatch()` on it.\n *\n * There should only be a single store in your app. To specify how different\n * parts of the state tree respond to actions, you may combine several reducers\n * into a single reducer function by using `combineReducers`.\n *\n * @param {Function} reducer A function that returns the next state tree, given\n * the current state tree and the action to handle.\n *\n * @param {any} [preloadedState] The initial state. You may optionally specify it\n * to hydrate the state from the server in universal apps, or to restore a\n * previously serialized user session.\n * If you use `combineReducers` to produce the root reducer function, this must be\n * an object with the same shape as `combineReducers` keys.\n *\n * @param {Function} [enhancer] The store enhancer. You may optionally specify it\n * to enhance the store with third-party capabilities such as middleware,\n * time travel, persistence, etc. The only store enhancer that ships with Redux\n * is `applyMiddleware()`.\n *\n * @returns {Store} A Redux store that lets you read the state, dispatch actions\n * and subscribe to changes.\n */\n\nfunction createStore(reducer, preloadedState, enhancer) {\n var _ref2;\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'function' || typeof enhancer === 'function' && typeof arguments[3] === 'function') {\n throw new Error('It looks like you are passing several store enhancers to ' + 'createStore(). This is not supported. Instead, compose them ' + 'together to a single function.');\n }\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') {\n enhancer = preloadedState;\n preloadedState = undefined;\n }\n\n if (typeof enhancer !== 'undefined') {\n if (typeof enhancer !== 'function') {\n throw new Error('Expected the enhancer to be a function.');\n }\n\n return enhancer(createStore)(reducer, preloadedState);\n }\n\n if (typeof reducer !== 'function') {\n throw new Error('Expected the reducer to be a function.');\n }\n\n var currentReducer = reducer;\n var currentState = preloadedState;\n var currentListeners = [];\n var nextListeners = currentListeners;\n var isDispatching = false;\n /**\n * This makes a shallow copy of currentListeners so we can use\n * nextListeners as a temporary list while dispatching.\n *\n * This prevents any bugs around consumers calling\n * subscribe/unsubscribe in the middle of a dispatch.\n */\n\n function ensureCanMutateNextListeners() {\n if (nextListeners === currentListeners) {\n nextListeners = currentListeners.slice();\n }\n }\n /**\n * Reads the state tree managed by the store.\n *\n * @returns {any} The current state tree of your application.\n */\n\n\n function getState() {\n if (isDispatching) {\n throw new Error('You may not call store.getState() while the reducer is executing. ' + 'The reducer has already received the state as an argument. ' + 'Pass it down from the top reducer instead of reading it from the store.');\n }\n\n return currentState;\n }\n /**\n * Adds a change listener. It will be called any time an action is dispatched,\n * and some part of the state tree may potentially have changed. You may then\n * call `getState()` to read the current state tree inside the callback.\n *\n * You may call `dispatch()` from a change listener, with the following\n * caveats:\n *\n * 1. The subscriptions are snapshotted just before every `dispatch()` call.\n * If you subscribe or unsubscribe while the listeners are being invoked, this\n * will not have any effect on the `dispatch()` that is currently in progress.\n * However, the next `dispatch()` call, whether nested or not, will use a more\n * recent snapshot of the subscription list.\n *\n * 2. The listener should not expect to see all state changes, as the state\n * might have been updated multiple times during a nested `dispatch()` before\n * the listener is called. It is, however, guaranteed that all subscribers\n * registered before the `dispatch()` started will be called with the latest\n * state by the time it exits.\n *\n * @param {Function} listener A callback to be invoked on every dispatch.\n * @returns {Function} A function to remove this change listener.\n */\n\n\n function subscribe(listener) {\n if (typeof listener !== 'function') {\n throw new Error('Expected the listener to be a function.');\n }\n\n if (isDispatching) {\n throw new Error('You may not call store.subscribe() while the reducer is executing. ' + 'If you would like to be notified after the store has been updated, subscribe from a ' + 'component and invoke store.getState() in the callback to access the latest state. ' + 'See https://redux.js.org/api-reference/store#subscribelistener for more details.');\n }\n\n var isSubscribed = true;\n ensureCanMutateNextListeners();\n nextListeners.push(listener);\n return function unsubscribe() {\n if (!isSubscribed) {\n return;\n }\n\n if (isDispatching) {\n throw new Error('You may not unsubscribe from a store listener while the reducer is executing. ' + 'See https://redux.js.org/api-reference/store#subscribelistener for more details.');\n }\n\n isSubscribed = false;\n ensureCanMutateNextListeners();\n var index = nextListeners.indexOf(listener);\n nextListeners.splice(index, 1);\n currentListeners = null;\n };\n }\n /**\n * Dispatches an action. It is the only way to trigger a state change.\n *\n * The `reducer` function, used to create the store, will be called with the\n * current state tree and the given `action`. Its return value will\n * be considered the **next** state of the tree, and the change listeners\n * will be notified.\n *\n * The base implementation only supports plain object actions. If you want to\n * dispatch a Promise, an Observable, a thunk, or something else, you need to\n * wrap your store creating function into the corresponding middleware. For\n * example, see the documentation for the `redux-thunk` package. Even the\n * middleware will eventually dispatch plain object actions using this method.\n *\n * @param {Object} action A plain object representing “what changed”. It is\n * a good idea to keep actions serializable so you can record and replay user\n * sessions, or use the time travelling `redux-devtools`. An action must have\n * a `type` property which may not be `undefined`. It is a good idea to use\n * string constants for action types.\n *\n * @returns {Object} For convenience, the same action object you dispatched.\n *\n * Note that, if you use a custom middleware, it may wrap `dispatch()` to\n * return something else (for example, a Promise you can await).\n */\n\n\n function dispatch(action) {\n if (!isPlainObject(action)) {\n throw new Error('Actions must be plain objects. ' + 'Use custom middleware for async actions.');\n }\n\n if (typeof action.type === 'undefined') {\n throw new Error('Actions may not have an undefined \"type\" property. ' + 'Have you misspelled a constant?');\n }\n\n if (isDispatching) {\n throw new Error('Reducers may not dispatch actions.');\n }\n\n try {\n isDispatching = true;\n currentState = currentReducer(currentState, action);\n } finally {\n isDispatching = false;\n }\n\n var listeners = currentListeners = nextListeners;\n\n for (var i = 0; i < listeners.length; i++) {\n var listener = listeners[i];\n listener();\n }\n\n return action;\n }\n /**\n * Replaces the reducer currently used by the store to calculate the state.\n *\n * You might need this if your app implements code splitting and you want to\n * load some of the reducers dynamically. You might also need this if you\n * implement a hot reloading mechanism for Redux.\n *\n * @param {Function} nextReducer The reducer for the store to use instead.\n * @returns {void}\n */\n\n\n function replaceReducer(nextReducer) {\n if (typeof nextReducer !== 'function') {\n throw new Error('Expected the nextReducer to be a function.');\n }\n\n currentReducer = nextReducer; // This action has a similiar effect to ActionTypes.INIT.\n // Any reducers that existed in both the new and old rootReducer\n // will receive the previous state. This effectively populates\n // the new state tree with any relevant data from the old one.\n\n dispatch({\n type: ActionTypes.REPLACE\n });\n }\n /**\n * Interoperability point for observable/reactive libraries.\n * @returns {observable} A minimal observable of state changes.\n * For more information, see the observable proposal:\n * https://github.com/tc39/proposal-observable\n */\n\n\n function observable() {\n var _ref;\n\n var outerSubscribe = subscribe;\n return _ref = {\n /**\n * The minimal observable subscription method.\n * @param {Object} observer Any object that can be used as an observer.\n * The observer object should have a `next` method.\n * @returns {subscription} An object with an `unsubscribe` method that can\n * be used to unsubscribe the observable from the store, and prevent further\n * emission of values from the observable.\n */\n subscribe: function subscribe(observer) {\n if (typeof observer !== 'object' || observer === null) {\n throw new TypeError('Expected the observer to be an object.');\n }\n\n function observeState() {\n if (observer.next) {\n observer.next(getState());\n }\n }\n\n observeState();\n var unsubscribe = outerSubscribe(observeState);\n return {\n unsubscribe: unsubscribe\n };\n }\n }, _ref[$$observable] = function () {\n return this;\n }, _ref;\n } // When a store is created, an \"INIT\" action is dispatched so that every\n // reducer returns their initial state. This effectively populates\n // the initial state tree.\n\n\n dispatch({\n type: ActionTypes.INIT\n });\n return _ref2 = {\n dispatch: dispatch,\n subscribe: subscribe,\n getState: getState,\n replaceReducer: replaceReducer\n }, _ref2[$$observable] = observable, _ref2;\n}\n\n/**\n * Prints a warning in the console if it exists.\n *\n * @param {String} message The warning message.\n * @returns {void}\n */\nfunction warning(message) {\n /* eslint-disable no-console */\n if (typeof console !== 'undefined' && typeof console.error === 'function') {\n console.error(message);\n }\n /* eslint-enable no-console */\n\n\n try {\n // This error was thrown as a convenience so that if you enable\n // \"break on all exceptions\" in your console,\n // it would pause the execution at this line.\n throw new Error(message);\n } catch (e) {} // eslint-disable-line no-empty\n\n}\n\nfunction getUndefinedStateErrorMessage(key, action) {\n var actionType = action && action.type;\n var actionDescription = actionType && \"action \\\"\" + String(actionType) + \"\\\"\" || 'an action';\n return \"Given \" + actionDescription + \", reducer \\\"\" + key + \"\\\" returned undefined. \" + \"To ignore an action, you must explicitly return the previous state. \" + \"If you want this reducer to hold no value, you can return null instead of undefined.\";\n}\n\nfunction getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {\n var reducerKeys = Object.keys(reducers);\n var argumentName = action && action.type === ActionTypes.INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer';\n\n if (reducerKeys.length === 0) {\n return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.';\n }\n\n if (!isPlainObject(inputState)) {\n return \"The \" + argumentName + \" has unexpected type of \\\"\" + {}.toString.call(inputState).match(/\\s([a-z|A-Z]+)/)[1] + \"\\\". Expected argument to be an object with the following \" + (\"keys: \\\"\" + reducerKeys.join('\", \"') + \"\\\"\");\n }\n\n var unexpectedKeys = Object.keys(inputState).filter(function (key) {\n return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];\n });\n unexpectedKeys.forEach(function (key) {\n unexpectedKeyCache[key] = true;\n });\n if (action && action.type === ActionTypes.REPLACE) return;\n\n if (unexpectedKeys.length > 0) {\n return \"Unexpected \" + (unexpectedKeys.length > 1 ? 'keys' : 'key') + \" \" + (\"\\\"\" + unexpectedKeys.join('\", \"') + \"\\\" found in \" + argumentName + \". \") + \"Expected to find one of the known reducer keys instead: \" + (\"\\\"\" + reducerKeys.join('\", \"') + \"\\\". Unexpected keys will be ignored.\");\n }\n}\n\nfunction assertReducerShape(reducers) {\n Object.keys(reducers).forEach(function (key) {\n var reducer = reducers[key];\n var initialState = reducer(undefined, {\n type: ActionTypes.INIT\n });\n\n if (typeof initialState === 'undefined') {\n throw new Error(\"Reducer \\\"\" + key + \"\\\" returned undefined during initialization. \" + \"If the state passed to the reducer is undefined, you must \" + \"explicitly return the initial state. The initial state may \" + \"not be undefined. If you don't want to set a value for this reducer, \" + \"you can use null instead of undefined.\");\n }\n\n if (typeof reducer(undefined, {\n type: ActionTypes.PROBE_UNKNOWN_ACTION()\n }) === 'undefined') {\n throw new Error(\"Reducer \\\"\" + key + \"\\\" returned undefined when probed with a random type. \" + (\"Don't try to handle \" + ActionTypes.INIT + \" or other actions in \\\"redux/*\\\" \") + \"namespace. They are considered private. Instead, you must return the \" + \"current state for any unknown actions, unless it is undefined, \" + \"in which case you must return the initial state, regardless of the \" + \"action type. The initial state may not be undefined, but can be null.\");\n }\n });\n}\n/**\n * Turns an object whose values are different reducer functions, into a single\n * reducer function. It will call every child reducer, and gather their results\n * into a single state object, whose keys correspond to the keys of the passed\n * reducer functions.\n *\n * @param {Object} reducers An object whose values correspond to different\n * reducer functions that need to be combined into one. One handy way to obtain\n * it is to use ES6 `import * as reducers` syntax. The reducers may never return\n * undefined for any action. Instead, they should return their initial state\n * if the state passed to them was undefined, and the current state for any\n * unrecognized action.\n *\n * @returns {Function} A reducer function that invokes every reducer inside the\n * passed object, and builds a state object with the same shape.\n */\n\n\nfunction combineReducers(reducers) {\n var reducerKeys = Object.keys(reducers);\n var finalReducers = {};\n\n for (var i = 0; i < reducerKeys.length; i++) {\n var key = reducerKeys[i];\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof reducers[key] === 'undefined') {\n warning(\"No reducer provided for key \\\"\" + key + \"\\\"\");\n }\n }\n\n if (typeof reducers[key] === 'function') {\n finalReducers[key] = reducers[key];\n }\n }\n\n var finalReducerKeys = Object.keys(finalReducers); // This is used to make sure we don't warn about the same\n // keys multiple times.\n\n var unexpectedKeyCache;\n\n if (process.env.NODE_ENV !== 'production') {\n unexpectedKeyCache = {};\n }\n\n var shapeAssertionError;\n\n try {\n assertReducerShape(finalReducers);\n } catch (e) {\n shapeAssertionError = e;\n }\n\n return function combination(state, action) {\n if (state === void 0) {\n state = {};\n }\n\n if (shapeAssertionError) {\n throw shapeAssertionError;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache);\n\n if (warningMessage) {\n warning(warningMessage);\n }\n }\n\n var hasChanged = false;\n var nextState = {};\n\n for (var _i = 0; _i < finalReducerKeys.length; _i++) {\n var _key = finalReducerKeys[_i];\n var reducer = finalReducers[_key];\n var previousStateForKey = state[_key];\n var nextStateForKey = reducer(previousStateForKey, action);\n\n if (typeof nextStateForKey === 'undefined') {\n var errorMessage = getUndefinedStateErrorMessage(_key, action);\n throw new Error(errorMessage);\n }\n\n nextState[_key] = nextStateForKey;\n hasChanged = hasChanged || nextStateForKey !== previousStateForKey;\n }\n\n hasChanged = hasChanged || finalReducerKeys.length !== Object.keys(state).length;\n return hasChanged ? nextState : state;\n };\n}\n\nfunction bindActionCreator(actionCreator, dispatch) {\n return function () {\n return dispatch(actionCreator.apply(this, arguments));\n };\n}\n/**\n * Turns an object whose values are action creators, into an object with the\n * same keys, but with every function wrapped into a `dispatch` call so they\n * may be invoked directly. This is just a convenience method, as you can call\n * `store.dispatch(MyActionCreators.doSomething())` yourself just fine.\n *\n * For convenience, you can also pass an action creator as the first argument,\n * and get a dispatch wrapped function in return.\n *\n * @param {Function|Object} actionCreators An object whose values are action\n * creator functions. One handy way to obtain it is to use ES6 `import * as`\n * syntax. You may also pass a single function.\n *\n * @param {Function} dispatch The `dispatch` function available on your Redux\n * store.\n *\n * @returns {Function|Object} The object mimicking the original object, but with\n * every action creator wrapped into the `dispatch` call. If you passed a\n * function as `actionCreators`, the return value will also be a single\n * function.\n */\n\n\nfunction bindActionCreators(actionCreators, dispatch) {\n if (typeof actionCreators === 'function') {\n return bindActionCreator(actionCreators, dispatch);\n }\n\n if (typeof actionCreators !== 'object' || actionCreators === null) {\n throw new Error(\"bindActionCreators expected an object or a function, instead received \" + (actionCreators === null ? 'null' : typeof actionCreators) + \". \" + \"Did you write \\\"import ActionCreators from\\\" instead of \\\"import * as ActionCreators from\\\"?\");\n }\n\n var boundActionCreators = {};\n\n for (var key in actionCreators) {\n var actionCreator = actionCreators[key];\n\n if (typeof actionCreator === 'function') {\n boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);\n }\n }\n\n return boundActionCreators;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n keys.push.apply(keys, Object.getOwnPropertySymbols(object));\n }\n\n if (enumerableOnly) keys = keys.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(source, true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(source).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\n/**\n * Composes single-argument functions from right to left. The rightmost\n * function can take multiple arguments as it provides the signature for\n * the resulting composite function.\n *\n * @param {...Function} funcs The functions to compose.\n * @returns {Function} A function obtained by composing the argument functions\n * from right to left. For example, compose(f, g, h) is identical to doing\n * (...args) => f(g(h(...args))).\n */\nfunction compose() {\n for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {\n funcs[_key] = arguments[_key];\n }\n\n if (funcs.length === 0) {\n return function (arg) {\n return arg;\n };\n }\n\n if (funcs.length === 1) {\n return funcs[0];\n }\n\n return funcs.reduce(function (a, b) {\n return function () {\n return a(b.apply(void 0, arguments));\n };\n });\n}\n\n/**\n * Creates a store enhancer that applies middleware to the dispatch method\n * of the Redux store. This is handy for a variety of tasks, such as expressing\n * asynchronous actions in a concise manner, or logging every action payload.\n *\n * See `redux-thunk` package as an example of the Redux middleware.\n *\n * Because middleware is potentially asynchronous, this should be the first\n * store enhancer in the composition chain.\n *\n * Note that each middleware will be given the `dispatch` and `getState` functions\n * as named arguments.\n *\n * @param {...Function} middlewares The middleware chain to be applied.\n * @returns {Function} A store enhancer applying the middleware.\n */\n\nfunction applyMiddleware() {\n for (var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++) {\n middlewares[_key] = arguments[_key];\n }\n\n return function (createStore) {\n return function () {\n var store = createStore.apply(void 0, arguments);\n\n var _dispatch = function dispatch() {\n throw new Error('Dispatching while constructing your middleware is not allowed. ' + 'Other middleware would not be applied to this dispatch.');\n };\n\n var middlewareAPI = {\n getState: store.getState,\n dispatch: function dispatch() {\n return _dispatch.apply(void 0, arguments);\n }\n };\n var chain = middlewares.map(function (middleware) {\n return middleware(middlewareAPI);\n });\n _dispatch = compose.apply(void 0, chain)(store.dispatch);\n return _objectSpread2({}, store, {\n dispatch: _dispatch\n });\n };\n };\n}\n\n/*\n * This is a dummy function to check if the function name has been altered by minification.\n * If the function has been minified and NODE_ENV !== 'production', warn the user.\n */\n\nfunction isCrushed() {}\n\nif (process.env.NODE_ENV !== 'production' && typeof isCrushed.name === 'string' && isCrushed.name !== 'isCrushed') {\n warning('You are currently using minified code outside of NODE_ENV === \"production\". ' + 'This means that you are running a slower development build of Redux. ' + 'You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify ' + 'or setting mode to production in webpack (https://webpack.js.org/concepts/mode/) ' + 'to ensure you have the correct code for your production build.');\n}\n\nexport { ActionTypes as __DO_NOT_USE__ActionTypes, applyMiddleware, bindActionCreators, combineReducers, compose, createStore };\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = require(\"@scrabble-solver/constants\");\nvar bonuses = [\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 0, y: 0 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 2, y: 0 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 5, y: 0 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 7, y: 0 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 9, y: 0 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 12, y: 0 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 14, y: 0 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 4, y: 1 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 6, y: 1 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 8, y: 1 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 10, y: 1 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 0, y: 2 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 3, y: 2 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 5, y: 2 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 7, y: 2 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 9, y: 2 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 11, y: 2 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 2 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 2, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 4, y: 3 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 6, y: 3 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 8, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 10, y: 3 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 12, y: 3 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 1, y: 4 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 3, y: 4 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 5, y: 4 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 9, y: 4 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 11, y: 4 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 13, y: 4 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 0, y: 5 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 2, y: 5 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 4, y: 5 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 7, y: 5 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 10, y: 5 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 12, y: 5 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 14, y: 5 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 1, y: 6 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 3, y: 6 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 6, y: 6 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 8, y: 6 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 11, y: 6 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 13, y: 6 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 0, y: 7 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 2, y: 7 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 5, y: 7 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 7, y: 7 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 9, y: 7 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 12, y: 7 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 14, y: 7 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 1, y: 8 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 3, y: 8 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 6, y: 8 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 8, y: 8 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 11, y: 8 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 13, y: 8 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 0, y: 9 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 2, y: 9 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 4, y: 9 },\n { multiplier: 3, score: 3, type: constants_1.BONUS_CHARACTER, x: 7, y: 9 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 10, y: 9 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 12, y: 9 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 14, y: 9 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 1, y: 10 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 3, y: 10 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 5, y: 10 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 9, y: 10 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 11, y: 10 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 13, y: 10 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 2, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 4, y: 11 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 6, y: 11 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 8, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 10, y: 11 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 12, y: 11 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 0, y: 12 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 3, y: 12 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 5, y: 12 },\n { multiplier: 3, score: 1, type: constants_1.BONUS_CHARACTER, x: 7, y: 12 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 9, y: 12 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 11, y: 12 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 12 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 4, y: 13 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 6, y: 13 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 8, y: 13 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 10, y: 13 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 0, y: 14 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 2, y: 14 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 5, y: 14 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 7, y: 14 },\n { multiplier: 3, score: 2, type: constants_1.BONUS_CHARACTER, x: 9, y: 14 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 12, y: 14 },\n { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 14, y: 14 },\n];\nexports.default = bonuses;\n","import arrayLikeToArray from \"@babel/runtime/helpers/esm/arrayLikeToArray\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spread = (this && this.__spread) || function () {\n for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));\n return ar;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar Pattern_1 = __importDefault(require(\"./Pattern\"));\nvar HorizontalPattern = /** @class */ (function (_super) {\n __extends(HorizontalPattern, _super);\n function HorizontalPattern() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n HorizontalPattern.prototype.clone = function () {\n return new HorizontalPattern({\n board: this.board,\n cells: this.cells.map(function (cell) { return cell.clone(); }),\n });\n };\n HorizontalPattern.prototype.getCollisions = function () {\n var _this = this;\n var collisions = [];\n this.cells\n .filter(function (cell) { return cell.isEmpty && (_this.board.collidesUp(cell) || _this.board.collidesDown(cell)); })\n .forEach(function (cell) {\n var column = _this.board.getColumn(cell.x);\n var y = cell.y - 1;\n while (y >= 0 && column[y].hasTile()) {\n --y;\n }\n var previousCells = column.slice(y + 1, cell.y);\n y = cell.y + 1;\n while (y < column.length && column[y].hasTile()) {\n ++y;\n }\n var nextCells = column.slice(cell.y + 1, y);\n var cells = __spread(previousCells, [cell], nextCells);\n if (cells.length > 1) {\n var pattern = new Pattern_1.default({ board: _this.board, cells: cells });\n collisions.push(pattern);\n }\n });\n return collisions;\n };\n return HorizontalPattern;\n}(Pattern_1.default));\nexports.default = HorizontalPattern;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesEs = [\n { character: 'a', count: 12, score: 1 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 4, score: 3 },\n { character: 'ch', count: 1, score: 5 },\n { character: 'd', count: 5, score: 2 },\n { character: 'e', count: 12, score: 1 },\n { character: 'f', count: 1, score: 4 },\n { character: 'g', count: 2, score: 2 },\n { character: 'h', count: 2, score: 4 },\n { character: 'i', count: 6, score: 1 },\n { character: 'j', count: 1, score: 8 },\n { character: 'll', count: 1, score: 8 },\n { character: 'l', count: 4, score: 1 },\n { character: 'm', count: 2, score: 3 },\n { character: 'n', count: 5, score: 1 },\n { character: 'ñ', count: 1, score: 8 },\n { character: 'o', count: 9, score: 1 },\n { character: 'p', count: 2, score: 3 },\n { character: 'q', count: 1, score: 5 },\n { character: 'r', count: 5, score: 1 },\n { character: 'rr', count: 1, score: 8 },\n { character: 's', count: 6, score: 1 },\n { character: 't', count: 4, score: 1 },\n { character: 'u', count: 5, score: 1 },\n { character: 'v', count: 1, score: 4 },\n { character: 'x', count: 1, score: 8 },\n { character: 'y', count: 1, score: 4 },\n { character: 'z', count: 1, score: 10 },\n];\nexports.default = tilesEs;\n","import arrayLikeToArray from \"@babel/runtime/helpers/esm/arrayLikeToArray\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithoutHoles from \"@babel/runtime/helpers/esm/arrayWithoutHoles\";\nimport iterableToArray from \"@babel/runtime/helpers/esm/iterableToArray\";\nimport unsupportedIterableToArray from \"@babel/runtime/helpers/esm/unsupportedIterableToArray\";\nimport nonIterableSpread from \"@babel/runtime/helpers/esm/nonIterableSpread\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = require(\"@scrabble-solver/constants\");\nvar Tile = /** @class */ (function () {\n function Tile(_a) {\n var character = _a.character, _b = _a.isBlank, isBlank = _b === void 0 ? false : _b;\n this.character = character;\n this.isBlank = isBlank;\n }\n Tile.fromJson = function (json) {\n if (!json) {\n return Tile.Null;\n }\n return new Tile({\n character: json.character,\n isBlank: json.isBlank,\n });\n };\n Tile.prototype.clone = function () {\n return new Tile({\n character: this.character,\n isBlank: this.isBlank,\n });\n };\n Tile.prototype.equals = function (other) {\n return this.character === other.character && this.isBlank === other.isBlank;\n };\n Tile.prototype.toJson = function () {\n return {\n character: this.character,\n isBlank: this.isBlank,\n };\n };\n Tile.prototype.toString = function () {\n return this.character;\n };\n Tile.Null = Object.freeze({\n character: constants_1.EMPTY_CELL,\n isBlank: false,\n clone: function () { return Tile.Null; },\n equals: function (other) { return other === Tile.Null; },\n toJson: function () { return null; },\n toString: function () { return constants_1.EMPTY_CELL; },\n });\n return Tile;\n}());\nexports.default = Tile;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = require(\"@scrabble-solver/constants\");\nvar Cell_1 = __importDefault(require(\"./Cell\"));\nvar Tile_1 = __importDefault(require(\"./Tile\"));\nvar Board = /** @class */ (function () {\n function Board(_a) {\n var rows = _a.rows;\n this.rows = rows;\n this.numberOfColumns = rows[0].length;\n this.numberOfRows = rows.length;\n }\n Board.create = function (width, height) {\n return Board.fromStringArray(Array(height).fill(Array(width).fill(' ').join('')));\n };\n Board.fromJson = function (json) {\n return new Board({\n rows: json.map(function (row) { return row.map(Cell_1.default.fromJson); }),\n });\n };\n Board.fromStringArray = function (stringArray) {\n return new Board({\n rows: stringArray.map(function (row, y) {\n return row.split('').map(function (character, x) {\n return new Cell_1.default({\n isEmpty: !character || character === constants_1.EMPTY_CELL,\n tile: character === constants_1.EMPTY_CELL ? Tile_1.default.Null : new Tile_1.default({ character: character }),\n x: x,\n y: y,\n });\n });\n }),\n });\n };\n Object.defineProperty(Board.prototype, \"center\", {\n get: function () {\n var x = Math.floor(this.numberOfColumns / 2);\n var y = Math.floor(this.numberOfRows / 2);\n return this.rows[y][x];\n },\n enumerable: false,\n configurable: true\n });\n Board.prototype.clone = function () {\n var rows = this.rows.map(function (row) { return row.map(function (cell) { return cell.clone(); }); });\n return new Board({ rows: rows });\n };\n Board.prototype.collides = function (cell) {\n return this.collidesUp(cell) || this.collidesDown(cell) || this.collidesLeft(cell) || this.collidesRight(cell);\n };\n Board.prototype.collidesDown = function (_a) {\n var x = _a.x, y = _a.y;\n return y < this.numberOfRows - 1 && !this.rows[y + 1][x].isEmpty;\n };\n Board.prototype.collidesLeft = function (_a) {\n var x = _a.x, y = _a.y;\n return x > 0 && !this.rows[y][x - 1].isEmpty;\n };\n Board.prototype.collidesRight = function (_a) {\n var x = _a.x, y = _a.y;\n return x < this.numberOfColumns - 1 && !this.rows[y][x + 1].isEmpty;\n };\n Board.prototype.collidesUp = function (_a) {\n var x = _a.x, y = _a.y;\n return y > 0 && !this.rows[y - 1][x].isEmpty;\n };\n Board.prototype.equals = function (other) {\n return (this.numberOfColumns === other.numberOfColumns &&\n this.numberOfRows === other.numberOfRows &&\n this.rows.every(function (row, rowIndex) {\n return row.every(function (cell, cellIndex) {\n return cell.equals(other.rows[rowIndex][cellIndex]);\n });\n }));\n };\n Board.prototype.getBlanksCount = function () {\n return this.rows.reduce(function (count, row) {\n return count + row.reduce(function (rowCount, cell) { return (cell.tile.isBlank ? rowCount + 1 : rowCount); }, 0);\n }, 0);\n };\n Board.prototype.getColumn = function (index) {\n return this.rows.map(function (row) { return row[index]; });\n };\n Board.prototype.getRow = function (index) {\n return this.rows[index];\n };\n Board.prototype.getTilesCount = function () {\n return this.rows.reduce(function (count, row) {\n return count + row.reduce(function (rowCount, cell) { return (cell.hasTile() ? rowCount + 1 : rowCount); }, 0);\n }, 0);\n };\n Board.prototype.isEmpty = function () {\n return this.rows.every(function (row) { return row.every(function (_a) {\n var isEmpty = _a.isEmpty;\n return isEmpty;\n }); });\n };\n Board.prototype.toJson = function () {\n return this.rows.map(function (row) { return row.map(function (cell) { return cell.toJson(); }); });\n };\n Board.prototype.toString = function () {\n return this.rows.map(function (row) { return row.map(String); }).join('\\n');\n };\n Board.prototype.updateCell = function (x, y, updateCell) {\n this.rows[y][x] = updateCell(this.rows[y][x]);\n };\n Board.prototype.updateRow = function (y, updateRow) {\n this.rows[y] = updateRow(this.rows[y]);\n };\n return Board;\n}());\nexports.default = Board;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.default = void 0;\nvar literaki_1 = require(\"./literaki\");\nObject.defineProperty(exports, \"default\", { enumerable: true, get: function () { return __importDefault(literaki_1).default; } });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesEn = [\n { character: 'a', count: 9, score: 1 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 2, score: 3 },\n { character: 'd', count: 4, score: 2 },\n { character: 'e', count: 12, score: 1 },\n { character: 'f', count: 2, score: 4 },\n { character: 'g', count: 3, score: 2 },\n { character: 'h', count: 2, score: 4 },\n { character: 'i', count: 9, score: 1 },\n { character: 'j', count: 1, score: 8 },\n { character: 'k', count: 1, score: 5 },\n { character: 'l', count: 4, score: 1 },\n { character: 'm', count: 2, score: 3 },\n { character: 'n', count: 6, score: 1 },\n { character: 'o', count: 8, score: 1 },\n { character: 'p', count: 2, score: 3 },\n { character: 'q', count: 1, score: 10 },\n { character: 'r', count: 6, score: 1 },\n { character: 's', count: 4, score: 1 },\n { character: 't', count: 6, score: 1 },\n { character: 'u', count: 4, score: 1 },\n { character: 'v', count: 2, score: 4 },\n { character: 'w', count: 2, score: 4 },\n { character: 'x', count: 1, score: 8 },\n { character: 'y', count: 2, score: 4 },\n { character: 'z', count: 1, score: 10 },\n];\nexports.default = tilesEn;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesEs = [\n { character: 'a', count: 12, score: 1 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 4, score: 3 },\n { character: 'ch', count: 1, score: 5 },\n { character: 'd', count: 5, score: 2 },\n { character: 'e', count: 12, score: 1 },\n { character: 'f', count: 1, score: 4 },\n { character: 'g', count: 2, score: 2 },\n { character: 'h', count: 2, score: 4 },\n { character: 'i', count: 6, score: 1 },\n { character: 'j', count: 1, score: 8 },\n { character: 'll', count: 1, score: 8 },\n { character: 'l', count: 4, score: 1 },\n { character: 'm', count: 2, score: 3 },\n { character: 'n', count: 5, score: 1 },\n { character: 'ñ', count: 1, score: 8 },\n { character: 'o', count: 9, score: 1 },\n { character: 'p', count: 2, score: 3 },\n { character: 'q', count: 1, score: 5 },\n { character: 'r', count: 5, score: 1 },\n { character: 'rr', count: 1, score: 8 },\n { character: 's', count: 6, score: 1 },\n { character: 't', count: 4, score: 1 },\n { character: 'u', count: 5, score: 1 },\n { character: 'v', count: 1, score: 4 },\n { character: 'x', count: 1, score: 8 },\n { character: 'y', count: 1, score: 4 },\n { character: 'z', count: 1, score: 10 },\n];\nexports.default = tilesEs;\n","export default function symbolObservablePonyfill(root) {\n\tvar result;\n\tvar Symbol = root.Symbol;\n\n\tif (typeof Symbol === 'function') {\n\t\tif (Symbol.observable) {\n\t\t\tresult = Symbol.observable;\n\t\t} else {\n\t\t\tresult = Symbol('observable');\n\t\t\tSymbol.observable = result;\n\t\t}\n\t} else {\n\t\tresult = '@@observable';\n\t}\n\n\treturn result;\n};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesDe = [\n { character: 'a', count: 5, score: 1 },\n { character: 'ä', count: 1, score: 6 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 2, score: 4 },\n { character: 'd', count: 4, score: 1 },\n { character: 'e', count: 15, score: 1 },\n { character: 'f', count: 2, score: 4 },\n { character: 'g', count: 3, score: 2 },\n { character: 'h', count: 4, score: 2 },\n { character: 'i', count: 6, score: 1 },\n { character: 'j', count: 1, score: 6 },\n { character: 'k', count: 2, score: 4 },\n { character: 'l', count: 3, score: 2 },\n { character: 'm', count: 4, score: 3 },\n { character: 'n', count: 9, score: 1 },\n { character: 'o', count: 3, score: 2 },\n { character: 'ö', count: 1, score: 8 },\n { character: 'p', count: 1, score: 4 },\n { character: 'q', count: 1, score: 10 },\n { character: 'r', count: 6, score: 1 },\n { character: 's', count: 7, score: 1 },\n { character: 't', count: 6, score: 1 },\n { character: 'u', count: 6, score: 1 },\n { character: 'ü', count: 1, score: 6 },\n { character: 'v', count: 1, score: 6 },\n { character: 'w', count: 1, score: 3 },\n { character: 'x', count: 1, score: 8 },\n { character: 'y', count: 1, score: 10 },\n { character: 'z', count: 1, score: 3 },\n];\nexports.default = tilesDe;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.VOWELS = exports.CONSONANTS = exports.NO_BONUS = exports.EMPTY_CELL = exports.BONUS_WORD = exports.BONUS_CHARACTER = exports.BLANK = void 0;\nexports.BLANK = ' ';\nexports.BONUS_CHARACTER = 'BONUS_CHARACTER';\nexports.BONUS_WORD = 'BONUS_WORD';\nexports.EMPTY_CELL = ' ';\nexports.NO_BONUS = { characterMultiplier: 1, wordMultiplier: 1 };\nexports.CONSONANTS = [\n 'b',\n 'c',\n 'ć',\n 'd',\n 'f',\n 'g',\n 'h',\n 'j',\n 'k',\n 'l',\n 'ł',\n 'm',\n 'n',\n 'ń',\n 'p',\n 'q',\n 'r',\n 's',\n 'ś',\n 't',\n 'v',\n 'w',\n 'x',\n 'z',\n 'ź',\n 'ż',\n];\nexports.VOWELS = ['a', 'ą', 'ä', 'e', 'ę', 'i', 'o', 'ó', 'ö', 'u', 'ü', 'y'];\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tilesFr = [\n { character: 'a', count: 9, score: 1 },\n { character: 'b', count: 2, score: 3 },\n { character: 'c', count: 2, score: 3 },\n { character: 'd', count: 3, score: 2 },\n { character: 'e', count: 15, score: 1 },\n { character: 'f', count: 2, score: 1 },\n { character: 'g', count: 2, score: 2 },\n { character: 'h', count: 2, score: 4 },\n { character: 'i', count: 8, score: 1 },\n { character: 'j', count: 1, score: 8 },\n { character: 'k', count: 1, score: 10 },\n { character: 'l', count: 5, score: 1 },\n { character: 'm', count: 3, score: 2 },\n { character: 'n', count: 6, score: 1 },\n { character: 'o', count: 6, score: 1 },\n { character: 'p', count: 2, score: 3 },\n { character: 'q', count: 1, score: 8 },\n { character: 'r', count: 6, score: 1 },\n { character: 's', count: 6, score: 1 },\n { character: 't', count: 6, score: 1 },\n { character: 'u', count: 6, score: 1 },\n { character: 'v', count: 2, score: 4 },\n { character: 'w', count: 1, score: 10 },\n { character: 'x', count: 1, score: 10 },\n { character: 'y', count: 1, score: 10 },\n { character: 'z', count: 1, score: 10 },\n];\nexports.default = tilesFr;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = require(\"@scrabble-solver/constants\");\nvar CharacterBonus_1 = __importDefault(require(\"./CharacterBonus\"));\nvar WordBonus_1 = __importDefault(require(\"./WordBonus\"));\nvar Config = /** @class */ (function () {\n function Config(config) {\n this.bonuses = getBonuses(config);\n this.config = config;\n this.pointsMap = getPointsMap(this.config);\n }\n Config.fromJson = function (json) {\n return new Config(json);\n };\n Object.defineProperty(Config.prototype, \"allTilesBonusScore\", {\n get: function () {\n return this.config.allTilesBonusScore;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"alphabet\", {\n get: function () {\n return getAlphabet(this.config);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"blankScore\", {\n get: function () {\n return this.config.blankScore;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"boardHeight\", {\n get: function () {\n return this.config.boardHeight;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"boardWidth\", {\n get: function () {\n return this.config.boardWidth;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"twoCharacterTiles\", {\n get: function () {\n return this.config.tiles.filter(function (tile) { return tile.character.length === 2; }).map(function (tile) { return tile.character; });\n },\n enumerable: false,\n configurable: true\n });\n Config.prototype.getCellBonus = function (cell) {\n return this.bonuses.find(function (bonus) { return bonus.matchesCellCoordinates(cell); });\n };\n Config.prototype.getCellBonusValue = function (cell) {\n var _a;\n return ((_a = this.getCellBonus(cell)) === null || _a === void 0 ? void 0 : _a.value) || constants_1.NO_BONUS;\n };\n Config.prototype.getCharacterPoints = function (character) {\n if (character === null) {\n return undefined;\n }\n if (character === constants_1.BLANK) {\n return this.blankScore;\n }\n return this.pointsMap[character];\n };\n Config.prototype.getTwoCharacterTileByPrefix = function (character) {\n if (character.length !== 1) {\n return undefined;\n }\n return this.twoCharacterTiles.find(function (characters) { return characters.startsWith(character); });\n };\n Config.prototype.getTilePoints = function (tile) {\n if (tile === null) {\n return undefined;\n }\n return tile.isBlank ? this.blankScore : this.getCharacterPoints(tile.character);\n };\n Config.prototype.hasCharacter = function (character) {\n return this.alphabet.includes(character);\n };\n Config.prototype.isTwoCharacterTilePrefix = function (character) {\n return typeof this.getTwoCharacterTileByPrefix(character) !== 'undefined';\n };\n Object.defineProperty(Config.prototype, \"maximumNumberOfCharacters\", {\n get: function () {\n return this.config.maximumNumberOfCharacters;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"numberOfBlanks\", {\n get: function () {\n return this.config.numberOfBlanks;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Config.prototype, \"tiles\", {\n get: function () {\n return this.config.tiles;\n },\n enumerable: false,\n configurable: true\n });\n Config.prototype.toJson = function () {\n return this.config;\n };\n return Config;\n}());\nvar getBonuses = function (config) {\n return config.bonuses.map(function (bonus) {\n if (bonus.type === constants_1.BONUS_CHARACTER) {\n return new CharacterBonus_1.default(bonus);\n }\n if (bonus.type === constants_1.BONUS_WORD) {\n return new WordBonus_1.default(bonus);\n }\n throw new Error(\"Unsupported Bonus type: \\\"\" + bonus.type + \"\\\"\");\n });\n};\nvar getAlphabet = function (config) { return config.tiles.map(function (_a) {\n var character = _a.character;\n return character;\n}); };\nvar getPointsMap = function (config) {\n return config.tiles.reduce(function (pointsMap, _a) {\n var _b;\n var character = _a.character, score = _a.score;\n return (__assign(__assign({}, pointsMap), (_b = {}, _b[character] = score, _b)));\n }, {});\n};\nexports.default = Config;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nvar _a;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar types_1 = require(\"@scrabble-solver/types\");\nvar bonuses_1 = __importDefault(require(\"./bonuses\"));\nvar tiles_1 = require(\"./tiles\");\nvar base = {\n allTilesBonusScore: 50,\n blankScore: 0,\n boardHeight: 15,\n boardWidth: 15,\n bonuses: bonuses_1.default,\n id: 'scrabble',\n maximumNumberOfCharacters: 7,\n name: 'Scrabble',\n numberOfBlanks: 2,\n};\nvar scrabble = (_a = {\n id: base.id,\n name: base.name\n },\n _a[types_1.Locale.EN_GB] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesEn })),\n _a[types_1.Locale.DE_DE] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesDe })),\n _a[types_1.Locale.EN_US] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesEn })),\n _a[types_1.Locale.ES_ES] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesEs })),\n _a[types_1.Locale.FR_FR] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesFr })),\n _a[types_1.Locale.PL_PL] = types_1.Config.fromJson(__assign(__assign({}, base), { tiles: tiles_1.tilesPl })),\n _a);\nexports.default = scrabble;\n","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar getConfig_1 = __importDefault(require(\"./getConfig\"));\nvar getLocaleConfig = function (configId, locale) {\n return getConfig_1.default(configId)[locale];\n};\nexports.default = getLocaleConfig;\n","/* global window */\nimport ponyfill from './ponyfill.js';\n\nvar root;\n\nif (typeof self !== 'undefined') {\n root = self;\n} else if (typeof window !== 'undefined') {\n root = window;\n} else if (typeof global !== 'undefined') {\n root = global;\n} else if (typeof module !== 'undefined') {\n root = module;\n} else {\n root = Function('return this')();\n}\n\nvar result = ponyfill(root);\nexport default result;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar literaki_1 = __importDefault(require(\"./literaki\"));\nvar scrabble_1 = __importDefault(require(\"./scrabble\"));\nvar configs = [literaki_1.default, scrabble_1.default];\nvar getConfig = function (configId) {\n var config = configs.find(function (_a) {\n var id = _a.id;\n return id === configId;\n });\n if (!config) {\n throw new Error(\"Invalid \\\"configId\\\" parameter: not one of \" + configs.map(function (_a) {\n var id = _a.id;\n return id;\n }).join('/'));\n }\n return config;\n};\nexports.default = getConfig;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = require(\"@scrabble-solver/constants\");\nvar Cell_1 = __importDefault(require(\"./Cell\"));\nvar Result = /** @class */ (function () {\n function Result(_a) {\n var cells = _a.cells, id = _a.id, numberOfCollisions = _a.numberOfCollisions, points = _a.points;\n var tiles = getTiles(cells);\n this.cells = cells;\n this.id = id;\n this.length = cells.length;\n this.numberOfCollisions = numberOfCollisions;\n this.numberOfConsonants = getConsonants(tiles).length;\n this.numberOfBlanks = getBlanks(tiles).length;\n this.numberOfTiles = tiles.length;\n this.numberOfVowels = getVowels(tiles).length;\n this.numberOfWords = 1 + this.numberOfCollisions;\n this.points = points;\n this.pointsRatio = getPointsRatio(tiles, points);\n this.tiles = tiles;\n this.tilesCharacters = getTilesCharacters(tiles);\n this.word = getWord(cells);\n }\n Result.fromJson = function (json) {\n return new Result({\n cells: json.cells.map(Cell_1.default.fromJson),\n id: json.id,\n numberOfCollisions: json.numberOfCollisions,\n points: json.points,\n });\n };\n Result.prototype.toJson = function () {\n return {\n cells: this.cells.map(function (cell) { return cell.toJson(); }),\n id: this.id,\n numberOfCollisions: this.numberOfCollisions,\n points: this.points,\n };\n };\n return Result;\n}());\nvar charactersComparator = function (a, b) { return a.localeCompare(b); };\nvar getBlanks = function (tiles) { return tiles.filter(function (_a) {\n var isBlank = _a.isBlank;\n return isBlank;\n}); };\nvar getConsonants = function (tiles) { return tiles.filter(isConsonant); };\nvar getVowels = function (tiles) { return tiles.filter(isVowel); };\nvar getNonBlankCharacters = function (tiles) { return getNonBlanks(tiles).map(function (_a) {\n var character = _a.character;\n return character;\n}); };\nvar getNonBlanks = function (tiles) { return tiles.filter(function (_a) {\n var isBlank = _a.isBlank;\n return !isBlank;\n}); };\nvar getPointsRatio = function (tiles, points) { return points / tiles.length; };\nvar getTiles = function (cells) { return cells.filter(function (_a) {\n var isEmpty = _a.isEmpty;\n return isEmpty;\n}).map(function (_a) {\n var tile = _a.tile;\n return tile;\n}); };\nvar getTilesCharacters = function (tiles) { return getNonBlankCharacters(tiles).sort(charactersComparator).join(''); };\nvar getWord = function (cells) { return cells.map(String).join(''); };\nvar isConsonant = function (_a) {\n var character = _a.character, isBlank = _a.isBlank;\n return constants_1.CONSONANTS.includes(character) && !isBlank;\n};\nvar isVowel = function (_a) {\n var character = _a.character, isBlank = _a.isBlank;\n return constants_1.VOWELS.includes(character) && !isBlank;\n};\nexports.default = Result;\n","export var GITHUB_PROJECT_URL = 'https://github.com/kamilmielnik/scrabble-solver';\nexport var TRANSITION_DURATION = 100;\nexport var TRANSITION_DURATION_LONG = 250;\nexport var COLOR_BLUE = '#c7d8f9';\nexport var COLOR_GREEN = '#bae3ba';\nexport var COLOR_RED = '#f7c2aa';\nexport var COLOR_YELLOW = '#efe3ae';\nexport var COMPONENTS_SPACING = 40;\nexport var COMPONENTS_SPACING_MOBILE = 20;\nexport var BOARD_CELL_BORDER_WIDTH = 1;\nexport var BOARD_TILE_FONT_SIZE_MIN = 14;\nexport var BOARD_TILE_FONT_SIZE_POINTS_MIN = 10;\nexport var BOARD_TILE_SIZE_MAX = 64;\nexport var BOARD_TILE_SIZE_MIN = 32;\nexport var DICTIONARY_HEIGHT = 220;\nexport var TILE_SIZE = 80;\nexport var PLAIN_TILES_COLOR_DEFAULT = COLOR_GREEN;\nexport var PLAIN_TILES_PADDING_HORIZONTAL = 0;\nexport var PLAIN_TILES_PADDING_VERTICAL = 0;\nexport var PLAIN_TILES_POINTS_COLORS = {\n 1: COLOR_YELLOW,\n 2: COLOR_GREEN,\n 3: COLOR_BLUE,\n 4: COLOR_RED,\n 5: COLOR_RED,\n 6: COLOR_RED,\n 7: COLOR_RED,\n 8: COLOR_RED,\n 9: COLOR_RED,\n 10: COLOR_RED\n};\nexport var PLAIN_TILES_TILE_MARGIN = 6;\nexport var PLAIN_TILES_TILE_MAX_ROTATE = 0;\nexport var PLAIN_TILES_TILE_MAX_SCATTER = 0;\nexport var PLAIN_TILES_TILE_SIZE = 80;\nexport var PLAIN_TILES_VERSION_TILE_COLOR = COLOR_GREEN;\nexport var PLAIN_TILES_VERSION_TILE_SIZE = TILE_SIZE;\nexport var REMAINING_TILES_TILE_SIZE = 50;\nexport var RESULTS_HEADER_HEIGHT = 35;\nexport var RESULTS_ITEM_HEIGHT = 34;\nexport var RESULTS_INPUT_HEIGHT = 43;","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.tilesDe = exports.tilesPl = exports.tilesFr = exports.tilesEs = exports.tilesEn = void 0;\nvar tilesEn_1 = require(\"./tilesEn\");\nObject.defineProperty(exports, \"tilesEn\", { enumerable: true, get: function () { return __importDefault(tilesEn_1).default; } });\nvar tilesEs_1 = require(\"./tilesEs\");\nObject.defineProperty(exports, \"tilesEs\", { enumerable: true, get: function () { return __importDefault(tilesEs_1).default; } });\nvar tilesFr_1 = require(\"./tilesFr\");\nObject.defineProperty(exports, \"tilesFr\", { enumerable: true, get: function () { return __importDefault(tilesFr_1).default; } });\nvar tilesPl_1 = require(\"./tilesPl\");\nObject.defineProperty(exports, \"tilesPl\", { enumerable: true, get: function () { return __importDefault(tilesPl_1).default; } });\nvar tilesDe_1 = require(\"./tilesDe\");\nObject.defineProperty(exports, \"tilesDe\", { enumerable: true, get: function () { return __importDefault(tilesDe_1).default; } });\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = require(\"@scrabble-solver/constants\");\nvar Bonus_1 = __importDefault(require(\"./Bonus\"));\nvar WordBonus = /** @class */ (function (_super) {\n __extends(WordBonus, _super);\n function WordBonus() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.type = constants_1.BONUS_WORD;\n return _this;\n }\n Object.defineProperty(WordBonus.prototype, \"value\", {\n get: function () {\n return {\n characterMultiplier: 1,\n wordMultiplier: this.multiplier,\n };\n },\n enumerable: false,\n configurable: true\n });\n return WordBonus;\n}(Bonus_1.default));\nexports.default = WordBonus;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// eslint-disable-next-line no-shadow\nvar Locale;\n(function (Locale) {\n Locale[\"EN_GB\"] = \"en-GB\";\n Locale[\"EN_US\"] = \"en-US\";\n Locale[\"ES_ES\"] = \"es-ES\";\n Locale[\"FR_FR\"] = \"fr-FR\";\n Locale[\"PL_PL\"] = \"pl-PL\";\n Locale[\"DE_DE\"] = \"de-DE\";\n})(Locale || (Locale = {}));\nexports.default = Locale;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar Bonus = /** @class */ (function () {\n function Bonus(_a) {\n var multiplier = _a.multiplier, score = _a.score, x = _a.x, y = _a.y;\n this.multiplier = multiplier;\n this.score = score;\n this.x = x;\n this.y = y;\n }\n Bonus.prototype.canApply = function (_config, cell) {\n return cell.isEmpty && this.matchesCellCoordinates(cell);\n };\n Bonus.prototype.matchesCellCoordinates = function (cell) {\n return this.x === cell.x && this.y === cell.y;\n };\n Bonus.prototype.toJson = function () {\n return {\n multiplier: this.multiplier,\n score: this.score,\n type: this.type,\n x: this.x,\n y: this.y,\n };\n };\n Object.defineProperty(Bonus.prototype, \"value\", {\n get: function () {\n return {\n characterMultiplier: 1,\n wordMultiplier: 1,\n };\n },\n enumerable: false,\n configurable: true\n });\n return Bonus;\n}());\nexports.default = Bonus;\n","var canUseDom = Boolean(true && window.document && window.document.createElement);\nexport default canUseDom;","var numberComparator = function numberComparator(a, b) {\n return a - b;\n};\n\nexport default numberComparator;","var stringComparator = function stringComparator(a, b) {\n return a.localeCompare(b);\n};\n\nexport default stringComparator;","import numberComparator from './numberComparator';\nimport stringComparator from './stringComparator';\n\nvar comparator = function comparator(a, b) {\n if (typeof a === 'string' && typeof b === 'string') {\n return stringComparator(a, b);\n }\n\n if (typeof a === 'number' && typeof b === 'number') {\n return numberComparator(a, b);\n }\n\n return 0;\n};\n\nexport default comparator;","var createArray = function createArray(length) {\n return Array.from({\n length: length\n });\n};\n\nexport default createArray;","import createArray from './createArray';\n\nvar createGridOf = function createGridOf(width, height, getInitialValue) {\n return createArray(height).map(function (_row, y) {\n return createArray(width).map(function (_cell, x) {\n return getInitialValue(x, y);\n });\n });\n};\n\nexport default createGridOf;","var noop = function noop() {\n return undefined;\n};\n\nexport default noop;","import noop from './noop';\n\nvar createKeyboardNavigation = function createKeyboardNavigation(_ref) {\n var _ref$onArrowDown = _ref.onArrowDown,\n onArrowDown = _ref$onArrowDown === void 0 ? noop : _ref$onArrowDown,\n _ref$onArrowLeft = _ref.onArrowLeft,\n onArrowLeft = _ref$onArrowLeft === void 0 ? noop : _ref$onArrowLeft,\n _ref$onArrowRight = _ref.onArrowRight,\n onArrowRight = _ref$onArrowRight === void 0 ? noop : _ref$onArrowRight,\n _ref$onArrowUp = _ref.onArrowUp,\n onArrowUp = _ref$onArrowUp === void 0 ? noop : _ref$onArrowUp,\n _ref$onBackspace = _ref.onBackspace,\n onBackspace = _ref$onBackspace === void 0 ? noop : _ref$onBackspace,\n _ref$onDelete = _ref.onDelete,\n onDelete = _ref$onDelete === void 0 ? noop : _ref$onDelete,\n _ref$onEnter = _ref.onEnter,\n onEnter = _ref$onEnter === void 0 ? noop : _ref$onEnter,\n _ref$onKeyDown = _ref.onKeyDown,\n onKeyDown = _ref$onKeyDown === void 0 ? noop : _ref$onKeyDown;\n var handlers = {\n ArrowUp: onArrowUp,\n ArrowDown: onArrowDown,\n ArrowLeft: onArrowLeft,\n ArrowRight: onArrowRight,\n Backspace: onBackspace,\n Delete: onDelete,\n Enter: onEnter\n };\n\n var handleKeyDown = function handleKeyDown(event) {\n var handler = handlers[event.key] || noop;\n handler(event);\n onKeyDown(event);\n };\n\n return handleKeyDown;\n};\n\nexport default createKeyboardNavigation;","import numberComparator from './numberComparator';\nimport stringComparator from './stringComparator';\n\nvar createKeyComparator = function createKeyComparator(key) {\n return function (a, b) {\n var aValue = a[key];\n var bValue = b[key];\n\n if (typeof aValue === 'string' && typeof bValue === 'string') {\n return stringComparator(aValue, bValue);\n }\n\n if (typeof aValue === 'number' && typeof bValue === 'number') {\n return numberComparator(aValue, bValue);\n }\n\n return 0;\n };\n};\n\nexport default createKeyComparator;","var createNullMovingComparator = function createNullMovingComparator(direction) {\n return function (a, b) {\n if (a === b) {\n return 0;\n }\n\n if (a === null) {\n return direction === 'right' ? 1 : -1;\n }\n\n if (b === null) {\n return direction === 'right' ? -1 : 1;\n }\n\n return 0;\n };\n};\n\nexport default createNullMovingComparator;","import { Locale } from '@scrabble-solver/types';\n\nvar detectLocale = function detectLocale() {\n if (window.navigator.languages.includes('pl') || window.navigator.languages.includes('pl-PL')) {\n return Locale.PL_PL;\n }\n\n if (window.navigator.languages.includes('en-GB')) {\n return Locale.EN_GB;\n }\n\n if (window.navigator.languages.includes('fr-FR')) {\n return Locale.FR_FR;\n }\n\n return Locale.EN_US;\n};\n\nexport default detectLocale;","var findCell = function findCell(cells, x, y) {\n return cells.find(function (cell) {\n return cell.x === x && cell.y === y;\n });\n};\n\nexport default findCell;","import { BOARD_CELL_BORDER_WIDTH, BOARD_TILE_SIZE_MAX, BOARD_TILE_SIZE_MIN } from 'parameters';\n\nvar getCellSize = function getCellSize(config, width, height) {\n var maxWidth = (width - BOARD_CELL_BORDER_WIDTH) / config.boardWidth - BOARD_CELL_BORDER_WIDTH;\n var maxHeight = (height - BOARD_CELL_BORDER_WIDTH) / config.boardHeight - BOARD_CELL_BORDER_WIDTH;\n var cellSize = Math.min(maxWidth, maxHeight);\n return Math.floor(Math.min(Math.max(cellSize, BOARD_TILE_SIZE_MIN), BOARD_TILE_SIZE_MAX));\n};\n\nexport default getCellSize;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { BLANK } from '@scrabble-solver/constants';\nimport createKeyComparator from './createKeyComparator';\n\nvar getRemainingTiles = function getRemainingTiles(config, board, characters) {\n var nonEmptyCells = board.rows.flat().filter(function (cell) {\n return !cell.isEmpty;\n });\n var letterCells = nonEmptyCells.filter(function (cell) {\n return !cell.tile.isBlank;\n });\n var remainingTiles = Object.fromEntries(config.tiles.map(function (tile) {\n return [tile.character, _objectSpread(_objectSpread({}, tile), {}, {\n usedCount: 0\n })];\n }));\n var blank = {\n character: BLANK,\n count: config.numberOfBlanks,\n score: config.blankScore,\n usedCount: nonEmptyCells.filter(function (cell) {\n return cell.tile.isBlank;\n }).length + characters.filter(function (character) {\n return character === BLANK;\n }).length\n };\n var letters = [].concat(_toConsumableArray(letterCells.map(function (cell) {\n return cell.tile.character;\n })), _toConsumableArray(characters.filter(function (letter) {\n return letter !== BLANK;\n })));\n var unknownLetters = letters.filter(function (letter) {\n return typeof remainingTiles[letter] === 'undefined';\n });\n\n var _iterator = _createForOfIteratorHelper(unknownLetters),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var letter = _step.value;\n remainingTiles[letter] = {\n character: letter,\n count: 0,\n score: 0,\n usedCount: 0\n };\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n var _iterator2 = _createForOfIteratorHelper(letters),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var _letter = _step2.value;\n ++remainingTiles[_letter].usedCount;\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n return [].concat(_toConsumableArray(Object.values(remainingTiles).sort(createKeyComparator('character'))), [blank]);\n};\n\nexport default getRemainingTiles;","var getRemainingTilesCount = function getRemainingTilesCount(remainingTiles) {\n return remainingTiles.reduce(function (sum, _ref) {\n var count = _ref.count,\n usedCount = _ref.usedCount;\n return sum + count - usedCount;\n }, 0);\n};\n\nexport default getRemainingTilesCount;","var getTotalRemainingTilesCount = function getTotalRemainingTilesCount(remainingTiles) {\n return remainingTiles.reduce(function (sum, _ref) {\n var count = _ref.count;\n return sum + count;\n }, 0);\n};\n\nexport default getTotalRemainingTilesCount;","import { BLANK, CONSONANTS, VOWELS } from '@scrabble-solver/constants';\nimport getRemainingTilesCount from './getRemainingTilesCount';\nimport getTotalRemainingTilesCount from './getTotalRemainingTilesCount';\nexport var getRemainingTilesGroups = function getRemainingTilesGroups(remainingTiles) {\n var consonants = remainingTiles.filter(function (_ref) {\n var character = _ref.character;\n return CONSONANTS.includes(character);\n });\n var vowels = remainingTiles.filter(function (_ref2) {\n var character = _ref2.character;\n return VOWELS.includes(character);\n });\n var twoCharacterTiles = remainingTiles.filter(function (_ref3) {\n var character = _ref3.character;\n return character.length === 2;\n });\n var blanks = remainingTiles.filter(function (_ref4) {\n var character = _ref4.character;\n return character === BLANK;\n });\n var groups = [{\n remainingCount: getRemainingTilesCount(vowels),\n tiles: vowels,\n translationKey: 'common.vowels',\n totalCount: getTotalRemainingTilesCount(vowels)\n }, {\n remainingCount: getRemainingTilesCount(consonants),\n tiles: consonants,\n translationKey: 'common.consonants',\n totalCount: getTotalRemainingTilesCount(consonants)\n }, {\n remainingCount: getRemainingTilesCount(twoCharacterTiles),\n tiles: twoCharacterTiles,\n translationKey: 'common.two-letter-tiles',\n totalCount: getTotalRemainingTilesCount(twoCharacterTiles)\n }, {\n remainingCount: getRemainingTilesCount(blanks),\n tiles: blanks,\n translationKey: 'common.blanks',\n totalCount: getTotalRemainingTilesCount(blanks)\n }];\n return groups.filter(function (_ref5) {\n var totalCount = _ref5.totalCount;\n return totalCount > 0;\n });\n};\nexport default getRemainingTilesGroups;","import { BOARD_TILE_FONT_SIZE_MIN, BOARD_TILE_FONT_SIZE_POINTS_MIN } from 'parameters';\n\nvar getTileSizes = function getTileSizes(tileSize) {\n return {\n pointsFontSize: Math.max(Math.round(tileSize * 0.25), BOARD_TILE_FONT_SIZE_POINTS_MIN),\n tileFontSize: Math.max(Math.round(tileSize * 0.6), BOARD_TILE_FONT_SIZE_MIN),\n tileSize: tileSize\n };\n};\n\nexport default getTileSizes;","var inverseDirection = function inverseDirection(direction) {\n return direction === 'left' ? 'right' : 'left';\n};\n\nexport default inverseDirection;","var isCtrl = function isCtrl(event) {\n return event.ctrlKey || event.metaKey;\n};\n\nexport default isCtrl;","import { Locale } from '@scrabble-solver/types';\nvar locales = Object.values(Locale);\n\nvar isLocale = function isLocale(locale) {\n return locales.includes(locale);\n};\n\nexport default isLocale;","var isMac = function isMac() {\n if (!globalThis.navigator) {\n return false;\n }\n\n return globalThis.navigator.platform.toLowerCase().includes('mac');\n};\n\nexport default isMac;","var memoize = function memoize(fn) {\n var cache = [];\n\n var hasCache = function hasCache() {\n for (var _len = arguments.length, parameters = new Array(_len), _key = 0; _key < _len; _key++) {\n parameters[_key] = arguments[_key];\n }\n\n return Boolean(readCache(parameters));\n };\n\n var readCache = function readCache(parameters) {\n var _cache$find;\n\n return (_cache$find = cache.find(function (entry) {\n return parametersEqual(entry.parameters, parameters);\n })) === null || _cache$find === void 0 ? void 0 : _cache$find.result;\n };\n\n var writeCache = function writeCache(parameters, result) {\n cache.push({\n parameters: parameters,\n result: result\n });\n };\n\n var memoized = function memoized() {\n for (var _len2 = arguments.length, parameters = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n parameters[_key2] = arguments[_key2];\n }\n\n var cached = readCache(parameters);\n\n if (cached) {\n return cached;\n }\n\n var result = fn.apply(void 0, parameters);\n writeCache(parameters, result);\n return result;\n };\n\n return Object.assign(memoized, {\n hasCache: hasCache\n });\n};\n\nvar parametersEqual = function parametersEqual(a, b) {\n if (a.length !== b.length) {\n return false;\n }\n\n return a.every(function (parameter, index) {\n return parameter === b[index];\n });\n};\n\nexport default memoize;","var reverseComparator = function reverseComparator(comparator) {\n return function (a, b) {\n return -comparator(a, b);\n };\n};\n\nexport default reverseComparator;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nvar _comparators;\n\nimport { ResultColumn, SortDirection } from 'types';\nimport createKeyComparator from './createKeyComparator';\nimport reverseComparator from './reverseComparator';\nvar comparators = (_comparators = {}, _defineProperty(_comparators, ResultColumn.BlanksCount, createKeyComparator('numberOfBlanks')), _defineProperty(_comparators, ResultColumn.ConsonantsCount, createKeyComparator('numberOfConsonants')), _defineProperty(_comparators, ResultColumn.Points, createKeyComparator('points')), _defineProperty(_comparators, ResultColumn.TilesCount, createKeyComparator('numberOfTiles')), _defineProperty(_comparators, ResultColumn.VowelsCount, createKeyComparator('numberOfVowels')), _defineProperty(_comparators, ResultColumn.Word, createKeyComparator('word')), _defineProperty(_comparators, ResultColumn.WordsCount, createKeyComparator('numberOfWords')), _comparators);\n\nvar sortResults = function sortResults(results, column, sortDirection) {\n if (typeof results === 'undefined') {\n return results;\n }\n\n var comparator = comparators[column];\n var finalComparator = sortDirection === SortDirection.Descending ? reverseComparator(comparator) : comparator;\n return _toConsumableArray(results).sort(finalComparator);\n};\n\nexport default sortResults;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport comparator from './comparator';\n\nvar unorderedArraysEqual = function unorderedArraysEqual(a, b) {\n if (a.length !== b.length) {\n return false;\n }\n\n var aSorted = _toConsumableArray(a).sort(comparator);\n\n var bSorted = _toConsumableArray(b).sort(comparator);\n\n return aSorted.every(function (character, index) {\n return character === bSorted[index];\n });\n};\n\nexport default unorderedArraysEqual;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport { BLANK } from '@scrabble-solver/constants';\n\nvar zipCharactersAndTiles = function zipCharactersAndTiles(characters, tiles) {\n var remainingTiles = _toConsumableArray(tiles);\n\n return characters.map(function (character) {\n var index = remainingTiles.findIndex(function (tile) {\n return character === BLANK ? tile.isBlank : character === tile.character;\n });\n\n if (index >= 0) {\n var tile = remainingTiles[index];\n remainingTiles = [].concat(_toConsumableArray(remainingTiles.slice(0, index)), _toConsumableArray(remainingTiles.slice(index + 1)));\n return {\n character: character,\n tile: tile\n };\n }\n\n return {\n character: character,\n tile: null\n };\n });\n};\n\nexport default zipCharactersAndTiles;","export { default as canUseDom } from './canUseDom';\nexport { default as comparator } from './comparator';\nexport { default as createArray } from './createArray';\nexport { default as createGridOf } from './createGridOf';\nexport { default as createKeyboardNavigation } from './createKeyboardNavigation';\nexport { default as createKeyComparator } from './createKeyComparator';\nexport { default as createNullMovingComparator } from './createNullMovingComparator';\nexport { default as detectLocale } from './detectLocale';\nexport { default as findCell } from './findCell';\nexport { default as getCellSize } from './getCellSize';\nexport { default as getRemainingTiles } from './getRemainingTiles';\nexport { default as getRemainingTilesCount } from './getRemainingTilesCount';\nexport { default as getRemainingTilesGroups } from './getRemainingTilesGroups';\nexport { default as getTotalRemainingTilesCount } from './getTotalRemainingTilesCount';\nexport { default as getTileSizes } from './getTileSizes';\nexport { default as inverseDirection } from './inverseDirection';\nexport { default as isCtrl } from './isCtrl';\nexport { default as isLocale } from './isLocale';\nexport { default as isMac } from './isMac';\nexport { default as memoize } from './memoize';\nexport { default as noop } from './noop';\nexport { default as numberComparator } from './numberComparator';\nexport { default as reverseComparator } from './reverseComparator';\nexport { default as sortResults } from './sortResults';\nexport { default as stringComparator } from './stringComparator';\nexport { default as unorderedArraysEqual } from './unorderedArraysEqual';\nexport { default as zipCharactersAndTiles } from './zipCharactersAndTiles';","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = require(\"@scrabble-solver/constants\");\nvar bonuses = [\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 0, y: 0 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 3, y: 0 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 7, y: 0 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 11, y: 0 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 0 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 1, y: 1 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 5, y: 1 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 9, y: 1 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 13, y: 1 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 2, y: 2 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 6, y: 2 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 8, y: 2 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 12, y: 2 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 0, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 3, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 7, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 11, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 14, y: 3 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 4, y: 4 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 10, y: 4 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 1, y: 5 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 5, y: 5 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 9, y: 5 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 13, y: 5 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 2, y: 6 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 6, y: 6 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 8, y: 6 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 12, y: 6 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 0, y: 7 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 3, y: 7 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 7, y: 7 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 11, y: 7 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 7 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 2, y: 8 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 6, y: 8 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 8, y: 8 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 12, y: 8 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 1, y: 9 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 5, y: 9 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 9, y: 9 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 13, y: 9 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 4, y: 10 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 10, y: 10 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 0, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 3, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 7, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 11, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 14, y: 11 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 2, y: 12 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 6, y: 12 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 8, y: 12 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 12, y: 12 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 1, y: 13 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 5, y: 13 },\n { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 9, y: 13 },\n { multiplier: 2, type: constants_1.BONUS_WORD, x: 13, y: 13 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 0, y: 14 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 3, y: 14 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 7, y: 14 },\n { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 11, y: 14 },\n { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 14 },\n];\nexports.default = bonuses;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.default = void 0;\nvar scrabble_1 = require(\"./scrabble\");\nObject.defineProperty(exports, \"default\", { enumerable: true, get: function () { return __importDefault(scrabble_1).default; } });\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spread = (this && this.__spread) || function () {\n for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));\n return ar;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar Pattern_1 = __importDefault(require(\"./Pattern\"));\nvar VerticalPattern = /** @class */ (function (_super) {\n __extends(VerticalPattern, _super);\n function VerticalPattern() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n VerticalPattern.prototype.clone = function () {\n return new VerticalPattern({\n board: this.board,\n cells: this.cells.map(function (cell) { return cell.clone(); }),\n });\n };\n VerticalPattern.prototype.getCollisions = function () {\n var _this = this;\n var collisions = [];\n this.cells\n .filter(function (cell) { return cell.isEmpty && (_this.board.collidesLeft(cell) || _this.board.collidesRight(cell)); })\n .forEach(function (cell) {\n var row = _this.board.getRow(cell.y);\n var x = cell.x - 1;\n while (x >= 0 && row[x].hasTile()) {\n --x;\n }\n var previousCells = row.slice(x + 1, cell.x);\n x = cell.x + 1;\n while (x < row.length && row[x].hasTile()) {\n ++x;\n }\n var nextCells = row.slice(cell.x + 1, x);\n var cells = __spread(previousCells, [cell], nextCells);\n if (cells.length > 1) {\n var pattern = new Pattern_1.default({ board: _this.board, cells: cells });\n collisions.push(pattern);\n }\n });\n return collisions;\n };\n return VerticalPattern;\n}(Pattern_1.default));\nexports.default = VerticalPattern;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WordDefinition = exports.WordBonus = exports.VerticalPattern = exports.Tile = exports.Result = exports.Pattern = exports.Locale = exports.HorizontalPattern = exports.Config = exports.CharacterBonus = exports.Cell = exports.Bonus = exports.Board = void 0;\nvar Board_1 = require(\"./Board\");\nObject.defineProperty(exports, \"Board\", { enumerable: true, get: function () { return __importDefault(Board_1).default; } });\nvar Bonus_1 = require(\"./Bonus\");\nObject.defineProperty(exports, \"Bonus\", { enumerable: true, get: function () { return __importDefault(Bonus_1).default; } });\nvar Cell_1 = require(\"./Cell\");\nObject.defineProperty(exports, \"Cell\", { enumerable: true, get: function () { return __importDefault(Cell_1).default; } });\nvar CharacterBonus_1 = require(\"./CharacterBonus\");\nObject.defineProperty(exports, \"CharacterBonus\", { enumerable: true, get: function () { return __importDefault(CharacterBonus_1).default; } });\nvar Config_1 = require(\"./Config\");\nObject.defineProperty(exports, \"Config\", { enumerable: true, get: function () { return __importDefault(Config_1).default; } });\nvar HorizontalPattern_1 = require(\"./HorizontalPattern\");\nObject.defineProperty(exports, \"HorizontalPattern\", { enumerable: true, get: function () { return __importDefault(HorizontalPattern_1).default; } });\nvar Locale_1 = require(\"./Locale\");\nObject.defineProperty(exports, \"Locale\", { enumerable: true, get: function () { return __importDefault(Locale_1).default; } });\nvar Pattern_1 = require(\"./Pattern\");\nObject.defineProperty(exports, \"Pattern\", { enumerable: true, get: function () { return __importDefault(Pattern_1).default; } });\nvar Result_1 = require(\"./Result\");\nObject.defineProperty(exports, \"Result\", { enumerable: true, get: function () { return __importDefault(Result_1).default; } });\nvar Tile_1 = require(\"./Tile\");\nObject.defineProperty(exports, \"Tile\", { enumerable: true, get: function () { return __importDefault(Tile_1).default; } });\nvar VerticalPattern_1 = require(\"./VerticalPattern\");\nObject.defineProperty(exports, \"VerticalPattern\", { enumerable: true, get: function () { return __importDefault(VerticalPattern_1).default; } });\nvar WordBonus_1 = require(\"./WordBonus\");\nObject.defineProperty(exports, \"WordBonus\", { enumerable: true, get: function () { return __importDefault(WordBonus_1).default; } });\nvar WordDefinition_1 = require(\"./WordDefinition\");\nObject.defineProperty(exports, \"WordDefinition\", { enumerable: true, get: function () { return __importDefault(WordDefinition_1).default; } });\n","export default function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar Tile_1 = __importDefault(require(\"./Tile\"));\nvar Cell = /** @class */ (function () {\n // eslint-disable-next-line no-undef\n function Cell(_a) {\n var _b = _a.isEmpty, isEmpty = _b === void 0 ? true : _b, _c = _a.tile, tile = _c === void 0 ? Tile_1.default.Null : _c, x = _a.x, y = _a.y;\n this.isEmpty = isEmpty;\n this.tile = tile;\n this.x = x;\n this.y = y;\n }\n Cell.fromJson = function (json) {\n if (!json) {\n return Cell.Null;\n }\n return new Cell({\n isEmpty: json.isEmpty,\n tile: Tile_1.default.fromJson(json.tile),\n x: json.x,\n y: json.y,\n });\n };\n Cell.prototype.clone = function () {\n return new Cell({\n isEmpty: this.isEmpty,\n tile: this.tile.clone(),\n x: this.x,\n y: this.y,\n });\n };\n Cell.prototype.equals = function (other) {\n return this.x === other.x && this.y === other.y && this.isEmpty === other.isEmpty && this.tile.equals(other.tile);\n };\n Cell.prototype.hasTile = function () {\n return this.tile !== Tile_1.default.Null;\n };\n Cell.prototype.isCandidate = function () {\n return this.isEmpty && this.hasTile();\n };\n Cell.prototype.toJson = function () {\n return {\n isEmpty: this.isEmpty,\n tile: this.tile.toJson(),\n x: this.x,\n y: this.y,\n };\n };\n Cell.prototype.toString = function () {\n return String(this.tile);\n };\n Cell.Null = Object.freeze({\n isEmpty: true,\n tile: Tile_1.default.Null,\n x: 0,\n y: 0,\n clone: function () { return Cell.Null; },\n equals: function (other) { return other === Cell.Null; },\n hasTile: function () { return false; },\n isCandidate: function () { return false; },\n toString: function () { return ''; },\n toJson: function () { return null; },\n });\n return Cell;\n}());\nexports.default = Cell;\n","/*! store2 - v2.12.0 - 2020-08-12\n* Copyright (c) 2020 Nathan Bubna; Licensed (MIT OR GPL-3.0) */\n;(function(window, define) {\n var _ = {\n version: \"2.12.0\",\n areas: {},\n apis: {},\n\n // utilities\n inherit: function(api, o) {\n for (var p in api) {\n if (!o.hasOwnProperty(p)) {\n Object.defineProperty(o, p, Object.getOwnPropertyDescriptor(api, p));\n }\n }\n return o;\n },\n stringify: function(d) {\n return d === undefined || typeof d === \"function\" ? d+'' : JSON.stringify(d);\n },\n parse: function(s, fn) {\n // if it doesn't parse, return as is\n try{ return JSON.parse(s,fn||_.revive); }catch(e){ return s; }\n },\n\n // extension hooks\n fn: function(name, fn) {\n _.storeAPI[name] = fn;\n for (var api in _.apis) {\n _.apis[api][name] = fn;\n }\n },\n get: function(area, key){ return area.getItem(key); },\n set: function(area, key, string){ area.setItem(key, string); },\n remove: function(area, key){ area.removeItem(key); },\n key: function(area, i){ return area.key(i); },\n length: function(area){ return area.length; },\n clear: function(area){ area.clear(); },\n\n // core functions\n Store: function(id, area, namespace) {\n var store = _.inherit(_.storeAPI, function(key, data, overwrite) {\n if (arguments.length === 0){ return store.getAll(); }\n if (typeof data === \"function\"){ return store.transact(key, data, overwrite); }// fn=data, alt=overwrite\n if (data !== undefined){ return store.set(key, data, overwrite); }\n if (typeof key === \"string\" || typeof key === \"number\"){ return store.get(key); }\n if (typeof key === \"function\"){ return store.each(key); }\n if (!key){ return store.clear(); }\n return store.setAll(key, data);// overwrite=data, data=key\n });\n store._id = id;\n try {\n var testKey = '__store2_test';\n area.setItem(testKey, 'ok');\n store._area = area;\n area.removeItem(testKey);\n } catch (e) {\n store._area = _.storage('fake');\n }\n store._ns = namespace || '';\n if (!_.areas[id]) {\n _.areas[id] = store._area;\n }\n if (!_.apis[store._ns+store._id]) {\n _.apis[store._ns+store._id] = store;\n }\n return store;\n },\n storeAPI: {\n // admin functions\n area: function(id, area) {\n var store = this[id];\n if (!store || !store.area) {\n store = _.Store(id, area, this._ns);//new area-specific api in this namespace\n if (!this[id]){ this[id] = store; }\n }\n return store;\n },\n namespace: function(namespace, singleArea) {\n if (!namespace){\n return this._ns ? this._ns.substring(0,this._ns.length-1) : '';\n }\n var ns = namespace, store = this[ns];\n if (!store || !store.namespace) {\n store = _.Store(this._id, this._area, this._ns+ns+'.');//new namespaced api\n if (!this[ns]){ this[ns] = store; }\n if (!singleArea) {\n for (var name in _.areas) {\n store.area(name, _.areas[name]);\n }\n }\n }\n return store;\n },\n isFake: function(){ return this._area.name === 'fake'; },\n toString: function() {\n return 'store'+(this._ns?'.'+this.namespace():'')+'['+this._id+']';\n },\n\n // storage functions\n has: function(key) {\n if (this._area.has) {\n return this._area.has(this._in(key));//extension hook\n }\n return !!(this._in(key) in this._area);\n },\n size: function(){ return this.keys().length; },\n each: function(fn, fill) {// fill is used by keys(fillList) and getAll(fillList))\n for (var i=0, m=_.length(this._area); i<m; i++) {\n var key = this._out(_.key(this._area, i));\n if (key !== undefined) {\n if (fn.call(this, key, this.get(key), fill) === false) {\n break;\n }\n }\n if (m > _.length(this._area)) { m--; i--; }// in case of removeItem\n }\n return fill || this;\n },\n keys: function(fillList) {\n return this.each(function(k, v, list){ list.push(k); }, fillList || []);\n },\n get: function(key, alt) {\n var s = _.get(this._area, this._in(key)),\n fn;\n if (typeof alt === \"function\") {\n fn = alt;\n alt = null;\n }\n return s !== null ? _.parse(s, fn) :\n alt != null ? alt : s;\n },\n getAll: function(fillObj) {\n return this.each(function(k, v, all){ all[k] = v; }, fillObj || {});\n },\n transact: function(key, fn, alt) {\n var val = this.get(key, alt),\n ret = fn(val);\n this.set(key, ret === undefined ? val : ret);\n return this;\n },\n set: function(key, data, overwrite) {\n var d = this.get(key);\n if (d != null && overwrite === false) {\n return data;\n }\n return _.set(this._area, this._in(key), _.stringify(data), overwrite) || d;\n },\n setAll: function(data, overwrite) {\n var changed, val;\n for (var key in data) {\n val = data[key];\n if (this.set(key, val, overwrite) !== val) {\n changed = true;\n }\n }\n return changed;\n },\n add: function(key, data) {\n var d = this.get(key);\n if (d instanceof Array) {\n data = d.concat(data);\n } else if (d !== null) {\n var type = typeof d;\n if (type === typeof data && type === 'object') {\n for (var k in data) {\n d[k] = data[k];\n }\n data = d;\n } else {\n data = d + data;\n }\n }\n _.set(this._area, this._in(key), _.stringify(data));\n return data;\n },\n remove: function(key, alt) {\n var d = this.get(key, alt);\n _.remove(this._area, this._in(key));\n return d;\n },\n clear: function() {\n if (!this._ns) {\n _.clear(this._area);\n } else {\n this.each(function(k){ _.remove(this._area, this._in(k)); }, 1);\n }\n return this;\n },\n clearAll: function() {\n var area = this._area;\n for (var id in _.areas) {\n if (_.areas.hasOwnProperty(id)) {\n this._area = _.areas[id];\n this.clear();\n }\n }\n this._area = area;\n return this;\n },\n\n // internal use functions\n _in: function(k) {\n if (typeof k !== \"string\"){ k = _.stringify(k); }\n return this._ns ? this._ns + k : k;\n },\n _out: function(k) {\n return this._ns ?\n k && k.indexOf(this._ns) === 0 ?\n k.substring(this._ns.length) :\n undefined : // so each() knows to skip it\n k;\n }\n },// end _.storeAPI\n storage: function(name) {\n return _.inherit(_.storageAPI, { items: {}, name: name });\n },\n storageAPI: {\n length: 0,\n has: function(k){ return this.items.hasOwnProperty(k); },\n key: function(i) {\n var c = 0;\n for (var k in this.items){\n if (this.has(k) && i === c++) {\n return k;\n }\n }\n },\n setItem: function(k, v) {\n if (!this.has(k)) {\n this.length++;\n }\n this.items[k] = v;\n },\n removeItem: function(k) {\n if (this.has(k)) {\n delete this.items[k];\n this.length--;\n }\n },\n getItem: function(k){ return this.has(k) ? this.items[k] : null; },\n clear: function(){ for (var k in this.items){ this.removeItem(k); } }\n }// end _.storageAPI\n };\n\n var store =\n // safely set this up (throws error in IE10/32bit mode for local files)\n _.Store(\"local\", (function(){try{ return localStorage; }catch(e){}})());\n store.local = store;// for completeness\n store._ = _;// for extenders and debuggers...\n // safely setup store.session (throws exception in FF for file:/// urls)\n store.area(\"session\", (function(){try{ return sessionStorage; }catch(e){}})());\n store.area(\"page\", _.storage(\"page\"));\n\n if (typeof define === 'function' && define.amd !== undefined) {\n define('store2', [], function () {\n return store;\n });\n } else if (typeof module !== 'undefined' && module.exports) {\n module.exports = store;\n } else {\n // expose the primary store fn to the global object and save conflicts\n if (window.store){ _.conflict = window.store; }\n window.store = store;\n }\n\n})(this, this && this.define);\n","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}"]}}