@scrabble-solver/scrabble-solver 2.6.0 → 2.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (708) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +14 -14
  3. package/.next/cache/next-babel-loader/content-v2/sha512/00/83/0fb34d350141a478fb1092e409c4238b67cb792650463e5a908c37560c3741d7141ac4e2d37024bd24aeae73623289ba151acb71aaf22114a3d75d1b4b26 +1 -0
  4. package/.next/cache/next-babel-loader/content-v2/sha512/05/30/84f21d466b1653fa983581c1000c4e144b600af7efa6d789c17b5f0e8706b96b16bbc1dda826e42f429b00fa7a5b2b803fb42aedeca2f622abdc0219ddf0 +1 -0
  5. package/.next/cache/next-babel-loader/content-v2/sha512/08/97/b5bcca8cc146341725b1a3299112515a19545f2d2e57db8b68bad837db4c29f90a79aa45bfc84c3de48b6723607d9f73a8b3f268ad83722cd0b10bb8b71f +1 -0
  6. package/.next/cache/next-babel-loader/content-v2/sha512/{3b/d0/8a92c70d1bd9116baa14232fbce085b3b584664f181d6d34ba10eec8a43d7f09a170ecba42f49cbd28e974b91448d60d83bc3980af29795254fa78399a96 → 0d/e9/4a7ff61ce2cfe374c96a1ff81cd8170c478e56f892db51ae9392394defb57cdc2da25b8bfb9b708eb227b6e846d4d1d5e81cc2e641b4e3b7e7b850800875} +1 -1
  7. package/.next/cache/next-babel-loader/content-v2/sha512/14/c2/ed2d01b5d5c11fddc82358932f3cb445881425934f504d41b8d1bc7f5f6b0faa6ad19fad66e89b9e07faaa81b7b61a4d441d20031691b3ffa8321969173b +1 -0
  8. package/.next/cache/next-babel-loader/content-v2/sha512/{13/d0/21ae3caaecaff3f37861dc8a0e4661da025580e9ebb3e94a77254658eaa50a89c7a8740208caaa7c2c45c98a2bd0d89a14a6e228a4e6be5b4f417237dfce → 17/8a/a287f0a9f13f853a29236df7417f0402f872a07ac3bbc96da0c84f6ca52ba20d11257430ccc041eca2fda04366341a4666cc8f6ac36e34cbfc91a6ee7748} +1 -1
  9. package/.next/cache/next-babel-loader/content-v2/sha512/{8e/df/0863a1da9ba2f58d756242ba4e458badf3fcfbd9f87d0b0cbe57ef7603082576bd2eb4d8dc4e99c97f949fd6ce8a80cabcf3784b2f5fb0ef9b17de9c4c79 → 1c/0b/f9f8b5992fb05edc674a7ae5bcd232d821e345827713dc3b48ce223c0bc284c158a1980904c9b00088c849334bffeb5d4e4a770befad91ae041bfd700354} +1 -1
  10. package/.next/cache/next-babel-loader/content-v2/sha512/1e/e9/cba3fb077001090075d700f199ec4a7875b522fce0e5183aca71808ce047762905365722d6e107ae83cac295291cf4264e43e369fa297e8835d9fadebfdd +1 -0
  11. package/.next/cache/next-babel-loader/content-v2/sha512/21/69/c5e524a20276503b3264a1b0dc59e463b2ab085661b292b3028fab46f281adacbe5a9fdaaa595ef248bf8e4ac66fd3d161cacd615f14059073f17c93576f +1 -0
  12. package/.next/cache/next-babel-loader/content-v2/sha512/{4f/4c/7bae3146d641489e36d5b8bc2f54c1c3489acc1ab201984706f9ba639d15d2dea5ab31b2e39341701bad31d88f7649858e3c867e8df7188464804e15350a → 22/ea/ceee559569cebd5e57d9e0fecfc3337ef4d9d7be38cc85db3bbcbed22bee043c069841c16e20e98df54ac3f630b4fa8474caa660b7a2f887396d32dc852e} +1 -1
  13. package/.next/cache/next-babel-loader/content-v2/sha512/25/0f/0f1181c40c9d156d345b948f58aa7ebc37854f1f76b8effb852d60061ae89c4ae1020caa6720a16dcfc64281bceb775c5c39972c855a2716d26c5d43bdd9 +1 -0
  14. package/.next/cache/next-babel-loader/content-v2/sha512/27/fb/af890b991ab4db7e11d14350c5278b70a53d112b875270624daefb56c249268b218232de167e15b92ba8b693bdb3b2fd95da59c4b291c01185d0406d1b4f +1 -0
  15. package/.next/cache/next-babel-loader/content-v2/sha512/29/be/b9b11998c52a1c64ab2d8ce446f134caff8a4cddfa1844c3f3524948028b2cdb82e67df3d390ecd7c9367a2efc3faf70f6c261fb752a5825b5f989246381 +1 -0
  16. package/.next/cache/next-babel-loader/content-v2/sha512/{be/b9/f5563f75e2792645d7a2ec5395497795a638d08bc87ae1b096bbfe37cffa6ad84ad91c5ef3c4b507923551953da088b19229af4adab63744b133b471310f → 2c/02/875288c301c0ef9c5c4c8d28a06248d3053b2d92f49f5ac9ab97980bc083106c2842c2e36ee8ff14c7c8b8f828ac09f266d44b2ef7e7c81e10e33efcd183} +1 -1
  17. package/.next/cache/next-babel-loader/content-v2/sha512/{4b/bd/4f72542c24c45d9953867c5f83ac31b5efa75e439c59b81bf90c3840d29a48ab007e09096f9a74c910d46b6d9328970116e09802064d012040bd5db6bddb → 30/f2/ffb3487b91db91f34c0e23851a3a814890edcf05823aff39e23956bfcbe69c023c0768e7a6d3c5feff5b5d40b183eb27f50506eacadb55ccd9c47660b901} +1 -1
  18. package/.next/cache/next-babel-loader/content-v2/sha512/31/68/21acb09977ab6ab09214f54ffde93aed90f131e6059541e888db4eacd0b7663ec2349c3eb387fb8cdba97b51d62be536bbcc3d931d640b2b679fbbb3418a +1 -0
  19. package/.next/cache/next-babel-loader/content-v2/sha512/{65/64/98bd5f4834a6c51c70fc7e10824139f8b665d010ee01df44ca7dff7726ff6e2cbda0d09d7cc5da19afdc86d6cf5a4c5690836707c5dfdfd1178e83f19b64 → 32/d4/ac5f9359172d76507e4c8a8b918bee4425adb8453568f1b34bf3409af1c04b56565d3cb9b22fb14844525a70b5bc9cd3d9f08d91d5fe82660ef6142b6d73} +1 -1
  20. package/.next/cache/next-babel-loader/content-v2/sha512/37/86/584434fa9e16305b4330afdb53b728b3b4af9fd294982eb27984138b98ca67b7be8d1289d971a545b7ae0139b5766bd583d6e82c224bc5c6c68e4d84163f +1 -0
  21. package/.next/cache/next-babel-loader/content-v2/sha512/{36/2e/03156728ece4fdc7d8c5d73f43a180c539560c2f4d7eb0d4f84f6c890518d29848df67afc0414f822089870b54e3ade678e8e206f08d3ea8ebad78b07a89 → 38/f3/7e03088e800acdbbaec8a5a6b2ca96a12a3e723b6f88cf841567e8a7ed02a678258b12ff6e440db8922bffa47937fafdba8750d3ff7bb42d4556d7dd31ad} +1 -1
  22. package/.next/cache/next-babel-loader/content-v2/sha512/3a/c3/8f9e53c2827c947f2846bda94c8a618a3a18c8c5e7f3c29e2f540d95249d227f5926a73330af209a3f2ad7116d8cee94d45a07dcdc0f78ca517ca9027de8 +1 -0
  23. package/.next/cache/next-babel-loader/content-v2/sha512/3b/f7/459680773ec82a3957f331877003fa04c83c6fd37a6ed52598be49e50fc097a255b0f17284c1290273db065636301c29944002d2e8b22c7f109af3b3f8e0 +1 -0
  24. package/.next/cache/next-babel-loader/content-v2/sha512/40/24/ac3800caa7200b29380c81d5fe9667a4260f1679912bfaf75fabda5c2f87dec4fc4b21684e91d9bf162d70b2b05c85ac3fb45425192eedd0e9a1c7617a67 +1 -0
  25. package/.next/cache/next-babel-loader/content-v2/sha512/42/43/7628243f2264ef7db951bc48a0e5f3ec0179124223c6146798a19651693eea6fbd4fa4feec375be1e2028d90ad7ca461e3a79c5bb6ad78ceda001ad6a233 +1 -0
  26. package/.next/cache/next-babel-loader/content-v2/sha512/4a/2b/2dbc75049e5735fffdaba14493425f14824b242a099b1a1d36ecde195b357d84fd6d96ebd9a3abc72c092a8b267f02f6696818d9784bedc86b259504b57f +1 -0
  27. package/.next/cache/next-babel-loader/content-v2/sha512/{62/a0/58eabffe40e8a99911e6cf438b5edf6dcb5e26bc48011cc5e4a8210861a084e3c6f7b750b6bc4ea2215aca422bbddcd2b51497bcedb89b6c54a597327cff → 4c/a1/b98cdcf87a0effad3b15ae31ff063430f0825524f204fb555063e26373fd42bdeef6c39d4df567bdea7af5a9959e8a4e6c5b47e1f06f313ad8949a5c2a67} +1 -1
  28. package/.next/cache/next-babel-loader/content-v2/sha512/4f/9a/5d8bc638605a2e0bb7832664ab91da3469b597eafff99418b85c683db0a7070c8a0817dbbf26a967671f5df9899a72e632dcdb5836df8f8d281ac61ba487 +1 -0
  29. package/.next/cache/next-babel-loader/content-v2/sha512/55/4e/77dbfdcaebc850e64ceb9865b9e813672857e90404c6eb6ae34153eb9edad2d1c064703b94d1b3b009b1a599d4df48e9b29fa8de47eb36d48bce0dfedffb +1 -0
  30. package/.next/cache/next-babel-loader/content-v2/sha512/{e3/20/587d77ee618957bdf705911be56b54e88688d5ca48d79a3469e5f3182d827b8ea231cfbeb33e89477513d9562baf9b4e1220766ac5d863dc31c64492a7e6 → 58/8f/9e13c86ab3ef3918d27fed835d48466131cc561086743dfda157032e22e6d51bcdd377c745e1d9a8495f8f992cb90ca92527a4edb300b4ab229b4502099a} +1 -1
  31. package/.next/cache/next-babel-loader/content-v2/sha512/5a/17/292d7e5b9ac2b37c65fa999926112ae239994631acfa312df82a5da4c7e8e34a8e7776ae07ea8106a4dd11414bdaeb7f0b453d2728d12e6a46577d30f1f1 +1 -0
  32. package/.next/cache/next-babel-loader/content-v2/sha512/{2a/1f/3ad51a072b734ae7deda22605ad904182e860a827cd14ddd548b991e7c66b311a7996c4f3dbf715cf8a7b69e668f6a924a07f8a00f2fcdcbca51ab0aab00 → 5a/95/9be5303b3e4f91ae70d22ec55107edea9b70fb5ecd41a4545c4024815a3b192adeb6ec5e7ae76092e3f7feac0284263db32d7769b59cdb9f6eb64104fbdc} +1 -1
  33. package/.next/cache/next-babel-loader/content-v2/sha512/{a3/17/96388689ee6ccd88f44b112f7e57efa253b8431c30c25dfd53414a7253567168bd85ea2591fc53f1ff783a9c46b8ba4c72082914c08ee70a731c749e5eec → 5b/01/5b9b30fbf8675d2b1f4cc4feb16e18692f6b5d70f617cb547cdc62dd67701853a9fc23852403f622a72f4bca0afa0db8aaf410b71a9a15c0aa05cb6f6eeb} +1 -1
  34. package/.next/cache/next-babel-loader/content-v2/sha512/{1c/0a/9228a753d5d29ced9a2279d8db92ca5bdb04a713ca367bee32ec5f33abce6123f9a7fcfa450743d4c52670477014ad34e3588f18a89dc300a0b477f63d9a → 5e/0b/3520355c9d37ef2955708b35fa1f4745fb8b4fa48c891050b90f6064541f540fb5f5ce094c93e6adbb8b505aa77a23ecb96ca1a70cd0b63f4ee3e337dabc} +1 -1
  35. package/.next/cache/next-babel-loader/content-v2/sha512/5e/8f/0643f3c54653802a0db1506032968345ff91ceeb3e97deb46dc005f59a0125720e37f97b2ef7fbde6340ba1b728b6ddbe926b81f3dd65f92f6ad24833a7a +1 -0
  36. package/.next/cache/next-babel-loader/content-v2/sha512/61/cc/1e37a56ff07d9808c83c49b40af671e84d9b4ef0b59615c7f75c28479333784605492c8763481208a0a82c6f933644fb166224f4e64e806aa5fd7fc97beb +1 -0
  37. package/.next/cache/next-babel-loader/content-v2/sha512/67/e6/daa65ad62094645f9793b807530082172183795298055f893852777871ea1c590f559236b63e1933e8e85bb53032832acbeded27922552045ea212fd2705 +1 -0
  38. package/.next/cache/next-babel-loader/content-v2/sha512/{14/37/ea53622b4dbd92a28f4d30a545d5235eda77aacd6339ff21ed9a8ed457a9fd7eb4d595140a397de630a4ed2376d29a1ffc16417eaf0f3b20c7ffe19f64de → 68/ac/7fd24d6a9fa4013b151db260cc91ec2d0123f8653a7165eee4fb60689e765a28622317d6fc82ed0990ad1bbe33bf6baf4e894ac74cd6a8fd798f2bed557c} +1 -1
  39. package/.next/cache/next-babel-loader/content-v2/sha512/69/86/b8852a06a5a8657e7876c21e84413a1c5bf3827eb4a52097e3d4d787380b0189839c4961e9f1fe30c89533542e4f6dcd4efc15d1553fbe4a7affe3e79324 +1 -0
  40. package/.next/cache/next-babel-loader/content-v2/sha512/6b/eb/b3128afa83d8c9e6088dcd5de7aaf9d0188838bb3deb0d3b1481f2dae9b275487acd429958f38d14ee27daf5bcfc8ebd59944b669d7b7ab53950ba2d55d4 +1 -0
  41. package/.next/cache/next-babel-loader/content-v2/sha512/{9d/a6/cf906dd8ee0cb5152b38122e1c1e758816b423f3b2dd2ce7e09437e5d27ada4344c96b6c506765e4d235579649b705ad4ea1b3b9fcf9361eab3c88b377fa → 71/3d/eb56843fd2e80ad904bf84e41f09af08aa67dace8798b52d592ef635a1b0973037fae9b5349080ba8edea6bb790153ea91bd203815e616bcf17a11c317ba} +1 -1
  42. package/.next/cache/next-babel-loader/content-v2/sha512/{ec/2d/877356ee48c88222df2f354d0aba9d41fa465aa95e3d036524937a4c5db2d17924fe37efb010c4a0070896a7f401b2539019f2bc0937723c4107e99c0fe5 → 72/a2/3ed155c1f0af423f84041de5b20d65ba6c663d7f2023889a183df76f54d9aaa356438442af9c9c1a79515d0db28574a2cacefd364bba52e10c6e44f72e59} +1 -1
  43. package/.next/cache/next-babel-loader/content-v2/sha512/86/05/759d5d1c2cb03d70b4a14dda389257f77515cd0ac87531b789edea84865e74352a9414ba7c8f5b15d31ae72dbdc42467659d58aaba63090dd6db5595c46e +1 -0
  44. package/.next/cache/next-babel-loader/content-v2/sha512/86/95/02f3b1d6d1f9a17e2c0faa7eaee39ef1e59b0b6f566b9b5bc51d41341239349ef91eb1ee7ea12de4af7f724dfdf4853a6f33aeac5be7794cc96399c44743 +1 -0
  45. package/.next/cache/next-babel-loader/content-v2/sha512/8c/25/f90ef4f34dd5dd217ed9ff38fe57984c7073529264050179a3011879b209b346dfc4a8a47a1d7d659c5746ef827822c10db1d33e7b0fbe620b631186bc7a +1 -0
  46. package/.next/cache/next-babel-loader/content-v2/sha512/{3a/30/aabe1e826cd5136d174af01ebbc2d57c92be7f872428d989cb68cddf68959a35a3ffe356fed5ac302163b67dad356ef9af0cb39eef53612d783dde37b221 → 94/7f/90f1fdfa5efd6312e18efed3f0dfdff32d5237176c9d786321d67a079a2b9403838bdc63de460d33f7a2f750fee7d2ffc9c54d541633b8c486757a1d9c48} +1 -1
  47. package/.next/cache/next-babel-loader/content-v2/sha512/95/c2/dd1ba2675aa55d2354580826664c7eb845f82a4888497bb2352502d2d8e1e7a8a619c96559b2e715d6169dc989e4cb9094ca9bf7355064a520231b985fee +1 -0
  48. package/.next/cache/next-babel-loader/content-v2/sha512/{a4/74/b53135ab7893123a3e96eef5f5c90ed1750fe9a1145e9b9724677ed89dc8b9dfa90a4aca9dca9bdf3a9a0ff4f4d05edc811055123bf51791f8fb8ede723c → 9c/1c/500364d99af4c1d7638d63a68315df4600f7ed453173f4c5420eafe47388862e36b9bf371cd73963d7ad491c0c800679905f85815b5726a791ee14da3da0} +1 -1
  49. package/.next/cache/next-babel-loader/content-v2/sha512/{e2/48/0d4dfa079cdf322750a3c2b87b1ccd552e452870fa468e2fdbc2a64be47a3f45f31f4316366569d340d53dd09487279182863051e2456b311c3a0fc19d22 → 9c/dc/88aea0e6ac4cb6cccfe15ed7b3cf3edbcc2a7bbd8074e5dd8ea7c0883f51227fa1d37fec8ec86ce34fe425e31e5f5b59f019983785521ff094251badda49} +1 -1
  50. package/.next/cache/next-babel-loader/content-v2/sha512/9c/ec/149320c84558ff142d874201a6855a267dad56fc5dd46b6a19b89a5de46d6ad4fbbb0632a3937ebd6b3924092d9fd78f112d65ec3c483f4faeef12fb2646 +1 -0
  51. package/.next/cache/next-babel-loader/content-v2/sha512/aa/d6/e2fb2fca40897085f912b68290820bef1c71da50cb2a384b4357e288c15a16675f42cf31da2f3d04ab5084df9beb7cfd561da34553885bea69e0e00bad19 +1 -0
  52. package/.next/cache/next-babel-loader/content-v2/sha512/{ec/2b/ed79e4770a2cf909db2e33c63647cd0c7137a894bd76e0c05b500c8977fa3fef8a42807d3b562556c8321e97f424bd9c11a39bcc642b3df85b14fe5ceddb → af/e4/0461e9599a4631d21588cda774f0253b931dcd280a0b88a8b8b31b684441a17acfa8a36ca42aabd6c0b497081c5f75a486c4b08170884c26578ad684de88} +1 -1
  53. package/.next/cache/next-babel-loader/content-v2/sha512/b1/37/fd174d0fda5d48240e53be0c463f766c5b25cef6e139501da517e0139658ab9350131ad498b00743350eeef70cd240a271716307c22bfe41300c19dd676c +1 -0
  54. package/.next/cache/next-babel-loader/content-v2/sha512/b2/d3/879ca309d085b5156621183f987abd2ae6f0d5c04545c8ef21010f59593e9ef75512aa3ad3b5f5294d8d3bce1660fe896ab68ba5d6185d082b468c959aa5 +1 -0
  55. package/.next/cache/next-babel-loader/content-v2/sha512/{43/d5/1c43a0bb0e045cf57eb6fb95e0675dc2a68fcc1db1367d79da7ec9ee0ce6bd257666e0ad808011c88fe6de4719357b5e29338598ae1e102faaee46cc5aea → b3/3b/4d5a075d0be827c443e59c91fcb8b774c6c16e3ed8aaa1b40645e7b7a6e517764aadba36d91b326a61f2bdcc0757c0a74a71e6e392552a1e03821cdf9052} +1 -1
  56. package/.next/cache/next-babel-loader/content-v2/sha512/{07/35/d52c525f6494c9f2174bd03c3a27c5e3fd8297888bcaf8287b6e34988709d8364feefa92f4f4182ad8a0490d6e0716cb2833cc01ea196a7de584a7e4d295 → be/1e/09228aaa7894635450423349b8b3ab7eb69767aa725578745fa6dea9f89e0c36d9087a768d430febca9b2365d64be8a44d98bc7525de856100da1a6d3234} +1 -1
  57. package/.next/cache/next-babel-loader/content-v2/sha512/{30/39/3922c045369ebc531aacede2d73c15fd02035ffae03e07ce1dd9251fe6e3ea05affb5d09e3c93b3477df93036390f556454022e38bdca42f56c389db28ab → c3/dc/f99661655c3ad674eb233b701f445037ddb66142e8f814d794cefdf66d93ea6d80d87a73bfc541873e36309e0cebfd6972cf2ec3cbe30a360fcda5402eaa} +1 -1
  58. package/.next/cache/next-babel-loader/content-v2/sha512/c3/e3/4749868f019012dbed78739e0970f42ea128b578e7c3d31de5221315c005161c6788fa44d0c8cbea13dced1f96d3e653068410fa5c26097571b53a8bafb1 +1 -0
  59. package/.next/cache/next-babel-loader/content-v2/sha512/c6/29/8b228582ec476bbbf4711cf343ab899e20b092c79434bf1d6d78fdaaa2119d0036b0d3c19133f70c6891a712a1644f7791d55a44eb12b6f3b5e0317a9895 +1 -0
  60. package/.next/cache/next-babel-loader/content-v2/sha512/c7/46/f2b01d9e67ccbe3e84e2cd9142538793297cb28012f15a85bd1eb699f23b95d83c979743895b2d7190d2411aefa3ae3d740d3435febac5c72e486547f0ef +1 -0
  61. package/.next/cache/next-babel-loader/content-v2/sha512/ca/72/6fa7dfa9e80e767f98effb27148fbd25465956af163b0aa30f46b68a48c59485c96d49cee0370c2b5ab4b6f426e5a767802e5f73d7cc8743a4a7232bc06b +1 -0
  62. package/.next/cache/next-babel-loader/content-v2/sha512/cb/33/220289617cfd63b965194d2d7854a71f4c7756bae56a3c4cea61e5c46d0e0a7d73916bb286e3a8aed21d646be0c2cd5a4f14964a7671adbd5033a92d431f +1 -0
  63. package/.next/cache/next-babel-loader/content-v2/sha512/{2a/70/a8358ba04fcc6c8530cf3f243d49a636e5bed83f1e10e730fb56b199062941c8a98cd0cc8922782492091bec0805bb2f2691a3cd19b206d9bce1f55c5f16 → d6/f0/57169d4bbe32bb77e2b39555eba884bc3aeaedf071b44b0239921a34d4ef22cd4e6494408b2c540bac9f74845cd064aed93e8eb711a78921adca23b16491} +1 -1
  64. package/.next/cache/next-babel-loader/content-v2/sha512/{78/03/26b4653cc910e746ab00fd79a65e896da5da5eb81a648f22acf128a67f7bff18883df9f60e90d5497ddce176e46ad79e688502d3b7df8234075a63911082 → e4/4e/3a9effee6bd3e87a7df5ff7bd56ce8f06542251267f9b292752ea80903f709ae6c8988807553278ead0d1473a5bf4484b7e35652d5e263cf12325113e6a4} +1 -1
  65. package/.next/cache/next-babel-loader/content-v2/sha512/e9/94/0857dd0cf93769b6f6f7706faa27ae8b423c9d4dfe33086f7becacb6baa83fec98d412fef7aa3435808f8bdbbebf38547a1c8feb4b0eb472b4336cc31754 +1 -0
  66. package/.next/cache/next-babel-loader/content-v2/sha512/{09/d1/c337f0b752aeeeb028d67ad873902b6ec6298154377590cad05df1f339b9d5bd3441e81f874d1f0f966c2ad65bcc47ac36a7b03a818cf9c4be5fea072739 → f4/75/b3844220a0b3b2c2573fd0de894394e55d26bfab40c54a6485e1b7119146a6369537a4999e0d63a95adfefc4aaf09b4a87a4a94239a03d427db3d6872714} +1 -1
  67. package/.next/cache/next-babel-loader/content-v2/sha512/f9/86/da37b34d1501f11ac05920063a964c406e17c1adc8a96677a80373945e4533f0b80b1f0649afb0a78f47b504a0a8e96b63bc1800c9d1d195333656a4b632 +1 -0
  68. package/.next/cache/next-babel-loader/content-v2/sha512/fe/4e/52daec701d8e0b36d067b18ec04894638b2ac0649bbe9d2dbbe3f5b06d676c88eec70774f7ea477ab2ebbbece311247ac60506df9d18f9eb2a3d134e934a +1 -0
  69. package/.next/cache/next-babel-loader/index-v5/00/94/4d5db52a9f76737fe32f48071c838500c336d30dfba7ad73f93f4330c1ec +1 -1
  70. package/.next/cache/next-babel-loader/index-v5/01/49/9b3804def80f8a2a63a61cb2c7b69b32aab7967fcf4b494039268ff484f2 +1 -1
  71. package/.next/cache/next-babel-loader/index-v5/01/e2/05eebed421de35c6768e8af36e28912e54d866595844ff0133bb81369698 +1 -1
  72. package/.next/cache/next-babel-loader/index-v5/03/67/a5df64bbfb45106726d40355c1047301600543a21b53b22bdabecec45a14 +1 -1
  73. package/.next/cache/next-babel-loader/index-v5/06/50/ed5306f3dfc88283aeac431ed5efaff43b1b54f2e79d53e9f01dde397413 +1 -1
  74. package/.next/cache/next-babel-loader/index-v5/06/78/4b6accbdd717ce6e4f73d01051a926bfa5b4e0181de0122e2d6088b2838b +2 -0
  75. package/.next/cache/next-babel-loader/index-v5/06/ab/29ad42cca1281514a4c90709cce849bdbb3e0bdaa96497d73eb200522ca8 +1 -1
  76. package/.next/cache/next-babel-loader/index-v5/09/0f/d672ad8b7df0bf15c19bdc508538e2c794660be9a769a02722579f1e60e9 +2 -0
  77. package/.next/cache/next-babel-loader/index-v5/0a/05/466082e340b1a9a6d3409333a8bf899d9b9936a7b04699cbd88b36bd582f +2 -0
  78. package/.next/cache/next-babel-loader/index-v5/0d/9b/6f54a03631c376ad57089280cefb59aac07ea7b0527d01f2f7d75038e643 +1 -1
  79. package/.next/cache/next-babel-loader/index-v5/0d/d4/b6893e5c7846b782004938d2a87355a2a49bce47f6825258504485915604 +1 -1
  80. package/.next/cache/next-babel-loader/index-v5/0e/1a/c3e0b5bcf9d586f98e030c98446ad5d3ac3e652e821ebbf57fd131cece0d +2 -0
  81. package/.next/cache/next-babel-loader/index-v5/0e/4e/adc5f2033c75a34861747319f2b8d2dc9c905288e2a515cffc8220d461d0 +1 -1
  82. package/.next/cache/next-babel-loader/index-v5/0e/71/7d14c93c242a3e5d2a18105908d92afb004df30305a5c3e1b2f203d8fa70 +1 -1
  83. package/.next/cache/next-babel-loader/index-v5/0e/af/43e1b86d6ab5b887c008ff08f167c0fcecc49840ef622ff94979af8eb893 +2 -0
  84. package/.next/cache/next-babel-loader/index-v5/0f/00/e50d6da87e3bb3cff9faed9624c481ce07d07f1bd7ba292c24de68cba597 +1 -1
  85. package/.next/cache/next-babel-loader/index-v5/0f/2d/db7b698fe86c26fbf5279057e9978b7f16a4f18bb2e106ef667ea8318c2b +1 -1
  86. package/.next/cache/next-babel-loader/index-v5/10/03/d8b8ceace6a539787599be45cfe79b8ad33c12ed5548405cc44acef5ffc9 +1 -1
  87. package/.next/cache/next-babel-loader/index-v5/10/10/b154984b2fa06c1dc05ffc89624a5c1c1ba843b30cf6d64bb22ec701bbc8 +1 -1
  88. package/.next/cache/next-babel-loader/index-v5/10/3c/260ac6de3dade3335c8f982c89ebac4e4308306c3c1f29839b0b2d788983 +1 -1
  89. package/.next/cache/next-babel-loader/index-v5/11/23/7896e97e0ec2514fee8d81b14a43e28ddcc1d630847871155abdff88ea75 +2 -0
  90. package/.next/cache/next-babel-loader/index-v5/11/60/0279b915d43be35a1bdceeba64e3c842d373ca96026476b549ffb7d3f43f +2 -0
  91. package/.next/cache/next-babel-loader/index-v5/12/d1/afa2045635bdda48827d0ee1a952ad40857f8c69314e2c69389a9fb67706 +1 -1
  92. package/.next/cache/next-babel-loader/index-v5/13/8b/aab116211f078dc78f85ef2d41cf468352090505e3b14fbb1754b7795a42 +1 -1
  93. package/.next/cache/next-babel-loader/index-v5/13/ba/c5a6fd4a15bf61d2d3fd24ab2eac59884b5c96e2d4fdfc75b35841006dec +1 -1
  94. package/.next/cache/next-babel-loader/index-v5/13/e3/16a76db2ae3e8810c2bd4c49472d0197d36d977c109a106002fed8bf6e47 +1 -1
  95. package/.next/cache/next-babel-loader/index-v5/14/85/5f3549f235d9b7face938046f98e073e7bc2d5c36cc7bc5e1a6d30815ca7 +1 -1
  96. package/.next/cache/next-babel-loader/index-v5/15/5c/740d8642f1686b31b7c8647f2d500697ea784ac1bf80e3568f15c19c2430 +1 -1
  97. package/.next/cache/next-babel-loader/index-v5/15/89/9e8fc989982d195689e54707b854763a6197fb43531eb6be4dbe54786e86 +2 -0
  98. package/.next/cache/next-babel-loader/index-v5/15/ed/b5bd4dc3ba7140b2298b9c66818574232264cd01f3ed111bbccc88417a96 +1 -1
  99. package/.next/cache/next-babel-loader/index-v5/16/62/36a54635ca85f353efaa27eb2fefd1bcf53f78d1a8c6c1d13bfed0688aee +1 -1
  100. package/.next/cache/next-babel-loader/index-v5/16/f5/2e82055d37ac763b5e3b2b7b5275c356d217a3e7f020449a371c8af81d55 +1 -1
  101. package/.next/cache/next-babel-loader/index-v5/17/31/9fc0833a4cd58fb072d8c52edc9a716e4776ea32381b294e0b9b85a159f3 +1 -1
  102. package/.next/cache/next-babel-loader/index-v5/17/94/1005b6c3d458f270d35674573f843729d7d5d9895f0dddadfcfac459cc2d +1 -1
  103. package/.next/cache/next-babel-loader/index-v5/19/0f/7f9f46019a311473323b7f2ec82b8e2f65625d7f4154b53a38969ced45b4 +1 -1
  104. package/.next/cache/next-babel-loader/index-v5/19/4f/ca962707f9956951bf86900d1f887d445d30da7e66037688efd03bbba5a3 +1 -1
  105. package/.next/cache/next-babel-loader/index-v5/19/68/4aeb66fa4d97666b4a17f8063347b0abd6b4a2199ed10d6fdb568dda14d7 +1 -1
  106. package/.next/cache/next-babel-loader/index-v5/1b/05/580f8285cce7aadab82e6cbeb9d46bd2a42148491be4d4489f1ce5d054d8 +1 -1
  107. package/.next/cache/next-babel-loader/index-v5/1b/e1/72830b7805f950091a54a168ac06b604231f8a39c5876c886214e4ce3362 +1 -1
  108. package/.next/cache/next-babel-loader/index-v5/1b/fb/6764bd232b0eb0b5dddf9086ba8d65551713600c72aa9bd7f7cdd74d6a84 +1 -1
  109. package/.next/cache/next-babel-loader/index-v5/1c/66/976cf0b1a286c9dbe91c6cca55ab5732a92004126d7d5ba8be966de196cc +1 -1
  110. package/.next/cache/next-babel-loader/index-v5/1c/71/3050226c9e44afb3b145a8ff838d9a9efe68924c80c2a2b0b5c2a919c7c6 +1 -1
  111. package/.next/cache/next-babel-loader/index-v5/1c/7a/9b525663917c884edc95858e27e46899faca361f7be45d2d1ad3b3b1c6ec +1 -1
  112. package/.next/cache/next-babel-loader/index-v5/1c/be/705d8168be63dae991c86bf195500cf97ccfdde530861e758cbeeb45da00 +1 -1
  113. package/.next/cache/next-babel-loader/index-v5/1e/7f/ed2115d67579a9ab24de682604312ea59ee49963bd6c4a1a794b88665f3e +1 -1
  114. package/.next/cache/next-babel-loader/index-v5/1e/8d/e658578e60698e7093e46b062274d4d792faf732c4aa6b7b386fd592e710 +1 -1
  115. package/.next/cache/next-babel-loader/index-v5/1e/bf/b2df4a53e0817ee8a0b8cc38bc110c0e429ccdbb3e99740dcac4b5096d5a +1 -1
  116. package/.next/cache/next-babel-loader/index-v5/20/36/96c62b7cd2702b69a115c273291f1f3883847b1f21b22d71028aa329c999 +1 -1
  117. package/.next/cache/next-babel-loader/index-v5/21/32/40d29592f813e1329e42a4f25405c7a28f78af43fa1b4577423fa88cc735 +1 -1
  118. package/.next/cache/next-babel-loader/index-v5/24/28/713274b7a00e5d71b70a37f2d3593b41ae056aa8a82deb4d9520c020ee9e +1 -1
  119. package/.next/cache/next-babel-loader/index-v5/25/a2/de32afda140f610465d72f3f7e49bd76e457c61d176b924512c75e6d7343 +2 -0
  120. package/.next/cache/next-babel-loader/index-v5/27/03/3b0f17670a8d2c132d657d5c7872caf13ca4ee6709291e4857b47df3b3b5 +2 -0
  121. package/.next/cache/next-babel-loader/index-v5/27/b6/84d82abc1a27a664f865e19c0b0352cb9c1f2bcab8dbca19cdebad353d33 +1 -1
  122. package/.next/cache/next-babel-loader/index-v5/27/fe/d3f27aa05f0a887c6acad756b37217228bc6b552cd051641696b47337221 +1 -1
  123. package/.next/cache/next-babel-loader/index-v5/28/de/b08352c5c0a66a9b68c19ab2e9037cc007edb4ff9bc89322d666541e5493 +1 -1
  124. package/.next/cache/next-babel-loader/index-v5/29/53/2ab5fcc7eeeb66f029f06376532d1d9e2b98737f52b862ee8da27b0c471b +1 -1
  125. package/.next/cache/next-babel-loader/index-v5/2a/0a/d2d75ca509b3fa60023011ae9feefa3f045d27a8a482e69d155c4fa800fe +2 -0
  126. package/.next/cache/next-babel-loader/index-v5/2b/25/8b58780fed89537e533b10ba41e334c0d3dad85f5d959a99723013edd381 +1 -1
  127. package/.next/cache/next-babel-loader/index-v5/2d/0c/03be4da1c1527a40afeaca3745133757e18a74fdd5d56869a9af2d489437 +2 -0
  128. package/.next/cache/next-babel-loader/index-v5/2d/92/7eb6c7605a7599157b61e3d67541ae716b36ae19ec5b9f11610370ebc743 +1 -1
  129. package/.next/cache/next-babel-loader/index-v5/2e/38/3ba270044d47c0b30e8f2c2bd820e8f3f7e03a726fd1bbb75c697f9a6f8b +1 -1
  130. package/.next/cache/next-babel-loader/index-v5/2e/42/7486ccfe6d15c630b6d181c4f2ffad8303d0dad471d77e4f37be41fd8c40 +1 -1
  131. package/.next/cache/next-babel-loader/index-v5/2e/c2/95af5ff69d04644ac440944b9a74d2e8f2edcc1c5c7c1c3b4e9161d0e820 +1 -1
  132. package/.next/cache/next-babel-loader/index-v5/2f/32/7427cb04325fdec0c74fa74967eb7503d34a8e7d909cd9bd4103c04b2e01 +1 -1
  133. package/.next/cache/next-babel-loader/index-v5/30/41/eb088bb5ca818ea9e1baabcc1c0ccc9dec4bb99b74575ecbb2645cac3531 +1 -1
  134. package/.next/cache/next-babel-loader/index-v5/31/f0/18947e9965f6285df649597d946bc6ae2f1720a113ae8ffc7495eecc2e29 +1 -1
  135. package/.next/cache/next-babel-loader/index-v5/32/41/6fe1fba2de42038289b187ea0f2e30d957823a6d7f4ee3ba0b37909d4436 +2 -0
  136. package/.next/cache/next-babel-loader/index-v5/33/e6/8dad7b80504cd3f0625a12405ac97baaa1e86060c7fc308ce93602f8e546 +1 -1
  137. package/.next/cache/next-babel-loader/index-v5/34/02/d60fe680a0f1da7f9d3f2963bf34d54c824df2527e0885aff15181eac3c5 +1 -1
  138. package/.next/cache/next-babel-loader/index-v5/34/4a/3c7f94e8fdcfe458dfcbb8c6f7819c2c39358467b4fdf8ff5c408fe33085 +2 -0
  139. package/.next/cache/next-babel-loader/index-v5/34/76/ada35908c858ec95b9b3098f40a45d41b43225898d3705577988b0401f7c +1 -1
  140. package/.next/cache/next-babel-loader/index-v5/34/b4/eed975f466c888560db90af0767536ab7f13014f05a5d6a36cf8ac337537 +2 -0
  141. package/.next/cache/next-babel-loader/index-v5/35/0c/e18a7cec1a8c9f77c387ef2d26bc6b01711df23b0040a3d898e585d76652 +1 -1
  142. package/.next/cache/next-babel-loader/index-v5/35/55/a473700e333748567405040751c0deffe5752d56adbcf496d2cd1c54a00c +1 -1
  143. package/.next/cache/next-babel-loader/index-v5/35/f8/895e09f5abc3581613ee187457cedde4ef660b1e028406cac06d911bb588 +1 -1
  144. package/.next/cache/next-babel-loader/index-v5/36/c9/0e25b9202933c3ee3d91bd9c08a21663b8eba7c7504c9278b93308ad53f0 +1 -1
  145. package/.next/cache/next-babel-loader/index-v5/37/f2/5bd3440bf7074b86b985a7eeb8acef8ea41716f0dad85b5b3b3fae3194dc +2 -0
  146. package/.next/cache/next-babel-loader/index-v5/38/6d/90e8306fcc2fc166e08f586518fe468548c45ca31bfa39c58f8db71e383b +1 -1
  147. package/.next/cache/next-babel-loader/index-v5/38/8e/261d3b9e2f7c1e7877598ddac3f10a7c2790873f8c7eeb00b90b8421dca9 +1 -1
  148. package/.next/cache/next-babel-loader/index-v5/38/d5/eee0dd4033051ba838187c19ba6682cdb38773331e5faa920ac01cab4e1d +2 -0
  149. package/.next/cache/next-babel-loader/index-v5/39/93/e044d3da0741ee97aadfbb63175823c48306fcdb859fc31225778db7e704 +1 -1
  150. package/.next/cache/next-babel-loader/index-v5/3a/f1/95d4a0cfd966a6426b97486e64a51d339a7b89003f7d093496081a0862bc +1 -1
  151. package/.next/cache/next-babel-loader/index-v5/3c/9b/01a235909e84608b077aa28e774f70ddfb81a03bde21dbac0eb09806e790 +2 -0
  152. package/.next/cache/next-babel-loader/index-v5/3d/08/2613c2949cb9412b4f7e70519f8b8c504bfd7c46bc795af8276911a1749d +1 -1
  153. package/.next/cache/next-babel-loader/index-v5/3d/41/52136952e5ee4f00bedad6508bde8adfd6f1eee47bea426fad7290aefc9b +1 -1
  154. package/.next/cache/next-babel-loader/index-v5/3d/c7/672a0d0d27379bde1169c9fd82ca01268f353135232314720a0d1515471b +1 -1
  155. package/.next/cache/next-babel-loader/index-v5/3e/88/085b7103a1527b1e8bb9825fd694c84c59375898a4c0183d49621a1f954f +1 -1
  156. package/.next/cache/next-babel-loader/index-v5/3e/c1/6f035ea4b7f64a7e384bcdc2e5d810c312a2b28d235421151d7c7fe43cf3 +1 -1
  157. package/.next/cache/next-babel-loader/index-v5/3f/ef/cfe887a419d6f10b507e1da38ed613fb34686b6e1ad8b18ec70bf788b1e0 +1 -1
  158. package/.next/cache/next-babel-loader/index-v5/40/fa/163b1c4ba44c79d4c04af952d30bf0005f006e8f01a4e7259e00bae66591 +1 -1
  159. package/.next/cache/next-babel-loader/index-v5/41/1e/cdde57436ba9641c590ba844d002f45e9571195ca47cbb78779e6cb0b795 +1 -1
  160. package/.next/cache/next-babel-loader/index-v5/41/5f/6ebf77d0a62a28ffc42e6b0355c07a4dd475f635daf6789fb47b573ec5ca +1 -1
  161. package/.next/cache/next-babel-loader/index-v5/42/b2/da83733dbf10fe5d7e273fc9c61406e6d38860c6f1908f0351552f1d243c +1 -1
  162. package/.next/cache/next-babel-loader/index-v5/44/75/4c70641ed90c07374f143b8f8f7d18ef3f0e444a1fbb0d6e13178d61953b +1 -1
  163. package/.next/cache/next-babel-loader/index-v5/44/e8/126766a55a5adbe1b25eb9249d2a07af1c637bf0420f0556e0be5e1ab767 +1 -1
  164. package/.next/cache/next-babel-loader/index-v5/45/19/de416837ca82df6148d4a44d3ab8cb6cc0cff001c28f83a28247001e63f8 +1 -1
  165. package/.next/cache/next-babel-loader/index-v5/45/41/dfc4cc31400776ce4a97820facfef00023ab3e15b9c5efc9904bcfb007c5 +1 -1
  166. package/.next/cache/next-babel-loader/index-v5/45/4a/4f08bc119fa1c4278204d4cbae23ccf96cd1394f098f0f25b11f6501f9fb +1 -1
  167. package/.next/cache/next-babel-loader/index-v5/45/f8/d869fecec5f0352a491bb223f9498fb4ca25438f1de40d66416d67f6ecad +1 -1
  168. package/.next/cache/next-babel-loader/index-v5/46/29/d08f396fd0dd0603e68ede9578ba7e757ba55b6df5dc5cab1928c9f110b9 +1 -1
  169. package/.next/cache/next-babel-loader/index-v5/46/cc/59fa8d50e21ded1478e6810d57a3f4197d358d53e252092e5e3634114f12 +1 -1
  170. package/.next/cache/next-babel-loader/index-v5/4a/b8/ed716050830ca0112d790f866ba7a028ec64ab6a9cc8064e58e6ce2e4e66 +1 -1
  171. package/.next/cache/next-babel-loader/index-v5/4a/ee/317cecea6c6358fae9a18181b341aade394cee83425f1b6cb1b9f27fb828 +1 -1
  172. package/.next/cache/next-babel-loader/index-v5/4b/37/49b7a287224a51c2702772f6995e7f1c54475afda557e230e29bdadb8f1a +1 -1
  173. package/.next/cache/next-babel-loader/index-v5/4d/3f/0704de9c40f598810ea99efab4f70ba3d93f6918db1c31ccc2efb23ea9ae +1 -1
  174. package/.next/cache/next-babel-loader/index-v5/4d/de/363edd2c2c43a4e9b0e65edfe3b7d2fcdc58436710d0b898cacadca6f876 +1 -1
  175. package/.next/cache/next-babel-loader/index-v5/4e/56/59065f6bc6be314924e403ea449fc660096b80a0b0127f1f2b7ff002fc15 +1 -1
  176. package/.next/cache/next-babel-loader/index-v5/4e/a0/7cc23c295f1381660445a83b1c50a7cd923786e1b8f1e354058a80cbf08c +1 -1
  177. package/.next/cache/next-babel-loader/index-v5/4e/c4/a4b7c6dcc0a48a4784c9fbbea40f752fea08286954c180b1e88cbe08aa8d +1 -1
  178. package/.next/cache/next-babel-loader/index-v5/4f/69/3a47bf8a865767798bee7c5b12f59a4251b60fda27051bbf1a208307e56d +1 -1
  179. package/.next/cache/next-babel-loader/index-v5/50/7e/3223a845a9948dc37f5c08efaf9efcc2f431ce7a791979bd2bf8ebf1dd3d +1 -1
  180. package/.next/cache/next-babel-loader/index-v5/51/54/ca7eb824e0d04c3eed9fb84c2cb3a1a2eb75c5d5118266eae5751c9a701b +1 -1
  181. package/.next/cache/next-babel-loader/index-v5/52/06/bb1a2d4655d7fc2345eb7426b87430d2fb21ae5a63fcaa75b851dc7a25b9 +1 -1
  182. package/.next/cache/next-babel-loader/index-v5/53/5d/0c02053ccb2725f00d526e221b6ef6fddfbb07d72dc763c131986bc94452 +1 -1
  183. package/.next/cache/next-babel-loader/index-v5/53/7f/dcfb15776127fe04f0e6833012132f351d897f3c107564b69bf6dae0801a +2 -0
  184. package/.next/cache/next-babel-loader/index-v5/54/92/46cd05459df7abaae4525acc7c9b7b36b1f615eebddf52357f8e3f1b5d91 +2 -0
  185. package/.next/cache/next-babel-loader/index-v5/55/d8/a2ab66010fe28fc9f470c0e535c338bcb16777044e71f5ce4a620c9c929c +1 -1
  186. package/.next/cache/next-babel-loader/index-v5/56/22/4918b223244cf1c9d67ffb929ef2cf99ab5bfcfb271cfc2cddc5fadec265 +1 -1
  187. package/.next/cache/next-babel-loader/index-v5/56/8d/9b6c2ee06305bbaedaff84807d5f2bc5eca1e9bee9233e4ae27eade19612 +1 -1
  188. package/.next/cache/next-babel-loader/index-v5/58/c0/10ffd288e26d50014a87fe10896ec639009b21dabe6403afda5b90d13187 +1 -1
  189. package/.next/cache/next-babel-loader/index-v5/58/d7/d493f8e91cbf11a08a7b2618b7f228fe4a31956de26c3a24c3523ddc1edf +1 -1
  190. package/.next/cache/next-babel-loader/index-v5/59/87/c4f53c6152e5f788c5409128974f5f764b7893f27f1a76b54205152af51e +2 -0
  191. package/.next/cache/next-babel-loader/index-v5/59/b3/f814fb37900d550d958daaf1c6288b09616e4532e8e04ef0b7bc051d2cc0 +2 -0
  192. package/.next/cache/next-babel-loader/index-v5/5a/14/0310386a942b00d285bd413a0d2f57386f7d7bde84d98b86241583c71e3c +1 -1
  193. package/.next/cache/next-babel-loader/index-v5/5a/33/4ae5db0c9bef1b0da744cd7f389d8fb3a9a592e7862f1f9fff9ef6ca8428 +1 -1
  194. package/.next/cache/next-babel-loader/index-v5/5a/fd/4c35333d95fbb79792b4cac77ee2ec6817172db4e8039d7431c4429bfa48 +2 -0
  195. package/.next/cache/next-babel-loader/index-v5/5c/15/bbd258aafcab6f903d7c3f7bedc5d8eabf83222a51afc88a333c43a86973 +1 -1
  196. package/.next/cache/next-babel-loader/index-v5/5c/19/d47c9fea248e67c5bb1a612eb5d3ff19eae1279e03001a3630fc28afd7e6 +1 -1
  197. package/.next/cache/next-babel-loader/index-v5/5d/0a/1b842999294adefd7202afdf4b9e65c517b28be42e032be9034eeeb065f4 +1 -1
  198. package/.next/cache/next-babel-loader/index-v5/5d/65/58d3a07cba4adf7cbe4fd0178b3ed39fe772a8ee938b21f6d3090d1f206e +1 -1
  199. package/.next/cache/next-babel-loader/index-v5/5f/6d/a1ae534a0fa66a2a875e33ee07da174f26b3d89c88b0b8ca2c555becd3c9 +1 -1
  200. package/.next/cache/next-babel-loader/index-v5/60/7f/2df2b2645507d7acf348d52a263ba1f53dacbf3e9c2845fb25d646684753 +1 -1
  201. package/.next/cache/next-babel-loader/index-v5/60/dd/687bb2d41a2b769fbf016b07120e437a597b3f0e3e20ebdf2617d1f58e1d +1 -1
  202. package/.next/cache/next-babel-loader/index-v5/62/5b/dbd4b223b7e563ef1be3dc25335f1875a4854ecb255567b75e51255e5b11 +1 -1
  203. package/.next/cache/next-babel-loader/index-v5/62/a9/20bd5d1d4a6b190f54ca2c30bc4c831b58fbc05a181dcd0f0a34b3fd2bc3 +2 -0
  204. package/.next/cache/next-babel-loader/index-v5/62/d6/43389e468c6e0a9025e70b016dfc3f106e814b9a4053cd4cb39eec031359 +1 -1
  205. package/.next/cache/next-babel-loader/index-v5/62/f1/5cf8eba882c49b79d05a8534fd13d080dad22351e766f53b8d32f5302039 +1 -1
  206. package/.next/cache/next-babel-loader/index-v5/64/13/3f14af704a5cdfd82af3f5019ecb20b1fbca90d11ab2ee3b6fe75503746a +1 -1
  207. package/.next/cache/next-babel-loader/index-v5/64/c8/980ca1e6abec3cc6c00de707e7267e711e0337de20a8d42103d8b76b71a1 +1 -1
  208. package/.next/cache/next-babel-loader/index-v5/64/ee/2279d90fbffc200cbe071d2d57603ae37ce8c7850a31999b3ad37deedc74 +1 -1
  209. package/.next/cache/next-babel-loader/index-v5/65/3d/29328a5a8d42c85b60fabd78712068fec78dfa31b11d9e20a221c167cb27 +2 -0
  210. package/.next/cache/next-babel-loader/index-v5/66/b2/a19df6f96847ab89c279be6baad7e94b226ca5fe1d597502681a9b2e9382 +1 -1
  211. package/.next/cache/next-babel-loader/index-v5/67/48/91d96161684a6195ed3672e214ae1bd8219c8f7459fd6b8d5097c99b968f +1 -1
  212. package/.next/cache/next-babel-loader/index-v5/67/56/a2d965133f75d4c5c92cff50411b27de0f0ae58ee794fe2319bfeeda95a4 +1 -1
  213. package/.next/cache/next-babel-loader/index-v5/67/63/011b231ae4d26ea38d1ee3471c8a5020f0b0769cdfacaa4aedef766290be +1 -1
  214. package/.next/cache/next-babel-loader/index-v5/67/d6/63f56360090751069dffb01154b48c1ef423fde297437e0b8b1a66272818 +1 -1
  215. package/.next/cache/next-babel-loader/index-v5/67/da/adfb02e589b87789402df51a5b9361ce46e305670dbf2cf012745a655a19 +1 -1
  216. package/.next/cache/next-babel-loader/index-v5/68/18/e733dd79b5376eaf68713551396feb31346f5c3baba5b744a5b227f77eb6 +1 -1
  217. package/.next/cache/next-babel-loader/index-v5/69/32/887998e1d78cf502b7e5621158201ebecbd9dfe7a826fc2b5d35ec2d94f2 +1 -1
  218. package/.next/cache/next-babel-loader/index-v5/69/6d/659dcdb66b6d898db97a38ee70dad71532df3e27983101e192a208118a07 +1 -1
  219. package/.next/cache/next-babel-loader/index-v5/69/d8/f68117796366d01f4571ac04cbae214283ac08fa04099e4dd82fb8c9b9fb +1 -1
  220. package/.next/cache/next-babel-loader/index-v5/6a/48/6a9cdc9a132b0ef5e60f4b9edcd46772f5a26ef74e87fabc42c2b4475454 +1 -1
  221. package/.next/cache/next-babel-loader/index-v5/6a/51/23a1ba1d4ae3cc528182f37921d8c337df70f55bde1cd5a94c1d6959c795 +1 -1
  222. package/.next/cache/next-babel-loader/index-v5/6a/6b/648ca642176a00bca964dd16f21c20a9c67c15c254c88e649950395be831 +1 -1
  223. package/.next/cache/next-babel-loader/index-v5/6b/91/5599d498c791ed9f584a8ebd08fc34ebb6ba991683436d78fbdf08e9ec4f +1 -1
  224. package/.next/cache/next-babel-loader/index-v5/6c/20/43c9e1dfe1019a7c9e8481ee147e09874530507c54a0a568e89b4d0dd2f2 +1 -1
  225. package/.next/cache/next-babel-loader/index-v5/6c/57/887dd481390e27bd78e05f5230b990f86be3e7b6243e27c794afbacef0c5 +2 -0
  226. package/.next/cache/next-babel-loader/index-v5/6d/29/adde1ff2b67b37c70b9759efd6439f6fd2c7276716bc3a43666c1dfc5f5d +1 -1
  227. package/.next/cache/next-babel-loader/index-v5/6f/58/92d617e09e2cd9f58580fe454c84e21b3ad03553e4c969e9c10a0c7693c9 +1 -1
  228. package/.next/cache/next-babel-loader/index-v5/70/51/834e057543c9be70d866a337cc1258e8c0a3dc09436bc76fdbfaf0833a64 +2 -0
  229. package/.next/cache/next-babel-loader/index-v5/70/ee/9a035fe21f1c176d5ecc7c84f6d866060067fb113680b06f8a82340a0c3f +1 -1
  230. package/.next/cache/next-babel-loader/index-v5/71/82/0a1e7172ea51c9d3beb9057fa9a4a71159a019e04ac77a901b394eb7fdec +1 -1
  231. package/.next/cache/next-babel-loader/index-v5/71/82/50e9be1e490607a6dc229abb34aa78becffac8941125e064b00de3066439 +1 -1
  232. package/.next/cache/next-babel-loader/index-v5/71/ba/d41b3a1db26dc368a452a756e472872e38e57e38ace2c77550fc94269886 +2 -0
  233. package/.next/cache/next-babel-loader/index-v5/72/a9/752e35fe5a1f37be59c5d0ad25d5bfa536329ff932fe86fcf02bc4cf1fc3 +1 -1
  234. package/.next/cache/next-babel-loader/index-v5/73/39/328e3fc6c382eef07a8afd37dbad656c224481eb7692f739dfd4443fe484 +1 -1
  235. package/.next/cache/next-babel-loader/index-v5/73/80/3688ada981fd86666bb481124edc42d507fb592e8736b33fe6f0c1fd09c7 +1 -1
  236. package/.next/cache/next-babel-loader/index-v5/73/f6/829ae5cff5b256afa87ef687abadb55a643a3ebad68ab052e05f36542d85 +2 -0
  237. package/.next/cache/next-babel-loader/index-v5/74/62/56766ed1a11a8f5cc37e7bffbba52a0eea90fc05b61346011601d7bd2143 +2 -0
  238. package/.next/cache/next-babel-loader/index-v5/76/47/11da3dbb6e0197e53409ee38abee4657b3e54a163d9df58f8c6d26a47751 +1 -1
  239. package/.next/cache/next-babel-loader/index-v5/76/60/a950556302b779da33b72335b0497edff7d887d31eee38f2b37385eb06c0 +2 -0
  240. package/.next/cache/next-babel-loader/index-v5/76/bb/e57d049a7aac00919a17b3955a747000480b3a9696b414b3245123926739 +1 -1
  241. package/.next/cache/next-babel-loader/index-v5/77/6f/04aaa5ca553e2d97a219dcfa085bbb1c0aa16824e6e2b96537720f5fe4af +1 -1
  242. package/.next/cache/next-babel-loader/index-v5/78/18/effdf573e37a2e50ee8be012efaa6015e36e04b3b009fbd53be94734ffc6 +1 -1
  243. package/.next/cache/next-babel-loader/index-v5/78/a6/7ccab0599d5fca9de5d78ca910a327bb09f6c850bd8269944d88c30bd9ff +2 -0
  244. package/.next/cache/next-babel-loader/index-v5/79/29/2f4ee8380a20ffec794ac3b5bfbb25ab68cd538dc65743057fbfab07025d +1 -1
  245. package/.next/cache/next-babel-loader/index-v5/79/73/7e0d9a603139f1bec787ca04b632da07ec77a7d6cd74b64221c3a578daea +1 -1
  246. package/.next/cache/next-babel-loader/index-v5/79/b8/b452e324ca1765ceff1d74c06d04b28e8a30048d92c7ddeebd20c2935638 +1 -1
  247. package/.next/cache/next-babel-loader/index-v5/79/d6/c837fe28e1aa21a16f80c488d6cab2143b47e61803254b68d8f454a26838 +2 -0
  248. package/.next/cache/next-babel-loader/index-v5/7a/17/cdc3b1b75861df022cac152f11deeb659769011fcff7f7b74e2c18b449d2 +1 -1
  249. package/.next/cache/next-babel-loader/index-v5/7a/c8/0edf73d192b657a893e50480e850e2e8e8ee168d33bf8198194ce40cc87e +2 -0
  250. package/.next/cache/next-babel-loader/index-v5/7a/e1/d20da983c3f463d52e30b6e32724a27b1e7ece82996161cfee89315e23da +1 -1
  251. package/.next/cache/next-babel-loader/index-v5/7b/5e/8e029aa40262739f78281bdf25623be1318cfe18174e9968cdf39fa6a1e8 +1 -1
  252. package/.next/cache/next-babel-loader/index-v5/7b/f1/e847ae697b0b5e81888507500616509032d032a7e14b6c078964da7043cb +1 -1
  253. package/.next/cache/next-babel-loader/index-v5/7d/7a/43311354187883320ff234750668bd54d30905c2d7fa527dde0fbc47a66e +1 -1
  254. package/.next/cache/next-babel-loader/index-v5/7d/80/150df045c7c04743d9e12e543fadca886fb94d926110bd4d5fecdb8209c0 +1 -1
  255. package/.next/cache/next-babel-loader/index-v5/7e/5a/45c5c05bb6b09802267265c91ce9ad2525ff3e7bfe9b3a6dceb5b3bac77b +1 -1
  256. package/.next/cache/next-babel-loader/index-v5/7e/fa/e14514dabdcaff483840bcd7cc0c7246716d996d0587af87f6e5f5bf5add +1 -1
  257. package/.next/cache/next-babel-loader/index-v5/7f/1c/afbd5dc9a4e111381613b974d16fe06b6fccce20eaa1950309f9990e8b36 +1 -1
  258. package/.next/cache/next-babel-loader/index-v5/80/11/1ef583ffa6b8fa720edae24ce9036b1cfb980972de658e5fb6e827ac7c99 +1 -1
  259. package/.next/cache/next-babel-loader/index-v5/83/5e/7c91ed3d1f4fc52ae1775b4c1a7d41ea854220b230a39feeafdecd5a79c7 +1 -1
  260. package/.next/cache/next-babel-loader/index-v5/83/99/eba11c8a438de70476d6cdcd226f0e66951d5ebe3713677611f49ff6d92b +1 -1
  261. package/.next/cache/next-babel-loader/index-v5/83/fd/3e81b89044f0e9750020da5dc50c87b5d1acf0e87be368b48e87e381cf4d +1 -1
  262. package/.next/cache/next-babel-loader/index-v5/84/6b/0c3841ee84642673eab95b436b9eb7b1d51e247254b229e04efe9a49aecd +1 -1
  263. package/.next/cache/next-babel-loader/index-v5/84/a4/2186bcb4b2b09a09ed5844c16e13657baa63ff45fb67fd91235c5d8069f1 +1 -1
  264. package/.next/cache/next-babel-loader/index-v5/85/30/37c63782fab6ca0857c06a09cdb55937336285fbe62b2cce8e3835fdac6a +1 -1
  265. package/.next/cache/next-babel-loader/index-v5/85/8d/1fa79838630d81c95a043c07c75fd33485de79717cb0fa278e39a309d274 +1 -1
  266. package/.next/cache/next-babel-loader/index-v5/86/b1/0b4e1d0f15f354e0792870029eb18326c2730e81dd3a04c69fecbc1a0ea2 +1 -1
  267. package/.next/cache/next-babel-loader/index-v5/86/db/42420d5923ad213eab7dff03a4e5b0fbb51f85838bd76c20914a1d5ed3b3 +1 -1
  268. package/.next/cache/next-babel-loader/index-v5/87/57/de5e5f56c9ad67777d1921ec04d3e310d6ce3023226cefbcc8bb0dc887ee +1 -1
  269. package/.next/cache/next-babel-loader/index-v5/88/14/3a3e5eba3d2fdcb59aa00d578ebdb1e4956dfcab6f02feaa8b298bca11c5 +1 -1
  270. package/.next/cache/next-babel-loader/index-v5/88/68/6793b38b74b65bd164d1b8fc9317aa45324246421f93a8efb506c0b76785 +1 -1
  271. package/.next/cache/next-babel-loader/index-v5/89/1b/897633b232572688f81dfc15ff2a51ffb3cd938cd1c797682057f673fdee +1 -1
  272. package/.next/cache/next-babel-loader/index-v5/89/c0/dc5b2c0a17b47b581c61d0e3263b9a30eff7da462656a1e7a20f2113c041 +1 -1
  273. package/.next/cache/next-babel-loader/index-v5/89/d3/cb85860a712e42f39ee5d9ff50edbbc9bbcbee147b4c656562066decb770 +1 -1
  274. package/.next/cache/next-babel-loader/index-v5/8a/41/07a3a2b639bc92eaa39295745df4d4a93e60da42f75b5ea25bead9c8db15 +2 -0
  275. package/.next/cache/next-babel-loader/index-v5/8b/3c/b7e3288f48862b191247776aa06a2291eaca87aafda744e6bf67c956c2c0 +1 -1
  276. package/.next/cache/next-babel-loader/index-v5/8b/40/287e53bc45ef2bcfb31892f5be8298abc45e50318109a2536b32aceb4e64 +1 -1
  277. package/.next/cache/next-babel-loader/index-v5/8b/7e/826c8b64afb169b6a22db8f13e09dd2d8a8340087508c1cf49f0725d9ba4 +1 -1
  278. package/.next/cache/next-babel-loader/index-v5/8b/a5/a798796fd1c1c752d27171aa149cfd8de85e4d628d16c6b359df3beda072 +1 -1
  279. package/.next/cache/next-babel-loader/index-v5/8c/6e/624c49f904d2c5d1d64a865100bbc884a185e484d39eed3861339ac6ccfd +1 -1
  280. package/.next/cache/next-babel-loader/index-v5/8d/40/da3795199846021996eb58afac906b88edd2dea7dc98e7d27dd79939d69a +1 -1
  281. package/.next/cache/next-babel-loader/index-v5/8e/d0/c7a48ab7f5ebf74ba8b0913f7973244bc7d6ca33d511a00e72f2edb24893 +2 -0
  282. package/.next/cache/next-babel-loader/index-v5/8f/4b/7bf80e1a08d1e62785079158657714da36428759894aa738bc9fbac56d66 +2 -0
  283. package/.next/cache/next-babel-loader/index-v5/91/61/6c897f904fec70c2e974a117368833e67824cacd9e654454067c568c46ea +1 -1
  284. package/.next/cache/next-babel-loader/index-v5/91/63/e817e58fbb82fc43b665084b8a0948fcd6c223a57473400003f353065b3c +1 -1
  285. package/.next/cache/next-babel-loader/index-v5/91/95/4fcaba3e80cc757643fa4a2d945881ded7dc41164efa64bd919ab3007690 +1 -1
  286. package/.next/cache/next-babel-loader/index-v5/92/1b/26fed5f1f86dd34f3f57ad6173be22337ccc87a3def150bb28dc246410aa +1 -1
  287. package/.next/cache/next-babel-loader/index-v5/93/82/5ae7f651790c03ab94668a4dc4596d566d5ca3821e1801edabd3cc6fed15 +1 -1
  288. package/.next/cache/next-babel-loader/index-v5/93/d2/6bbb554020f5486563e2369a1838ea99e68f2ce4319ce42907eac4018169 +1 -1
  289. package/.next/cache/next-babel-loader/index-v5/94/97/6d920786cbd3ee68942b30b36995ea8d026ef235cfd1f5fd4af270c67aaa +1 -1
  290. package/.next/cache/next-babel-loader/index-v5/94/e1/56c11f5f4c1f360a9f3e9ae0a84f05f5315fa97e94e217c0381885b2070f +2 -0
  291. package/.next/cache/next-babel-loader/index-v5/95/04/78f59cc5bda9e5d6df739876f3e2feabb75e20833399248afef19f29a533 +1 -1
  292. package/.next/cache/next-babel-loader/index-v5/95/10/9060e5f736f1ac2faa07b8d62bed7934c667098827caf73becdd99c35511 +1 -1
  293. package/.next/cache/next-babel-loader/index-v5/95/95/2eeefd5ef95028cc3109cf933864c5be88ebbdac918d76df878148091006 +1 -1
  294. package/.next/cache/next-babel-loader/index-v5/95/b8/eb33b56488a4a359ba8466fa73f93fc5afc4da643c0d829ff00143a2de31 +2 -0
  295. package/.next/cache/next-babel-loader/index-v5/96/bf/cef16f6f1d1dfb3fa1703dc56fe40938b298545f6ed1fb6cee51b858dbc4 +2 -0
  296. package/.next/cache/next-babel-loader/index-v5/96/c7/b5a96b1a414904d7d1f8a5259a60610a53c42ca3ce3b6507dcfa83d512b7 +1 -1
  297. package/.next/cache/next-babel-loader/index-v5/97/d6/58ace9efe0a848dd6afc46985c259aa6483d42d38dc74fced1a03d576230 +1 -1
  298. package/.next/cache/next-babel-loader/index-v5/98/71/42fb47d894d6df791318d9c0101d72d60a83d7ced39f59cb5c8c94c6ceaa +1 -1
  299. package/.next/cache/next-babel-loader/index-v5/98/cc/186b38759e71bbabac70e3ece6344c0cf4f0245edf2756ea91c161a88ed6 +1 -1
  300. package/.next/cache/next-babel-loader/index-v5/99/22/ba483a8876923ef057816bfcc58fa571e6f710699e1d93dfdc5ea206ed77 +1 -1
  301. package/.next/cache/next-babel-loader/index-v5/99/2b/0b6fae928f091c81fd7982f772d69e0837918e7d5ac379848582cba48b14 +2 -0
  302. package/.next/cache/next-babel-loader/index-v5/99/5a/2e6d74f2385547a28e298460c4eb44022b5eb5e0f08b731f109bb28ba7f1 +2 -0
  303. package/.next/cache/next-babel-loader/index-v5/99/ee/d44ec7e992235e57b41c868a9dc2ea01a99f9e0779eb6f69527e737254e0 +1 -1
  304. package/.next/cache/next-babel-loader/index-v5/99/ff/a1a00d34a108af16a63262ccbe95e625dc2d91567a8b6b47d0b2e3225b82 +1 -1
  305. package/.next/cache/next-babel-loader/index-v5/9a/b1/b47aaced70436879ca78ffd58bc67e710206f3b19019ae88b752c07ec82c +1 -1
  306. package/.next/cache/next-babel-loader/index-v5/9a/be/35d9dc026bb5e524d01e3f9a2f7b2d096b0b61840ad96b7e6523b8bc1a37 +1 -1
  307. package/.next/cache/next-babel-loader/index-v5/9b/7c/efdbd363999e24447af03d7338b02fdcc07fded8672ab09847a0e78a7033 +2 -0
  308. package/.next/cache/next-babel-loader/index-v5/9d/00/e3070a80a69ee96c293dca627f71d608de84fd1e55de1e41168cff85a0b3 +1 -1
  309. package/.next/cache/next-babel-loader/index-v5/9d/5c/cdc15a0b2c4111ad5822ac12a47a7bedf0b2e4b9c2183552b16e49d3959e +2 -0
  310. package/.next/cache/next-babel-loader/index-v5/9d/e1/534d74a96e6ee4772a0d870aad3f9f0a472c6d06ac8b2e70e5a504dee007 +1 -1
  311. package/.next/cache/next-babel-loader/index-v5/9e/c8/edd6363bfe15c0373b0f59f544bbb2d7ec6f32acc22013e2809c9caeb7a6 +2 -0
  312. package/.next/cache/next-babel-loader/index-v5/9e/d8/f4b305bb1348b790b7335d06d799d3c375a82a3e5cbab869f60a95cbebcc +1 -1
  313. package/.next/cache/next-babel-loader/index-v5/9e/e1/3ab16bbebdb4c8351d99b3da802f2c1a1d16d984b0cb0b3b2a2f907742fe +1 -1
  314. package/.next/cache/next-babel-loader/index-v5/9e/ed/8aea4e365a4ca34e3232dceec8e3be0fb67c457cf6224e07acb078b8f3fa +1 -1
  315. package/.next/cache/next-babel-loader/index-v5/9f/c0/dde66fec8a1457ee0e5b5243842952e1bbd0606550c6c14c5b80bf6e806c +2 -0
  316. package/.next/cache/next-babel-loader/index-v5/a0/43/80007fbd0492ec38e2fb54fca3e805a588e9ea9518e0925e080b5da5fdb1 +1 -1
  317. package/.next/cache/next-babel-loader/index-v5/a0/9b/cd95f72156d61c8137c968ec105ebe6aa09c2d38794528971b4a5f45e886 +1 -1
  318. package/.next/cache/next-babel-loader/index-v5/a1/0f/fb56bd2f56954ed98b1b5ab3706c199e8186a05d4c6c77dda3590a304463 +1 -1
  319. package/.next/cache/next-babel-loader/index-v5/a1/cf/5cc355652b7fea2c8d5b47224783cf85b2759faeec2174942288633891af +1 -1
  320. package/.next/cache/next-babel-loader/index-v5/a1/d9/2d11156f6a2469b1c345745a60236ba9820e6ef6871e8c65bd6bb875cb72 +1 -1
  321. package/.next/cache/next-babel-loader/index-v5/a3/b2/2aa2a385857a6784818b0034e396d6c4a5fb0689d7018fe5fe8474d50468 +1 -1
  322. package/.next/cache/next-babel-loader/index-v5/a4/34/bb281e69244b369a3f28cd2f5b0d224af97fcf322a7f7547b309557ac06a +1 -1
  323. package/.next/cache/next-babel-loader/index-v5/a4/62/e05b4122f0779ea84ac0a64f3967e1bbae07a84d5e3d15c2db3dcd7f8bf4 +1 -1
  324. package/.next/cache/next-babel-loader/index-v5/a5/f9/58c6bb9c34861f0e71ee3fb3cd18ea38e34ada6b24442bc4aa642da5d123 +1 -1
  325. package/.next/cache/next-babel-loader/index-v5/a6/38/a317960b978afa407446303c0936ecc5be8396aabf711a12194a493ba231 +1 -1
  326. package/.next/cache/next-babel-loader/index-v5/a6/51/41d4ca1bc7b2f6e49b91d09553e9d85d43db926045becc3f6e576b45836c +1 -1
  327. package/.next/cache/next-babel-loader/index-v5/a7/3c/949479eb679662755cee417615840eec9d470015fcdab9750af7ec0d2e2b +2 -0
  328. package/.next/cache/next-babel-loader/index-v5/a7/e1/afd0a19b2c10b1dbd0d4180c97d96fa56c85441158445d1774335494eacf +1 -1
  329. package/.next/cache/next-babel-loader/index-v5/a8/02/b8a550541d0b592f39c69f90af2b39d5780f607beb38decd7dc649d8cb4f +1 -1
  330. package/.next/cache/next-babel-loader/index-v5/a8/25/9f4c1ecadcaf6ae7c8db9162ce63276403046949c3c81c359dbae95af944 +2 -0
  331. package/.next/cache/next-babel-loader/index-v5/a8/4b/e65c0308fc91cce41cf309006741be7e8ff567ff255ca53134e3cd8f288c +1 -1
  332. package/.next/cache/next-babel-loader/index-v5/a8/6c/b4e887078c83f33545ea5d17b7d52adfe8a12fdb160717c8c798060042c1 +1 -1
  333. package/.next/cache/next-babel-loader/index-v5/a8/70/ad7a247d766d2663710872f9664c508821b0b438c0f6ec764021267a9def +1 -1
  334. package/.next/cache/next-babel-loader/index-v5/aa/f0/ed9737fef7e388937558d839e83c3ca70cfd8f4138c91dc923c91215f580 +2 -0
  335. package/.next/cache/next-babel-loader/index-v5/aa/fd/5a3822eee57fce786622e2dbd5b39102f57305e8578f24c34d87bf8f17dc +1 -1
  336. package/.next/cache/next-babel-loader/index-v5/ab/17/3e78ac5505cdc90b1507116d724c4cb2cb18d34766e8b4d8b8409e291019 +1 -1
  337. package/.next/cache/next-babel-loader/index-v5/ab/9f/cc49742e5f6bf3752452f3701b7bcf74fc4d71835f744f8ba723a4fa1dd0 +2 -0
  338. package/.next/cache/next-babel-loader/index-v5/ab/bf/fda00c620f4f701aebe4090f4d81b7d74a5cec26fa1f25dd1fae6f69c2e4 +2 -0
  339. package/.next/cache/next-babel-loader/index-v5/ab/fe/4e1a32d6b370cbf1f8cf19f598513d13492ea5cc529830f1536aab654905 +2 -0
  340. package/.next/cache/next-babel-loader/index-v5/ac/66/dde5689a4b98eac4ca37e45f1b9cfa9a260e078252888050bfa85746e059 +1 -1
  341. package/.next/cache/next-babel-loader/index-v5/ac/7f/e8441e5d69baa1fca289455c5cf699b6c2383f6ff9efbb388c7c5f964777 +2 -0
  342. package/.next/cache/next-babel-loader/index-v5/ad/3f/53c57a78a9f43cdd19179b6d329bf418eb5879a9ac62319e5fcf86c35fc7 +1 -1
  343. package/.next/cache/next-babel-loader/index-v5/ae/1a/e68abc4e07b9627e13a33a51d13854d0425c103da241bb570aac2feb3549 +1 -1
  344. package/.next/cache/next-babel-loader/index-v5/af/45/f38f5aa147af1a50c1dfcc99265da09edf4b52c5215161467711dc375809 +1 -1
  345. package/.next/cache/next-babel-loader/index-v5/b0/a9/3aefabf578961e7ed6ad851f82014c91343eec8bcd5353a8c6057ae7f6eb +1 -1
  346. package/.next/cache/next-babel-loader/index-v5/b0/d9/571147dc8db24b00c793d1b7115e1287635b579cfb2bf4fbfd20d695d6db +2 -0
  347. package/.next/cache/next-babel-loader/index-v5/b1/83/547d6a4df05c9ac39520f699ff3ce0d5a8854ff8ff76b470a89e62e84ab6 +1 -1
  348. package/.next/cache/next-babel-loader/index-v5/b1/bc/762924ce1ad5e87396cb0f84796bdc3b72e006386db764ae4fe98a0da6e4 +1 -1
  349. package/.next/cache/next-babel-loader/index-v5/b2/3f/52a4cf8c19b21f3e799391b041dde04dc205ce18d34415505b01dedf6464 +1 -1
  350. package/.next/cache/next-babel-loader/index-v5/b3/ab/abe917958d4eedeebefb9ea7a511dd0b0b869f5ed8c2b1220ac5c2b0ccdc +1 -1
  351. package/.next/cache/next-babel-loader/index-v5/b3/b4/122b9305443e55a254170a7b3e3c2fbb59cd855d97ab215b8d3e75d5fbe6 +1 -1
  352. package/.next/cache/next-babel-loader/index-v5/b5/47/f244c35b3254be89ff79029dbf3127ab725b4dbc3f80a61b481066746ece +1 -1
  353. package/.next/cache/next-babel-loader/index-v5/b5/a8/6e2f1c60bc00926945ec73afa5947e2c7d24f221778ab61332c8842b8c14 +1 -1
  354. package/.next/cache/next-babel-loader/index-v5/b5/ec/6cf053296cc37210c9e1091a21e07e2a0c6c026112d8df9be9d643118620 +1 -1
  355. package/.next/cache/next-babel-loader/index-v5/b6/40/376a672bf272dbe3c5f5b020a2939137536505502a154d3612da872c2faf +1 -1
  356. package/.next/cache/next-babel-loader/index-v5/b6/e5/9e2be32815bcbf4a6273c63e2c6cfe5956e4b404fb9ac27900b6d115dd1b +1 -1
  357. package/.next/cache/next-babel-loader/index-v5/b7/26/151b3fd35df768c531c1144d531d19efb64260ce425048f47bd9aa38a0c7 +1 -1
  358. package/.next/cache/next-babel-loader/index-v5/b7/f2/caef3a51df6f28768b82d4bfef45c958c106e9d5845c0c1519465dbd0156 +1 -1
  359. package/.next/cache/next-babel-loader/index-v5/b8/bb/c3902e2ff607c249d331c217ae5a46996ce24bccf990df256bdc7a7d96be +1 -1
  360. package/.next/cache/next-babel-loader/index-v5/b9/2f/0ea654e700472ed2fc7634e57c457bee1adb7bef3e3e4855f51a51f71d6c +2 -0
  361. package/.next/cache/next-babel-loader/index-v5/b9/58/af707350b0c2097cd968f920aeee5e6a64c85e484913c60158bef86377fa +1 -1
  362. package/.next/cache/next-babel-loader/index-v5/ba/14/244934761ecf2e2954a2eb3e9cdaf715cc6f8ae28c120f8be4916abd0ff8 +1 -1
  363. package/.next/cache/next-babel-loader/index-v5/ba/1b/ee4c5c6a8228f6299b6366225b83cfc226dc96cd3a9d9ff533fd05090cb5 +1 -1
  364. package/.next/cache/next-babel-loader/index-v5/ba/bf/6a6442351d7303ccd31a9590adc0dc0af1a7b790f7f922b2ea9fb0aa2d70 +1 -1
  365. package/.next/cache/next-babel-loader/index-v5/bb/47/1831644c32e0d7f066faa5c556a3eefb5b6b84d10057977ecb7f4f9adc5f +1 -1
  366. package/.next/cache/next-babel-loader/index-v5/bb/90/2f56d16bbab0eda1e1447de97633c11077e22d0ce80ac8eec1982a403d97 +1 -1
  367. package/.next/cache/next-babel-loader/index-v5/bd/f3/a990f78f2e3a155c60259f5269a1e6fdf82fbe419acb2941aa09647b3698 +1 -1
  368. package/.next/cache/next-babel-loader/index-v5/be/0c/a534c18acd388d6f7fd88b1f3240b5e83a3801a50b41be71dc6e92d30d52 +1 -1
  369. package/.next/cache/next-babel-loader/index-v5/be/d9/929948718335af74d98234e7bbbcad9c817bf3c2486a69a3aa786fa69bd6 +1 -1
  370. package/.next/cache/next-babel-loader/index-v5/bf/22/a3b995885d74589a633b7db67696565dc9671a09b0f5412b63c238c368c0 +1 -1
  371. package/.next/cache/next-babel-loader/index-v5/bf/53/4e7a61fd4278929ac813c786a2e9a2b28e46be8bd6beae5e80d4c262d641 +1 -1
  372. package/.next/cache/next-babel-loader/index-v5/bf/97/933fd5401621186ee78029a834f87b5d24531cf7396897b2da3ff4843a28 +1 -1
  373. package/.next/cache/next-babel-loader/index-v5/c0/2a/d660d4cc68f0eb04f74889b5b09ff0c423555f893e0a0f3acdfa13c5d032 +1 -1
  374. package/.next/cache/next-babel-loader/index-v5/c0/89/1fcc2df3bd78215f9b9af7a6cbea271b486f1554d894e5f79283e231de3e +1 -1
  375. package/.next/cache/next-babel-loader/index-v5/c1/57/c6e82f9a1c9a1eff6af5406c764611d0030c6a442c50b31bad7dae8bbce6 +1 -1
  376. package/.next/cache/next-babel-loader/index-v5/c2/8a/9602673ec8103968e22c88ff666ac7f3125fda65033b70ca5c1919e9ed2b +1 -1
  377. package/.next/cache/next-babel-loader/index-v5/c2/ae/6dbb798132963d6cbdea74779c58738fbb76292ecf76dc250250a7fe9191 +1 -1
  378. package/.next/cache/next-babel-loader/index-v5/c2/d2/a5982245034ce5bf60e0e20234f761cfd9ab2266e03cfd17bb7e28c4629a +1 -1
  379. package/.next/cache/next-babel-loader/index-v5/c4/38/84ae45ef7ea11c24ec343fc568eb2b08482830d92dd9acae72da5ad208ed +1 -1
  380. package/.next/cache/next-babel-loader/index-v5/c4/79/14ff201fa6ce0c14eb02eb56e1a4fa39da8be3de10c547789596877f40a2 +1 -1
  381. package/.next/cache/next-babel-loader/index-v5/c6/16/307db6c11093360729f3aaa9682f457548e650fc22130560e0d100bac003 +1 -1
  382. package/.next/cache/next-babel-loader/index-v5/c6/ee/b41074d5b6133fb75f01c3d937d106c4b0425d97f62fcd3a075d7397a029 +2 -0
  383. package/.next/cache/next-babel-loader/index-v5/c8/a8/e79c26edc5e4f325d66460a3e972b40e900ac511f1443b676a2868f24d5a +1 -1
  384. package/.next/cache/next-babel-loader/index-v5/c8/d7/1c61fa3949074a3326da820fbe1a56b97d2828e448d299049cb77cc35ee2 +1 -1
  385. package/.next/cache/next-babel-loader/index-v5/c9/31/8b93e021b0d0296de3281307d46e0ed144bb07f40fd3a90d7da1f5427697 +1 -1
  386. package/.next/cache/next-babel-loader/index-v5/c9/78/f56f5f8035e9bfe505644acab5056d0a2c715a508092c5fbbccdb130b6a6 +2 -0
  387. package/.next/cache/next-babel-loader/index-v5/ca/0b/aab9288e15727fcf895af6cfc8a5465e238a1c4a3789d5c0a2db08e18a9d +1 -1
  388. package/.next/cache/next-babel-loader/index-v5/ca/11/bce6305b2119f80cff46ce7d9ebb978d188c55790930ff794707b84d87e1 +2 -0
  389. package/.next/cache/next-babel-loader/index-v5/cb/61/d25b411e6556fcf011cf0b9b937ddfa9779a004962b9f5a3a8f62e14b1c8 +1 -1
  390. package/.next/cache/next-babel-loader/index-v5/cb/b1/98a671eb9bf43205c880311202fa4b2cb33544a14e4487d02aa1b53f0236 +1 -1
  391. package/.next/cache/next-babel-loader/index-v5/cb/b2/80cb0dad9c12a49f4453355d80480dc8f7cd23ec69f5f8ad12949930d629 +2 -0
  392. package/.next/cache/next-babel-loader/index-v5/cb/dd/e144492d854078b98b45a3f6d91d6256381abd6c6e2ad1332b7fc2b52b73 +2 -0
  393. package/.next/cache/next-babel-loader/index-v5/cc/fe/1ce64b86912936bc2c3db7a4616c86e8e8311a3a120cc29f605d967c9618 +2 -0
  394. package/.next/cache/next-babel-loader/index-v5/cd/52/bae438375a8a5ff4eb6beab8d3fe956acf28cd5bb7fd9a828c65713309be +1 -1
  395. package/.next/cache/next-babel-loader/index-v5/ce/2a/04816eafe983d2ab8b05a33433eee6198898a8e9475555bc2a61f21137ca +1 -1
  396. package/.next/cache/next-babel-loader/index-v5/ce/9b/52d653bf4db3dc124d6310e5798741b0c9802bc1d28f284da62dc8351564 +1 -1
  397. package/.next/cache/next-babel-loader/index-v5/ce/e2/85927cd5b2377347f82f9e48af22bbf552b99f1f11241a4696219e82e031 +1 -1
  398. package/.next/cache/next-babel-loader/index-v5/cf/37/a9d24eeafbb6d6e1e3655f2688d9e9e749356c986e69883a0b07d2220564 +1 -1
  399. package/.next/cache/next-babel-loader/index-v5/cf/69/5c6ed94c361b3bb917410ec6b17c89a48e4cab919f560eabfbb41658c5bb +1 -1
  400. package/.next/cache/next-babel-loader/index-v5/d0/f8/5b946ab7c83065ae2213f20de67aa9f993f8d19f7ec9e3a5f65ecf795371 +1 -1
  401. package/.next/cache/next-babel-loader/index-v5/d1/22/d870485777fab69eaa7f36d202f65c0d60b2da4e83303784c89fdd263f75 +1 -1
  402. package/.next/cache/next-babel-loader/index-v5/d1/cb/692f9aa48ea673cbe8cec13bebec360531b8072ea2b558fdc37c5b1ded45 +1 -1
  403. package/.next/cache/next-babel-loader/index-v5/d1/fa/443534db86414f4263fdcdf2a4be6eb8b6f131b6030beb38427aa1cecd94 +1 -1
  404. package/.next/cache/next-babel-loader/index-v5/d4/36/f03dce208edbd61de8533f03b15857745ab8a079469a35089c414e06d4d7 +1 -1
  405. package/.next/cache/next-babel-loader/index-v5/d4/fa/8c77bf40c4a32eb242d6232af1a9609888b7005f701e1d31b5b19f43982e +1 -1
  406. package/.next/cache/next-babel-loader/index-v5/d5/26/eba5f9f861a79a36d2241acc44733a6166169939e15e880852b74a7d4170 +1 -1
  407. package/.next/cache/next-babel-loader/index-v5/d5/59/b7edf00de3def29c539fd16a30ce3fa2d235e23b0b1ccf547be255242358 +1 -1
  408. package/.next/cache/next-babel-loader/index-v5/d5/5c/8ee569a8f571b008cb7f8266e72629d6f840b007bbb31e552539772b1d56 +2 -0
  409. package/.next/cache/next-babel-loader/index-v5/d5/a4/f04e5e18d63f17cf5a47a1c7149eac7cb4dd93921898562b08d3ea5360a1 +1 -1
  410. package/.next/cache/next-babel-loader/index-v5/d6/64/ae09623474dc37923386fb6995a14ffc162d4ed9429d46cf2814af8f3925 +2 -0
  411. package/.next/cache/next-babel-loader/index-v5/d6/9c/e8056e7750446ea239fe7f9ed0db5590944a2b1e71d60d97b8c5ea080561 +1 -1
  412. package/.next/cache/next-babel-loader/index-v5/d7/d6/5cd7e4d4a9764475e49d2b697f6ef2bc4bc495584aed6189b7f8f4e289a0 +1 -1
  413. package/.next/cache/next-babel-loader/index-v5/d7/e5/e388c871a63f34a8c0e2d960dd6d1bfa8307212f12f9e5746ab4bb8a5b49 +1 -1
  414. package/.next/cache/next-babel-loader/index-v5/d8/7c/2f83dba592a60beaac58630da02c9ef693c6a5d03a585ee94ac936adea5d +1 -1
  415. package/.next/cache/next-babel-loader/index-v5/d9/09/11081cfa482876e66ca88c58f39a1f343925b0744d0d0f3268e5329c8cd3 +2 -0
  416. package/.next/cache/next-babel-loader/index-v5/d9/48/0ca6f9e792c4f352537b27ba92b983962a9dd3e5090a0a66e67801096702 +1 -1
  417. package/.next/cache/next-babel-loader/index-v5/d9/57/b21143144c7d2592539c6ab2c2892c24af7a359cd7ad8b529251a4928d31 +1 -1
  418. package/.next/cache/next-babel-loader/index-v5/d9/b6/fefa612e2c50ae95e9e3470b915fc9e6505482e558841b7f795f5a21dcbc +1 -1
  419. package/.next/cache/next-babel-loader/index-v5/d9/d1/f9936da0e37321b52db16609ffe41fa81886de62faf9084b10453fe74137 +1 -1
  420. package/.next/cache/next-babel-loader/index-v5/da/0b/da5e3309c3237063682f21dd4c9c0e5106b17f3a67216aebbc4444ee2fc7 +1 -1
  421. package/.next/cache/next-babel-loader/index-v5/da/93/9e6760444e8c717f3410139c6ff4911965203dafa50a653c2b4d6b694190 +1 -1
  422. package/.next/cache/next-babel-loader/index-v5/da/f2/f921d8aaa507aad953161cd16234c2b6a8fe896330f8e7fb155c698200a5 +1 -1
  423. package/.next/cache/next-babel-loader/index-v5/dc/2d/c874ec17bd932c6fb0e84296f7c8132e029f265d3fb60c7be934aa21590e +1 -1
  424. package/.next/cache/next-babel-loader/index-v5/dc/d6/cf8a6e67171ba5d079b05242c0cbae95290c78233e09383b4fe1a95067b9 +1 -1
  425. package/.next/cache/next-babel-loader/index-v5/dd/5d/6b66f651c28d16d6498dd282c24a7b5a66ada29f53bbd9f33f52985963ee +1 -1
  426. package/.next/cache/next-babel-loader/index-v5/dd/91/fc45ab00b22ea7d2ef37837f4a874c26be0a3093e453ad3bd8837e46ac73 +1 -1
  427. package/.next/cache/next-babel-loader/index-v5/de/43/61b45e92b6610901cb9a00b43807fcd5e7580a3c68508d0417a62e6d08fa +1 -1
  428. package/.next/cache/next-babel-loader/index-v5/de/8f/2a1bdb8e55fb1d8d904a7c714ecd5d3546e36bdbdcb13bd5ac6d16308be5 +2 -0
  429. package/.next/cache/next-babel-loader/index-v5/df/c5/f52bb6bd30948c2aa956695a0b8c5698d2321b392ed21cce1a9dc13dfd72 +1 -1
  430. package/.next/cache/next-babel-loader/index-v5/e0/2e/6cb0c1c26a409b4833f40ed50fcb5663b568de90b662ef81ea7bfcad6dc5 +1 -1
  431. package/.next/cache/next-babel-loader/index-v5/e0/3c/2df169cfeeef6b2a1e56cdcb63df95528ad8e03604c887540e2f4cad023b +1 -1
  432. package/.next/cache/next-babel-loader/index-v5/e0/cc/60f6264c212f48146f0030656402ad96813741afcc5071b37da08db4bb65 +1 -1
  433. package/.next/cache/next-babel-loader/index-v5/e3/12/06a383404f96d98af57cee590286a9ab9cd8329a8153a21aca1eaee9784e +1 -1
  434. package/.next/cache/next-babel-loader/index-v5/e3/34/d044874e6f6e796348bc6e7f025668403f6bc358287150a3eda8ce480866 +2 -0
  435. package/.next/cache/next-babel-loader/index-v5/e5/55/7d50f26e423b468e87ff6b4c963dde2708504f475945ba15212ba23ca091 +1 -1
  436. package/.next/cache/next-babel-loader/index-v5/e5/f3/ea7cde3d342757bf3a862930821b5cae095d933b88d12a2918a6c44e6448 +1 -1
  437. package/.next/cache/next-babel-loader/index-v5/e6/0e/517380b0b652ab140e06e969f4bc9a034ca2ea94fe515c90326dbf0d0284 +1 -1
  438. package/.next/cache/next-babel-loader/index-v5/e7/2f/310e9879bd68a0ff6c036e589d7f7f5ea37e98c6029392c22747657301b8 +1 -1
  439. package/.next/cache/next-babel-loader/index-v5/e7/3b/0c70670e96f37d8a76c949fa9d4428b9ce80f1e8cd1c43826c0559731bcb +1 -1
  440. package/.next/cache/next-babel-loader/index-v5/e9/c5/c95a745aab17dcb55fb8e872458e5c13265f6884d2f99aacef119383b10e +1 -1
  441. package/.next/cache/next-babel-loader/index-v5/ea/17/ad823f90697a7499231796a8a181e7cc29da8bf0aa277c3421740e9fd16e +1 -1
  442. package/.next/cache/next-babel-loader/index-v5/ea/6e/232612dae36ca4ed3e832f812962fbf1be66592bad72280ee61a56b5a6df +1 -1
  443. package/.next/cache/next-babel-loader/index-v5/ea/ee/cfbde17dc8f4095d91db23ff75a536be6a5b3a79ef05fe162cf90cf1991b +1 -1
  444. package/.next/cache/next-babel-loader/index-v5/eb/16/75d3fc0562e756a861e4f95aa18f5df4a415177e6c38cf7bc738f6e40eff +1 -1
  445. package/.next/cache/next-babel-loader/index-v5/eb/45/4094bc61c3c532e80b8e3c37a6d8533cc2e8e1977afbfd50737b24959197 +1 -1
  446. package/.next/cache/next-babel-loader/index-v5/eb/f3/f069bb5d03b747954a9a531dc55ea1f23511445a2c7dedd52cf8ad059c17 +1 -1
  447. package/.next/cache/next-babel-loader/index-v5/eb/fe/89891102097458f0c65fb13014c8ff557d0224500e9c2812002caa9fcaf7 +1 -1
  448. package/.next/cache/next-babel-loader/index-v5/ec/d5/cf960ab003ecc859e6131d2b4c5893f3c24cab569163cf1d65b6eb3248c7 +1 -1
  449. package/.next/cache/next-babel-loader/index-v5/ed/48/c4b94861e52c655aee39939f86b64c6778e9a349d5d861a3d0a96b7f740c +1 -1
  450. package/.next/cache/next-babel-loader/index-v5/ee/9a/75c58542144e441fd3b9e556fd709c741f222d5c56af004f0d95a9bc9a88 +1 -1
  451. package/.next/cache/next-babel-loader/index-v5/ee/a2/8370d6b1bc098a7b0aaee605d982a91d23ebd80b17873d5db9447b4caed4 +1 -1
  452. package/.next/cache/next-babel-loader/index-v5/ee/bb/96772bcc40c3b54b8188dd032baa06b3a73b54e574f100a0fdc2fa5899cd +1 -1
  453. package/.next/cache/next-babel-loader/index-v5/f0/3e/03bd52f942c93b0da3ea1ac1630b8a3c1beed82495259c4d5f0d3fe8dadd +2 -0
  454. package/.next/cache/next-babel-loader/index-v5/f0/61/a87606ba275ee2cc9b926d9e29290b09d03a37a91ea2af7e5baf2a39b402 +1 -1
  455. package/.next/cache/next-babel-loader/index-v5/f0/89/59adc63d4882a653c899a17ca102404198b424b6d378c8ce7191b947e7d5 +1 -1
  456. package/.next/cache/next-babel-loader/index-v5/f1/8f/38316215d0701c175563d0212fbfef71d8a3d321e9e09e8a34b0ca65b635 +2 -0
  457. package/.next/cache/next-babel-loader/index-v5/f3/0b/edd7107f19e7dd8a05e104b5cb4383ed50a51b0c2ccc41913671027125c5 +1 -1
  458. package/.next/cache/next-babel-loader/index-v5/f3/b2/87c6d978e889308075141db91155cfe48db23376a39df0bda271246fc6df +1 -1
  459. package/.next/cache/next-babel-loader/index-v5/f4/13/bddbe42f66ba4420ec05692712256ac2eeab7ac1f9c8d67a78a1dece4a0a +1 -1
  460. package/.next/cache/next-babel-loader/index-v5/f4/48/b81a103882eb20c08b8339c55cb71da25a2c017d42c40b78a51145e28da9 +1 -1
  461. package/.next/cache/next-babel-loader/index-v5/f5/74/a938f3b00e9dab57a659bd31094607cca5169b32a7692105e34bd63d74ce +1 -1
  462. package/.next/cache/next-babel-loader/index-v5/f5/8f/e4328e1ab1c7614a657ac2ed7972aa8d1a8a99cfa52aaab6d8231cdab8d4 +1 -1
  463. package/.next/cache/next-babel-loader/index-v5/f5/f0/ad761754570de5aabfe6d8e01ff80b2925e08e39a7e6ce59da8ff994ce35 +1 -1
  464. package/.next/cache/next-babel-loader/index-v5/f6/59/729fd94f2ceb3fdb8f5c12f6ab80b4fb0f2cdd83dbaef839359271283fb5 +1 -1
  465. package/.next/cache/next-babel-loader/index-v5/f6/9e/93ca597d6237876ebdc8e02916b0946067ddee077e8e78eae135d89ee49c +1 -1
  466. package/.next/cache/next-babel-loader/index-v5/f6/b2/dd10784f87e1c841bbfc71baeaa5aabaf254c605fc82c145627a718ef805 +1 -1
  467. package/.next/cache/next-babel-loader/index-v5/f6/d4/49cb58288e2119cc1f1947fe9fad7e6f61141c4e0f343156ef8fb626bd73 +1 -1
  468. package/.next/cache/next-babel-loader/index-v5/f7/3c/00f63331086baeef2c1b7ceff69252d0eee1a8009387a9be7a368ca82d0b +1 -1
  469. package/.next/cache/next-babel-loader/index-v5/f7/66/2bd294f733a3b90272872f929f4999ebef6b89f356dcffb1e9a4a37849e1 +1 -1
  470. package/.next/cache/next-babel-loader/index-v5/f7/68/f7d5743454c8019b38d85c5d099ad62cc35a44328aa2b504196ff2ac113b +1 -1
  471. package/.next/cache/next-babel-loader/index-v5/f7/7b/00ab5eb5f012c63a78582f5df760b33b006f8d3ef055424bfef21292421f +1 -1
  472. package/.next/cache/next-babel-loader/index-v5/f7/fe/b89e1bc71482bbd976a2ac2d05000aecade244e526c8ab444acb72350615 +2 -0
  473. package/.next/cache/next-babel-loader/index-v5/fa/d1/0db9d9e49174b7fed15c72417fbf02602c44795c484ffcb6685725e95d7a +1 -1
  474. package/.next/cache/next-babel-loader/index-v5/fb/65/b950a8c5a13eefcadd22fc800c41943a5e0688e83b2649230cb465e75043 +1 -1
  475. package/.next/cache/next-babel-loader/index-v5/fb/6a/0cc2d2593b2f744013fe1107e4c66a24322f22dee4cb841a63e6d8e8fbd8 +1 -1
  476. package/.next/cache/next-babel-loader/index-v5/fb/b1/919ec916fdc235ddcf1bec1471694f314656a3f446f7d22b685c1587a832 +1 -1
  477. package/.next/cache/next-babel-loader/index-v5/fc/67/f96baa49fa8a53177bc1f5a176fcbe895ca33453125d29a739d1e1d4b4d0 +1 -1
  478. package/.next/cache/next-babel-loader/index-v5/fd/87/214f05df0163e0f376fbc9f0f004db7a388e782268c84d37e7d9338ec1dd +1 -1
  479. package/.next/cache/next-babel-loader/index-v5/fd/89/d41f7ca04a2f1fdbfe38013c4d3ee7e5dbf6c98bb0b640839ff727ab0b98 +1 -1
  480. package/.next/cache/next-babel-loader/index-v5/fe/24/410c861bc7b03d634a02e8ed8c897109ec35610e4b38dcd84a0515245458 +1 -1
  481. package/.next/cache/next-babel-loader/index-v5/ff/7b/f6a1bed78d01f4123891fd8da71efe7f1e03084dedf3d0a15498a4fe9fa0 +2 -0
  482. package/.next/cache/next-babel-loader/index-v5/ff/87/e785c7e8138074842ffb705addc7e7e0660eaf5730bfd9acfb929311b2f7 +2 -0
  483. package/.next/cache/next-minifier/content-v2/sha512/09/d9/3c743da751cfd09447046eb31c0e7a9f3d8e8e3005525e381914c57f1c7cbdc7531223347f50687208eb41a498ce2e12563977597a15ff3295dd6b40bdfb +1 -0
  484. package/.next/cache/next-minifier/content-v2/sha512/33/cf/09dc9d1ce52d291fd2add7aefdaaef4b31018aaabd96ce42fb36148b507f8ada3a225652b877d8de086d38fa62f05712d928877bde223a265e4f0ff76166 +1 -0
  485. package/.next/cache/next-minifier/content-v2/sha512/5c/7b/4d575258cc1a5dbfc8902932d26f4649579d6bb68b94d8d7f8083fec2cbacfc6b7bdc72ed750596ff0cc9e7d0033b3c1a43afae6d2d5588eb21aa90a815c +1 -0
  486. package/.next/cache/next-minifier/content-v2/sha512/{28/b1/5b6cf4db00428e5d25d0e0b787d471cabbb37ff568db6b81eef35d4b06b0f894dc7b9139379137be245bbd04473e5729f58d1547cf1422820370b63fe6f7 → c6/2a/02f2934c374ad360350e1d48b251a2ac1116704e4ff2c40b83c7f85aef976b2d44be3512a1b17a465632ad8a7e174e4928d878114ff689de3c75eebf0b50} +1 -1
  487. package/.next/cache/next-minifier/content-v2/sha512/cc/e4/1818919ae3576067c8d138a274c96ceee1eb5a5f6bf0326cec0b4ee43f77e51e0b92ddb80c8e87b3823ea19b66d4c14eabf573b8f15ccd8dc307c0f64f24 +1 -0
  488. package/.next/cache/next-minifier/index-v5/01/65/3fd4d53ac6bf3be1ce060354d4d6799fa1451269e201272a3e777f4151bd +1 -1
  489. package/.next/cache/next-minifier/index-v5/30/46/3bb994f67e4f1439ddb483d00fa762011785b465807e8082e07e57a8d818 +1 -1
  490. package/.next/cache/next-minifier/index-v5/37/4d/616defc6dc0a87885935627f4b00f77d1b818564f4aea7e2626325592654 +1 -1
  491. package/.next/cache/next-minifier/index-v5/37/dd/771686f18c78942997a8503bd00ab66948d3af5ad4909d88251f28841e18 +1 -1
  492. package/.next/cache/next-minifier/index-v5/3f/b5/076a4a10e17d103711e65d32b25af501f088ed7e60fdb5077a6e8c694628 +2 -0
  493. package/.next/cache/next-minifier/index-v5/75/ff/d39de98ecfeac118b8d8d1b7d677442bfed0aecce0dec59d7aa2699e1b76 +1 -1
  494. package/.next/cache/next-minifier/index-v5/9b/a8/71cc88696ce83447c4ba0d33054aa0c028b68a11330401685612045561ed +1 -1
  495. package/.next/cache/next-minifier/index-v5/9c/b7/134fef6709fc1917d780038abbfcf876bf98b2ef4eca395b61e099e88519 +1 -1
  496. package/.next/cache/next-minifier/index-v5/c0/66/6e4662c1d725613355ccd5b4a6cb6e1d01ca4907bc68ed5de7186b76e4e8 +2 -0
  497. package/.next/cache/next-minifier/index-v5/c5/dc/eb2bbd87e191535f81403d4e9a647a0699f39e253dececa55de9474c95a4 +1 -1
  498. package/.next/cache/next-minifier/index-v5/f7/d0/fe7fd9cb9dd8a2309dd26449f1a35c94ed4db0812fb43f1ffbce35678859 +2 -0
  499. package/.next/cache/next-minifier/index-v5/f9/19/c8354607b7c542c0eef183095ad58a023c0c6adbe1cbb1f689ebf7284421 +2 -0
  500. package/.next/prerender-manifest.json +1 -1
  501. package/.next/routes-manifest.json +1 -1
  502. package/.next/server/pages/404.html +1 -1
  503. package/.next/server/pages/_app.js +80 -33
  504. package/.next/server/pages/_document.js +77 -3
  505. package/.next/server/pages/api/dictionary/[locale]/[word].js +8 -4
  506. package/.next/server/pages/api/solve.js +8 -4
  507. package/.next/server/pages/api/visit.js +8 -4
  508. package/.next/server/pages/index.html +1 -1
  509. package/.next/server/pages/index.js +745 -513
  510. package/.next/server/pages/index.json +1 -1
  511. package/.next/static/FFAhmftgC9dAORkC7Ob65/_buildManifest.js +1 -0
  512. package/.next/static/{4PhTJ8NXl8ohlUei9hsYC → FFAhmftgC9dAORkC7Ob65}/_ssgManifest.js +0 -0
  513. package/.next/static/chunks/9173c43c67b8e6b6863c872190b4ad904108d7de.705974da58bafedb05a6.js +1 -0
  514. package/.next/static/chunks/9ce9955a8bcc07a8fd1a36edfefd3f331a5795a5.4360b6ac25781f339d0d.js +1 -0
  515. package/.next/static/chunks/pages/{404-5c1877b148b67aacfcc8.js → 404-a78979d74ede8ec03fd0.js} +0 -0
  516. package/.next/static/chunks/pages/{_app-d8af05ac2ed143e76976.js → _app-ee510b5b1605015e3c60.js} +1 -1
  517. package/.next/static/chunks/pages/index-0698b6ffc46ed4a90feb.js +1 -0
  518. package/.next/static/css/{d1e23bb8d0c07d160268.css → c6c0e4ce9c9eb2e61c9b.css} +1 -1
  519. package/.next/static/css/{be29f870ab6d8b106560.css → cce34aac673a34325009.css} +1 -1
  520. package/.next/static/css/{fd7fbb5ce240873ba9ad.css → df0fedf96cb88babdefb.css} +1 -1
  521. package/README.md +1 -1
  522. package/package.json +17 -10
  523. package/public/favicon.ico +0 -0
  524. package/public/icons/apple-touch-icon-114x114.png +0 -0
  525. package/public/icons/apple-touch-icon-120x120.png +0 -0
  526. package/public/icons/apple-touch-icon-144x144.png +0 -0
  527. package/public/icons/apple-touch-icon-152x152.png +0 -0
  528. package/public/icons/apple-touch-icon-57x57.png +0 -0
  529. package/public/icons/apple-touch-icon-60x60.png +0 -0
  530. package/public/icons/apple-touch-icon-72x72.png +0 -0
  531. package/public/icons/apple-touch-icon-76x76.png +0 -0
  532. package/public/icons/favicon-128.png +0 -0
  533. package/public/icons/favicon-16x16.png +0 -0
  534. package/public/icons/favicon-196x196.png +0 -0
  535. package/public/icons/favicon-32x32.png +0 -0
  536. package/public/icons/favicon-96x96.png +0 -0
  537. package/public/icons/mstile-144x144.png +0 -0
  538. package/public/icons/mstile-150x150.png +0 -0
  539. package/public/icons/mstile-310x150.png +0 -0
  540. package/public/icons/mstile-310x310.png +0 -0
  541. package/public/icons/mstile-70x70.png +0 -0
  542. package/public/og.png +0 -0
  543. package/public/robots.txt +4 -0
  544. package/public/sitemap.xml +1 -1
  545. package/src/api/validateBoard.ts +2 -1
  546. package/src/api/validateCell.ts +2 -1
  547. package/src/api/validateCharacters.ts +2 -1
  548. package/src/components/Board/components/Cell/Button.tsx +25 -13
  549. package/src/components/Board/components/Cell/CellPure.tsx +2 -2
  550. package/src/components/Button/Button.tsx +18 -12
  551. package/src/components/Checkbox/Checkbox.tsx +1 -3
  552. package/src/components/NavButtons/NavButtons.module.scss +0 -6
  553. package/src/components/NavButtons/NavButtons.tsx +7 -17
  554. package/src/components/Radio/Radio.tsx +1 -13
  555. package/src/components/Results/Cell.tsx +4 -1
  556. package/src/components/Results/HeaderButton.tsx +55 -0
  557. package/src/components/Results/Results.module.scss +4 -3
  558. package/src/components/Results/Results.tsx +7 -2
  559. package/src/components/Results/SolveButton.tsx +0 -1
  560. package/src/components/Results/constants.ts +42 -0
  561. package/src/components/Results/types.ts +7 -0
  562. package/src/components/Screen/Screen.tsx +5 -21
  563. package/src/components/Settings/components/AutoGroupTilesSetting/AutoGroupTilesSetting.tsx +0 -1
  564. package/src/components/Settings/components/ConfigSetting/ConfigSetting.tsx +0 -1
  565. package/src/components/Settings/components/LocaleSetting/LocaleSetting.module.scss +6 -0
  566. package/src/components/Settings/components/LocaleSetting/LocaleSetting.tsx +0 -1
  567. package/src/components/Settings/components/LocaleSetting/options.ts +7 -1
  568. package/src/components/Sidebar/Sidebar.module.scss +0 -2
  569. package/src/components/Sidebar/Sidebar.tsx +8 -7
  570. package/src/components/SquareButton/Link.tsx +17 -8
  571. package/src/components/SquareButton/SquareButton.module.scss +1 -26
  572. package/src/components/SquareButton/SquareButton.tsx +16 -7
  573. package/src/components/Tooltip/Tooltip.module.scss +84 -0
  574. package/src/components/Tooltip/constants.ts +28 -0
  575. package/src/components/Tooltip/index.ts +1 -0
  576. package/src/components/Tooltip/useTooltip.tsx +119 -0
  577. package/src/components/index.ts +1 -0
  578. package/src/hooks/index.ts +2 -0
  579. package/src/hooks/usePortal.tsx +37 -0
  580. package/src/hooks/useUniqueId.ts +9 -0
  581. package/src/i18n/de.json +52 -0
  582. package/src/i18n/index.ts +2 -0
  583. package/src/icons/flagDe.svg +5 -0
  584. package/src/icons/index.ts +1 -0
  585. package/src/lib/canUseDom.ts +3 -0
  586. package/src/lib/index.ts +1 -0
  587. package/src/pages/_app.tsx +15 -1
  588. package/src/pages/_document.tsx +20 -1
  589. package/src/pages/api/dictionary/[locale]/[word].ts +2 -4
  590. package/src/pages/api/solve.ts +2 -4
  591. package/src/pages/api/visit.ts +2 -4
  592. package/src/pages/index.module.scss +10 -0
  593. package/src/pages/index.tsx +3 -1
  594. package/src/styles/variables.scss +3 -1
  595. package/.next/cache/next-babel-loader/content-v2/sha512/0f/d1/854baeef97f9e7d738d1b5fa99476a446abca1be9624717b1510bde44eee7bd366305051df1fe2171ea756f221ddf0d0832d2e1b23bc0ef7edd816f1507a +0 -1
  596. package/.next/cache/next-babel-loader/content-v2/sha512/1b/73/218713f5cca9083e08cc215a685f27c997828fe466b19a4c6d14e5776607c724a64407d5db9708de89d84ea4b4ae431db2de1bebc9044c22c86d922a4491 +0 -1
  597. package/.next/cache/next-babel-loader/content-v2/sha512/1f/3b/bde7e2f698c12eb51536171537ec5c7594526afb52edfe3535d0e553fce2a3ab646335e7ff046df66368a2a63d0b72d9e8882601367f43169500b01e3417 +0 -1
  598. package/.next/cache/next-babel-loader/content-v2/sha512/31/9f/49e3b8ca2a815cb38201e3ed57f1bdb2a8df3062774200c08dade15f4595b0b44b38872312155aa5045b600941e6eaac3be00d14062c4e7fca5a821e0b2e +0 -1
  599. package/.next/cache/next-babel-loader/content-v2/sha512/3f/1e/42d6133cf8e8a2b60577ec64613d539f5f8b8378437ff475f881008f9e44760d7d671ff0a693d4727299cc3c63000899081a36c7ec805491fb433478ce7d +0 -1
  600. package/.next/cache/next-babel-loader/content-v2/sha512/41/d4/f8ba9e4a8c33c046a5b7d5a933a41b12f8c00327cbdf3a540c44e77bc352a384955cf1cd1709a6ad40f001fac593db7f8f168c9cf0d53278b579a7672b64 +0 -1
  601. package/.next/cache/next-babel-loader/content-v2/sha512/48/47/d346befd697b0c7d732197c2ea7b2e346bd2a8c6b93108e03d505f63a5e4b3fb4355efd7e4bd0f5892d87e36d216b6548ef6b48b5096410210fcf7f7a512 +0 -1
  602. package/.next/cache/next-babel-loader/content-v2/sha512/55/5c/741c41ed8ae04273b02948c00e5cbb3a0920222d33a1e4887341fd9aac33bce2ea322731a9545f522abeaa0dd52ada4a54ae5d9c866282125b579c839879 +0 -1
  603. package/.next/cache/next-babel-loader/content-v2/sha512/59/43/950f8a683666a9910c1cdf7cc4ae14ce5b2f5e00bdf3c77e8e4a4299e4e9390e176e5bab0fcc245c8ea99ab8473f693fb45386fca16dbb754b0519c4c8e5 +0 -1
  604. package/.next/cache/next-babel-loader/content-v2/sha512/5f/41/b8c815af58d3ccfc44d609df90a69e2292843ba2a2d53c9cb59178634c487d7ff15d81ed70e385f68df566835d2a16fca1bcea9f8c99ef8981abe1c57fad +0 -1
  605. package/.next/cache/next-babel-loader/content-v2/sha512/73/fa/7ef45d73108bd1628d7b21f803182f5c4687d4f1019ed4f45eb470a104904e38cd4f335a0bc721e7253fe50a03157db4780030c88d3b46434aa4f4cb36ff +0 -1
  606. package/.next/cache/next-babel-loader/content-v2/sha512/74/5a/4114a3738730a347da71facfa720dbc1a30164922ec0c2d76199e4c50934141f06a4efbb19b868f260330afd918266db292a2df232eb5f3a275a5571118d +0 -1
  607. package/.next/cache/next-babel-loader/content-v2/sha512/76/0f/940a56e6ebfb3a33a148fa7db6036710617dde2dff169ad911d55053b401d12989e6c6917fa8a3c3427e65f84acb3425d7aa9251dab0ec82201da03e34e5 +0 -1
  608. package/.next/cache/next-babel-loader/content-v2/sha512/7d/10/de9e91ae62429f7314911e5b6638aab8507e81b0dbb17f27915d3d1072e968b278399a8b3e0204d8f496ac69f5ba8e5f9bbf7d402c93ae8eccf429628fc4 +0 -1
  609. package/.next/cache/next-babel-loader/content-v2/sha512/8b/fb/ce91c4751bcb99c4023769bf18c890b3c342d5e41853d10be244a553ec88fedb9c0e6e74b911ba14f68a0675bee8c2ec7a3463d687c4f0e361966d08a7a2 +0 -1
  610. package/.next/cache/next-babel-loader/content-v2/sha512/95/ef/bc82a3a5f8a831c930b3d60a00b3aa35e254400b0401154f31e9bdbc776a28c7e28122dfd684aaaba6a718b1c23581d416e3b63fc20c598f0d853a67642b +0 -1
  611. package/.next/cache/next-babel-loader/content-v2/sha512/9c/be/9801dab2c57e20896b36f4000758b137881628a4ff321fa1ee89778ea0446436c648a7516a98ed228d9284f50d865edd70d5323be44b7e1c5372dee2e136 +0 -1
  612. package/.next/cache/next-babel-loader/content-v2/sha512/9f/2a/2b55b4845b919afde44a2f192c2538625fd3a6ec27fb16b3c2a3c6e6b8adb9d3ae1a96a1c81a4131e746a736f76ef0fcb6ba515ee3309a996042c0ca1353 +0 -1
  613. package/.next/cache/next-babel-loader/content-v2/sha512/af/67/c6ebb7d8917a3469bd7145571552571770bd7ebea2f8efd5903ab5c188ee33a05cb672a040dfd72f77e6dd648be6bedd842e98ab4cbde242552466540f97 +0 -1
  614. package/.next/cache/next-babel-loader/content-v2/sha512/b4/2e/bb9e9a8f95164056e364a1100b5c9b072f1b543c8afab0f5d15cf74f23bcf06e0ef8ef236b4d6886bbedbfde73c4e6ad2396444f24f75192e19faf014f1a +0 -1
  615. package/.next/cache/next-babel-loader/content-v2/sha512/b4/51/fc1d15bfb8cccc23cc442100a3d836af579884ebc8ec61bc0b66a29ef8e2e6954c41bf812613df2b93682e3a609f61c99c395aa66c610023bb209bd6152d +0 -1
  616. package/.next/cache/next-babel-loader/content-v2/sha512/b8/d1/67be59f7ef752370b8a340ea9aae879e28329ab9d4891efb5ac85212bdd01e042e2021a654d4deb18b4babc479b1aa9411e88f9d372ed315ac4721bea181 +0 -1
  617. package/.next/cache/next-babel-loader/content-v2/sha512/bd/2f/a510e24efea8ed33136c5e69b51869e5c4595664a4bfd95b3c2a4439fb615e4ce9867010907c35c54331369577fa48ba885ef54b7d866a73ae2f5a855204 +0 -1
  618. package/.next/cache/next-babel-loader/content-v2/sha512/d0/a8/99377939934d17edbabf3f2a9700a181f4ebcb0fd6e508fc5caccf7f7365ca35ea43667f5a921a325897eb3a08f8cf19e81a822d494f8dc36c46c741eb2d +0 -1
  619. package/.next/cache/next-babel-loader/content-v2/sha512/d3/1b/26ccd8f8b155abff6c22f24372e4995d9c934f52473c8ba1c2d79e8ed596624c6e8790da6e6b8ca15651737847fa41e66f3f1c4bca7a51f1ee4afb8ff8c6 +0 -1
  620. package/.next/cache/next-babel-loader/content-v2/sha512/d4/60/d73af57ec799fd62bc04577ca7109e7267bbcff4614dda685a7b526905efccb8877868c063fe09f3d6ee2be6e7fec5a10967fa6a9aae871b6cccede7384c +0 -1
  621. package/.next/cache/next-babel-loader/content-v2/sha512/d5/9d/6b37d540c994a825b85064d697256d0e02d34cc693ca9dbeb47a45ae29718680afbc43a7e131146f616084b4c8867406a2134c8593da6b430ff53ea01be1 +0 -1
  622. package/.next/cache/next-babel-loader/content-v2/sha512/d9/4a/eb25dacbb2a59f6101c9b9b6f3f14b5286ace794867b6ac4d6570317dff91eecc65cc696096ccb205e53991b91dd6768e0f642250a1d7082d6dc38e84fd4 +0 -1
  623. package/.next/cache/next-babel-loader/content-v2/sha512/dc/c2/35e313f3a8b4ec66612c2bfd295e0b76bce55f6e8665ec847e1ea42501d9183a80dc6f7436c714bcd1d3e6c529e9f3a19be7f88a3465a7fa19e2c407ac37 +0 -1
  624. package/.next/cache/next-babel-loader/content-v2/sha512/e8/da/f89c30cc1c6b1a847c272d464841fc2b3be02953027819a19d242fcf5fd1f992510a50f86c08bd181c13528a90f384591218815dfed726b091c115079cc6 +0 -1
  625. package/.next/cache/next-babel-loader/content-v2/sha512/ec/89/1fc35b89dc810cc7d0382a3d7484b48b269505a3ed9614c039a935552baae1cf3e68c0abea9eb447358bf69de186113cf70f1cfa088c2197cf68ccc56efa +0 -1
  626. package/.next/cache/next-babel-loader/content-v2/sha512/f2/6c/cda76b7b29325bda5acc85ca71cddcc5431f8635eb87a1e423f476525263fcb1c2de97d0da6e9d6d8455b8e726767f0d84c972d930bb8500fb6f6ae01d44 +0 -1
  627. package/.next/cache/next-babel-loader/content-v2/sha512/ff/a9/466440e03d45d645f820cbc3b66eb64e6f13cedb00bab3530f8c9b7c84e98801e39519c5ed527a8ce396c94b57560d0452a5d0eb8b30a5200d7f25e50993 +0 -1
  628. package/.next/cache/next-babel-loader/index-v5/03/ab/415f31ced452f04426477af58d6023ef73712c7cfc2aea24d086b811dba4 +0 -2
  629. package/.next/cache/next-babel-loader/index-v5/09/e9/a2c70bb4ce5336c27d9957b4d9c43e4b83710583b454ef2e1894a6acdc9e +0 -2
  630. package/.next/cache/next-babel-loader/index-v5/0b/ab/8cbe2b97fbe69f807a3c68f4dbfb639d6e73334b17fd9246a80955abdcff +0 -2
  631. package/.next/cache/next-babel-loader/index-v5/0c/20/b3d205bec056fe799e6b80fe735896624ebafab74722e0dd024aed97bd3d +0 -2
  632. package/.next/cache/next-babel-loader/index-v5/11/16/79c8e8d1a0d296b57bf3f14df77fe868778fbcc3ebb78ecf1f22900a1215 +0 -2
  633. package/.next/cache/next-babel-loader/index-v5/11/8a/f5c6f6a21c933c24407457bd589026cc0091d54c7978f7b44d0e131e5d06 +0 -2
  634. package/.next/cache/next-babel-loader/index-v5/14/89/92c47a31b6b7c28049120c663dd2433e50ad8ae53bc18fe394aef00b6885 +0 -2
  635. package/.next/cache/next-babel-loader/index-v5/20/7a/e4372f9e68af0c24dfb7b3af6ea93062066799099055bee92464ebe7255b +0 -2
  636. package/.next/cache/next-babel-loader/index-v5/21/92/b2d2a59796d7813a6be8834c1d987267363c0b174168613cd098a40b549f +0 -2
  637. package/.next/cache/next-babel-loader/index-v5/27/44/0bd5b852cab6bac9b59f31fe656ef2edbf8e952631aea699c3621d01418f +0 -2
  638. package/.next/cache/next-babel-loader/index-v5/29/58/44fa5957c8a86a23585b8b1dcdb857460e8d00f16b73f36df428f3a69769 +0 -2
  639. package/.next/cache/next-babel-loader/index-v5/2a/5a/e766c00ffd808b2339fefdff001a1cba0a74169801543a4480d5285e77e0 +0 -2
  640. package/.next/cache/next-babel-loader/index-v5/35/ad/46791bdf2feecdc9d695f30c9e95920bc491fc9bf64938d3c7349b920c1a +0 -2
  641. package/.next/cache/next-babel-loader/index-v5/3a/07/8c1be17a15b2a58aa23c6dba724abda21daf8c94d0da48b790925b955395 +0 -2
  642. package/.next/cache/next-babel-loader/index-v5/3e/3a/a34633774fe1a680e506ac32e39f687c9ad96f4dca0cb5b0138f7d539bd2 +0 -2
  643. package/.next/cache/next-babel-loader/index-v5/3f/ab/d36c6294b70cce2c9bf6d0fe8d19774d4732446979b33ac99c5663bb9ebb +0 -2
  644. package/.next/cache/next-babel-loader/index-v5/42/2f/560323e0b0c8b1230d816b33820ac26e75f338afef41dbf93df0e940480e +0 -2
  645. package/.next/cache/next-babel-loader/index-v5/43/6a/e7db694795b27e25a9d62f1e9814a2ce6239b8b10881aa27d9e48650048b +0 -2
  646. package/.next/cache/next-babel-loader/index-v5/44/e2/6a015642c71eca151fd2d62b013110d12673c941a6e85eec4c50d1368c42 +0 -2
  647. package/.next/cache/next-babel-loader/index-v5/46/6c/f279b80017870c34a6545498288ce4b3bf031fd32087952e3c90a630e4ce +0 -2
  648. package/.next/cache/next-babel-loader/index-v5/55/18/9bf7f9da85739998a5e7850056e08a28d67014315b04ffd2b22da68911dc +0 -2
  649. package/.next/cache/next-babel-loader/index-v5/5d/32/1fa0a4d0aa36b7ecbc7864a306ef8ae1ed89d8b2f73295dc53654d6efce8 +0 -2
  650. package/.next/cache/next-babel-loader/index-v5/61/00/770679c8d30ec5f87fe5e36a03b98b18dbe2cf8788f953dd750fbf0aaaaf +0 -2
  651. package/.next/cache/next-babel-loader/index-v5/70/1b/201ea8a066c0e8c683718260f7a5d523733de7d2302772d3977615631249 +0 -2
  652. package/.next/cache/next-babel-loader/index-v5/75/07/f636066a8007a88592403a530b72d22119b36e4ffe2ff6d54358ccc495bd +0 -2
  653. package/.next/cache/next-babel-loader/index-v5/77/48/a187a5362bc442ce397eabbb9674a11e621e39f8dbf0196afe8094fcf0f2 +0 -2
  654. package/.next/cache/next-babel-loader/index-v5/78/1a/65c1968af32b27b52870745fe9ced53cb1ff1071f43c52c3aadfdcf2c1b2 +0 -2
  655. package/.next/cache/next-babel-loader/index-v5/7b/54/8dc34f4ce062cf3cdd065c2caa708e24a907c67255f8c44df4093c1f0b4c +0 -2
  656. package/.next/cache/next-babel-loader/index-v5/7f/3e/bceaf281e5a5baa2a78d9e2e7cf538e974e94caaaa9996e79fa81e61ae2d +0 -2
  657. package/.next/cache/next-babel-loader/index-v5/80/6b/9bb5d98da91adc4c012786c85d2af9b58587ad20c0b85ca594750f6f4936 +0 -2
  658. package/.next/cache/next-babel-loader/index-v5/84/66/e4018f7bc014e76c74d3f24dff8b9c0da10d4b1642162122275c4866d1b8 +0 -2
  659. package/.next/cache/next-babel-loader/index-v5/8b/f7/3023ee80319317a6228a6ac3896bc040568f4c8be2f9ad502367e4e0c6b9 +0 -2
  660. package/.next/cache/next-babel-loader/index-v5/8f/42/cf4813cef3fdbcde07c4832a030aec7513edf3def4dc47ffd8296cdca57f +0 -2
  661. package/.next/cache/next-babel-loader/index-v5/9b/dd/a4cbee3778cca3bad65a4e28fbc9e75bf8c9a3886e4a398a9c5f469de2a3 +0 -2
  662. package/.next/cache/next-babel-loader/index-v5/9e/9d/41403279f8ae06df4ad43faf4670161cb575b6be2e6dce940d93e0550b0c +0 -2
  663. package/.next/cache/next-babel-loader/index-v5/a1/97/e88a691a43d0c676a1db7b8dafa765fc91278e40199843e483e965119d10 +0 -2
  664. package/.next/cache/next-babel-loader/index-v5/a3/a8/ee9f67ed82169a6d278c508a7ddcff1b53a3e84e387404b80f3722c25fa0 +0 -2
  665. package/.next/cache/next-babel-loader/index-v5/a5/4f/757d59080c17b4c433e57eb08b336d1db9158e1441b76421b7404e11717d +0 -2
  666. package/.next/cache/next-babel-loader/index-v5/ab/cb/75809e9df066354cc1de45b5b367af6e1d0f000c711147e6fef3f8b1fe30 +0 -2
  667. package/.next/cache/next-babel-loader/index-v5/ac/28/c824313f638604693a442a8d9a1dab3854c0aa0beddd76dd5700c82a6342 +0 -2
  668. package/.next/cache/next-babel-loader/index-v5/b0/f6/98b0665477830db953c15e74b9d36867abc9a5a981e2f23a96f8533d1703 +0 -2
  669. package/.next/cache/next-babel-loader/index-v5/b0/fd/83576f3ceb9432a7181f052830f9a9e0d703656c7dd0aae3924a0d4d49f0 +0 -2
  670. package/.next/cache/next-babel-loader/index-v5/b3/df/90de383dabc73494260aa6e43ccf7701d7a84e369ceba31f5128a5bb43ed +0 -2
  671. package/.next/cache/next-babel-loader/index-v5/b4/6a/9be15d7f4be6cf22cbb932c728e4304b6702969c1dbe78eaf0b4546e156c +0 -2
  672. package/.next/cache/next-babel-loader/index-v5/b7/cb/8264cb2e7f9476a2e0fc44936512bdee7b9cbcf07f0d5e57fd17f7b8fc9f +0 -2
  673. package/.next/cache/next-babel-loader/index-v5/bc/d6/9d29a0b5b3f5814f986df84da4173cf4ac37805db9a9db4c987d7ea51c80 +0 -2
  674. package/.next/cache/next-babel-loader/index-v5/c0/47/cabfdc222f86c9810be2888462eb62656a5f1ce5092434262a49c24a2a74 +0 -2
  675. package/.next/cache/next-babel-loader/index-v5/c8/60/7555a9a413e3aac1f78af9f8fe8ba1ba2c423a9943361e621f111970505a +0 -2
  676. package/.next/cache/next-babel-loader/index-v5/c9/a5/824eb6d8fafff99ffbeea21ce98a8d8f5b8e7b60c2a68e11ff578e119c70 +0 -2
  677. package/.next/cache/next-babel-loader/index-v5/c9/e9/6b91978fe928190095d87f8c3820ebb81a5b3c5d069cd8a387c1be339b8a +0 -2
  678. package/.next/cache/next-babel-loader/index-v5/d9/d6/d350ffbb6f5d2c954b7890b87f24970790e64ceb5ed0dece85e961cccfab +0 -2
  679. package/.next/cache/next-babel-loader/index-v5/e3/26/4598918358ce5a21e655b26d364baaeac42a1e7c994df7b12de4b99a5d29 +0 -2
  680. package/.next/cache/next-babel-loader/index-v5/e4/1c/79fbca6ad7e2cd35fa2934bc8b8e1ee546f242adc7a8105aba6e9e8087fe +0 -2
  681. package/.next/cache/next-babel-loader/index-v5/e6/8c/ec1e67e7047acd9d3e0b746b09b5d0708708c5575b22c228feb7c21626c6 +0 -2
  682. package/.next/cache/next-babel-loader/index-v5/e6/e5/9b56967d9029e423888ac536a27fa2088aa003f8da8f38feebd490a8d47a +0 -2
  683. package/.next/cache/next-babel-loader/index-v5/e8/cf/1b6c6c2159fded75b7b754850454da8408676482a0f853a6bbd39aa13d59 +0 -2
  684. package/.next/cache/next-babel-loader/index-v5/ec/16/d000b8ac674e1b28fae44de1ba904b324e4c066670ad59f7bb7b8c66f631 +0 -2
  685. package/.next/cache/next-babel-loader/index-v5/ef/e2/939c9932442ec7b742547ddd550aa1219b0aa87baf6ee79eb9751f503fdb +0 -2
  686. package/.next/cache/next-babel-loader/index-v5/f0/45/498c945d64e9f75d447847d636d732cb5372fda1b1aac01725bf9420e5bc +0 -2
  687. package/.next/cache/next-babel-loader/index-v5/f8/01/6aff310f066fcb15428a6444e603bb147c378182c9f226d59760a09b5746 +0 -2
  688. package/.next/cache/next-babel-loader/index-v5/f8/14/c8b0cb1034ae046133e47780d167f5b10dd0b4365500fc142d4cf206d32e +0 -2
  689. package/.next/cache/next-babel-loader/index-v5/fa/5e/c50f9e44b30ea5b5d6d4588731d09acf300253f75d641cc3d052c511a34a +0 -2
  690. package/.next/cache/next-babel-loader/index-v5/ff/a8/e1371dcacd882f523194d516606819252d40deaf5cba5e36a5fff58aaef4 +0 -2
  691. package/.next/cache/next-minifier/content-v2/sha512/89/60/b51a22f73a6fc68e9a8702f3ff33ea49ace5501e14bcca59f3fe4245f81c6a473805ec9257e06a8eb74a056c929e9e6d7a346c0be3548426d73ebf3917f0 +0 -1
  692. package/.next/cache/next-minifier/content-v2/sha512/ad/55/c2d7475b7fb8a92e28ed3def62418225a7d0b6f47a493b2d8be46f8a1ce27b9a18544c1bfbb1ed10980d0d2a5fa70e69cba94285a823c8eb14e3fa11c116 +0 -1
  693. package/.next/cache/next-minifier/content-v2/sha512/bc/27/8cf24b6f03d703fc4b4007f4fd8fe67320b63d9f2a5106434181d27bcd5c8301253b1b16d2e37883b7082cd5c9e3901ae3b0154e459a4b8367b5ff925bc9 +0 -1
  694. package/.next/cache/next-minifier/content-v2/sha512/ff/34/ca17ce001da77d81b17b10e3a0afc4443b64f4b7080496a4551ea754a2f68a81f53b4c5ee3debe5e657cf8e5f10afce264ebc4148a128e25fee1517e3399 +0 -1
  695. package/.next/cache/next-minifier/index-v5/0d/4a/01ae27c0a0e55c4176bad0cd7030a7b2b63f731c77c52f5a640642c37d91 +0 -2
  696. package/.next/cache/next-minifier/index-v5/45/ab/40afeee76b0a0d29c24c74992de6771140d3f242489a7758d266ff6e3740 +0 -2
  697. package/.next/cache/next-minifier/index-v5/95/c4/f1ca4767dc810a0f72344740218110d483b81445ac5b9ed0d60fe7984d0a +0 -2
  698. package/.next/cache/next-minifier/index-v5/e7/8d/7444f2882d16257680e6af42eb58851dd82de423fe46f1968cf5b770588e +0 -2
  699. package/.next/static/4PhTJ8NXl8ohlUei9hsYC/_buildManifest.js +0 -1
  700. package/.next/static/chunks/9173c43c67b8e6b6863c872190b4ad904108d7de.07e5b409a899ed167668.js +0 -1
  701. package/.next/static/chunks/9ce9955a8bcc07a8fd1a36edfefd3f331a5795a5.f48487964e0ee9ddbd25.js +0 -1
  702. package/.next/static/chunks/pages/index-6c8dacfc26bd71e7e035.js +0 -1
  703. package/public/favicon-16x16.png +0 -0
  704. package/public/favicon-32x32.png +0 -0
  705. package/src/components/Button/Content.tsx +0 -19
  706. package/src/components/Button/Link.tsx +0 -19
  707. package/src/components/Results/Header.tsx +0 -99
  708. package/src/components/SquareButton/Content.tsx +0 -19
@@ -1 +0,0 @@
1
- {"code":"(window.webpackJsonp_N_E=window.webpackJsonp_N_E||[]).push([[4],{\"1zWx\":function(e,t,n){e.exports={button:\"Button_button__NTtqi\",content:\"Button_content__1ng3a\",icon:\"Button_icon__3NvAw\",label:\"Button_label__2kVgE\"}},\"2W6z\":function(e,t,n){\"use strict\";var o=function(){};e.exports=o},\"2rMq\":function(e,t,n){var o;!function(){\"use strict\";var r=!(\"undefined\"===typeof window||!window.document||!window.document.createElement),a={canUseDOM:r,canUseWorkers:\"undefined\"!==typeof Worker,canUseEventListeners:r&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:r&&!!window.screen};void 0===(o=function(){return a}.call(t,n,t,e))||(e.exports=o)}()},\"2zs7\":function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.canUseDOM=void 0;var o,r=n(\"2rMq\");var a=((o=r)&&o.__esModule?o:{default:o}).default,i=a.canUseDOM?window.HTMLElement:{};t.canUseDOM=a.canUseDOM;t.default=i},\"41Wr\":function(e,t,n){e.exports={option:\"LocaleSetting_option__2xt_o\",flag:\"LocaleSetting_flag__1pprE\",checked:\"LocaleSetting_checked__3XJSh\",label:\"LocaleSetting_label__2rj6n\",es:\"LocaleSetting_es__3avX3\",fr:\"LocaleSetting_fr__25G9k\",gb:\"LocaleSetting_gb__qVZSX\",pl:\"LocaleSetting_pl__YUmDs\",us:\"LocaleSetting_us__30qoJ\"}},\"4BeY\":function(e,t,n){(function(t){var n;n=function(){\"use strict\";var e=function(e){var t=e.id,n=e.viewBox,o=e.content;this.id=t,this.viewBox=n,this.content=o};function n(e,t){return e(t={exports:{}},t.exports),t.exports}e.prototype.stringify=function(){return this.content},e.prototype.toString=function(){return this.stringify()},e.prototype.destroy=function(){var e=this;[\"id\",\"viewBox\",\"content\"].forEach((function(t){return delete e[t]}))},\"undefined\"!==typeof window?window:\"undefined\"!==typeof t||\"undefined\"!==typeof self&&self;var o=n((function(e,t){e.exports=function(){function e(e){return e&&\"object\"===typeof e&&\"[object RegExp]\"!==Object.prototype.toString.call(e)&&\"[object Date]\"!==Object.prototype.toString.call(e)}function t(e){return Array.isArray(e)?[]:{}}function n(n,o){return o&&!0===o.clone&&e(n)?a(t(n),n,o):n}function o(t,o,r){var i=t.slice();return o.forEach((function(o,s){\"undefined\"===typeof i[s]?i[s]=n(o,r):e(o)?i[s]=a(t[s],o,r):-1===t.indexOf(o)&&i.push(n(o,r))})),i}function r(t,o,r){var i={};return e(t)&&Object.keys(t).forEach((function(e){i[e]=n(t[e],r)})),Object.keys(o).forEach((function(s){e(o[s])&&t[s]?i[s]=a(t[s],o[s],r):i[s]=n(o[s],r)})),i}function a(e,t,a){var i=Array.isArray(t),s=(a||{arrayMerge:o}).arrayMerge||o;return i?Array.isArray(e)?s(e,t,a):n(t,a):r(e,t,a)}return a.all=function(e,t){if(!Array.isArray(e)||e.length<2)throw new Error(\"first argument should be an array with at least two elements\");return e.reduce((function(e,n){return a(e,n,t)}))},a}()})),r=n((function(e,t){t.default={svg:{name:\"xmlns\",uri:\"http://www.w3.org/2000/svg\"},xlink:{name:\"xmlns:xlink\",uri:\"http://www.w3.org/1999/xlink\"}},e.exports=t.default})),a=r.svg,i=r.xlink,s={};s[a.name]=a.uri,s[i.name]=i.uri;var c=function(e,t){return void 0===e&&(e=\"\"),\"<svg \"+function(e){return Object.keys(e).map((function(t){return t+'=\"'+e[t].toString().replace(/\"/g,\"&quot;\")+'\"'})).join(\" \")}(o(s,t||{}))+\">\"+e+\"</svg>\"};return function(e){function t(){e.apply(this,arguments)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={isMounted:{}};return n.isMounted.get=function(){return!!this.node},t.createFromExistingNode=function(e){return new t({id:e.getAttribute(\"id\"),viewBox:e.getAttribute(\"viewBox\"),content:e.outerHTML})},t.prototype.destroy=function(){this.isMounted&&this.unmount(),e.prototype.destroy.call(this)},t.prototype.mount=function(e){if(this.isMounted)return this.node;var t=\"string\"===typeof e?document.querySelector(e):e,n=this.render();return this.node=n,t.appendChild(n),n},t.prototype.render=function(){var e=this.stringify();return function(e){var t=!!document.importNode,n=(new DOMParser).parseFromString(e,\"image/svg+xml\").documentElement;return t?document.importNode(n,!0):n}(c(e)).childNodes[0]},t.prototype.unmount=function(){this.node.parentNode.removeChild(this.node)},Object.defineProperties(t.prototype,n),t}(e)},e.exports=n()}).call(this,n(\"yLpj\"))},\"5d2k\":function(e,t,n){e.exports={squareButton:\"SquareButton_squareButton__3XZzH\",label:\"SquareButton_label__2lvIX\",content:\"SquareButton_content__2e8pD\",icon:\"SquareButton_icon__2HxOh\"}},\"99so\":function(e,t,n){e.exports={key:\"Key_key__2Quc4\"}},\"9rZX\":function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var o,r=n(\"qFS3\"),a=(o=r)&&o.__esModule?o:{default:o};t.default=a.default,e.exports=t.default},\"A/bs\":function(e,t,n){e.exports={option:\"ConfigSetting_option__2T-wW\",label:\"ConfigSetting_label__3tZD6\"}},BdcD:function(e,t,n){e.exports={radio:\"Radio_radio__32uSc\",icon:\"Radio_icon__dTLfl\",checked:\"Radio_checked__1ad9P\",input:\"Radio_input__2cGaT\",content:\"Radio_content__3psCG\"}},CjmZ:function(e,t,n){e.exports={cell:\"Cell_cell__3wKgm\",bonusCharacter1:\"Cell_bonusCharacter1__34xQ_\",bonusCharacter2:\"Cell_bonusCharacter2__1xH4M\",bonusCharacter3:\"Cell_bonusCharacter3__3xUsl\",bonusCharacter5:\"Cell_bonusCharacter5__2nWfH\",bonusCharacterMultiplier2:\"Cell_bonusCharacterMultiplier2__1wTiA\",bonusCharacterMultiplier3:\"Cell_bonusCharacterMultiplier3__1shAb\",bonusWord2:\"Cell_bonusWord2__qdCLX\",bonusWord3:\"Cell_bonusWord3__sSJti\",characterPoints1:\"Cell_characterPoints1__3rhFH\",characterPoints2:\"Cell_characterPoints2__2sud4\",characterPoints3:\"Cell_characterPoints3__1v_ZX\",characterPoints5:\"Cell_characterPoints5__Hen_b\",candidate:\"Cell_candidate__13l8_\",actions:\"Cell_actions__3JTry\",action:\"Cell_action__3RPdm\",toggleDirection:\"Cell_toggleDirection__5rp_g\",right:\"Cell_right__3g3qY\",blank:\"Cell_blank__3l4Pq\",active:\"Cell_active__2O7iE\"}},EIE9:function(e,t,n){e.exports={dictionaryInput:\"DictionaryInput_dictionaryInput__U7DaM\",input:\"DictionaryInput_input__2r5WW\"}},IH9G:function(e,t,n){e.exports={mapping:\"Mapping_mapping__1ZcKV\",description:\"Mapping_description__Mbn8w\",keys:\"Mapping_keys__3Vf5K\",group:\"Mapping_group__2WX5v\",plus:\"Mapping_plus__1j3oP\"}},IQtc:function(e,t,n){e.exports={results:\"Results_results__x8VdK\",emptyState:\"Results_emptyState__2-LxF\",list:\"Results_list__1B8VD\",outdated:\"Results_outdated__3nWlA\",header:\"Results_header__noJ3I\",headerButton:\"Results_headerButton__1N5Kw\",headerButtonLabel:\"Results_headerButtonLabel__2QiqD\",result:\"Results_result__1y1Jv\",resultContent:\"Results_resultContent__2StBW\",word:\"Results_word__1zvOl\",cell:\"Results_cell__1cXgg\",stat:\"Results_stat__3xHhu\",points:\"Results_points__wnPy8\",outdatedButton:\"Results_outdatedButton__2uCmc\",sortIcon:\"Results_sortIcon__2BYB5\",input:\"Results_input__2lOjT\"}},IaFt:function(e,t,n){(function(t){var n;n=function(){\"use strict\";function e(e,t){return e(t={exports:{}},t.exports),t.exports}\"undefined\"!==typeof window?window:\"undefined\"!==typeof t||\"undefined\"!==typeof self&&self;var n=e((function(e,t){e.exports=function(){function e(e){return e&&\"object\"===typeof e&&\"[object RegExp]\"!==Object.prototype.toString.call(e)&&\"[object Date]\"!==Object.prototype.toString.call(e)}function t(e){return Array.isArray(e)?[]:{}}function n(n,o){return o&&!0===o.clone&&e(n)?a(t(n),n,o):n}function o(t,o,r){var i=t.slice();return o.forEach((function(o,s){\"undefined\"===typeof i[s]?i[s]=n(o,r):e(o)?i[s]=a(t[s],o,r):-1===t.indexOf(o)&&i.push(n(o,r))})),i}function r(t,o,r){var i={};return e(t)&&Object.keys(t).forEach((function(e){i[e]=n(t[e],r)})),Object.keys(o).forEach((function(s){e(o[s])&&t[s]?i[s]=a(t[s],o[s],r):i[s]=n(o[s],r)})),i}function a(e,t,a){var i=Array.isArray(t),s=(a||{arrayMerge:o}).arrayMerge||o;return i?Array.isArray(e)?s(e,t,a):n(t,a):r(e,t,a)}return a.all=function(e,t){if(!Array.isArray(e)||e.length<2)throw new Error(\"first argument should be an array with at least two elements\");return e.reduce((function(e,n){return a(e,n,t)}))},a}()})),o=e((function(e,t){t.default={svg:{name:\"xmlns\",uri:\"http://www.w3.org/2000/svg\"},xlink:{name:\"xmlns:xlink\",uri:\"http://www.w3.org/1999/xlink\"}},e.exports=t.default})),r=o.svg,a=o.xlink,i={};i[r.name]=r.uri,i[a.name]=a.uri;var s,c=function(e,t){return void 0===e&&(e=\"\"),\"<svg \"+function(e){return Object.keys(e).map((function(t){return t+'=\"'+e[t].toString().replace(/\"/g,\"&quot;\")+'\"'})).join(\" \")}(n(i,t||{}))+\">\"+e+\"</svg>\"},l=o.svg,u=o.xlink,d={attrs:(s={style:[\"position: absolute\",\"width: 0\",\"height: 0\"].join(\"; \"),\"aria-hidden\":\"true\"},s[l.name]=l.uri,s[u.name]=u.uri,s)},f=function(e){this.config=n(d,e||{}),this.symbols=[]};f.prototype.add=function(e){var t=this.symbols,n=this.find(e.id);return n?(t[t.indexOf(n)]=e,!1):(t.push(e),!0)},f.prototype.remove=function(e){var t=this.symbols,n=this.find(e);return!!n&&(t.splice(t.indexOf(n),1),n.destroy(),!0)},f.prototype.find=function(e){return this.symbols.filter((function(t){return t.id===e}))[0]||null},f.prototype.has=function(e){return null!==this.find(e)},f.prototype.stringify=function(){var e=this.config.attrs,t=this.symbols.map((function(e){return e.stringify()})).join(\"\");return c(t,e)},f.prototype.toString=function(){return this.stringify()},f.prototype.destroy=function(){this.symbols.forEach((function(e){return e.destroy()}))};var p=function(e){var t=e.id,n=e.viewBox,o=e.content;this.id=t,this.viewBox=n,this.content=o};p.prototype.stringify=function(){return this.content},p.prototype.toString=function(){return this.stringify()},p.prototype.destroy=function(){var e=this;[\"id\",\"viewBox\",\"content\"].forEach((function(t){return delete e[t]}))};var h=function(e){var t=!!document.importNode,n=(new DOMParser).parseFromString(e,\"image/svg+xml\").documentElement;return t?document.importNode(n,!0):n},m=function(e){function t(){e.apply(this,arguments)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={isMounted:{}};return n.isMounted.get=function(){return!!this.node},t.createFromExistingNode=function(e){return new t({id:e.getAttribute(\"id\"),viewBox:e.getAttribute(\"viewBox\"),content:e.outerHTML})},t.prototype.destroy=function(){this.isMounted&&this.unmount(),e.prototype.destroy.call(this)},t.prototype.mount=function(e){if(this.isMounted)return this.node;var t=\"string\"===typeof e?document.querySelector(e):e,n=this.render();return this.node=n,t.appendChild(n),n},t.prototype.render=function(){var e=this.stringify();return h(c(e)).childNodes[0]},t.prototype.unmount=function(){this.node.parentNode.removeChild(this.node)},Object.defineProperties(t.prototype,n),t}(p),b={autoConfigure:!0,mountTo:\"body\",syncUrlsWithBaseTag:!1,listenLocationChangeEvent:!0,locationChangeEvent:\"locationChange\",locationChangeAngularEmitter:!1,usagesToUpdate:\"use[*|href]\",moveGradientsOutsideSymbol:!1},v=function(e){return Array.prototype.slice.call(e,0)},g=function(){return/firefox/i.test(navigator.userAgent)},y=function(){return/msie/i.test(navigator.userAgent)||/trident/i.test(navigator.userAgent)},O=function(){return/edge/i.test(navigator.userAgent)},j=function(e){return(e||window.location.href).split(\"#\")[0]},_=function(e){angular.module(\"ng\").run([\"$rootScope\",function(t){t.$on(\"$locationChangeSuccess\",(function(t,n,o){!function(e,t){var n=document.createEvent(\"CustomEvent\");n.initCustomEvent(e,!1,!1,t),window.dispatchEvent(n)}(e,{oldUrl:o,newUrl:n})}))}])},w=function(e,t){return void 0===t&&(t=\"linearGradient, radialGradient, pattern, mask, clipPath\"),v(e.querySelectorAll(\"symbol\")).forEach((function(e){v(e.querySelectorAll(t)).forEach((function(t){e.parentNode.insertBefore(t,e)}))})),e},A=o.xlink.uri,x=\"xlink:href\",C=/[{}|\\\\\\^\\[\\]`\"<>]/g;function S(e){return e.replace(C,(function(e){return\"%\"+e[0].charCodeAt(0).toString(16).toUpperCase()}))}var E,M=[\"clipPath\",\"colorProfile\",\"src\",\"cursor\",\"fill\",\"filter\",\"marker\",\"markerStart\",\"markerMid\",\"markerEnd\",\"mask\",\"stroke\",\"style\"],N=M.map((function(e){return\"[\"+e+\"]\"})).join(\",\"),k=function(e,t,n,o){var r=S(n),a=S(o);(function(e,t){return v(e).reduce((function(e,n){if(!n.attributes)return e;var o=v(n.attributes),r=t?o.filter(t):o;return e.concat(r)}),[])})(e.querySelectorAll(N),(function(e){var t=e.localName,n=e.value;return-1!==M.indexOf(t)&&-1!==n.indexOf(\"url(\"+r)})).forEach((function(e){return e.value=e.value.replace(new RegExp(r.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\"),\"g\"),a)})),function(e,t,n){v(e).forEach((function(e){var o=e.getAttribute(x);if(o&&0===o.indexOf(t)){var r=o.replace(t,n);e.setAttributeNS(A,x,r)}}))}(t,r,a)},D=\"mount\",R=\"symbol_mount\",B=function(e){function t(t){var o=this;void 0===t&&(t={}),e.call(this,n(b,t));var r,a=(r=r||Object.create(null),{on:function(e,t){(r[e]||(r[e]=[])).push(t)},off:function(e,t){r[e]&&r[e].splice(r[e].indexOf(t)>>>0,1)},emit:function(e,t){(r[e]||[]).map((function(e){e(t)})),(r[\"*\"]||[]).map((function(n){n(e,t)}))}});this._emitter=a,this.node=null;var i=this.config;if(i.autoConfigure&&this._autoConfigure(t),i.syncUrlsWithBaseTag){var s=document.getElementsByTagName(\"base\")[0].getAttribute(\"href\");a.on(D,(function(){return o.updateUrls(\"#\",s)}))}var c=this._handleLocationChange.bind(this);this._handleLocationChange=c,i.listenLocationChangeEvent&&window.addEventListener(i.locationChangeEvent,c),i.locationChangeAngularEmitter&&_(i.locationChangeEvent),a.on(D,(function(e){i.moveGradientsOutsideSymbol&&w(e)})),a.on(R,(function(e){i.moveGradientsOutsideSymbol&&w(e.parentNode),(y()||O())&&function(e){var t=[];v(e.querySelectorAll(\"style\")).forEach((function(e){e.textContent+=\"\",t.push(e)}))}(e)}))}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var o={isMounted:{}};return o.isMounted.get=function(){return!!this.node},t.prototype._autoConfigure=function(e){var t=this.config;\"undefined\"===typeof e.syncUrlsWithBaseTag&&(t.syncUrlsWithBaseTag=\"undefined\"!==typeof document.getElementsByTagName(\"base\")[0]),\"undefined\"===typeof e.locationChangeAngularEmitter&&(t.locationChangeAngularEmitter=\"undefined\"!==typeof window.angular),\"undefined\"===typeof e.moveGradientsOutsideSymbol&&(t.moveGradientsOutsideSymbol=g())},t.prototype._handleLocationChange=function(e){var t=e.detail,n=t.oldUrl,o=t.newUrl;this.updateUrls(n,o)},t.prototype.add=function(t){var n=e.prototype.add.call(this,t);return this.isMounted&&n&&(t.mount(this.node),this._emitter.emit(R,t.node)),n},t.prototype.attach=function(e){var t=this,n=this;if(n.isMounted)return n.node;var o=\"string\"===typeof e?document.querySelector(e):e;return n.node=o,this.symbols.forEach((function(e){e.mount(n.node),t._emitter.emit(R,e.node)})),v(o.querySelectorAll(\"symbol\")).forEach((function(e){var t=m.createFromExistingNode(e);t.node=e,n.add(t)})),this._emitter.emit(D,o),o},t.prototype.destroy=function(){var e=this,t=e.config,n=e.symbols,o=e._emitter;n.forEach((function(e){return e.destroy()})),o.off(\"*\"),window.removeEventListener(t.locationChangeEvent,this._handleLocationChange),this.isMounted&&this.unmount()},t.prototype.mount=function(e,t){void 0===e&&(e=this.config.mountTo),void 0===t&&(t=!1);var n=this;if(n.isMounted)return n.node;var o=\"string\"===typeof e?document.querySelector(e):e,r=n.render();return this.node=r,t&&o.childNodes[0]?o.insertBefore(r,o.childNodes[0]):o.appendChild(r),this._emitter.emit(D,r),r},t.prototype.render=function(){return h(this.stringify())},t.prototype.unmount=function(){this.node.parentNode.removeChild(this.node)},t.prototype.updateUrls=function(e,t){if(!this.isMounted)return!1;var n=document.querySelectorAll(this.config.usagesToUpdate);return k(this.node,n,j(e)+\"#\",j(t)+\"#\"),!0},Object.defineProperties(t.prototype,o),t}(f),P=e((function(e){e.exports=function(){var e,t=[],n=document,o=n.documentElement.doScroll,r=\"DOMContentLoaded\",a=(o?/^loaded|^c/:/^loaded|^i|^c/).test(n.readyState);return a||n.addEventListener(r,e=function(){for(n.removeEventListener(r,e),a=1;e=t.shift();)e()}),function(e){a?setTimeout(e,0):t.push(e)}}()})),I=\"__SVG_SPRITE_NODE__\";window.__SVG_SPRITE__?E=window.__SVG_SPRITE__:(E=new B({attrs:{id:I,\"aria-hidden\":\"true\"}}),window.__SVG_SPRITE__=E);var G=function(){var e=document.getElementById(I);e?E.attach(e):E.mount(document.body,!0)};return document.body?G():P(G),E},e.exports=n()}).call(this,n(\"yLpj\"))},Jsr2:function(e,t,n){e.exports={emptyState:\"EmptyState_emptyState__3XIlm\",tiles:\"EmptyState_tiles__2hoJY\"}},JxyW:function(e,t,n){e.exports={character:\"Character_character__qmkor\",finished:\"Character_finished__11v6G\",overused:\"Character_overused__2l2ul\",tile:\"Character_tile__1C3Oq\",count:\"Character_count__2pNlL\"}},Nhdc:function(e,t,n){\"use strict\";n.d(t,\"a\",(function(){return Ge})),n.d(t,\"b\",(function(){return bt})),n.d(t,\"c\",(function(){return yt})),n.d(t,\"d\",(function(){return $t})),n.d(t,\"e\",(function(){return tn})),n.d(t,\"f\",(function(){return rn})),n.d(t,\"g\",(function(){return dn})),n.d(t,\"h\",(function(){return mn})),n.d(t,\"i\",(function(){return An})),n.d(t,\"j\",(function(){return Qn})),n.d(t,\"k\",(function(){return ho})),n.d(t,\"l\",(function(){return vo})),n.d(t,\"m\",(function(){return le})),n.d(t,\"n\",(function(){return _o}));var o=n(\"nKUr\"),r=n(\"ODXe\"),a=n(\"q1tI\"),i=n(\"8+rz\"),s=n(\"TSYQ\"),c=n.n(s),l=n(\"UE3f\"),u=n.n(l),d=n(\"U5qN\"),f=n(\"/MKj\"),p=n(\"psLn\"),h=n(\"rePB\"),m=n(\"4BeY\"),b=n.n(m),v=n(\"IaFt\"),g=n.n(v),y=new b.a({id:\"arrowDown\",use:\"arrowDown-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"arrowDown\">\\n <path d=\"M8 1a.5.5 0 0 1 .5.5v11.793l3.146-3.147a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 .708-.708L7.5 13.293V1.5A.5.5 0 0 1 8 1z\" fill=\"currentColor\" fill-rule=\"evenodd\" />\\n</symbol>'}),O=(g.a.add(y),y),j=new b.a({id:\"arrowLeft\",use:\"arrowLeft-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"arrowLeft\">\\n <path d=\"M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8z\" fill=\"currentColor\" fill-rule=\"evenodd\" />\\n</symbol>'}),_=(g.a.add(j),j),w=new b.a({id:\"arrowRight\",use:\"arrowRight-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"arrowRight\">\\n <path d=\"M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8z\" fill=\"currentColor\" fill-rule=\"evenodd\" />\\n</symbol>'}),A=(g.a.add(w),w),x=new b.a({id:\"arrowUp\",use:\"arrowUp-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"arrowUp\">\\n <path d=\"M8 15a.5.5 0 0 0 .5-.5V2.707l3.146 3.147a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 1 0 .708.708L7.5 2.707V14.5a.5.5 0 0 0 .5.5z\" fill=\"currentColor\" fill-rule=\"evenodd\" />\\n</symbol>'}),C=(g.a.add(x),x),S=new b.a({id:\"checkboxChecked\",use:\"checkboxChecked-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"checkboxChecked\">\\n <path d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm10.03 4.97a.75.75 0 0 1 .011 1.05l-3.992 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.75.75 0 0 1 1.08-.022z\" fill=\"currentColor\" />\\n</symbol>'}),E=(g.a.add(S),new b.a({id:\"checkboxEmpty\",use:\"checkboxEmpty-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"checkboxEmpty\">\\n <path d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\" fill=\"currentColor\" />\\n</symbol>'})),M=(g.a.add(E),new b.a({id:\"cog\",use:\"cog-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"cog\">\\n <path d=\"M9.405 1.05c-.413-1.4-2.397-1.4-2.81 0l-.1.34a1.464 1.464 0 0 1-2.105.872l-.31-.17c-1.283-.698-2.686.705-1.987 1.987l.169.311c.446.82.023 1.841-.872 2.105l-.34.1c-1.4.413-1.4 2.397 0 2.81l.34.1a1.464 1.464 0 0 1 .872 2.105l-.17.31c-.698 1.283.705 2.686 1.987 1.987l.311-.169a1.464 1.464 0 0 1 2.105.872l.1.34c.413 1.4 2.397 1.4 2.81 0l.1-.34a1.464 1.464 0 0 1 2.105-.872l.31.17c1.283.698 2.686-.705 1.987-1.987l-.169-.311a1.464 1.464 0 0 1 .872-2.105l.34-.1c1.4-.413 1.4-2.397 0-2.81l-.34-.1a1.464 1.464 0 0 1-.872-2.105l.17-.31c.698-1.283-.705-2.686-1.987-1.987l-.311.169a1.464 1.464 0 0 1-2.105-.872l-.1-.34zM8 10.93a2.929 2.929 0 1 1 0-5.86 2.929 2.929 0 0 1 0 5.858z\" fill=\"currentColor\" />\\n</symbol>'})),N=(g.a.add(M),M),k=new b.a({id:\"cross\",use:\"cross-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"cross\">\\n <path d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm3.354 4.646L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708z\" fill=\"currentColor\" />\\n</symbol>'}),D=(g.a.add(k),k),R=new b.a({id:\"dashCircleFill\",use:\"dashCircleFill-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"dashCircleFill\">\\n <path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7z\" fill=\"currentColor\" />\\n</symbol>'}),B=(g.a.add(R),R),P=new b.a({id:\"eraser\",use:\"eraser-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"eraser\">\\n <path d=\"M8.086 2.207a2 2 0 0 1 2.828 0l3.879 3.879a2 2 0 0 1 0 2.828l-5.5 5.5A2 2 0 0 1 7.879 15H5.12a2 2 0 0 1-1.414-.586l-2.5-2.5a2 2 0 0 1 0-2.828l6.879-6.879zm.66 11.34L3.453 8.254 1.914 9.793a1 1 0 0 0 0 1.414l2.5 2.5a1 1 0 0 0 .707.293H7.88a1 1 0 0 0 .707-.293l.16-.16z\" fill=\"currentColor\" />\\n</symbol>'}),I=(g.a.add(P),P),G=new b.a({id:\"flagEs\",use:\"flagEs-usage\",viewBox:\"0 0 1280 853\",content:'<symbol xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 1280 853\" id=\"flagEs\"> <image id=\"flagEs_image0\" width=\"1280\" height=\"853\" x=\"0\" y=\"0\" xlink:href=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABQAAAANVAgMAAABaGbsaAAAABGdBTUEAALGPC/xhBQAAACBjSFJN\\nAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEXGCx74rwP/xAD///8H\\ncjGDAAAAAWJLR0QDEQxM8gAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAAd0SU1FB+UCFwAsE4DcNqcA\\nAAPBSURBVHja7dAxAQAwEAOhmHyTVVkRt4IENgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALYj2SMRGAmMBEYCI4GRwEhgJDAS\\nGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhg\\nJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GR\\nwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYC\\nI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmM\\nBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDAS\\nGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhg\\nJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GR\\nwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYC\\nI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmM\\nBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDAS\\nGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhg\\nJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GR\\nwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYC\\nI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDDakQwAAAAAAAAAAAAAAAAAAAAA\\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIDtAwXRsbDe\\nnzaLAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTAyLTIzVDAwOjQ0OjE5KzAzOjAwYEEZrQAAACV0\\nRVh0ZGF0ZTptb2RpZnkAMjAyMS0wMi0yM1QwMDo0NDoxOSswMzowMBEcoREAAAAASUVORK5CYII=\"></image>\\n</symbol>'}),T=(g.a.add(G),G),L=new b.a({id:\"flagFr\",use:\"flagFr-usage\",viewBox:\"0 0 24 15\",content:'<symbol viewBox=\"0 0 24 15\" xmlns=\"http://www.w3.org/2000/svg\" id=\"flagFr\">\\n <rect width=\"8\" height=\"15\" fill=\"#002395\" x=\"0 \" />\\n <rect width=\"8\" height=\"15\" fill=\"#FFFFFF\" x=\"8 \" />\\n <rect width=\"8\" height=\"15\" fill=\"#ED2939\" x=\"16 \" />\\n</symbol>'}),F=(g.a.add(L),L),z=new b.a({id:\"flagGb\",use:\"flagGb-usage\",viewBox:\"0 0 60 30\",content:'<symbol viewBox=\"0 0 60 30\" xmlns=\"http://www.w3.org/2000/svg\" id=\"flagGb\">\\n <clipPath id=\"flagGb_t\">\\n <path d=\"M30,15 h30 v15 z v15 h-30 z h-30 v-15 z v-15 h30 z\" />\\n </clipPath>\\n <path d=\"M0,0 v30 h60 v-30 z\" fill=\"#00247d\" />\\n <path d=\"M0,0 L60,30 M60,0 L0,30\" stroke=\"#fff\" stroke-width=\"6\" />\\n <path d=\"M0,0 L60,30 M60,0 L0,30\" clipPath=\"url(#flagGb_t)\" stroke=\"#cf142b\" stroke-width=\"4\" />\\n <path d=\"M30,0 v30 M0,15 h60\" stroke=\"#fff\" stroke-width=\"10\" />\\n <path d=\"M30,0 v30 M0,15 h60\" stroke=\"#cf142b\" stroke-width=\"6\" />\\n</symbol>'}),U=(g.a.add(z),z),W=new b.a({id:\"flagPl\",use:\"flagPl-usage\",viewBox:\"0 0 16 10\",content:'<symbol viewBox=\"0 0 16 10\" xmlns=\"http://www.w3.org/2000/svg\" id=\"flagPl\">\\n <rect width=\"16\" height=\"10\" fill=\"#fff\" />\\n <rect width=\"16\" height=\"5\" fill=\"#dc143c\" y=\"5\" />\\n</symbol>'}),Y=(g.a.add(W),W),q=new b.a({id:\"flagUs\",use:\"flagUs-usage\",viewBox:\"0 0 7410 3900\",content:'<symbol viewBox=\"0 0 7410 3900\" xmlns=\"http://www.w3.org/2000/svg\" id=\"flagUs\">\\n <rect width=\"7410\" height=\"3900\" fill=\"#b22234\" />\\n <path d=\"M0,450H7410m0,600H0m0,600H7410m0,600H0m0,600H7410m0,600H0\" stroke=\"#fff\" stroke-width=\"300\" />\\n <rect width=\"2964\" height=\"2100\" fill=\"#3c3b6e\" />\\n <g fill=\"#fff\">\\n <g id=\"flagUs_s18\">\\n <g id=\"flagUs_s9\">\\n <g id=\"flagUs_s5\">\\n <g id=\"flagUs_s4\">\\n <path id=\"flagUs_s\" d=\"M247,90 317.534230,307.082039 132.873218,172.917961H361.126782L176.465770,307.082039z\" />\\n <use xlink:href=\"#flagUs_s\" y=\"420\" />\\n <use xlink:href=\"#flagUs_s\" y=\"840\" />\\n <use xlink:href=\"#flagUs_s\" y=\"1260\" />\\n </g>\\n <use xlink:href=\"#flagUs_s\" y=\"1680\" />\\n </g>\\n <use xlink:href=\"#flagUs_s4\" x=\"247\" y=\"210\" />\\n </g>\\n <use xlink:href=\"#flagUs_s9\" x=\"494\" />\\n </g>\\n <use xlink:href=\"#flagUs_s18\" x=\"988\" />\\n <use xlink:href=\"#flagUs_s9\" x=\"1976\" />\\n <use xlink:href=\"#flagUs_s5\" x=\"2470\" />\\n </g>\\n <clipPath id=\"flagUs_t\">\\n <path d=\"M30,15 h30 v15 z v15 h-30 z h-30 v-15 z v-15 h30 z\" />\\n </clipPath>\\n <path d=\"M0,0 v30 h60 v-30 z\" fill=\"#00247d\" />\\n <path d=\"M0,0 L60,30 M60,0 L0,30\" stroke=\"#fff\" stroke-width=\"6\" />\\n <path d=\"M0,0 L60,30 M60,0 L0,30\" clipPath=\"url(#flagUs_t)\" stroke=\"#cf142b\" stroke-width=\"4\" />\\n <path d=\"M30,0 v30 M0,15 h60\" stroke=\"#fff\" stroke-width=\"10\" />\\n <path d=\"M30,0 v30 M0,15 h60\" stroke=\"#cf142b\" stroke-width=\"6\" />\\n</symbol>'}),J=(g.a.add(q),q),K=new b.a({id:\"github\",use:\"github-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"github\">\\n <path d=\"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z\" fill=\"currentColor\" />\\n</symbol>'}),V=(g.a.add(K),K),H=new b.a({id:\"keyboard\",use:\"keyboard-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"keyboard\">\\n <path d=\"M0 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V6zm13 .25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM2.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 3 8.75v-.5A.25.25 0 0 0 2.75 8h-.5zM4 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 5 8.75v-.5A.25.25 0 0 0 4.75 8h-.5a.25.25 0 0 0-.25.25zM6.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 7 8.75v-.5A.25.25 0 0 0 6.75 8h-.5zM8 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 9 8.75v-.5A.25.25 0 0 0 8.75 8h-.5a.25.25 0 0 0-.25.25zM13.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zm0 2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zm-3-2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-1.5zm.75 2.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM11.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zM9 6.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5A.25.25 0 0 0 9.75 6h-.5a.25.25 0 0 0-.25.25zM7.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 8 6.75v-.5A.25.25 0 0 0 7.75 6h-.5zM5 6.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 6 6.75v-.5A.25.25 0 0 0 5.75 6h-.5a.25.25 0 0 0-.25.25zM2.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5A.25.25 0 0 0 4 6.75v-.5A.25.25 0 0 0 3.75 6h-1.5zM2 10.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM4.25 10a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h5.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-5.5z\" fill=\"currentColor\" />\\n</symbol>'}),Q=(g.a.add(H),H),X=new b.a({id:\"play\",use:\"play-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"play\">\\n <path d=\"M11.596 8.697l-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.692-1.01 1.233-.696l6.363 3.692a.802.802 0 0 1 0 1.393z\" fill=\"currentColor\" />\\n</symbol>'}),Z=(g.a.add(X),X),$=new b.a({id:\"sack\",use:\"sack-usage\",viewBox:\"0 0 24 24\",content:'<symbol viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" id=\"sack\">\\n <path d=\"M16,9C20,11 21,18 21,18C21,18 22,22 16,22C10,22 8,22 8,22C2,22 3,18 3,18C3,18 4,11 8,9M14,4L12,2L10,4L6,2L8,7H16L18,2L14,4Z\" fill=\"currentColor\" />\\n</symbol>'}),ee=(g.a.add($),$),te=new b.a({id:\"sortDown\",use:\"sortDown-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"sortDown\">\\n <path d=\"M3.5 2.5a.5.5 0 0 0-1 0v8.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L3.5 11.293V2.5zm3.5 1a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z\" fill=\"currentColor\" />\\n</symbol>'}),ne=(g.a.add(te),te),oe=new b.a({id:\"sortUp\",use:\"sortUp-usage\",viewBox:\"0 0 16 16\",content:'<symbol viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\" id=\"sortUp\">\\n <path d=\"M3.5 12.5a.5.5 0 0 1-1 0V3.707L1.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L3.5 3.707V12.5zm3.5-9a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z\" fill=\"currentColor\" />\\n</symbol>'}),re=(g.a.add(oe),oe),ae=n(\"zLVn\");function ie(e,t){if(null==e)return{};var n,o,r=Object(ae.a)(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++)n=a[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function se(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function ce(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?se(Object(n),!0).forEach((function(t){Object(h.a)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):se(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var le=function(e){var t=e.icon,n=ie(e,[\"icon\"]);return Object(o.jsx)(\"svg\",ce(ce({},n),{},{children:Object(o.jsx)(\"use\",{xlinkHref:\"#\".concat(t.id)})}))},ue=n(\"r/Hp\"),de=n.n(ue),fe=function(e){return e.preventDefault()},pe=function(e){var t,n=e.autoFocus,r=e.canShowPoints,a=e.character,i=e.className,s=e.disabled,l=e.highlighted,u=e.inputRef,d=e.inputStyle,f=e.isBlank,p=e.placeholder,m=e.points,b=e.pointsStyle,v=e.raised,g=e.style,y=e.tabIndex,O=e.onFocus,j=e.onKeyDown;return Object(o.jsxs)(\"div\",{className:c()(de.a.tile,i,(t={},Object(h.a)(t,de.a.highlighted,l),Object(h.a)(t,de.a.blank,f),Object(h.a)(t,de.a.raised,v),Object(h.a)(t,de.a.points1,1===m),Object(h.a)(t,de.a.points2,2===m),Object(h.a)(t,de.a.points3,3===m),Object(h.a)(t,de.a.points4,4===m),Object(h.a)(t,de.a.points5,\"number\"===typeof m&&m>=5),t)),style:g,children:[Object(o.jsx)(\"input\",{autoCapitalize:\"off\",autoComplete:\"off\",autoCorrect:\"off\",autoFocus:n,className:de.a.character,disabled:s,maxLength:1,placeholder:p,ref:u,spellCheck:!1,style:d,tabIndex:y,value:a||\"\",onChange:fe,onFocus:O,onKeyDown:j}),r&&Object(o.jsx)(\"span\",{className:de.a.points,style:b,children:m})]})},he=Object(a.memo)(pe),me=function(e){var t=e.autoFocus,n=e.className,r=e.character,i=void 0===r?\"\":r,s=e.disabled,c=e.highlighted,l=e.inputRef,u=e.isBlank,f=e.placeholder,h=e.points,m=e.raised,b=e.size,v=e.tabIndex,g=e.onFocus,y=e.onKeyDown,O=Object(p.j)(b),j=O.pointsFontSize,_=O.tileFontSize,w=O.tileSize,A=Object(a.useMemo)((function(){return{height:w,width:w}}),[w]),x=Object(a.useMemo)((function(){return{fontSize:_}}),[_]),C=Object(a.useMemo)((function(){return{fontSize:j}}),[j]),S=Object(a.useMemo)((function(){return l||Object(a.createRef)()}),[l]),E=!i||i===d.EMPTY_CELL,M=(u||!E)&&\"undefined\"!==typeof h;return Object(a.useEffect)((function(){t&&S.current&&S.current.focus()}),[t,S]),Object(o.jsx)(he,{autoFocus:t,canShowPoints:M,character:i,className:n,disabled:s,highlighted:c,inputRef:S,inputStyle:x,isBlank:u,placeholder:f,points:h,pointsStyle:C,raised:m,style:A,tabIndex:v,onFocus:g,onKeyDown:y})},be=n(\"CjmZ\"),ve=n.n(be);function ge(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function ye(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ge(Object(n),!0).forEach((function(t){Object(h.a)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ge(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Oe=function(e){var t=e.children,n=e.className,r=ie(e,[\"children\",\"className\"]);return Object(o.jsx)(\"button\",ye(ye({className:c()(ve.a.action,n),tabIndex:-1,type:\"button\"},r),{},{children:t}))},je={1:ve.a.bonusCharacter1,2:ve.a.bonusCharacter2,3:ve.a.bonusCharacter3,5:ve.a.bonusCharacter5},_e={2:ve.a.bonusWord2,3:ve.a.bonusWord3},we={2:ve.a.bonusCharacterMultiplier2,3:ve.a.bonusCharacterMultiplier3},Ae=function(e,t){if(t&&e.isEmpty){var n=t.type;if(n===d.BONUS_WORD)return xe(t);if(n===d.BONUS_CHARACTER)return Ce(t);throw new Error(\"Unknown bonus type: \".concat(n,\" \").concat(t.x,\" \").concat(t.y,\" \").concat(t.multiplier,\" \").concat(t.score))}},xe=function(e){return _e[e.multiplier]},Ce=function(e){return e.score?je[e.score]:we[e.multiplier]},Se=function(e){var t=e.bonus,n=e.cell,r=e.className,a=e.direction,i=e.inputRef,s=e.isEmpty,l=e.points,u=e.size,d=e.style,f=e.tile,p=e.translate,m=e.onDirectionToggleClick,b=e.onFocus,v=e.onToggleBlankClick;return Object(o.jsxs)(\"div\",{className:c()(ve.a.cell,Ae(n,t),r,Object(h.a)({},ve.a.candidate,n.isCandidate())),style:d,children:[Object(o.jsx)(me,{className:ve.a.tile,character:s?void 0:f.character,highlighted:n.isCandidate(),inputRef:i,isBlank:f.isBlank,points:l,raised:!s,size:u,tabIndex:0===n.x&&0===n.y?void 0:-1,onFocus:b}),Object(o.jsxs)(\"div\",{className:ve.a.actions,children:[Object(o.jsx)(Oe,{title:p(\"cell.toggle-direction\"),onClick:m,children:Object(o.jsx)(le,{className:c()(ve.a.toggleDirection,Object(h.a)({},ve.a.right,\"horizontal\"===a)),icon:O})}),!s&&Object(o.jsx)(Oe,{className:c()(ve.a.blank,Object(h.a)({},ve.a.active,f.isBlank)),title:f.isBlank?p(\"cell.set-not-blank\"):p(\"cell.set-blank\"),onClick:v,children:\"B\"})]})]})},Ee=Object(a.memo)(Se),Me=function(e){var t=e.cell,n=e.className,r=e.direction,s=e.inputRef,c=e.size,l=e.onDirectionToggle,u=e.onFocus,h=t.tile,m=t.x,b=t.y,v=Object(f.b)(),g=Object(i.F)(),y=Object(i.G)((function(e){return Object(i.l)(e,t)})),O=Object(i.G)((function(e){return Object(i.C)(e,t.tile)})),j=Object(p.j)(c).tileFontSize,_=h.character===d.EMPTY_CELL,w=Object(a.useMemo)((function(){return{fontSize:j}}),[j]),A=Object(a.useCallback)((function(){return u(m,b)}),[m,b,u]),x=Object(a.useCallback)((function(){s.current&&s.current.focus(),v(i.a.actions.toggleCellIsBlank({x:m,y:b}))}),[v,m,b]),C=Object(a.useCallback)((function(){s.current&&s.current.focus(),l()}),[l]);return Object(o.jsx)(Ee,{bonus:y,cell:t,className:n,direction:r,inputRef:s,isEmpty:_,points:O,size:c,style:w,tile:h,translate:g,onDirectionToggleClick:C,onFocus:A,onToggleBlankClick:x})},Ne=function(e){var t=e.className,n=e.innerRef,r=e.lastDirection,a=e.refs,i=e.rows,s=e.cellSize,l=e.onDirectionToggle,d=e.onFocus,f=e.onKeyDown;return Object(o.jsx)(\"div\",{className:c()(u.a.board,t),ref:n,onKeyDown:f,children:i.map((function(e,t){return Object(o.jsx)(\"div\",{className:u.a.row,children:e.map((function(e,n){return Object(o.jsx)(Me,{className:u.a.cell,cell:e,direction:r,inputRef:a[t][n],size:s,onDirectionToggle:l,onFocus:d},n)}))},t)}))})},ke=Object(a.memo)(Ne),De=function(e){var t=Object(a.useRef)(e);return t.current=e,t},Re=function(e,t){for(var n=0;n<e.length;++n)for(var o=0;o<e[0].length;++o)if(t(e[n][o]))return{x:o,y:n}};function Be(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function Pe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Be(Object(n),!0).forEach((function(t){Object(h.a)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Be(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Ie=function(e){var t=e.length,n=e[0].length,o=Object(f.b)(),r=Object(i.G)(i.n),s=Object(a.useMemo)((function(){return Object(p.b)(n,t,(function(){return Object(a.createRef)()}))}),[n,t]),c=Object(a.useRef)({x:0,y:0}),l=Object(a.useState)(\"horizontal\"),u=l[0],h=l[1],m=De(u),b=Object(a.useCallback)((function(e,o){var r,a=Math.min(Math.max(c.current.x+e,0),n-1),i=Math.min(Math.max(c.current.y+o,0),t-1);c.current={x:a,y:i},null===(r=s[i][a].current)||void 0===r||r.focus()}),[c,s]),v=Object(a.useCallback)((function(e){return Re(s,(function(t){return t.current===e}))}),[s]),g=Object(a.useCallback)((function(){h((function(e){return\"vertical\"===e?\"horizontal\":\"vertical\"}))}),[]),y=Object(a.useCallback)((function(e,t){c.current={x:e,y:t}}),[]),O=Object(a.useCallback)((function(e){var t=\"forward\"===e?1:-1;\"horizontal\"===m.current?b(t,0):b(0,t)}),[b,m]),j=Object(a.useMemo)((function(){return Object(p.c)({onArrowDown:function(e){Object(p.l)(e)?g():b(0,1)},onArrowLeft:function(e){Object(p.l)(e)?g():b(-1,0)},onArrowRight:function(e){Object(p.l)(e)?g():b(1,0)},onArrowUp:function(e){Object(p.l)(e)?g():b(0,-1)},onBackspace:function(e){var t=v(e.target);t&&(o(i.a.actions.changeCellValue(Pe(Pe({},t),{},{value:d.EMPTY_CELL}))),O(\"backward\"))},onDelete:function(e){var t=v(e.target);t&&(o(i.a.actions.changeCellValue(Pe(Pe({},t),{},{value:d.EMPTY_CELL}))),O(\"forward\"))},onKeyDown:function(a){var s=v(a.target);if(s){var c=s.x,l=s.y,u=a.key.toLowerCase(),f=Object(p.l)(a)&&\"b\"===u,h=r.getTwoCharacterTileByPrefix(u);if(f)o(i.a.actions.toggleCellIsBlank(s));else{if(Object(p.l)(a)&&h)return a.preventDefault(),o(i.a.actions.changeCellValue({x:c,y:l,value:h})),void O(\"forward\");if(r.hasCharacter(u)){var m=c>0,b=c+1<n,g=l+1<t;if(l-1>0){var y=e[l-1][c].tile.character+u;if(r.twoCharacterTiles.includes(y))return void o(i.a.actions.changeCellValue(Pe(Pe({},s),{},{y:l-1,value:y})))}if(g){var j=u+e[l+1][c].tile.character;if(r.twoCharacterTiles.includes(j))return o(i.a.actions.changeCellValue(Pe(Pe({},s),{},{value:u}))),o(i.a.actions.changeCellValue(Pe(Pe({},s),{},{y:l+1,value:d.EMPTY_CELL}))),void O(\"forward\")}if(m){var _=e[l][c-1].tile.character+u;if(r.twoCharacterTiles.includes(_))return void o(i.a.actions.changeCellValue(Pe(Pe({},s),{},{x:c-1,value:_})))}if(b){var w=u+e[l][c+1].tile.character;if(r.twoCharacterTiles.includes(w))return o(i.a.actions.changeCellValue(Pe(Pe({},s),{},{value:u}))),o(i.a.actions.changeCellValue(Pe(Pe({},s),{},{x:c+1,value:d.EMPTY_CELL}))),void O(\"forward\")}if(!g||!b){var A=e[l][c].tile.character+u;if(r.twoCharacterTiles.includes(A))return void o(i.a.actions.changeCellValue(Pe(Pe({},s),{},{value:A})))}o(i.a.actions.changeCellValue(Pe(Pe({},s),{},{value:u}))),O(\"forward\")}}}}})}),[b,r,o,m,g,e]);return[{lastDirection:u,refs:s},{onDirectionToggle:g,onFocus:y,onKeyDown:j}]},Ge=function(e){var t=e.cellSize,n=e.className,a=e.innerRef,s=Object(i.G)(i.z),c=Ie(s),l=Object(r.a)(c,2),u=l[0],d=u.lastDirection,f=u.refs,p=l[1],h=p.onDirectionToggle,m=p.onFocus,b=p.onKeyDown;return Object(o.jsx)(ke,{className:n,cellSize:t,innerRef:a,lastDirection:d,refs:f,rows:s,onDirectionToggle:h,onFocus:m,onKeyDown:b})},Te=n(\"1zWx\"),Le=n.n(Te),Fe=function(e){var t=e.children,n=e.icon;return Object(o.jsxs)(\"span\",{className:Le.a.content,children:[Object(o.jsx)(\"span\",{className:Le.a.label,children:t}),Object(o.jsx)(le,{className:Le.a.icon,icon:n})]})};function ze(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function Ue(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ze(Object(n),!0).forEach((function(t){Object(h.a)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ze(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var We=function(e){var t=e.children,n=e.className,r=e.icon,a=ie(e,[\"children\",\"className\",\"icon\"]);return Object(o.jsx)(\"a\",Ue(Ue({className:c()(Le.a.button,n)},a),{},{children:Object(o.jsx)(Fe,{icon:r,children:t})}))};function Ye(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function qe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ye(Object(n),!0).forEach((function(t){Object(h.a)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ye(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Je=Object.assign((function(e){var t=e.children,n=e.className,r=e.icon,a=ie(e,[\"children\",\"className\",\"icon\"]);return Object(o.jsx)(\"button\",qe(qe({className:c()(Le.a.button,n),type:\"button\"},a),{},{children:Object(o.jsx)(Fe,{icon:r,children:t})}))}),{Link:We}),Ke=(n(\"hj7B\"),n(\"dm5A\")),Ve=n(\"4VI5\"),He=n(\"v/x1\"),Qe=function(e){return Ke.o+e*(Ke.u+Ke.r)},Xe=function(e){return Ke.p+e*(Ke.u+Ke.r)},Ze=function(e,t){return e+2*t*(.5-Math.random())},$e=function(e){var t=e.cellIndex,n=e.character,o=e.color,r=e.rowIndex,a=e.showPoints,i=Ve.literaki[He.Locale.EN_US].getCharacterPoints(n.toLowerCase()),s=a?i:void 0,c=\"number\"===typeof i?Ke.q[i]:Ke.n,l=Qe(t)+Ke.u/2,u=Xe(0)+Ke.u/2;return{character:n,color:o||c,points:s,size:Ke.u,transform:\"rotate(\".concat(Ze(0,Ke.s),\", \").concat(l,\", \").concat(u,\")\"),x:Ze(Qe(t),Ke.t),y:Ze(Xe(r),Ke.t)}},et=function(e){var t=e.color,n=e.content,o=e.showPoints;return n.map((function(e,n){return e.map((function(r,a){var i=e.slice(0,a).reduce((function(e,t){return e+t.length+\" \".length}),0);return r.split(\"\").map((function(e,r){return $e({cellIndex:i+r,character:e,color:t,rowIndex:n,showPoints:o})}))}))})).flat(2)},tt=function(e){var t=e.reduce((function(e,t){var n=t.reduce((function(e,t){return e+t.length}),0)+Math.max(t.length-1,0);return Math.max(e,n)}),0),n=t*(Ke.u+Ke.r)-(0===t?0:Ke.r),o=e.length*(Ke.u+Ke.r)-(0===e.length?0:Ke.r);return\"0 0 \".concat(n,\" \").concat(o)},nt=n(\"WX7Y\"),ot=n.n(nt),rt=function(e){var t=e.character,n=e.className,r=e.color,a=e.points,i=e.size,s=e.transform,c=e.x,l=e.y;return Object(o.jsxs)(\"g\",{className:n,transform:s,children:[Object(o.jsx)(\"rect\",{fill:r,height:i,width:i,x:c,y:l}),Object(o.jsx)(\"text\",{dominantBaseline:\"central\",fontFamily:\"Open Sans\",fontSize:.6*i,fontWeight:\"bold\",textAnchor:\"middle\",x:c+i/2,y:l+i/2,children:t}),\"number\"===typeof a&&Object(o.jsx)(\"text\",{dominantBaseline:\"text-after-edge\",fontFamily:\"Open Sans\",fontSize:.25*i,fontWeight:\"bold\",textAnchor:\"end\",x:c+.9*i,y:l+.95*i,children:a})]})},at=function(e){var t,n=e.className,r=e.color,i=e.content,s=e.dropShadow,l=e.showPoints,u=e.style,d=e.wave,f=Object(a.useMemo)((function(){return et({color:r,content:i,showPoints:l})}),[r,i,l]);return Object(o.jsx)(\"svg\",{className:c()(n,(t={},Object(h.a)(t,ot.a.dropShadow,s),Object(h.a)(t,ot.a.wave,d),t)),style:u,viewBox:tt(i),xmlns:\"http://www.w3.org/2000/svg\",children:f.map((function(e,t){return Object(o.jsx)(rt,{character:e.character,className:ot.a.tile,color:e.color,points:e.points,size:e.size,transform:e.transform,x:e.x,y:e.y},t)}))})},it=n(\"Jsr2\"),st=n.n(it),ct={error:\"empty-state.error\",info:\"empty-state.info\",success:\"empty-state.success\",warning:\"empty-state.warning\"},lt={error:Ke.h,info:Ke.f,success:Ke.g,warning:Ke.i},ut=function(e){var t=e.className,n=e.children,r=e.type,s=Object(i.F)(),l=Object(a.useMemo)((function(){return s(ct[r])}),[s]),u=Object(a.useMemo)((function(){return[[l.toUpperCase()]]}),[l]);return Object(o.jsxs)(\"div\",{className:c()(st.a.emptyState,t),children:[Object(o.jsx)(at,{className:st.a.tiles,color:lt[r],content:u}),Object(o.jsx)(\"div\",{className:st.a.content,children:n})]})},dt=n(\"sEFA\"),ft=n.n(dt),pt=function(e){var t=e.className,n=e.wave,r=void 0===n||n,s=Object(i.F)(),l=Object(a.useMemo)((function(){return[[s(\"common.loading\").toUpperCase()]]}),[s]);return Object(o.jsxs)(\"div\",{className:c()(ft.a.loading,t),children:[Object(o.jsx)(\"div\",{className:ft.a.dim}),Object(o.jsx)(\"div\",{className:ft.a.logo,children:Object(o.jsx)(at,{className:c()(ft.a.tiles),content:l,dropShadow:!0,wave:r})})]})},ht=n(\"mk9T\"),mt=n.n(ht),bt=function(e){var t,n=e.className,r=Object(i.F)(),a=Object(i.G)(i.p),s=a.definitions,l=a.isAllowed,u=a.isLoading,d=a.word;return Object(o.jsxs)(\"div\",{className:c()(mt.a.dictionary,n,(t={},Object(h.a)(t,mt.a.isAllowed,!0===l),Object(h.a)(t,mt.a.isNotAllowed,!1===l),t)),children:[\"undefined\"===typeof d&&Object(o.jsx)(ut,{type:\"info\",children:r(\"dictionary.empty-state.uninitialized\")}),\"undefined\"!==typeof d&&Object(o.jsxs)(\"div\",{className:mt.a.content,children:[d&&Object(o.jsx)(\"h2\",{className:mt.a.word,children:d}),!1===l&&Object(o.jsx)(\"div\",{children:r(\"dictionary.empty-state.not-allowed\")}),!0===l&&Object(o.jsxs)(o.Fragment,{children:[0===s.length&&Object(o.jsx)(\"div\",{children:r(\"dictionary.empty-state.no-definitions\")}),s.length>0&&Object(o.jsx)(\"ul\",{className:mt.a.definitions,children:s.map((function(e,t){return Object(o.jsx)(\"li\",{className:mt.a.definition,children:e},t)}))})]}),!u&&null===l&&Object(o.jsx)(\"div\",{children:r(\"dictionary.empty-state.no-results\")})]}),u&&Object(o.jsx)(pt,{})]})},vt=n(\"EIE9\"),gt=n.n(vt),yt=function(e){var t=e.className,n=Object(f.b)(),r=Object(i.F)(),a=Object(i.G)(i.p).input;return Object(o.jsx)(\"form\",{className:c()(gt.a.dictionaryInput,t),onSubmit:function(e){e.preventDefault(),n(i.c.actions.submit())},children:Object(o.jsx)(\"input\",{className:gt.a.input,placeholder:r(\"dictionary.input.placeholder\"),required:!0,type:\"text\",value:a,onChange:function(e){n(i.c.actions.changeInput(e.target.value))}})})},Ot=n(\"99so\"),jt=n.n(Ot),_t=function(e){var t=e.children,n=e.className;return Object(o.jsx)(\"kbd\",{className:c()(jt.a.key,n),children:t})},wt=n(\"9rZX\"),At=n.n(wt),xt=n(\"5d2k\"),Ct=n.n(xt),St=function(e){var t=e.children,n=e.icon;return Object(o.jsxs)(\"span\",{className:Ct.a.content,children:[Object(o.jsx)(le,{className:Ct.a.icon,icon:n}),Object(o.jsx)(\"span\",{className:Ct.a.label,children:t})]})};function Et(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function Mt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Et(Object(n),!0).forEach((function(t){Object(h.a)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Et(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Nt=function(e){var t=e.children,n=e.className,r=e.icon,a=ie(e,[\"children\",\"className\",\"icon\"]);return Object(o.jsx)(\"a\",Mt(Mt({className:c()(Ct.a.squareButton,n)},a),{},{children:Object(o.jsx)(St,{icon:r,children:t})}))};function kt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function Dt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?kt(Object(n),!0).forEach((function(t){Object(h.a)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):kt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Rt=Object.assign((function(e){var t=e.children,n=e.className,r=e.icon,a=ie(e,[\"children\",\"className\",\"icon\"]);return Object(o.jsx)(\"button\",Dt(Dt({className:c()(Ct.a.squareButton,n),type:\"button\"},a),{},{children:Object(o.jsx)(St,{icon:r,children:t})}))}),{Link:Nt}),Bt=n(\"z9kn\"),Pt=n.n(Bt),It=function(e){var t=e.children,n=e.className,r=e.title;return Object(o.jsxs)(\"section\",{className:c()(Pt.a.section,n),children:[Object(o.jsx)(\"h2\",{className:Pt.a.heading,children:r}),Object(o.jsx)(\"div\",{children:t})]})},Gt=n(\"SySy\"),Tt=n.n(Gt),Lt=Object.assign((function(e){var t=e.children,n=e.className,r=e.isOpen,a=e.title,s=e.onClose,l=Object(i.F)();return Object(o.jsx)(At.a,{className:{afterOpen:Tt.a.afterOpen,base:Tt.a.modal,beforeClose:Tt.a.beforeClose},closeTimeoutMS:Ke.A,contentLabel:a,isOpen:r,overlayClassName:Tt.a.overlay,onRequestClose:s,children:Object(o.jsxs)(\"div\",{className:c()(Tt.a.sidebar,n),children:[Object(o.jsxs)(\"div\",{className:Tt.a.header,children:[Object(o.jsx)(\"h1\",{className:Tt.a.title,title:a,children:a}),Object(o.jsx)(Rt,{className:Tt.a.closeButton,icon:D,title:l(\"common.close\"),onClick:s,children:l(\"common.close\")})]}),Object(o.jsx)(\"div\",{className:Tt.a.content,children:t})]})})}),{Section:It}),Ft=n(\"IH9G\"),zt=n.n(Ft),Ut=function(e){var t=e.className,n=e.description,r=e.mapping;return Object(o.jsxs)(\"div\",{className:c()(zt.a.mapping,t),children:[Object(o.jsx)(\"h3\",{className:zt.a.description,children:n}),Object(o.jsx)(\"div\",{className:zt.a.keys,children:r.map((function(e,t){return Object(o.jsx)(\"div\",{className:zt.a.group,children:Array.isArray(e)?Object(o.jsxs)(o.Fragment,{children:[e[0],Object(o.jsx)(\"span\",{className:zt.a.plus,children:\"+\"}),e[1]]}):e},t)}))})]})},Wt=Object(o.jsx)(_t,{children:Object(o.jsx)(le,{icon:_})}),Yt=Object(o.jsx)(_t,{children:Object(o.jsx)(le,{icon:C})}),qt=Object(o.jsx)(_t,{children:Object(o.jsx)(le,{icon:A})}),Jt=Object(o.jsx)(_t,{children:Object(o.jsx)(le,{icon:O})}),Kt=Object(o.jsx)(_t,{children:\"\\u2190 Backspace\"}),Vt=Object(o.jsx)(_t,{children:Object(p.m)()?\"\\u2318\":\"Ctrl\"}),Ht=Object(o.jsx)(_t,{children:\"Del\"}),Qt=Object(o.jsx)(_t,{children:\"Enter \\u23ce\"}),Xt=Object(o.jsxs)(o.Fragment,{children:[Wt,Yt,qt,Jt]}),Zt=Object(o.jsx)(_t,{children:\"\\u2423\"}),$t=function(e){var t=e.className,n=e.isOpen,a=e.onClose,s=Object(i.F)(),c=Object(i.G)(i.n);return Object(o.jsxs)(Lt,{className:t,isOpen:n,title:s(\"keyMap\"),onClose:a,children:[Object(o.jsxs)(Lt.Section,{title:s(\"keyMap.board-and-rack\"),children:[Object(o.jsx)(Ut,{description:s(\"keyMap.board-and-rack.navigate\"),mapping:[Xt]}),Object(o.jsx)(Ut,{description:s(\"keyMap.board-and-rack.remove-tile\"),mapping:[Ht,Kt]}),Object(o.jsx)(Ut,{description:s(\"keyMap.board-and-rack.submit\"),mapping:[Qt]}),c.twoCharacterTiles.length>0&&Object(o.jsx)(Ut,{description:s(\"keyMap.board-and-rack.insert-two-letter-tile\"),mapping:[[Vt,Object(o.jsx)(o.Fragment,{children:c.twoCharacterTiles.map((function(e){var t=Object(r.a)(e,1)[0];return Object(o.jsx)(_t,{children:t.toUpperCase()},t)}))})]]})]}),Object(o.jsxs)(Lt.Section,{title:s(\"keyMap.board\"),children:[Object(o.jsx)(Ut,{description:s(\"keyMap.board.toggle-blank\"),mapping:[[Vt,Object(o.jsx)(_t,{children:\"B\"},\"b\")]]}),Object(o.jsx)(Ut,{description:s(\"keyMap.board.toggle-direction\"),mapping:[[Vt,Xt]]})]}),Object(o.jsx)(Lt.Section,{title:s(\"keyMap.rack\"),children:Object(o.jsx)(Ut,{description:s(\"keyMap.rack.insert-blank\"),mapping:[Zt]})})]})},en=[[\"SCRABBLE\"],[\"SOLVER\",\"2\"]],tn=function(e){var t=e.className,n=e.style;return Object(o.jsx)(at,{className:t,content:en,style:n})},nn=n(\"jVvz\"),on=n.n(nn),rn=function(e){var t=e.onClear,n=e.onShowKeyMap,r=e.onShowRemainingTiles,a=e.onShowSettings,s=Object(i.F)(),l=Object(i.G)(i.q);return Object(o.jsxs)(\"div\",{className:on.a.navButtons,children:[Object(o.jsx)(Rt.Link,{className:on.a.button,href:Ke.m,icon:V,rel:\"noopener noreferrer\",target:\"_blank\",title:s(\"github\"),children:\"GitHub\"}),Object(o.jsx)(\"div\",{className:on.a.separator}),Object(o.jsx)(Rt,{className:on.a.button,icon:Q,title:s(\"keyMap\"),onClick:n,children:s(\"keyMap\")}),Object(o.jsx)(Rt,{className:c()(on.a.button,Object(h.a)({},on.a.error,l)),icon:ee,title:s(\"remaining-tiles\"),onClick:r,children:s(\"remaining-tiles\")}),Object(o.jsx)(\"div\",{className:on.a.separator}),Object(o.jsx)(Rt,{className:on.a.button,icon:I,title:s(\"common.clear\"),onClick:t,children:s(\"common.clear\")}),Object(o.jsx)(Rt,{className:on.a.button,icon:N,title:s(\"settings\"),onClick:a,children:s(\"settings\")})]})},an=n(\"YFqc\"),sn=n.n(an),cn=n(\"lFTW\"),ln=n.n(cn),un=[[\"HTTP\",\"404\"]],dn=function(){return Object(o.jsx)(\"div\",{className:ln.a.notFound,children:Object(o.jsx)(sn.a,{href:\"/\",children:Object(o.jsxs)(\"a\",{className:ln.a.link,children:[Object(o.jsx)(le,{className:ln.a.icon,icon:B}),Object(o.jsx)(at,{className:ln.a.tiles,content:un})]})})})},fn=n(\"RuLr\"),pn=n.n(fn),hn=function(e){var t=e.activeIndexRef,n=e.character,r=e.index,s=e.inputRef,c=e.tile,l=e.onKeyDown,u=Object(f.b)(),h=Object(i.F)(),m=Object(i.G)(i.n),b=Object(i.G)((function(e){return Object(i.m)(e,n)})),v=Object(a.useCallback)((function(){t.current=r}),[r]),g=Object(a.useCallback)((function(e){u(i.f.actions.changeCharacter({character:e,index:r}))}),[r]),y=Object(a.useMemo)((function(){return Object(p.c)({onBackspace:function(){return g(null)},onDelete:function(){return g(null)},onKeyDown:function(e){var t=e.key.toLowerCase(),n=m.getTwoCharacterTileByPrefix(t);Object(p.l)(e)&&n?(e.preventDefault(),g(n)):(m.hasCharacter(t)||t===d.BLANK)&&g(t),l(e)}})}),[m,g,l]);return Object(o.jsx)(me,{autoFocus:0===r,className:pn.a.tile,character:null===n?void 0:n,highlighted:null!==c,inputRef:s,isBlank:n===d.BLANK,placeholder:h(\"rack.placeholder\")[r],points:b,raised:!0,size:Ke.z,tabIndex:0===r?void 0:-1,onFocus:v,onKeyDown:y},r)},mn=function(e){var t=e.className,n=Object(i.G)(i.n),r=Object(i.G)(i.t),s=Object(i.G)(i.v),l=Object(a.useMemo)((function(){return Object(p.q)(r,s)}),[r,s]),u=l.length,f=Object(a.useMemo)((function(){return Object(p.a)(u).map((function(){return Object(a.createRef)()}))}),[u]),h=Object(a.useRef)(),m=Object(a.useCallback)((function(e){var t=Math.min(Math.max((h.current||0)+e,0),u-1),n=f[t].current;n&&n.focus(),h.current=t}),[h,u,f]),b=Object(a.useMemo)((function(){return Object(p.c)({onArrowLeft:function(e){e.preventDefault(),m(-1)},onArrowRight:function(e){e.preventDefault(),m(1)},onBackspace:function(){m(-1)},onKeyDown:function(e){var t=e.key.toLowerCase();(n.hasCharacter(t)||t===d.BLANK)&&m(1)}})}),[m,n]);return Object(o.jsx)(\"div\",{className:c()(pn.a.rack,t),children:l.map((function(e,t){var n=e.character,r=e.tile;return Object(o.jsx)(hn,{activeIndexRef:h,character:n,index:t,inputRef:f[t],tile:r,onKeyDown:b},t)}))})},bn=n(\"BdcD\"),vn=n.n(bn),gn=function(e){var t=e.checked,n=e.children,r=e.className,a=e.disabled,i=e.id,s=e.name,l=e.title,u=e.value,d=e.onChange;return Object(o.jsxs)(\"label\",{className:c()(vn.a.radio,r,Object(h.a)({},vn.a.checked,t)),htmlFor:i,title:l,children:[Object(o.jsx)(\"input\",{checked:t,className:vn.a.input,disabled:a,id:i,name:s,type:\"radio\",value:u,onChange:d}),Object(o.jsx)(\"div\",{className:vn.a.icon}),Object(o.jsx)(\"div\",{className:vn.a.content,children:n})]})},yn=n(\"JxyW\"),On=n.n(yn),jn=function(e){var t,n=e.tile,r=n.character,a=n.count,s=a-n.usedCount,l=Object(i.G)((function(e){return Object(i.m)(e,r)}));return Object(o.jsxs)(\"div\",{className:c()(On.a.character,(t={},Object(h.a)(t,On.a.finished,s<=0),Object(h.a)(t,On.a.overused,s<0),t)),children:[Object(o.jsx)(me,{character:r,className:On.a.tile,disabled:!0,isBlank:r===d.BLANK,points:l,raised:!0,size:Ke.v}),Object(o.jsxs)(\"div\",{className:On.a.count,children:[s,\" / \",a]})]},r)},_n=n(\"bHoz\"),wn=n.n(_n),An=function(e){var t=e.className,n=e.isOpen,r=e.onClose,a=Object(i.F)(),s=Object(i.G)(i.u);return Object(o.jsx)(Lt,{className:t,isOpen:n,title:a(\"remaining-tiles\"),onClose:r,children:s.map((function(e){var t=e.remainingCount,n=e.tiles,r=e.translationKey,i=e.totalCount;return Object(o.jsxs)(\"div\",{className:wn.a.group,children:[Object(o.jsx)(\"h2\",{className:wn.a.title,children:\"\".concat(a(r),\" (\").concat(t,\" / \").concat(i,\")\")}),Object(o.jsx)(\"div\",{className:wn.a.content,children:n.map((function(e){return Object(o.jsx)(jn,{tile:e},e.character)}))})]},r)}))})},xn=n(\"wx14\");function Cn(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function Sn(e){if(void 0===e)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return e}function En(e,t){if(e.length!==t.length)return!1;for(var n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}var Mn=function(e,t){var n;void 0===t&&(t=En);var o,r=[],a=!1;return function(){for(var i=[],s=0;s<arguments.length;s++)i[s]=arguments[s];return a&&n===this&&t(i,r)||(o=e.apply(this,i),a=!0,n=this,r=i),o}},Nn=\"object\"===typeof performance&&\"function\"===typeof performance.now?function(){return performance.now()}:function(){return Date.now()};function kn(e){cancelAnimationFrame(e.id)}function Dn(e,t){var n=Nn();var o={id:requestAnimationFrame((function r(){Nn()-n>=t?e.call(null):o.id=requestAnimationFrame(r)}))};return o}var Rn=null;function Bn(e){if(void 0===e&&(e=!1),null===Rn||e){var t=document.createElement(\"div\"),n=t.style;n.width=\"50px\",n.height=\"50px\",n.overflow=\"scroll\",n.direction=\"rtl\";var o=document.createElement(\"div\"),r=o.style;return r.width=\"100px\",r.height=\"100px\",t.appendChild(o),document.body.appendChild(t),t.scrollLeft>0?Rn=\"positive-descending\":(t.scrollLeft=1,Rn=0===t.scrollLeft?\"negative\":\"positive-ascending\"),document.body.removeChild(t),Rn}return Rn}var Pn=function(e,t){return e};function In(e){var t,n,o=e.getItemOffset,r=e.getEstimatedTotalSize,i=e.getItemSize,s=e.getOffsetForIndexAndAlignment,c=e.getStartIndexForOffset,l=e.getStopIndexForStartIndex,u=e.initInstanceProps,d=e.shouldResetStyleCacheOnItemSizeChange,f=e.validateProps;return n=t=function(e){function t(t){var n;return(n=e.call(this,t)||this)._instanceProps=u(n.props,Sn(Sn(n))),n._outerRef=void 0,n._resetIsScrollingTimeoutId=null,n.state={instance:Sn(Sn(n)),isScrolling:!1,scrollDirection:\"forward\",scrollOffset:\"number\"===typeof n.props.initialScrollOffset?n.props.initialScrollOffset:0,scrollUpdateWasRequested:!1},n._callOnItemsRendered=void 0,n._callOnItemsRendered=Mn((function(e,t,o,r){return n.props.onItemsRendered({overscanStartIndex:e,overscanStopIndex:t,visibleStartIndex:o,visibleStopIndex:r})})),n._callOnScroll=void 0,n._callOnScroll=Mn((function(e,t,o){return n.props.onScroll({scrollDirection:e,scrollOffset:t,scrollUpdateWasRequested:o})})),n._getItemStyle=void 0,n._getItemStyle=function(e){var t,r=n.props,a=r.direction,s=r.itemSize,c=r.layout,l=n._getItemStyleCache(d&&s,d&&c,d&&a);if(l.hasOwnProperty(e))t=l[e];else{var u=o(n.props,e,n._instanceProps),f=i(n.props,e,n._instanceProps),p=\"horizontal\"===a||\"horizontal\"===c,h=\"rtl\"===a,m=p?u:0;l[e]=t={position:\"absolute\",left:h?void 0:m,right:h?m:void 0,top:p?0:u,height:p?\"100%\":f,width:p?f:\"100%\"}}return t},n._getItemStyleCache=void 0,n._getItemStyleCache=Mn((function(e,t,n){return{}})),n._onScrollHorizontal=function(e){var t=e.currentTarget,o=t.clientWidth,r=t.scrollLeft,a=t.scrollWidth;n.setState((function(e){if(e.scrollOffset===r)return null;var t=n.props.direction,i=r;if(\"rtl\"===t)switch(Bn()){case\"negative\":i=-r;break;case\"positive-descending\":i=a-o-r}return i=Math.max(0,Math.min(i,a-o)),{isScrolling:!0,scrollDirection:e.scrollOffset<r?\"forward\":\"backward\",scrollOffset:i,scrollUpdateWasRequested:!1}}),n._resetIsScrollingDebounced)},n._onScrollVertical=function(e){var t=e.currentTarget,o=t.clientHeight,r=t.scrollHeight,a=t.scrollTop;n.setState((function(e){if(e.scrollOffset===a)return null;var t=Math.max(0,Math.min(a,r-o));return{isScrolling:!0,scrollDirection:e.scrollOffset<t?\"forward\":\"backward\",scrollOffset:t,scrollUpdateWasRequested:!1}}),n._resetIsScrollingDebounced)},n._outerRefSetter=function(e){var t=n.props.outerRef;n._outerRef=e,\"function\"===typeof t?t(e):null!=t&&\"object\"===typeof t&&t.hasOwnProperty(\"current\")&&(t.current=e)},n._resetIsScrollingDebounced=function(){null!==n._resetIsScrollingTimeoutId&&kn(n._resetIsScrollingTimeoutId),n._resetIsScrollingTimeoutId=Dn(n._resetIsScrolling,150)},n._resetIsScrolling=function(){n._resetIsScrollingTimeoutId=null,n.setState({isScrolling:!1},(function(){n._getItemStyleCache(-1,null)}))},n}Cn(t,e),t.getDerivedStateFromProps=function(e,t){return Gn(e,t),f(e),null};var n=t.prototype;return n.scrollTo=function(e){e=Math.max(0,e),this.setState((function(t){return t.scrollOffset===e?null:{scrollDirection:t.scrollOffset<e?\"forward\":\"backward\",scrollOffset:e,scrollUpdateWasRequested:!0}}),this._resetIsScrollingDebounced)},n.scrollToItem=function(e,t){void 0===t&&(t=\"auto\");var n=this.props.itemCount,o=this.state.scrollOffset;e=Math.max(0,Math.min(e,n-1)),this.scrollTo(s(this.props,e,t,o,this._instanceProps))},n.componentDidMount=function(){var e=this.props,t=e.direction,n=e.initialScrollOffset,o=e.layout;if(\"number\"===typeof n&&null!=this._outerRef){var r=this._outerRef;\"horizontal\"===t||\"horizontal\"===o?r.scrollLeft=n:r.scrollTop=n}this._callPropsCallbacks()},n.componentDidUpdate=function(){var e=this.props,t=e.direction,n=e.layout,o=this.state,r=o.scrollOffset;if(o.scrollUpdateWasRequested&&null!=this._outerRef){var a=this._outerRef;if(\"horizontal\"===t||\"horizontal\"===n)if(\"rtl\"===t)switch(Bn()){case\"negative\":a.scrollLeft=-r;break;case\"positive-ascending\":a.scrollLeft=r;break;default:var i=a.clientWidth,s=a.scrollWidth;a.scrollLeft=s-i-r}else a.scrollLeft=r;else a.scrollTop=r}this._callPropsCallbacks()},n.componentWillUnmount=function(){null!==this._resetIsScrollingTimeoutId&&kn(this._resetIsScrollingTimeoutId)},n.render=function(){var e=this.props,t=e.children,n=e.className,o=e.direction,i=e.height,s=e.innerRef,c=e.innerElementType,l=e.innerTagName,u=e.itemCount,d=e.itemData,f=e.itemKey,p=void 0===f?Pn:f,h=e.layout,m=e.outerElementType,b=e.outerTagName,v=e.style,g=e.useIsScrolling,y=e.width,O=this.state.isScrolling,j=\"horizontal\"===o||\"horizontal\"===h,_=j?this._onScrollHorizontal:this._onScrollVertical,w=this._getRangeToRender(),A=w[0],x=w[1],C=[];if(u>0)for(var S=A;S<=x;S++)C.push(Object(a.createElement)(t,{data:d,key:p(S,d),index:S,isScrolling:g?O:void 0,style:this._getItemStyle(S)}));var E=r(this.props,this._instanceProps);return Object(a.createElement)(m||b||\"div\",{className:n,onScroll:_,ref:this._outerRefSetter,style:Object(xn.a)({position:\"relative\",height:i,width:y,overflow:\"auto\",WebkitOverflowScrolling:\"touch\",willChange:\"transform\",direction:o},v)},Object(a.createElement)(c||l||\"div\",{children:C,ref:s,style:{height:j?\"100%\":E,pointerEvents:O?\"none\":void 0,width:j?E:\"100%\"}}))},n._callPropsCallbacks=function(){if(\"function\"===typeof this.props.onItemsRendered&&this.props.itemCount>0){var e=this._getRangeToRender(),t=e[0],n=e[1],o=e[2],r=e[3];this._callOnItemsRendered(t,n,o,r)}if(\"function\"===typeof this.props.onScroll){var a=this.state,i=a.scrollDirection,s=a.scrollOffset,c=a.scrollUpdateWasRequested;this._callOnScroll(i,s,c)}},n._getRangeToRender=function(){var e=this.props,t=e.itemCount,n=e.overscanCount,o=this.state,r=o.isScrolling,a=o.scrollDirection,i=o.scrollOffset;if(0===t)return[0,0,0,0];var s=c(this.props,i,this._instanceProps),u=l(this.props,s,i,this._instanceProps),d=r&&\"backward\"!==a?1:Math.max(1,n),f=r&&\"forward\"!==a?1:Math.max(1,n);return[Math.max(0,s-d),Math.max(0,Math.min(t-1,u+f)),s,u]},t}(a.PureComponent),t.defaultProps={direction:\"ltr\",itemData:void 0,layout:\"vertical\",overscanCount:2,useIsScrolling:!1},n}var Gn=function(e,t){e.children,e.direction,e.height,e.layout,e.innerTagName,e.outerTagName,e.width,t.instance},Tn=In({getItemOffset:function(e,t){return t*e.itemSize},getItemSize:function(e,t){return e.itemSize},getEstimatedTotalSize:function(e){var t=e.itemCount;return e.itemSize*t},getOffsetForIndexAndAlignment:function(e,t,n,o){var r=e.direction,a=e.height,i=e.itemCount,s=e.itemSize,c=e.layout,l=e.width,u=\"horizontal\"===r||\"horizontal\"===c?l:a,d=Math.max(0,i*s-u),f=Math.min(d,t*s),p=Math.max(0,t*s-u+s);switch(\"smart\"===n&&(n=o>=p-u&&o<=f+u?\"auto\":\"center\"),n){case\"start\":return f;case\"end\":return p;case\"center\":var h=Math.round(p+(f-p)/2);return h<Math.ceil(u/2)?0:h>d+Math.floor(u/2)?d:h;case\"auto\":default:return o>=p&&o<=f?o:o<p?p:f}},getStartIndexForOffset:function(e,t){var n=e.itemCount,o=e.itemSize;return Math.max(0,Math.min(n-1,Math.floor(t/o)))},getStopIndexForStartIndex:function(e,t,n){var o=e.direction,r=e.height,a=e.itemCount,i=e.itemSize,s=e.layout,c=e.width,l=t*i,u=\"horizontal\"===o||\"horizontal\"===s?c:r,d=Math.ceil((u+n-l)/i);return Math.max(0,Math.min(a-1,t+d-1))},initInstanceProps:function(e){},shouldResetStyleCacheOnItemSizeChange:!0,validateProps:function(e){e.itemSize}});var Ln=n(\"UFVg\"),Fn=n.n(Ln),zn=function(e){var t=e.className,n=Object(f.b)(),r=Object(i.F)(),a=Object(i.G)(i.w);return Object(o.jsx)(\"form\",{className:c()(Fn.a.resultsInput,t),children:Object(o.jsx)(\"input\",{className:Fn.a.input,placeholder:r(\"results.input.placeholder\"),type:\"text\",value:a,onChange:function(e){n(i.h.actions.changeQuery(e.target.value))}})})},Un=n(\"6+LV\"),Wn=n(\"IQtc\"),Yn=n.n(Wn),qn=[{className:Yn.a.word,id:Un.a.Word,translationKey:\"common.word\"},{className:Yn.a.stat,id:Un.a.TilesCount,translationKey:\"common.tiles\"},{className:Yn.a.stat,id:Un.a.ConsonantsCount,translationKey:\"common.consonants\"},{className:Yn.a.stat,id:Un.a.VowelsCount,translationKey:\"common.vowels\"},{className:Yn.a.stat,id:Un.a.BlanksCount,translationKey:\"common.blanks\"},{className:Yn.a.stat,id:Un.a.WordsCount,translationKey:\"common.words\"},{className:Yn.a.points,id:Un.a.Points,translationKey:\"common.points\"}],Jn=function(){var e=Object(f.b)(),t=Object(i.F)(),n=Object(i.G)(i.x),r=Object(i.G)(i.y);return Object(o.jsx)(\"div\",{className:Yn.a.header,children:qn.map((function(a){return Object(o.jsx)(\"button\",{className:c()(Yn.a.headerButton,a.className),title:t(a.translationKey),type:\"button\",onClick:function(){return t=a.id,void e(i.h.actions.sort(t));var t},children:Object(o.jsxs)(\"span\",{className:Yn.a.cell,children:[Object(o.jsx)(\"span\",{className:Yn.a.headerButtonLabel,children:t(a.translationKey)}),n===a.id&&Object(o.jsx)(le,{className:Yn.a.sortIcon,icon:r===Un.b.Ascending?re:ne})]})},a.id)}))})},Kn=function(e){var t=e.className,n=e.translationKey,r=e.value,a=Object(i.F)();return Object(o.jsx)(\"span\",{className:c()(Yn.a.cell,t),title:\"\".concat(a(n),\": \").concat(r),children:r})},Vn=function(e){var t=e.index,n=e.style,r=Object(f.b)(),a=Object(i.G)(i.A)[t];return Object(o.jsx)(\"button\",{className:Yn.a.result,style:n,type:\"button\",onBlur:function(){r(i.h.actions.changeResultCandidate(null))},onClick:function(){r(i.h.actions.applyResult(a))},onFocus:function(){r(i.h.actions.changeResultCandidate(a))},onMouseEnter:function(){r(i.h.actions.changeResultCandidate(a))},onMouseLeave:function(){r(i.h.actions.changeResultCandidate(null))},children:Object(o.jsxs)(\"span\",{className:Yn.a.resultContent,children:[Object(o.jsx)(Kn,{className:Yn.a.word,translationKey:\"common.word\",value:a.word}),Object(o.jsx)(Kn,{className:Yn.a.stat,translationKey:\"common.tiles\",value:a.numberOfTiles}),Object(o.jsx)(Kn,{className:Yn.a.stat,translationKey:\"common.consonants\",value:a.numberOfConsonants}),Object(o.jsx)(Kn,{className:Yn.a.stat,translationKey:\"common.vowels\",value:a.numberOfVowels}),Object(o.jsx)(Kn,{className:Yn.a.stat,translationKey:\"common.blanks\",value:a.numberOfBlanks}),Object(o.jsx)(Kn,{className:Yn.a.stat,translationKey:\"common.words\",value:a.numberOfWords}),Object(o.jsx)(Kn,{className:Yn.a.points,translationKey:\"common.points\",value:a.points})]})})},Hn=function(){var e=Object(f.b)(),t=Object(i.F)(),n=Object(i.G)(i.r),r=Object(i.G)(i.t),a=Object(i.G)(i.i),s=r.some((function(e){return null!==e}));return Object(o.jsx)(Je,{className:Yn.a.outdatedButton,disabled:n||!a||!s,icon:Z,title:t(\"results.solve\"),type:\"submit\",onClick:function(){e(i.E.actions.submit())},children:t(\"results.solve\")})},Qn=function(e){var t=e.height,n=e.width,r=Object(i.F)(),a=Object(i.G)(i.B),s=Object(i.G)(i.A),l=Object(i.G)(i.r),u=Object(i.G)(i.i);return Object(o.jsxs)(\"div\",{className:Yn.a.results,children:[Object(o.jsx)(Jn,{}),\"undefined\"===typeof s&&Object(o.jsxs)(ut,{className:Yn.a.emptyState,type:\"info\",children:[r(\"results.empty-state.uninitialized\"),Object(o.jsx)(Hn,{})]}),\"undefined\"!==typeof s&&\"undefined\"!==typeof a&&Object(o.jsxs)(o.Fragment,{children:[u&&Object(o.jsxs)(ut,{className:Yn.a.emptyState,type:\"info\",children:[r(\"results.empty-state.outdated\"),Object(o.jsx)(Hn,{})]}),!u&&Object(o.jsxs)(o.Fragment,{children:[0===a.length&&Object(o.jsx)(ut,{className:Yn.a.emptyState,type:\"warning\",children:r(\"results.empty-state.no-results\")}),a.length>0&&0===s.length&&Object(o.jsx)(ut,{className:Yn.a.emptyState,type:\"info\",children:r(\"results.empty-state.no-filtered-results\")}),a.length>0&&s.length>0&&Object(o.jsx)(Tn,{className:c()(Yn.a.list,Object(h.a)({},Yn.a.outdated,u)),height:t-Ke.w-Ke.x,itemCount:s.length,itemSize:Ke.y,width:n,children:Vn}),a.length>0&&Object(o.jsx)(zn,{className:Yn.a.input})]})]}),l&&Object(o.jsx)(pt,{})]})},Xn=n(\"SQnd\"),Zn=n.n(Xn),$n=function(e){var t=e.children,n=e.className,r=e.contentClassName,a=e.onAnimationEnd,s=e.onClose,l=Object(i.F)();return Object(o.jsxs)(\"div\",{className:c()(Zn.a.screen,n),onAnimationEnd:a,children:[s&&Object(o.jsx)(Je,{className:Zn.a.closeButton,icon:D,title:l(\"common.close\"),onClick:s,children:l(\"common.close\")}),Object(o.jsx)(\"div\",{className:c()(Zn.a.content,r),children:t})]})},eo=n(\"NpR5\"),to=n.n(eo),no=\"null\",oo=function(e){if(\"left\"===e||\"right\"===e)return e;if(e===no)return null;throw new Error('\"'.concat(e,'\" is not valid. Should be \"left\", \"right\", or \"').concat(no,'\"'))},ro=function(e){var t=e.className,n=e.disabled,r=Object(f.b)(),a=Object(i.F)(),s=Object(i.G)(i.j),c=[{label:a(\"settings.autoGroupTiles.left\"),value:\"left\"},{label:a(\"settings.autoGroupTiles.right\"),value:\"right\"},{label:a(\"settings.autoGroupTiles.null\"),value:no}],l=function(e){var t=oo(e.target.value);r(i.D.actions.changeAutoGroupTiles(t))};return Object(o.jsx)(\"div\",{className:t,children:c.map((function(e){return Object(o.jsx)(gn,{checked:s===oo(e.value),className:to.a.option,disabled:n,id:\"autoGroupTiles\",name:\"autoGroupTiles\",title:e.label,value:e.value,onChange:l,children:Object(o.jsx)(\"div\",{className:to.a.label,children:e.label})},e.value)}))})},ao=n(\"A/bs\"),io=n.n(ao),so=[{label:Ve.scrabble.name,value:Ve.scrabble.id},{label:Ve.literaki.name,value:Ve.literaki.id}],co=function(e){var t=e.className,n=e.disabled,r=Object(f.b)(),a=Object(i.G)(i.o),s=function(e){r(i.D.actions.changeConfigId(e.target.value))};return Object(o.jsx)(\"div\",{className:t,children:so.map((function(e){return Object(o.jsx)(gn,{checked:a===e.value,className:io.a.option,disabled:n,id:\"configId\",name:\"configId\",title:e.label,value:e.value,onChange:s,children:Object(o.jsx)(\"div\",{className:io.a.label,children:e.label})},e.value)}))})},lo=n(\"41Wr\"),uo=n.n(lo),fo=[{className:uo.a.gb,icon:U,label:\"English (GB)\",value:He.Locale.EN_GB},{className:uo.a.us,icon:J,label:\"English (US)\",value:He.Locale.EN_US},{className:uo.a.fr,icon:F,label:\"Fran\\xe7ais\",value:He.Locale.FR_FR},{className:uo.a.pl,icon:Y,label:\"Polski\",value:He.Locale.PL_PL},{className:uo.a.es,icon:T,label:\"Espa\\xf1ol\",value:He.Locale.ES_ES}],po=function(e){var t=e.className,n=e.disabled,r=Object(f.b)(),a=Object(i.G)(i.s),s=function(e){var t=e.target.value;r(i.D.actions.changeLocale(t))};return Object(o.jsx)(\"div\",{className:t,children:fo.map((function(e){return Object(o.jsx)(gn,{checked:a===e.value,className:c()(uo.a.option,t,Object(h.a)({},uo.a.checked,a===e.value)),disabled:n,id:\"locale\",name:\"locale\",title:\"\".concat(e.label,\" (\").concat(e.value,\")\"),value:e.value,onChange:s,children:Object(o.jsxs)(\"span\",{className:uo.a.label,children:[Object(o.jsx)(le,{className:c()(uo.a.flag,e.className),icon:e.icon}),Object(o.jsx)(\"span\",{children:e.label})]})},e.value)}))})},ho=function(e){var t=e.className,n=e.isOpen,r=e.onClose,a=Object(i.F)();return Object(o.jsxs)(Lt,{className:t,isOpen:n,title:a(\"settings\"),onClose:r,children:[Object(o.jsx)(Lt.Section,{title:a(\"settings.game\"),children:Object(o.jsx)(co,{disabled:!n})}),Object(o.jsx)(Lt.Section,{title:a(\"settings.language\"),children:Object(o.jsx)(po,{disabled:!n})}),Object(o.jsx)(Lt.Section,{title:a(\"settings.autoGroupTiles\"),children:Object(o.jsx)(ro,{disabled:!n})})]})},mo=n(\"pdKp\"),bo=n.n(mo),vo=function(e){var t=e.className,n=e.forceShow,r=e.onAnimationEnd;return Object(o.jsxs)($n,{className:c()(bo.a.splash,t,Object(h.a)({},bo.a.animated,!n)),onAnimationEnd:r,children:[Object(o.jsxs)(\"div\",{className:bo.a.logos,children:[Object(o.jsx)(tn,{className:bo.a.logoGrayscale}),Object(o.jsx)(tn,{className:bo.a.logoColor})]}),Object(o.jsx)(\"h1\",{className:bo.a.author,children:\"by Kamil Mielnik\"})]})},go=n(\"X4yr\"),yo=n.n(go);function Oo(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function jo(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Oo(Object(n),!0).forEach((function(t){Object(h.a)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Oo(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var _o=Object(a.forwardRef)((function(e,t){var n=e.children,r=e.className,a=ie(e,[\"children\",\"className\"]);return Object(o.jsx)(\"div\",jo(jo({className:c()(yo.a.well,r),ref:t},a),{},{children:n}))}))},NpR5:function(e,t,n){e.exports={option:\"AutoGroupTilesSetting_option__iqYF_\",label:\"AutoGroupTilesSetting_label__6_UJu\"}},ODXe:function(e,t,n){\"use strict\";n.d(t,\"a\",(function(){return r}));var o=n(\"BsWD\");function r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(\"undefined\"!==typeof Symbol&&Symbol.iterator in Object(e)){var n=[],o=!0,r=!1,a=void 0;try{for(var i,s=e[Symbol.iterator]();!(o=(i=s.next()).done)&&(n.push(i.value),!t||n.length!==t);o=!0);}catch(c){r=!0,a=c}finally{try{o||null==s.return||s.return()}finally{if(r)throw a}}return n}}(e,t)||Object(o.a)(e,t)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}},QEso:function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},r=\"function\"===typeof Symbol&&\"symbol\"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},a=function(){function e(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,\"value\"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(t,n,o){return n&&e(t.prototype,n),o&&e(t,o),t}}(),i=n(\"q1tI\"),s=m(n(\"17x9\")),c=h(n(\"VKEO\")),l=m(n(\"S1to\")),u=h(n(\"Ye7m\")),d=h(n(\"fbhf\")),f=m(n(\"2zs7\")),p=m(n(\"UIKY\"));function h(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function m(e){return e&&e.__esModule?e:{default:e}}n(\"WkvU\");var b={overlay:\"ReactModal__Overlay\",content:\"ReactModal__Content\"},v=0,g=function(e){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,t);var n=function(e,t){if(!e)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!t||\"object\"!==typeof t&&\"function\"!==typeof t?e:t}(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.setOverlayRef=function(e){n.overlay=e,n.props.overlayRef&&n.props.overlayRef(e)},n.setContentRef=function(e){n.content=e,n.props.contentRef&&n.props.contentRef(e)},n.afterClose=function(){var e=n.props,t=e.appElement,o=e.ariaHideApp,r=e.htmlOpenClassName,a=e.bodyOpenClassName;a&&d.remove(document.body,a),r&&d.remove(document.getElementsByTagName(\"html\")[0],r),o&&v>0&&0===(v-=1)&&u.show(t),n.props.shouldFocusAfterRender&&(n.props.shouldReturnFocusAfterClose?(c.returnFocus(n.props.preventScroll),c.teardownScopedFocus()):c.popWithoutFocus()),n.props.onAfterClose&&n.props.onAfterClose(),p.default.deregister(n)},n.open=function(){n.beforeOpen(),n.state.afterOpen&&n.state.beforeClose?(clearTimeout(n.closeTimer),n.setState({beforeClose:!1})):(n.props.shouldFocusAfterRender&&(c.setupScopedFocus(n.node),c.markForFocusLater()),n.setState({isOpen:!0},(function(){n.setState({afterOpen:!0}),n.props.isOpen&&n.props.onAfterOpen&&n.props.onAfterOpen({overlayEl:n.overlay,contentEl:n.content})})))},n.close=function(){n.props.closeTimeoutMS>0?n.closeWithTimeout():n.closeWithoutTimeout()},n.focusContent=function(){return n.content&&!n.contentHasFocus()&&n.content.focus({preventScroll:!0})},n.closeWithTimeout=function(){var e=Date.now()+n.props.closeTimeoutMS;n.setState({beforeClose:!0,closesAt:e},(function(){n.closeTimer=setTimeout(n.closeWithoutTimeout,n.state.closesAt-Date.now())}))},n.closeWithoutTimeout=function(){n.setState({beforeClose:!1,isOpen:!1,afterOpen:!1,closesAt:null},n.afterClose)},n.handleKeyDown=function(e){9===e.keyCode&&(0,l.default)(n.content,e),n.props.shouldCloseOnEsc&&27===e.keyCode&&(e.stopPropagation(),n.requestClose(e))},n.handleOverlayOnClick=function(e){null===n.shouldClose&&(n.shouldClose=!0),n.shouldClose&&n.props.shouldCloseOnOverlayClick&&(n.ownerHandlesClose()?n.requestClose(e):n.focusContent()),n.shouldClose=null},n.handleContentOnMouseUp=function(){n.shouldClose=!1},n.handleOverlayOnMouseDown=function(e){n.props.shouldCloseOnOverlayClick||e.target!=n.overlay||e.preventDefault()},n.handleContentOnClick=function(){n.shouldClose=!1},n.handleContentOnMouseDown=function(){n.shouldClose=!1},n.requestClose=function(e){return n.ownerHandlesClose()&&n.props.onRequestClose(e)},n.ownerHandlesClose=function(){return n.props.onRequestClose},n.shouldBeClosed=function(){return!n.state.isOpen&&!n.state.beforeClose},n.contentHasFocus=function(){return document.activeElement===n.content||n.content.contains(document.activeElement)},n.buildClassName=function(e,t){var o=\"object\"===(\"undefined\"===typeof t?\"undefined\":r(t))?t:{base:b[e],afterOpen:b[e]+\"--after-open\",beforeClose:b[e]+\"--before-close\"},a=o.base;return n.state.afterOpen&&(a=a+\" \"+o.afterOpen),n.state.beforeClose&&(a=a+\" \"+o.beforeClose),\"string\"===typeof t&&t?a+\" \"+t:a},n.attributesFromObject=function(e,t){return Object.keys(t).reduce((function(n,o){return n[e+\"-\"+o]=t[o],n}),{})},n.state={afterOpen:!1,beforeClose:!1},n.shouldClose=null,n.moveFromContentToOverlay=null,n}return function(e,t){if(\"function\"!==typeof t&&null!==t)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),a(t,[{key:\"componentDidMount\",value:function(){this.props.isOpen&&this.open()}},{key:\"componentDidUpdate\",value:function(e,t){this.props.isOpen&&!e.isOpen?this.open():!this.props.isOpen&&e.isOpen&&this.close(),this.props.shouldFocusAfterRender&&this.state.isOpen&&!t.isOpen&&this.focusContent()}},{key:\"componentWillUnmount\",value:function(){this.state.isOpen&&this.afterClose(),clearTimeout(this.closeTimer)}},{key:\"beforeOpen\",value:function(){var e=this.props,t=e.appElement,n=e.ariaHideApp,o=e.htmlOpenClassName,r=e.bodyOpenClassName;r&&d.add(document.body,r),o&&d.add(document.getElementsByTagName(\"html\")[0],o),n&&(v+=1,u.hide(t)),p.default.register(this)}},{key:\"render\",value:function(){var e=this.props,t=e.id,n=e.className,r=e.overlayClassName,a=e.defaultStyles,i=e.children,s=n?{}:a.content,c=r?{}:a.overlay;if(this.shouldBeClosed())return null;var l={ref:this.setOverlayRef,className:this.buildClassName(\"overlay\",r),style:o({},c,this.props.style.overlay),onClick:this.handleOverlayOnClick,onMouseDown:this.handleOverlayOnMouseDown},u=o({id:t,ref:this.setContentRef,style:o({},s,this.props.style.content),className:this.buildClassName(\"content\",n),tabIndex:\"-1\",onKeyDown:this.handleKeyDown,onMouseDown:this.handleContentOnMouseDown,onMouseUp:this.handleContentOnMouseUp,onClick:this.handleContentOnClick,role:this.props.role,\"aria-label\":this.props.contentLabel},this.attributesFromObject(\"aria\",o({modal:!0},this.props.aria)),this.attributesFromObject(\"data\",this.props.data||{}),{\"data-testid\":this.props.testId}),d=this.props.contentElement(u,i);return this.props.overlayElement(l,d)}}]),t}(i.Component);g.defaultProps={style:{overlay:{},content:{}},defaultStyles:{}},g.propTypes={isOpen:s.default.bool.isRequired,defaultStyles:s.default.shape({content:s.default.object,overlay:s.default.object}),style:s.default.shape({content:s.default.object,overlay:s.default.object}),className:s.default.oneOfType([s.default.string,s.default.object]),overlayClassName:s.default.oneOfType([s.default.string,s.default.object]),bodyOpenClassName:s.default.string,htmlOpenClassName:s.default.string,ariaHideApp:s.default.bool,appElement:s.default.instanceOf(f.default),onAfterOpen:s.default.func,onAfterClose:s.default.func,onRequestClose:s.default.func,closeTimeoutMS:s.default.number,shouldFocusAfterRender:s.default.bool,shouldCloseOnOverlayClick:s.default.bool,shouldReturnFocusAfterClose:s.default.bool,preventScroll:s.default.bool,role:s.default.string,contentLabel:s.default.string,aria:s.default.object,data:s.default.object,children:s.default.node,shouldCloseOnEsc:s.default.bool,overlayRef:s.default.func,contentRef:s.default.func,id:s.default.string,overlayElement:s.default.func,contentElement:s.default.func,testId:s.default.string},t.default=g,e.exports=t.default},RuLr:function(e,t,n){e.exports={rack:\"Rack_rack__19pRD\",tile:\"Rack_tile__3eMqz\"}},S1to:function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=function(e,t){var n=(0,a.default)(e);if(!n.length)return void t.preventDefault();var o=void 0,r=t.shiftKey,i=n[0],s=n[n.length-1];if(e===document.activeElement){if(!r)return;o=s}s!==document.activeElement||r||(o=i);i===document.activeElement&&r&&(o=s);if(o)return t.preventDefault(),void o.focus();var c=/(\\bChrome\\b|\\bSafari\\b)\\//.exec(navigator.userAgent);if(null==c||\"Chrome\"==c[1]||null!=/\\biPod\\b|\\biPad\\b/g.exec(navigator.userAgent))return;var l=n.indexOf(document.activeElement);l>-1&&(l+=r?-1:1);if(\"undefined\"===typeof(o=n[l]))return t.preventDefault(),void(o=r?s:i).focus();t.preventDefault(),o.focus()};var o,r=n(\"ZDLa\"),a=(o=r)&&o.__esModule?o:{default:o};e.exports=t.default},SQnd:function(e,t,n){e.exports={screen:\"Screen_screen__1JVwd\",closeButton:\"Screen_closeButton__2eAGy\",content:\"Screen_content__3Bn9G\"}},SySy:function(e,t,n){e.exports={modal:\"Sidebar_modal__AVVNt\",afterOpen:\"Sidebar_afterOpen__3qtCP\",sidebar:\"Sidebar_sidebar__1BmXf\",beforeClose:\"Sidebar_beforeClose__vU4tB\",overlay:\"Sidebar_overlay__1Ccrb\",header:\"Sidebar_header__VjKGT\",title:\"Sidebar_title__2nqWj\",closeButton:\"Sidebar_closeButton__2Yro_\",content:\"Sidebar_content__1ezIJ\"}},TSYQ:function(e,t,n){var o;!function(){\"use strict\";var n={}.hasOwnProperty;function r(){for(var e=[],t=0;t<arguments.length;t++){var o=arguments[t];if(o){var a=typeof o;if(\"string\"===a||\"number\"===a)e.push(o);else if(Array.isArray(o)&&o.length){var i=r.apply(null,o);i&&e.push(i)}else if(\"object\"===a)for(var s in o)n.call(o,s)&&o[s]&&e.push(s)}}return e.join(\" \")}e.exports?(r.default=r,e.exports=r):void 0===(o=function(){return r}.apply(t,[]))||(e.exports=o)}()},UE3f:function(e,t,n){e.exports={board:\"Board_board__ASOu2\",row:\"Board_row__WXJ7Q\"}},UFVg:function(e,t,n){e.exports={resultsInput:\"ResultsInput_resultsInput__1xGkX\",input:\"ResultsInput_input__soybt\"}},UIKY:function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var o=new function e(){var t=this;!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e),this.register=function(e){-1===t.openInstances.indexOf(e)&&(t.openInstances.push(e),t.emit(\"register\"))},this.deregister=function(e){var n=t.openInstances.indexOf(e);-1!==n&&(t.openInstances.splice(n,1),t.emit(\"deregister\"))},this.subscribe=function(e){t.subscribers.push(e)},this.emit=function(e){t.subscribers.forEach((function(n){return n(e,t.openInstances.slice())}))},this.openInstances=[],this.subscribers=[]};t.default=o,e.exports=t.default},VCL8:function(e,t,n){\"use strict\";function o(){var e=this.constructor.getDerivedStateFromProps(this.props,this.state);null!==e&&void 0!==e&&this.setState(e)}function r(e){this.setState(function(t){var n=this.constructor.getDerivedStateFromProps(e,t);return null!==n&&void 0!==n?n:null}.bind(this))}function a(e,t){try{var n=this.props,o=this.state;this.props=e,this.state=t,this.__reactInternalSnapshotFlag=!0,this.__reactInternalSnapshot=this.getSnapshotBeforeUpdate(n,o)}finally{this.props=n,this.state=o}}function i(e){var t=e.prototype;if(!t||!t.isReactComponent)throw new Error(\"Can only polyfill class components\");if(\"function\"!==typeof e.getDerivedStateFromProps&&\"function\"!==typeof t.getSnapshotBeforeUpdate)return e;var n=null,i=null,s=null;if(\"function\"===typeof t.componentWillMount?n=\"componentWillMount\":\"function\"===typeof t.UNSAFE_componentWillMount&&(n=\"UNSAFE_componentWillMount\"),\"function\"===typeof t.componentWillReceiveProps?i=\"componentWillReceiveProps\":\"function\"===typeof t.UNSAFE_componentWillReceiveProps&&(i=\"UNSAFE_componentWillReceiveProps\"),\"function\"===typeof t.componentWillUpdate?s=\"componentWillUpdate\":\"function\"===typeof t.UNSAFE_componentWillUpdate&&(s=\"UNSAFE_componentWillUpdate\"),null!==n||null!==i||null!==s){var c=e.displayName||e.name,l=\"function\"===typeof e.getDerivedStateFromProps?\"getDerivedStateFromProps()\":\"getSnapshotBeforeUpdate()\";throw Error(\"Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n\"+c+\" uses \"+l+\" but also contains the following legacy lifecycles:\"+(null!==n?\"\\n \"+n:\"\")+(null!==i?\"\\n \"+i:\"\")+(null!==s?\"\\n \"+s:\"\")+\"\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\nhttps://fb.me/react-async-component-lifecycle-hooks\")}if(\"function\"===typeof e.getDerivedStateFromProps&&(t.componentWillMount=o,t.componentWillReceiveProps=r),\"function\"===typeof t.getSnapshotBeforeUpdate){if(\"function\"!==typeof t.componentDidUpdate)throw new Error(\"Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype\");t.componentWillUpdate=a;var u=t.componentDidUpdate;t.componentDidUpdate=function(e,t,n){var o=this.__reactInternalSnapshotFlag?this.__reactInternalSnapshot:n;u.call(this,e,t,o)}}return e}n.r(t),n.d(t,\"polyfill\",(function(){return i})),o.__suppressDeprecationWarning=!0,r.__suppressDeprecationWarning=!0,a.__suppressDeprecationWarning=!0},VKEO:function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.handleBlur=l,t.handleFocus=u,t.markForFocusLater=function(){i.push(document.activeElement)},t.returnFocus=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=null;try{return void(0!==i.length&&(t=i.pop()).focus({preventScroll:e}))}catch(n){console.warn([\"You tried to return focus to\",t,\"but it is not in the DOM anymore\"].join(\" \"))}},t.popWithoutFocus=function(){i.length>0&&i.pop()},t.setupScopedFocus=function(e){s=e,window.addEventListener?(window.addEventListener(\"blur\",l,!1),document.addEventListener(\"focus\",u,!0)):(window.attachEvent(\"onBlur\",l),document.attachEvent(\"onFocus\",u))},t.teardownScopedFocus=function(){s=null,window.addEventListener?(window.removeEventListener(\"blur\",l),document.removeEventListener(\"focus\",u)):(window.detachEvent(\"onBlur\",l),document.detachEvent(\"onFocus\",u))};var o,r=n(\"ZDLa\"),a=(o=r)&&o.__esModule?o:{default:o};var i=[],s=null,c=!1;function l(){c=!0}function u(){if(c){if(c=!1,!s)return;setTimeout((function(){s.contains(document.activeElement)||((0,a.default)(s)[0]||s).focus()}),0)}}},WX7Y:function(e,t,n){e.exports={wave:\"PlainTiles_wave__RkrSN\",tile:\"PlainTiles_tile__3-ZhZ\",dropShadow:\"PlainTiles_dropShadow__3ARSR\",hide:\"PlainTiles_hide__17cvO\",progress:\"PlainTiles_progress__3cL21\",pulse:\"PlainTiles_pulse__3r1EF\"}},WkvU:function(e,t,n){\"use strict\";var o,r=n(\"UIKY\"),a=(o=r)&&o.__esModule?o:{default:o};var i=void 0,s=void 0,c=[];function l(){0!==c.length&&c[c.length-1].focusContent()}a.default.subscribe((function(e,t){i&&s||((i=document.createElement(\"div\")).setAttribute(\"data-react-modal-body-trap\",\"\"),i.style.position=\"absolute\",i.style.opacity=\"0\",i.setAttribute(\"tabindex\",\"0\"),i.addEventListener(\"focus\",l),(s=i.cloneNode()).addEventListener(\"focus\",l)),(c=t).length>0?(document.body.firstChild!==i&&document.body.insertBefore(i,document.body.firstChild),document.body.lastChild!==s&&document.body.appendChild(s)):(i.parentElement&&i.parentElement.removeChild(i),s.parentElement&&s.parentElement.removeChild(s))}))},X4yr:function(e,t,n){e.exports={well:\"Well_well__2rvZn\"}},YFqc:function(e,t,n){e.exports=n(\"cTJO\")},Ye7m:function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.assertNodeList=c,t.setElement=function(e){var t=e;if(\"string\"===typeof t&&i.canUseDOM){var n=document.querySelectorAll(t);c(n,t),t=\"length\"in n?n[0]:n}return s=t||s},t.validateElement=l,t.hide=function(e){l(e)&&(e||s).setAttribute(\"aria-hidden\",\"true\")},t.show=function(e){l(e)&&(e||s).removeAttribute(\"aria-hidden\")},t.documentNotReadyOrSSRTesting=function(){s=null},t.resetForTesting=function(){s=null};var o,r=n(\"2W6z\"),a=(o=r)&&o.__esModule?o:{default:o},i=n(\"2zs7\");var s=null;function c(e,t){if(!e||!e.length)throw new Error(\"react-modal: No elements were found for selector \"+t+\".\")}function l(e){return!(!e&&!s)||((0,a.default)(!1,[\"react-modal: App element is not defined.\",\"Please use `Modal.setAppElement(el)` or set `appElement={el}`.\",\"This is needed so screen readers don't see main content\",\"when modal is opened. It is not recommended, but you can opt-out\",\"by setting `ariaHideApp={false}`.\"].join(\" \")),!1)}},ZDLa:function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=function(e){return[].slice.call(e.querySelectorAll(\"*\"),0).filter(i)};var o=/input|select|textarea|button|object/;function r(e){var t=e.offsetWidth<=0&&e.offsetHeight<=0;if(t&&!e.innerHTML)return!0;var n=window.getComputedStyle(e);return t?\"visible\"!==n.getPropertyValue(\"overflow\")||e.scrollWidth<=0&&e.scrollHeight<=0:\"none\"==n.getPropertyValue(\"display\")}function a(e,t){var n=e.nodeName.toLowerCase();return(o.test(n)&&!e.disabled||\"a\"===n&&e.href||t)&&function(e){for(var t=e;t&&t!==document.body;){if(r(t))return!1;t=t.parentNode}return!0}(e)}function i(e){var t=e.getAttribute(\"tabindex\");null===t&&(t=void 0);var n=isNaN(t);return(n||t>=0)&&a(e,!n)}e.exports=t.default},bHoz:function(e,t,n){e.exports={group:\"RemainingTiles_group__2AWTh\",title:\"RemainingTiles_title__1zi0v\",content:\"RemainingTiles_content__3xzgX\"}},cTJO:function(e,t,n){\"use strict\";var o=n(\"J4zp\"),r=n(\"284h\");t.__esModule=!0,t.default=void 0;var a=r(n(\"q1tI\")),i=n(\"elyg\"),s=n(\"nOHt\"),c=n(\"vNVm\"),l={};function u(e,t,n,o){if(e&&(0,i.isLocalURL)(t)){e.prefetch(t,n,o).catch((function(e){0}));var r=o&&\"undefined\"!==typeof o.locale?o.locale:e&&e.locale;l[t+\"%\"+n+(r?\"%\"+r:\"\")]=!0}}var d=function(e){var t=!1!==e.prefetch,n=(0,s.useRouter)(),r=n&&n.pathname||\"/\",d=a.default.useMemo((function(){var t=(0,i.resolveHref)(r,e.href,!0),n=o(t,2),a=n[0],s=n[1];return{href:a,as:e.as?(0,i.resolveHref)(r,e.as):s||a}}),[r,e.href,e.as]),f=d.href,p=d.as,h=e.children,m=e.replace,b=e.shallow,v=e.scroll,g=e.locale;\"string\"===typeof h&&(h=a.default.createElement(\"a\",null,h));var y=a.Children.only(h),O=y&&\"object\"===typeof y&&y.ref,j=(0,c.useIntersection)({rootMargin:\"200px\"}),_=o(j,2),w=_[0],A=_[1],x=a.default.useCallback((function(e){w(e),O&&(\"function\"===typeof O?O(e):\"object\"===typeof O&&(O.current=e))}),[O,w]);(0,a.useEffect)((function(){var e=A&&t&&(0,i.isLocalURL)(f),o=\"undefined\"!==typeof g?g:n&&n.locale,r=l[f+\"%\"+p+(o?\"%\"+o:\"\")];e&&!r&&u(n,f,p,{locale:o})}),[p,f,A,g,t,n]);var C={ref:x,onClick:function(e){y.props&&\"function\"===typeof y.props.onClick&&y.props.onClick(e),e.defaultPrevented||function(e,t,n,o,r,a,s,c){(\"A\"!==e.currentTarget.nodeName||!function(e){var t=e.currentTarget.target;return t&&\"_self\"!==t||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||e.nativeEvent&&2===e.nativeEvent.which}(e)&&(0,i.isLocalURL)(n))&&(e.preventDefault(),null==s&&(s=o.indexOf(\"#\")<0),t[r?\"replace\":\"push\"](n,o,{shallow:a,locale:c,scroll:s}).then((function(e){e&&s&&document.body.focus()})))}(e,n,f,p,m,b,v,g)},onMouseEnter:function(e){(0,i.isLocalURL)(f)&&(y.props&&\"function\"===typeof y.props.onMouseEnter&&y.props.onMouseEnter(e),u(n,f,p,{priority:!0}))}};if(e.passHref||\"a\"===y.type&&!(\"href\"in y.props)){var S=\"undefined\"!==typeof g?g:n&&n.locale,E=(0,i.getDomainLocale)(p,S,n&&n.locales,n&&n.domainLocales);C.href=E||(0,i.addBasePath)((0,i.addLocale)(p,S,n&&n.defaultLocale))}return a.default.cloneElement(y,C)};t.default=d},fbhf:function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.dumpClassLists=function(){0};var o={},r={};t.add=function(e,t){return n=e.classList,a=\"html\"==e.nodeName.toLowerCase()?o:r,void t.split(\" \").forEach((function(e){!function(e,t){e[t]||(e[t]=0),e[t]+=1}(a,e),n.add(e)}));var n,a},t.remove=function(e,t){return n=e.classList,a=\"html\"==e.nodeName.toLowerCase()?o:r,void t.split(\" \").forEach((function(e){!function(e,t){e[t]&&(e[t]-=1)}(a,e),0===a[e]&&n.remove(e)}));var n,a}},hj7B:function(e,t,n){e.exports={checkbox:\"Checkbox_checkbox__TMzB8\",icon:\"Checkbox_icon__1x7ag\",checked:\"Checkbox_checked__2Le1z\",input:\"Checkbox_input__3o21M\",content:\"Checkbox_content__1VcXS\"}},jVvz:function(e,t,n){e.exports={navButtons:\"NavButtons_navButtons__1og2w\",button:\"NavButtons_button__2YUcq\",separator:\"NavButtons_separator__3dZKW\",error:\"NavButtons_error___bS0g\"}},lFTW:function(e,t,n){e.exports={notFound:\"NotFound_notFound__3lall\",link:\"NotFound_link__23_eH\",icon:\"NotFound_icon__2qUrU\",tiles:\"NotFound_tiles__1Qnr3\"}},mk9T:function(e,t,n){e.exports={dictionary:\"Dictionary_dictionary__2LVIo\",content:\"Dictionary_content__35SFT\",word:\"Dictionary_word__yTxK-\",isAllowed:\"Dictionary_isAllowed__1pY0l\",isNotAllowed:\"Dictionary_isNotAllowed__sGDpa\",definitions:\"Dictionary_definitions__1B_VQ\",definition:\"Dictionary_definition__1tU6g\"}},pdKp:function(e,t,n){e.exports={splash:\"Splash_splash__1fgIO\",animated:\"Splash_animated__3KuaO\",hide:\"Splash_hide__xGaFV\",logos:\"Splash_logos__XgKlA\",pulse:\"Splash_pulse__2k_vY\",logoColor:\"Splash_logoColor__1R-9s\",progress:\"Splash_progress__1OiT4\",logoGrayscale:\"Splash_logoGrayscale__1Q8n_\",author:\"Splash_author__10OKS\",wave:\"Splash_wave__1o-S9\"}},qFS3:function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.bodyOpenClassName=t.portalClassName=void 0;var o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},r=function(){function e(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,\"value\"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(t,n,o){return n&&e(t.prototype,n),o&&e(t,o),t}}(),a=n(\"q1tI\"),i=h(a),s=h(n(\"i8i4\")),c=h(n(\"17x9\")),l=h(n(\"QEso\")),u=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(\"Ye7m\")),d=n(\"2zs7\"),f=h(d),p=n(\"VCL8\");function h(e){return e&&e.__esModule?e:{default:e}}function m(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}function b(e,t){if(!e)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!t||\"object\"!==typeof t&&\"function\"!==typeof t?e:t}var v=t.portalClassName=\"ReactModalPortal\",g=t.bodyOpenClassName=\"ReactModal__Body--open\",y=d.canUseDOM&&void 0!==s.default.createPortal,O=function(){return y?s.default.createPortal:s.default.unstable_renderSubtreeIntoContainer};function j(e){return e()}var _=function(e){function t(){var e,n,r;m(this,t);for(var a=arguments.length,c=Array(a),u=0;u<a;u++)c[u]=arguments[u];return n=r=b(this,(e=t.__proto__||Object.getPrototypeOf(t)).call.apply(e,[this].concat(c))),r.removePortal=function(){!y&&s.default.unmountComponentAtNode(r.node);var e=j(r.props.parentSelector);e&&e.contains(r.node)?e.removeChild(r.node):console.warn('React-Modal: \"parentSelector\" prop did not returned any DOM element. Make sure that the parent element is unmounted to avoid any memory leaks.')},r.portalRef=function(e){r.portal=e},r.renderPortal=function(e){var n=O()(r,i.default.createElement(l.default,o({defaultStyles:t.defaultStyles},e)),r.node);r.portalRef(n)},b(r,n)}return function(e,t){if(\"function\"!==typeof t&&null!==t)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),r(t,[{key:\"componentDidMount\",value:function(){d.canUseDOM&&(y||(this.node=document.createElement(\"div\")),this.node.className=this.props.portalClassName,j(this.props.parentSelector).appendChild(this.node),!y&&this.renderPortal(this.props))}},{key:\"getSnapshotBeforeUpdate\",value:function(e){return{prevParent:j(e.parentSelector),nextParent:j(this.props.parentSelector)}}},{key:\"componentDidUpdate\",value:function(e,t,n){if(d.canUseDOM){var o=this.props,r=o.isOpen,a=o.portalClassName;e.portalClassName!==a&&(this.node.className=a);var i=n.prevParent,s=n.nextParent;s!==i&&(i.removeChild(this.node),s.appendChild(this.node)),(e.isOpen||r)&&!y&&this.renderPortal(this.props)}}},{key:\"componentWillUnmount\",value:function(){if(d.canUseDOM&&this.node&&this.portal){var e=this.portal.state,t=Date.now(),n=e.isOpen&&this.props.closeTimeoutMS&&(e.closesAt||t+this.props.closeTimeoutMS);n?(e.beforeClose||this.portal.closeWithTimeout(),setTimeout(this.removePortal,n-t)):this.removePortal()}}},{key:\"render\",value:function(){return d.canUseDOM&&y?(!this.node&&y&&(this.node=document.createElement(\"div\")),O()(i.default.createElement(l.default,o({ref:this.portalRef,defaultStyles:t.defaultStyles},this.props)),this.node)):null}}],[{key:\"setAppElement\",value:function(e){u.setElement(e)}}]),t}(a.Component);_.propTypes={isOpen:c.default.bool.isRequired,style:c.default.shape({content:c.default.object,overlay:c.default.object}),portalClassName:c.default.string,bodyOpenClassName:c.default.string,htmlOpenClassName:c.default.string,className:c.default.oneOfType([c.default.string,c.default.shape({base:c.default.string.isRequired,afterOpen:c.default.string.isRequired,beforeClose:c.default.string.isRequired})]),overlayClassName:c.default.oneOfType([c.default.string,c.default.shape({base:c.default.string.isRequired,afterOpen:c.default.string.isRequired,beforeClose:c.default.string.isRequired})]),appElement:c.default.instanceOf(f.default),onAfterOpen:c.default.func,onRequestClose:c.default.func,closeTimeoutMS:c.default.number,ariaHideApp:c.default.bool,shouldFocusAfterRender:c.default.bool,shouldCloseOnOverlayClick:c.default.bool,shouldReturnFocusAfterClose:c.default.bool,preventScroll:c.default.bool,parentSelector:c.default.func,aria:c.default.object,data:c.default.object,role:c.default.string,contentLabel:c.default.string,shouldCloseOnEsc:c.default.bool,overlayRef:c.default.func,contentRef:c.default.func,id:c.default.string,overlayElement:c.default.func,contentElement:c.default.func},_.defaultProps={isOpen:!1,portalClassName:v,bodyOpenClassName:g,role:\"dialog\",ariaHideApp:!0,closeTimeoutMS:0,shouldFocusAfterRender:!0,shouldCloseOnEsc:!0,shouldCloseOnOverlayClick:!0,shouldReturnFocusAfterClose:!0,preventScroll:!1,parentSelector:function(){return document.body},overlayElement:function(e,t){return i.default.createElement(\"div\",e,t)},contentElement:function(e,t){return i.default.createElement(\"div\",e,t)}},_.defaultStyles={overlay:{position:\"fixed\",top:0,left:0,right:0,bottom:0,backgroundColor:\"rgba(255, 255, 255, 0.75)\"},content:{position:\"absolute\",top:\"40px\",left:\"40px\",right:\"40px\",bottom:\"40px\",border:\"1px solid #ccc\",background:\"#fff\",overflow:\"auto\",WebkitOverflowScrolling:\"touch\",borderRadius:\"4px\",outline:\"none\",padding:\"20px\"}},(0,p.polyfill)(_),t.default=_},\"r/Hp\":function(e,t,n){e.exports={tile:\"Tile_tile__2zdlK\",raised:\"Tile_raised__3bruO\",points1:\"Tile_points1__3kQ_0\",points2:\"Tile_points2__1TZdg\",points3:\"Tile_points3__28-Zh\",points4:\"Tile_points4__1HVw7\",points5:\"Tile_points5___-zw4\",blank:\"Tile_blank__MbmGr\",character:\"Tile_character__3dEBi\",highlighted:\"Tile_highlighted__1L53H\",points:\"Tile_points__-wyIb\"}},sEFA:function(e,t,n){e.exports={loading:\"Loading_loading__1dXNE\",dim:\"Loading_dim__2ewDS\",logo:\"Loading_logo__2nlr3\",tiles:\"Loading_tiles__gEhWd\"}},vNVm:function(e,t,n){\"use strict\";var o=n(\"J4zp\"),r=n(\"TqRt\");t.__esModule=!0,t.useIntersection=function(e){var t=e.rootMargin,n=e.disabled||!s,r=(0,a.useRef)(),l=(0,a.useState)(!1),u=o(l,2),d=u[0],f=u[1],p=(0,a.useCallback)((function(e){r.current&&(r.current(),r.current=void 0),n||d||e&&e.tagName&&(r.current=function(e,t,n){var o=function(e){var t=e.rootMargin||\"\",n=c.get(t);if(n)return n;var o=new Map,r=new IntersectionObserver((function(e){e.forEach((function(e){var t=o.get(e.target),n=e.isIntersecting||e.intersectionRatio>0;t&&n&&t(n)}))}),e);return c.set(t,n={id:t,observer:r,elements:o}),n}(n),r=o.id,a=o.observer,i=o.elements;return i.set(e,t),a.observe(e),function(){i.delete(e),a.unobserve(e),0===i.size&&(a.disconnect(),c.delete(r))}}(e,(function(e){return e&&f(e)}),{rootMargin:t}))}),[n,t,d]);return(0,a.useEffect)((function(){s||d||(0,i.default)((function(){return f(!0)}))}),[d]),[p,d]};var a=n(\"q1tI\"),i=r(n(\"0G5g\")),s=\"undefined\"!==typeof IntersectionObserver;var c=new Map},z9kn:function(e,t,n){e.exports={section:\"Section_section__o4HeJ\",heading:\"Section_heading__2mcEO\"}}}]);","map":{"version":3,"sources":["static/chunks/9173c43c67b8e6b6863c872190b4ad904108d7de.07e5b409a899ed167668.js"],"names":["window","push","1zWx","module","exports","__webpack_require__","button","content","icon","label","2W6z","warning","2rMq","__WEBPACK_AMD_DEFINE_RESULT__","canUseDOM","document","createElement","ExecutionEnvironment","canUseWorkers","Worker","canUseEventListeners","addEventListener","attachEvent","canUseViewport","screen","undefined","call","2zs7","Object","defineProperty","value","obj","_exenv","EE","__esModule","default","SafeHTMLElement","HTMLElement","41Wr","option","flag","checked","es","fr","gb","pl","us","4BeY","global","factory","SpriteSymbol","ref","id","viewBox","this","createCommonjsModule","fn","prototype","stringify","toString","destroy","this$1","forEach","prop","self","deepmerge","isMergeableObject","val","emptyTarget","Array","isArray","cloneIfNecessary","optionsArgument","clone","defaultArrayMerge","target","source","destination","slice","e","i","indexOf","mergeObject","keys","key","array","arrayMerge","all","length","Error","reduce","prev","next","namespaces_1","svg","name","uri","xlink","defaultAttrs","wrapInSvgString","attributes","attrs","map","attr","replace","join","objectToAttrsString","SpriteSymbol$$1","BrowserSpriteSymbol","apply","arguments","__proto__","create","constructor","prototypeAccessors","isMounted","get","node","createFromExistingNode","getAttribute","outerHTML","unmount","mount","mountTarget","querySelector","render","appendChild","hasImportNode","importNode","doc","DOMParser","parseFromString","documentElement","parse","childNodes","parentNode","removeChild","defineProperties","5d2k","squareButton","99so","9rZX","_Modal","_Modal2","A/bs","BdcD","radio","input","CjmZ","cell","bonusCharacter1","bonusCharacter2","bonusCharacter3","bonusCharacter5","bonusCharacterMultiplier2","bonusCharacterMultiplier3","bonusWord2","bonusWord3","characterPoints1","characterPoints2","characterPoints3","characterPoints5","candidate","actions","action","toggleDirection","right","blank","active","EIE9","dictionaryInput","IH9G","mapping","description","group","plus","IQtc","results","emptyState","list","outdated","header","headerButton","headerButtonLabel","result","resultContent","word","stat","points","outdatedButton","sortIcon","IaFt","svg$1","xlink$1","defaultConfig","style","aria-hidden","Sprite","config","symbols","add","symbol","existing","find","remove","splice","filter","s","has","stringifiedSymbols","defaultConfig$1","autoConfigure","mountTo","syncUrlsWithBaseTag","listenLocationChangeEvent","locationChangeEvent","locationChangeAngularEmitter","usagesToUpdate","moveGradientsOutsideSymbol","arrayFrom","arrayLike","browser","test","navigator","userAgent","getUrlWithoutFragment","url","location","href","split","eventName","angular","run","$rootScope","$on","newUrl","oldUrl","data","event","createEvent","initCustomEvent","dispatchEvent","selector","querySelectorAll","insertBefore","xLinkNS","xLinkAttrName","specialUrlCharsPattern","encoder","match","charCodeAt","toUpperCase","sprite","attList","attSelector","updateUrls","references","startsWith","replaceWith","startsWithEncoded","replaceWithEncoded","nodes","matcher","acc","arrayfied","matched","concat","selectAttributes","localName","RegExp","setAttributeNS","updateReferences","Events","BrowserSprite","Sprite$$1","cfg","emitter","on","type","handler","off","emit","evt","_emitter","_autoConfigure","baseUrl","getElementsByTagName","handleLocationChange","_handleLocationChange","bind","spriteNode","symbolNode","updatedNodes","textContent","evalStylesIEWorkaround","detail","isNewSymbol","attach","removeEventListener","prepend","mountNode","usages","ready$1","listener","fns","hack","doScroll","domContentLoaded","loaded","readyState","shift","setTimeout","definition","spriteNodeId","loadSprite","getElementById","body","Jsr2","tiles","JxyW","character","finished","overused","tile","count","Nhdc","__webpack_exports__","d","components_Board_Board","components_Dictionary_Dictionary","components_DictionaryInput_DictionaryInput","components_KeyMap_KeyMap","components_Logo_Logo","components_NavButtons_NavButtons","components_NotFound_NotFound","components_Rack_Rack","components_RemainingTiles_RemainingTiles","components_Results_Results","components_Settings_Settings","components_Splash_Splash","components_SvgIcon_SvgIcon","Well_Well","jsx_runtime","slicedToArray","react","src_state","classnames","classnames_default","n","Board_module","Board_module_default","build","lib","browser_symbol","browser_symbol_default","browser_sprite_build","browser_sprite_build_default","a","use","arrowDown","arrowLeft_symbol","arrowLeft","arrowRight_symbol","arrowRight","arrowUp_symbol","arrowUp","checkboxChecked_symbol","checkboxEmpty_symbol","cog_symbol","cog","cross_symbol","cross","dashCircleFill_symbol","dashCircleFill","eraser_symbol","eraser","flagEs_symbol","flagEs","flagFr_symbol","flagFr","flagGb_symbol","flagGb","flagPl_symbol","flagPl","flagUs_symbol","flagUs","github_symbol","github","keyboard_symbol","keyboard","play_symbol","play","sack_symbol","sack","sortDown_symbol","sortDown","sortUp_symbol","sortUp","objectWithoutPropertiesLoose","_objectWithoutProperties","excluded","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","ownKeys","object","enumerableOnly","sym","getOwnPropertyDescriptor","enumerable","_objectSpread","getOwnPropertyDescriptors","_ref","props","children","xlinkHref","Tile_module","Tile_module_default","TilePure_handleChange","preventDefault","TilePure_TilePure","_classNames","autoFocus","canShowPoints","className","disabled","highlighted","inputRef","inputStyle","isBlank","placeholder","pointsStyle","raised","tabIndex","onFocus","onKeyDown","points1","points2","points3","points4","points5","autoCapitalize","autoComplete","autoCorrect","maxLength","spellCheck","onChange","Tile_TilePure","components_Tile_Tile","_ref$character","size","_getTileSizes","pointsFontSize","tileFontSize","tileSize","height","width","fontSize","isEmpty","current","focus","Cell_module","Cell_module_default","Button_ownKeys","Button_objectSpread","Cell_Button","CHARACTER_CLASSNAMES","1","2","3","5","WORD_CLASSNAMES","CHARACTER_MULTIPLIER_CLASSNAMES","lib_getBonusClassname","bonus","getWordBonusClassname","getCharacterBonusClassname","x","y","multiplier","score","CellPure_CellPure","direction","translate","onDirectionToggleClick","onToggleBlankClick","isCandidate","title","onClick","Cell_CellPure","components_Cell_Cell","onDirectionToggle","dispatch","state","handleFocus","handleToggleBlankClick","toggleCellIsBlank","handleDirectionToggleClick","BoardPure_BoardPure","innerRef","lastDirection","refs","rows","cellSize","board","cells","row","Board_BoardPure","esm_useLatest","lib_getPositionInGrid","grid","constraint","useGrid_ownKeys","useGrid_objectSpread","hooks_useGrid","activeIndexRef","_useState","setLastDirection","lastDirectionRef","changeActiveIndex","offsetX","offsetY","_refs$y$x$current","Math","min","max","getInputRefPosition","onMoveFocus","offset","onArrowDown","onArrowLeft","onArrowRight","onArrowUp","onBackspace","position","changeCellValue","onDelete","toLowerCase","isTogglingBlank","twoCharacterTile","getTwoCharacterTileByPrefix","hasCharacter","canCheckLeft","canCheckRight","canCheckDown","twoCharacterCandidate","twoCharacterTiles","includes","_twoCharacterCandidate","_twoCharacterCandidate2","_twoCharacterCandidate3","_twoCharacterCandidate4","_useGrid","_useGrid2","_useGrid2$","_useGrid2$2","Button_module","Button_module_default","Button_Content","Link_ownKeys","Link_objectSpread","Button_Link","Button_Button_ownKeys","Button_Button_objectSpread","components_Button_Button","assign","Link","parameters","configs_build","types_build","lib_getX","index","lib_getY","lib_randomize","maxChange","random","lib_createPlainTile","cellIndex","color","rowIndex","showPoints","configPoints","EN_US","getCharacterPoints","defaultColor","transform","lib_createPlainTiles","words","wordIndex","cellOffset","_ref2","flat","lib_getViewbox","longestRowLength","rowLength","sum","PlainTiles_module","PlainTiles_module_default","PlainTiles_Tile","fill","dominantBaseline","fontFamily","fontWeight","textAnchor","components_PlainTiles_PlainTiles","dropShadow","wave","xmlns","EmptyState_module","EmptyState_module_default","TITLE_KEY_PER_TYPE","error","info","success","COLORS_PER_TYPE","components_EmptyState_EmptyState","Loading_module","Loading_module_default","components_Loading_Loading","_ref$wave","loading","dim","logo","Dictionary_module","Dictionary_module_default","_useTypedSelector","definitions","isAllowed","isLoading","dictionary","isNotAllowed","DictionaryInput_module","DictionaryInput_module_default","onSubmit","submit","required","changeInput","Key_module","Key_module_default","components_Key_Key","react_modal_lib","lib_default","SquareButton_module","SquareButton_module_default","SquareButton_Content","SquareButton_Link_ownKeys","SquareButton_Link_objectSpread","SquareButton_Link","SquareButton_ownKeys","SquareButton_objectSpread","components_SquareButton_SquareButton","Section_module","Section_module_default","components_Section_Section","section","heading","Sidebar_module","Sidebar_module_default","components_Sidebar_Sidebar","isOpen","onClose","afterOpen","base","modal","beforeClose","closeTimeoutMS","contentLabel","overlayClassName","overlay","onRequestClose","sidebar","closeButton","Section","Mapping_module","Mapping_module_default","components_Mapping_Mapping","ARROW_DOWN","ARROW_LEFT","ARROW_RIGHT","ARROW_UP","BACKSPACE","CTRL","DEL","ENTER","ARROWS","SPACE","firstLetter","CONTENT","NavButtons_module","NavButtons_module_default","onClear","onShowKeyMap","onShowRemainingTiles","onShowSettings","hasOverusedTiles","navButtons","rel","separator","next_link","link_default","NotFound_module","NotFound_module_default","NotFound_CONTENT","notFound","link","Rack_module","Rack_module_default","Rack_RackTile","_onKeyDown","handleCharacterChange","changeCharacter","handleKeyDown","newCharacter","rack","resultCandidateTiles","tilesCount","tilesRefs","nextActiveIndex","tileRef","Radio_module","Radio_module_default","components_Radio_Radio","htmlFor","Character_module","Character_module_default","RemainingTiles_Character","remainingCount","usedCount","RemainingTiles_module","RemainingTiles_module_default","groups","translationKey","totalCount","esm_extends","_inheritsLoose","subClass","superClass","_assertThisInitialized","ReferenceError","areInputsEqual","newInputs","lastInputs","memoize_one_esm","resultFn","isEqual","lastThis","lastResult","lastArgs","calledOnce","newArgs","_i","now","performance","Date","cancelTimeout","timeoutID","cancelAnimationFrame","requestTimeout","callback","delay","start","requestAnimationFrame","tick","cachedRTLResult","getRTLOffsetType","recalculate","outerDiv","outerStyle","overflow","innerDiv","innerStyle","scrollLeft","defaultItemKey$1","createListComponent","_class","_temp","getItemOffset","getEstimatedTotalSize","getItemSize","getOffsetForIndexAndAlignment","getStartIndexForOffset","getStopIndexForStartIndex","initInstanceProps","shouldResetStyleCacheOnItemSizeChange","validateProps","_PureComponent","List","_this","_instanceProps","_outerRef","_resetIsScrollingTimeoutId","instance","isScrolling","scrollDirection","scrollOffset","initialScrollOffset","scrollUpdateWasRequested","_callOnItemsRendered","overscanStartIndex","overscanStopIndex","visibleStartIndex","visibleStopIndex","onItemsRendered","_callOnScroll","onScroll","_getItemStyle","_this$props","itemSize","layout","itemStyleCache","_getItemStyleCache","hasOwnProperty","_offset","isHorizontal","isRtl","offsetHorizontal","left","top","_","__","___","_onScrollHorizontal","_event$currentTarget","currentTarget","clientWidth","scrollWidth","setState","prevState","_resetIsScrollingDebounced","_onScrollVertical","_event$currentTarget2","clientHeight","scrollHeight","scrollTop","_outerRefSetter","outerRef","_resetIsScrolling","getDerivedStateFromProps","nextProps","validateSharedProps$1","_proto","scrollTo","scrollToItem","align","itemCount","componentDidMount","_this$props2","_callPropsCallbacks","componentDidUpdate","_this$props3","_this$state","componentWillUnmount","_this$props4","innerElementType","innerTagName","itemData","_this$props4$itemKey","itemKey","outerElementType","outerTagName","useIsScrolling","_this$_getRangeToRend","_getRangeToRender","startIndex","stopIndex","items","_index","estimatedTotalSize","WebkitOverflowScrolling","willChange","pointerEvents","_this$_getRangeToRend2","_overscanStartIndex","_overscanStopIndex","_visibleStartIndex","_visibleStopIndex","_this$state2","_scrollDirection","_scrollOffset","_scrollUpdateWasRequested","_this$props5","overscanCount","_this$state3","overscanBackward","overscanForward","defaultProps","_ref3","FixedSizeList","_ref4","lastItemOffset","maxOffset","minOffset","middleOffset","round","ceil","floor","_ref5","_ref6","numVisibleItems","_ref7","ResultsInput_module","ResultsInput_module_default","components_ResultsInput_ResultsInput","resultsInput","changeQuery","types","Results_module","Results_module_default","columns","Word","TilesCount","ConsonantsCount","VowelsCount","BlanksCount","WordsCount","Points","Results_Header","sortColumn","sortDirection","column","columnId","sort","Ascending","Results_Cell","Results_Result","onBlur","changeResultCandidate","applyResult","onMouseEnter","onMouseLeave","numberOfTiles","numberOfConsonants","numberOfVowels","numberOfBlanks","numberOfWords","Results_SolveButton","isOutdated","hasTiles","some","allResults","Screen_module","Screen_module_default","components_Screen_Screen","contentClassName","onAnimationEnd","AutoGroupTilesSetting_module","AutoGroupTilesSetting_module_default","NULL_VALUE","lib_parseValue","components_AutoGroupTilesSetting_AutoGroupTilesSetting","configId","options","handleChange","autoGroupTiles","changeAutoGroupTiles","ConfigSetting_module","ConfigSetting_module_default","ConfigSetting_options","components_ConfigSetting_ConfigSetting","changeConfigId","LocaleSetting_module","LocaleSetting_module_default","LocaleSetting_options","EN_GB","FR_FR","PL_PL","ES_ES","components_LocaleSetting_LocaleSetting","locale","newLocale","changeLocale","Splash_module","Splash_module_default","forceShow","splash","animated","logos","logoGrayscale","logoColor","author","Well_module","Well_module_default","Well_ownKeys","Well_objectSpread","well","NpR5","ODXe","_slicedToArray","unsupportedIterableToArray","arr","_arrayWithHoles","Symbol","iterator","_arr","_n","_d","_e","_s","done","err","_iterableToArrayLimit","TypeError","_nonIterableRest","QEso","_extends","_typeof","_createClass","descriptor","configurable","writable","Constructor","protoProps","staticProps","_react","_propTypes2","_interopRequireDefault","focusManager","_interopRequireWildcard","_scopeTab2","ariaAppHider","classList","_safeHTMLElement2","_portalOpenInstances2","newObj","CLASS_NAMES","ariaHiddenInstances","ModalPortal","_Component","_classCallCheck","_possibleConstructorReturn","getPrototypeOf","setOverlayRef","overlayRef","setContentRef","contentRef","afterClose","appElement","ariaHideApp","htmlOpenClassName","bodyOpenClassName","show","shouldFocusAfterRender","shouldReturnFocusAfterClose","returnFocus","preventScroll","teardownScopedFocus","popWithoutFocus","onAfterClose","deregister","open","beforeOpen","clearTimeout","closeTimer","setupScopedFocus","markForFocusLater","onAfterOpen","overlayEl","contentEl","close","closeWithTimeout","closeWithoutTimeout","focusContent","contentHasFocus","closesAt","keyCode","shouldCloseOnEsc","stopPropagation","requestClose","handleOverlayOnClick","shouldClose","shouldCloseOnOverlayClick","ownerHandlesClose","handleContentOnMouseUp","handleOverlayOnMouseDown","handleContentOnClick","handleContentOnMouseDown","shouldBeClosed","activeElement","contains","buildClassName","which","additional","classNames","attributesFromObject","prefix","moveFromContentToOverlay","setPrototypeOf","_inherits","prevProps","_props","hide","register","_props2","defaultStyles","contentStyles","overlayStyles","overlayProps","onMouseDown","contentProps","onMouseUp","role","aria-label","aria","data-testid","testId","contentElement","overlayElement","Component","propTypes","bool","isRequired","shape","oneOfType","string","instanceOf","func","number","RuLr","S1to","tabbable","_tabbable2","shiftKey","head","tail","checkSafari","exec","_tabbable","SQnd","SySy","TSYQ","hasOwn","classes","arg","argType","inner","UE3f","UFVg","UIKY","portalOpenInstances","PortalOpenInstances","openInstance","openInstances","subscribe","subscribers","eventType","subscriber","VCL8","componentWillMount","componentWillReceiveProps","componentWillUpdate","nextState","__reactInternalSnapshotFlag","__reactInternalSnapshot","getSnapshotBeforeUpdate","polyfill","isReactComponent","foundWillMountName","foundWillReceivePropsName","foundWillUpdateName","UNSAFE_componentWillMount","UNSAFE_componentWillReceiveProps","UNSAFE_componentWillUpdate","componentName","displayName","newApiName","maybeSnapshot","snapshot","r","__suppressDeprecationWarning","VKEO","handleBlur","focusLaterElements","toFocus","pop","console","warn","element","modalElement","detachEvent","needToFocus","WX7Y","progress","pulse","WkvU","_portalOpenInstances","before","after","instances","setAttribute","opacity","cloneNode","firstChild","lastChild","parentElement","X4yr","YFqc","Ye7m","assertNodeList","setElement","useElement","_safeHTMLElement","el","globalElement","validateElement","removeAttribute","documentNotReadyOrSSRTesting","resetForTesting","_warning","_warning2","nodeList","ZDLa","tabbableNode","hidesContents","zeroSize","offsetWidth","offsetHeight","innerHTML","getComputedStyle","getPropertyValue","focusable","isTabIndexNotNaN","nodeName","visible","isTabIndexNaN","isNaN","bHoz","cTJO","_router","_router2","_useIntersection","prefetched","prefetch","router","as","isLocalURL","curLocale","_default","p","useRouter","pathname","_react$default$useMem","useMemo","resolveHref","resolvedHref","resolvedAs","shallow","scroll","child","Children","only","childRef","useIntersection","rootMargin","setIntersectionRef","isVisible","setRef","useCallback","useEffect","shouldPrefetch","isPrefetched","childProps","defaultPrevented","metaKey","ctrlKey","altKey","nativeEvent","isModifiedEvent","then","linkClicked","priority","passHref","localeDomain","getDomainLocale","locales","domainLocales","addBasePath","addLocale","defaultLocale","cloneElement","fbhf","dumpClassLists","htmlClassList","docBodyClassList","classString","classListRef","poll","incrementReference","decrementReference","hj7B","checkbox","jVvz","lFTW","mk9T","pdKp","qFS3","portalClassName","_react2","_reactDom2","_ModalPortal2","_reactLifecyclesCompat","isReact16","createPortal","getCreatePortal","unstable_renderSubtreeIntoContainer","getParentElement","parentSelector","Modal","_len","args","_key","removePortal","unmountComponentAtNode","parent","portalRef","portal","renderPortal","prevParent","nextParent","bottom","backgroundColor","border","background","borderRadius","outline","padding","r/Hp","sEFA","vNVm","isDisabled","hasIntersectionObserver","unobserve","useRef","useState","setVisible","tagName","_createObserver","observers","elements","Map","observer","IntersectionObserver","entries","entry","isIntersecting","intersectionRatio","set","createObserver","observe","disconnect","_requestIdleCallback","z9kn"],"mappings":"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"},"name":"static/chunks/9173c43c67b8e6b6863c872190b4ad904108d7de.07e5b409a899ed167668.js","input":"(window[\"webpackJsonp_N_E\"] = window[\"webpackJsonp_N_E\"] || []).push([[4],{\n\n/***/ \"1zWx\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"button\":\"Button_button__NTtqi\",\"content\":\"Button_content__1ng3a\",\"icon\":\"Button_icon__3NvAw\",\"label\":\"Button_label__2kVgE\"};\n\n/***/ }),\n\n/***/ \"2W6z\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = \"production\" !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n\n\n/***/ }),\n\n/***/ \"2rMq\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar __WEBPACK_AMD_DEFINE_RESULT__;/*!\n Copyright (c) 2015 Jed Watson.\n Based on code that is Copyright 2013-2015, Facebook, Inc.\n All rights reserved.\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar canUseDOM = !!(\n\t\ttypeof window !== 'undefined' &&\n\t\twindow.document &&\n\t\twindow.document.createElement\n\t);\n\n\tvar ExecutionEnvironment = {\n\n\t\tcanUseDOM: canUseDOM,\n\n\t\tcanUseWorkers: typeof Worker !== 'undefined',\n\n\t\tcanUseEventListeners:\n\t\t\tcanUseDOM && !!(window.addEventListener || window.attachEvent),\n\n\t\tcanUseViewport: canUseDOM && !!window.screen\n\n\t};\n\n\tif (true) {\n\t\t!(__WEBPACK_AMD_DEFINE_RESULT__ = (function () {\n\t\t\treturn ExecutionEnvironment;\n\t\t}).call(exports, __webpack_require__, exports, module),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t} else {}\n\n}());\n\n\n/***/ }),\n\n/***/ \"2zs7\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.canUseDOM = undefined;\n\nvar _exenv = __webpack_require__(\"2rMq\");\n\nvar _exenv2 = _interopRequireDefault(_exenv);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar EE = _exenv2.default;\n\nvar SafeHTMLElement = EE.canUseDOM ? window.HTMLElement : {};\n\nvar canUseDOM = exports.canUseDOM = EE.canUseDOM;\n\nexports.default = SafeHTMLElement;\n\n/***/ }),\n\n/***/ \"41Wr\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"option\":\"LocaleSetting_option__2xt_o\",\"flag\":\"LocaleSetting_flag__1pprE\",\"checked\":\"LocaleSetting_checked__3XJSh\",\"label\":\"LocaleSetting_label__2rj6n\",\"es\":\"LocaleSetting_es__3avX3\",\"fr\":\"LocaleSetting_fr__25G9k\",\"gb\":\"LocaleSetting_gb__qVZSX\",\"pl\":\"LocaleSetting_pl__YUmDs\",\"us\":\"LocaleSetting_us__30qoJ\"};\n\n/***/ }),\n\n/***/ \"4BeY\":\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(global) {(function (global, factory) {\n\t true ? module.exports = factory() :\n\tundefined;\n}(this, (function () { 'use strict';\n\nvar SpriteSymbol = function SpriteSymbol(ref) {\n var id = ref.id;\n var viewBox = ref.viewBox;\n var content = ref.content;\n\n this.id = id;\n this.viewBox = viewBox;\n this.content = content;\n};\n\n/**\n * @return {string}\n */\nSpriteSymbol.prototype.stringify = function stringify () {\n return this.content;\n};\n\n/**\n * @return {string}\n */\nSpriteSymbol.prototype.toString = function toString () {\n return this.stringify();\n};\n\nSpriteSymbol.prototype.destroy = function destroy () {\n var this$1 = this;\n\n ['id', 'viewBox', 'content'].forEach(function (prop) { return delete this$1[prop]; });\n};\n\n/**\n * @param {string} content\n * @return {Element}\n */\nvar parse = function (content) {\n var hasImportNode = !!document.importNode;\n var doc = new DOMParser().parseFromString(content, 'image/svg+xml').documentElement;\n\n /**\n * Fix for browser which are throwing WrongDocumentError\n * if you insert an element which is not part of the document\n * @see http://stackoverflow.com/a/7986519/4624403\n */\n if (hasImportNode) {\n return document.importNode(doc, true);\n }\n\n return doc;\n};\n\nvar commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\n\n\n\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\nvar deepmerge = createCommonjsModule(function (module, exports) {\n(function (root, factory) {\n if (false) {} else {\n module.exports = factory();\n }\n}(commonjsGlobal, function () {\n\nfunction isMergeableObject(val) {\n var nonNullObject = val && typeof val === 'object';\n\n return nonNullObject\n && Object.prototype.toString.call(val) !== '[object RegExp]'\n && Object.prototype.toString.call(val) !== '[object Date]'\n}\n\nfunction emptyTarget(val) {\n return Array.isArray(val) ? [] : {}\n}\n\nfunction cloneIfNecessary(value, optionsArgument) {\n var clone = optionsArgument && optionsArgument.clone === true;\n return (clone && isMergeableObject(value)) ? deepmerge(emptyTarget(value), value, optionsArgument) : value\n}\n\nfunction defaultArrayMerge(target, source, optionsArgument) {\n var destination = target.slice();\n source.forEach(function(e, i) {\n if (typeof destination[i] === 'undefined') {\n destination[i] = cloneIfNecessary(e, optionsArgument);\n } else if (isMergeableObject(e)) {\n destination[i] = deepmerge(target[i], e, optionsArgument);\n } else if (target.indexOf(e) === -1) {\n destination.push(cloneIfNecessary(e, optionsArgument));\n }\n });\n return destination\n}\n\nfunction mergeObject(target, source, optionsArgument) {\n var destination = {};\n if (isMergeableObject(target)) {\n Object.keys(target).forEach(function (key) {\n destination[key] = cloneIfNecessary(target[key], optionsArgument);\n });\n }\n Object.keys(source).forEach(function (key) {\n if (!isMergeableObject(source[key]) || !target[key]) {\n destination[key] = cloneIfNecessary(source[key], optionsArgument);\n } else {\n destination[key] = deepmerge(target[key], source[key], optionsArgument);\n }\n });\n return destination\n}\n\nfunction deepmerge(target, source, optionsArgument) {\n var array = Array.isArray(source);\n var options = optionsArgument || { arrayMerge: defaultArrayMerge };\n var arrayMerge = options.arrayMerge || defaultArrayMerge;\n\n if (array) {\n return Array.isArray(target) ? arrayMerge(target, source, optionsArgument) : cloneIfNecessary(source, optionsArgument)\n } else {\n return mergeObject(target, source, optionsArgument)\n }\n}\n\ndeepmerge.all = function deepmergeAll(array, optionsArgument) {\n if (!Array.isArray(array) || array.length < 2) {\n throw new Error('first argument should be an array with at least two elements')\n }\n\n // we are sure there are at least 2 values, so it is safe to have no initial value\n return array.reduce(function(prev, next) {\n return deepmerge(prev, next, optionsArgument)\n })\n};\n\nreturn deepmerge\n\n}));\n});\n\nvar namespaces_1 = createCommonjsModule(function (module, exports) {\nvar namespaces = {\n svg: {\n name: 'xmlns',\n uri: 'http://www.w3.org/2000/svg'\n },\n xlink: {\n name: 'xmlns:xlink',\n uri: 'http://www.w3.org/1999/xlink'\n }\n};\n\nexports.default = namespaces;\nmodule.exports = exports.default;\n});\n\n/**\n * @param {Object} attrs\n * @return {string}\n */\nvar objectToAttrsString = function (attrs) {\n return Object.keys(attrs).map(function (attr) {\n var value = attrs[attr].toString().replace(/\"/g, '&quot;');\n return (attr + \"=\\\"\" + value + \"\\\"\");\n }).join(' ');\n};\n\nvar svg = namespaces_1.svg;\nvar xlink = namespaces_1.xlink;\n\nvar defaultAttrs = {};\ndefaultAttrs[svg.name] = svg.uri;\ndefaultAttrs[xlink.name] = xlink.uri;\n\n/**\n * @param {string} [content]\n * @param {Object} [attributes]\n * @return {string}\n */\nvar wrapInSvgString = function (content, attributes) {\n if ( content === void 0 ) content = '';\n\n var attrs = deepmerge(defaultAttrs, attributes || {});\n var attrsRendered = objectToAttrsString(attrs);\n return (\"<svg \" + attrsRendered + \">\" + content + \"</svg>\");\n};\n\nvar BrowserSpriteSymbol = (function (SpriteSymbol$$1) {\n function BrowserSpriteSymbol () {\n SpriteSymbol$$1.apply(this, arguments);\n }\n\n if ( SpriteSymbol$$1 ) BrowserSpriteSymbol.__proto__ = SpriteSymbol$$1;\n BrowserSpriteSymbol.prototype = Object.create( SpriteSymbol$$1 && SpriteSymbol$$1.prototype );\n BrowserSpriteSymbol.prototype.constructor = BrowserSpriteSymbol;\n\n var prototypeAccessors = { isMounted: {} };\n\n prototypeAccessors.isMounted.get = function () {\n return !!this.node;\n };\n\n /**\n * @param {Element} node\n * @return {BrowserSpriteSymbol}\n */\n BrowserSpriteSymbol.createFromExistingNode = function createFromExistingNode (node) {\n return new BrowserSpriteSymbol({\n id: node.getAttribute('id'),\n viewBox: node.getAttribute('viewBox'),\n content: node.outerHTML\n });\n };\n\n BrowserSpriteSymbol.prototype.destroy = function destroy () {\n if (this.isMounted) {\n this.unmount();\n }\n SpriteSymbol$$1.prototype.destroy.call(this);\n };\n\n /**\n * @param {Element|string} target\n * @return {Element}\n */\n BrowserSpriteSymbol.prototype.mount = function mount (target) {\n if (this.isMounted) {\n return this.node;\n }\n\n var mountTarget = typeof target === 'string' ? document.querySelector(target) : target;\n var node = this.render();\n this.node = node;\n\n mountTarget.appendChild(node);\n\n return node;\n };\n\n /**\n * @return {Element}\n */\n BrowserSpriteSymbol.prototype.render = function render () {\n var content = this.stringify();\n return parse(wrapInSvgString(content)).childNodes[0];\n };\n\n BrowserSpriteSymbol.prototype.unmount = function unmount () {\n this.node.parentNode.removeChild(this.node);\n };\n\n Object.defineProperties( BrowserSpriteSymbol.prototype, prototypeAccessors );\n\n return BrowserSpriteSymbol;\n}(SpriteSymbol));\n\nreturn BrowserSpriteSymbol;\n\n})));\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(\"yLpj\")))\n\n/***/ }),\n\n/***/ \"5d2k\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"squareButton\":\"SquareButton_squareButton__3XZzH\",\"label\":\"SquareButton_label__2lvIX\",\"content\":\"SquareButton_content__2e8pD\",\"icon\":\"SquareButton_icon__2HxOh\"};\n\n/***/ }),\n\n/***/ \"99so\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"key\":\"Key_key__2Quc4\"};\n\n/***/ }),\n\n/***/ \"9rZX\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Modal = __webpack_require__(\"qFS3\");\n\nvar _Modal2 = _interopRequireDefault(_Modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _Modal2.default;\nmodule.exports = exports[\"default\"];\n\n/***/ }),\n\n/***/ \"A/bs\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"option\":\"ConfigSetting_option__2T-wW\",\"label\":\"ConfigSetting_label__3tZD6\"};\n\n/***/ }),\n\n/***/ \"BdcD\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"radio\":\"Radio_radio__32uSc\",\"icon\":\"Radio_icon__dTLfl\",\"checked\":\"Radio_checked__1ad9P\",\"input\":\"Radio_input__2cGaT\",\"content\":\"Radio_content__3psCG\"};\n\n/***/ }),\n\n/***/ \"CjmZ\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"cell\":\"Cell_cell__3wKgm\",\"bonusCharacter1\":\"Cell_bonusCharacter1__34xQ_\",\"bonusCharacter2\":\"Cell_bonusCharacter2__1xH4M\",\"bonusCharacter3\":\"Cell_bonusCharacter3__3xUsl\",\"bonusCharacter5\":\"Cell_bonusCharacter5__2nWfH\",\"bonusCharacterMultiplier2\":\"Cell_bonusCharacterMultiplier2__1wTiA\",\"bonusCharacterMultiplier3\":\"Cell_bonusCharacterMultiplier3__1shAb\",\"bonusWord2\":\"Cell_bonusWord2__qdCLX\",\"bonusWord3\":\"Cell_bonusWord3__sSJti\",\"characterPoints1\":\"Cell_characterPoints1__3rhFH\",\"characterPoints2\":\"Cell_characterPoints2__2sud4\",\"characterPoints3\":\"Cell_characterPoints3__1v_ZX\",\"characterPoints5\":\"Cell_characterPoints5__Hen_b\",\"candidate\":\"Cell_candidate__13l8_\",\"actions\":\"Cell_actions__3JTry\",\"action\":\"Cell_action__3RPdm\",\"toggleDirection\":\"Cell_toggleDirection__5rp_g\",\"right\":\"Cell_right__3g3qY\",\"blank\":\"Cell_blank__3l4Pq\",\"active\":\"Cell_active__2O7iE\"};\n\n/***/ }),\n\n/***/ \"EIE9\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"dictionaryInput\":\"DictionaryInput_dictionaryInput__U7DaM\",\"input\":\"DictionaryInput_input__2r5WW\"};\n\n/***/ }),\n\n/***/ \"IH9G\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"mapping\":\"Mapping_mapping__1ZcKV\",\"description\":\"Mapping_description__Mbn8w\",\"keys\":\"Mapping_keys__3Vf5K\",\"group\":\"Mapping_group__2WX5v\",\"plus\":\"Mapping_plus__1j3oP\"};\n\n/***/ }),\n\n/***/ \"IQtc\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"results\":\"Results_results__x8VdK\",\"emptyState\":\"Results_emptyState__2-LxF\",\"list\":\"Results_list__1B8VD\",\"outdated\":\"Results_outdated__3nWlA\",\"header\":\"Results_header__noJ3I\",\"headerButton\":\"Results_headerButton__1N5Kw\",\"headerButtonLabel\":\"Results_headerButtonLabel__2QiqD\",\"result\":\"Results_result__1y1Jv\",\"resultContent\":\"Results_resultContent__2StBW\",\"word\":\"Results_word__1zvOl\",\"cell\":\"Results_cell__1cXgg\",\"stat\":\"Results_stat__3xHhu\",\"points\":\"Results_points__wnPy8\",\"outdatedButton\":\"Results_outdatedButton__2uCmc\",\"sortIcon\":\"Results_sortIcon__2BYB5\",\"input\":\"Results_input__2lOjT\"};\n\n/***/ }),\n\n/***/ \"IaFt\":\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(global) {(function (global, factory) {\n\t true ? module.exports = factory() :\n\tundefined;\n}(this, (function () { 'use strict';\n\nvar commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\n\n\n\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\nvar deepmerge = createCommonjsModule(function (module, exports) {\n(function (root, factory) {\n if (false) {} else {\n module.exports = factory();\n }\n}(commonjsGlobal, function () {\n\nfunction isMergeableObject(val) {\n var nonNullObject = val && typeof val === 'object';\n\n return nonNullObject\n && Object.prototype.toString.call(val) !== '[object RegExp]'\n && Object.prototype.toString.call(val) !== '[object Date]'\n}\n\nfunction emptyTarget(val) {\n return Array.isArray(val) ? [] : {}\n}\n\nfunction cloneIfNecessary(value, optionsArgument) {\n var clone = optionsArgument && optionsArgument.clone === true;\n return (clone && isMergeableObject(value)) ? deepmerge(emptyTarget(value), value, optionsArgument) : value\n}\n\nfunction defaultArrayMerge(target, source, optionsArgument) {\n var destination = target.slice();\n source.forEach(function(e, i) {\n if (typeof destination[i] === 'undefined') {\n destination[i] = cloneIfNecessary(e, optionsArgument);\n } else if (isMergeableObject(e)) {\n destination[i] = deepmerge(target[i], e, optionsArgument);\n } else if (target.indexOf(e) === -1) {\n destination.push(cloneIfNecessary(e, optionsArgument));\n }\n });\n return destination\n}\n\nfunction mergeObject(target, source, optionsArgument) {\n var destination = {};\n if (isMergeableObject(target)) {\n Object.keys(target).forEach(function (key) {\n destination[key] = cloneIfNecessary(target[key], optionsArgument);\n });\n }\n Object.keys(source).forEach(function (key) {\n if (!isMergeableObject(source[key]) || !target[key]) {\n destination[key] = cloneIfNecessary(source[key], optionsArgument);\n } else {\n destination[key] = deepmerge(target[key], source[key], optionsArgument);\n }\n });\n return destination\n}\n\nfunction deepmerge(target, source, optionsArgument) {\n var array = Array.isArray(source);\n var options = optionsArgument || { arrayMerge: defaultArrayMerge };\n var arrayMerge = options.arrayMerge || defaultArrayMerge;\n\n if (array) {\n return Array.isArray(target) ? arrayMerge(target, source, optionsArgument) : cloneIfNecessary(source, optionsArgument)\n } else {\n return mergeObject(target, source, optionsArgument)\n }\n}\n\ndeepmerge.all = function deepmergeAll(array, optionsArgument) {\n if (!Array.isArray(array) || array.length < 2) {\n throw new Error('first argument should be an array with at least two elements')\n }\n\n // we are sure there are at least 2 values, so it is safe to have no initial value\n return array.reduce(function(prev, next) {\n return deepmerge(prev, next, optionsArgument)\n })\n};\n\nreturn deepmerge\n\n}));\n});\n\n// \n// An event handler can take an optional event argument\n// and should not return a value\n \n// An array of all currently registered event handlers for a type\n \n// A map of event types and their corresponding event handlers.\n \n \n \n\n/** Mitt: Tiny (~200b) functional event emitter / pubsub.\n * @name mitt\n * @returns {Mitt}\n */\nfunction mitt(all ) {\n\tall = all || Object.create(null);\n\n\treturn {\n\t\t/**\n\t\t * Register an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to listen for, or `\"*\"` for all events\n\t\t * @param {Function} handler Function to call in response to given event\n\t\t * @memberOf mitt\n\t\t */\n\t\ton: function on(type , handler ) {\n\t\t\t(all[type] || (all[type] = [])).push(handler);\n\t\t},\n\n\t\t/**\n\t\t * Remove an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to unregister `handler` from, or `\"*\"`\n\t\t * @param {Function} handler Handler function to remove\n\t\t * @memberOf mitt\n\t\t */\n\t\toff: function off(type , handler ) {\n\t\t\tif (all[type]) {\n\t\t\t\tall[type].splice(all[type].indexOf(handler) >>> 0, 1);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Invoke all handlers for the given type.\n\t\t * If present, `\"*\"` handlers are invoked after type-matched handlers.\n\t\t *\n\t\t * @param {String} type The event type to invoke\n\t\t * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler\n\t\t * @memberof mitt\n\t\t */\n\t\temit: function emit(type , evt ) {\n\t\t\t(all[type] || []).map(function (handler) { handler(evt); });\n\t\t\t(all['*'] || []).map(function (handler) { handler(type, evt); });\n\t\t}\n\t};\n}\n\nvar namespaces_1 = createCommonjsModule(function (module, exports) {\nvar namespaces = {\n svg: {\n name: 'xmlns',\n uri: 'http://www.w3.org/2000/svg'\n },\n xlink: {\n name: 'xmlns:xlink',\n uri: 'http://www.w3.org/1999/xlink'\n }\n};\n\nexports.default = namespaces;\nmodule.exports = exports.default;\n});\n\n/**\n * @param {Object} attrs\n * @return {string}\n */\nvar objectToAttrsString = function (attrs) {\n return Object.keys(attrs).map(function (attr) {\n var value = attrs[attr].toString().replace(/\"/g, '&quot;');\n return (attr + \"=\\\"\" + value + \"\\\"\");\n }).join(' ');\n};\n\nvar svg = namespaces_1.svg;\nvar xlink = namespaces_1.xlink;\n\nvar defaultAttrs = {};\ndefaultAttrs[svg.name] = svg.uri;\ndefaultAttrs[xlink.name] = xlink.uri;\n\n/**\n * @param {string} [content]\n * @param {Object} [attributes]\n * @return {string}\n */\nvar wrapInSvgString = function (content, attributes) {\n if ( content === void 0 ) content = '';\n\n var attrs = deepmerge(defaultAttrs, attributes || {});\n var attrsRendered = objectToAttrsString(attrs);\n return (\"<svg \" + attrsRendered + \">\" + content + \"</svg>\");\n};\n\nvar svg$1 = namespaces_1.svg;\nvar xlink$1 = namespaces_1.xlink;\n\nvar defaultConfig = {\n attrs: ( obj = {\n style: ['position: absolute', 'width: 0', 'height: 0'].join('; '),\n 'aria-hidden': 'true'\n }, obj[svg$1.name] = svg$1.uri, obj[xlink$1.name] = xlink$1.uri, obj )\n};\nvar obj;\n\nvar Sprite = function Sprite(config) {\n this.config = deepmerge(defaultConfig, config || {});\n this.symbols = [];\n};\n\n/**\n * Add new symbol. If symbol with the same id exists it will be replaced.\n * @param {SpriteSymbol} symbol\n * @return {boolean} `true` - symbol was added, `false` - replaced\n */\nSprite.prototype.add = function add (symbol) {\n var ref = this;\n var symbols = ref.symbols;\n var existing = this.find(symbol.id);\n\n if (existing) {\n symbols[symbols.indexOf(existing)] = symbol;\n return false;\n }\n\n symbols.push(symbol);\n return true;\n};\n\n/**\n * Remove symbol & destroy it\n * @param {string} id\n * @return {boolean} `true` - symbol was found & successfully destroyed, `false` - otherwise\n */\nSprite.prototype.remove = function remove (id) {\n var ref = this;\n var symbols = ref.symbols;\n var symbol = this.find(id);\n\n if (symbol) {\n symbols.splice(symbols.indexOf(symbol), 1);\n symbol.destroy();\n return true;\n }\n\n return false;\n};\n\n/**\n * @param {string} id\n * @return {SpriteSymbol|null}\n */\nSprite.prototype.find = function find (id) {\n return this.symbols.filter(function (s) { return s.id === id; })[0] || null;\n};\n\n/**\n * @param {string} id\n * @return {boolean}\n */\nSprite.prototype.has = function has (id) {\n return this.find(id) !== null;\n};\n\n/**\n * @return {string}\n */\nSprite.prototype.stringify = function stringify () {\n var ref = this.config;\n var attrs = ref.attrs;\n var stringifiedSymbols = this.symbols.map(function (s) { return s.stringify(); }).join('');\n return wrapInSvgString(stringifiedSymbols, attrs);\n};\n\n/**\n * @return {string}\n */\nSprite.prototype.toString = function toString () {\n return this.stringify();\n};\n\nSprite.prototype.destroy = function destroy () {\n this.symbols.forEach(function (s) { return s.destroy(); });\n};\n\nvar SpriteSymbol = function SpriteSymbol(ref) {\n var id = ref.id;\n var viewBox = ref.viewBox;\n var content = ref.content;\n\n this.id = id;\n this.viewBox = viewBox;\n this.content = content;\n};\n\n/**\n * @return {string}\n */\nSpriteSymbol.prototype.stringify = function stringify () {\n return this.content;\n};\n\n/**\n * @return {string}\n */\nSpriteSymbol.prototype.toString = function toString () {\n return this.stringify();\n};\n\nSpriteSymbol.prototype.destroy = function destroy () {\n var this$1 = this;\n\n ['id', 'viewBox', 'content'].forEach(function (prop) { return delete this$1[prop]; });\n};\n\n/**\n * @param {string} content\n * @return {Element}\n */\nvar parse = function (content) {\n var hasImportNode = !!document.importNode;\n var doc = new DOMParser().parseFromString(content, 'image/svg+xml').documentElement;\n\n /**\n * Fix for browser which are throwing WrongDocumentError\n * if you insert an element which is not part of the document\n * @see http://stackoverflow.com/a/7986519/4624403\n */\n if (hasImportNode) {\n return document.importNode(doc, true);\n }\n\n return doc;\n};\n\nvar BrowserSpriteSymbol = (function (SpriteSymbol$$1) {\n function BrowserSpriteSymbol () {\n SpriteSymbol$$1.apply(this, arguments);\n }\n\n if ( SpriteSymbol$$1 ) BrowserSpriteSymbol.__proto__ = SpriteSymbol$$1;\n BrowserSpriteSymbol.prototype = Object.create( SpriteSymbol$$1 && SpriteSymbol$$1.prototype );\n BrowserSpriteSymbol.prototype.constructor = BrowserSpriteSymbol;\n\n var prototypeAccessors = { isMounted: {} };\n\n prototypeAccessors.isMounted.get = function () {\n return !!this.node;\n };\n\n /**\n * @param {Element} node\n * @return {BrowserSpriteSymbol}\n */\n BrowserSpriteSymbol.createFromExistingNode = function createFromExistingNode (node) {\n return new BrowserSpriteSymbol({\n id: node.getAttribute('id'),\n viewBox: node.getAttribute('viewBox'),\n content: node.outerHTML\n });\n };\n\n BrowserSpriteSymbol.prototype.destroy = function destroy () {\n if (this.isMounted) {\n this.unmount();\n }\n SpriteSymbol$$1.prototype.destroy.call(this);\n };\n\n /**\n * @param {Element|string} target\n * @return {Element}\n */\n BrowserSpriteSymbol.prototype.mount = function mount (target) {\n if (this.isMounted) {\n return this.node;\n }\n\n var mountTarget = typeof target === 'string' ? document.querySelector(target) : target;\n var node = this.render();\n this.node = node;\n\n mountTarget.appendChild(node);\n\n return node;\n };\n\n /**\n * @return {Element}\n */\n BrowserSpriteSymbol.prototype.render = function render () {\n var content = this.stringify();\n return parse(wrapInSvgString(content)).childNodes[0];\n };\n\n BrowserSpriteSymbol.prototype.unmount = function unmount () {\n this.node.parentNode.removeChild(this.node);\n };\n\n Object.defineProperties( BrowserSpriteSymbol.prototype, prototypeAccessors );\n\n return BrowserSpriteSymbol;\n}(SpriteSymbol));\n\nvar defaultConfig$1 = {\n /**\n * Should following options be automatically configured:\n * - `syncUrlsWithBaseTag`\n * - `locationChangeAngularEmitter`\n * - `moveGradientsOutsideSymbol`\n * @type {boolean}\n */\n autoConfigure: true,\n\n /**\n * Default mounting selector\n * @type {string}\n */\n mountTo: 'body',\n\n /**\n * Fix disappearing SVG elements when <base href> exists.\n * Executes when sprite mounted.\n * @see http://stackoverflow.com/a/18265336/796152\n * @see https://github.com/everdimension/angular-svg-base-fix\n * @see https://github.com/angular/angular.js/issues/8934#issuecomment-56568466\n * @type {boolean}\n */\n syncUrlsWithBaseTag: false,\n\n /**\n * Should sprite listen custom location change event\n * @type {boolean}\n */\n listenLocationChangeEvent: true,\n\n /**\n * Custom window event name which should be emitted to update sprite urls\n * @type {string}\n */\n locationChangeEvent: 'locationChange',\n\n /**\n * Emit location change event in Angular automatically\n * @type {boolean}\n */\n locationChangeAngularEmitter: false,\n\n /**\n * Selector to find symbols usages when updating sprite urls\n * @type {string}\n */\n usagesToUpdate: 'use[*|href]',\n\n /**\n * Fix Firefox bug when gradients and patterns don't work if they are within a symbol.\n * Executes when sprite is rendered, but not mounted.\n * @see https://bugzilla.mozilla.org/show_bug.cgi?id=306674\n * @see https://bugzilla.mozilla.org/show_bug.cgi?id=353575\n * @see https://bugzilla.mozilla.org/show_bug.cgi?id=1235364\n * @type {boolean}\n */\n moveGradientsOutsideSymbol: false\n};\n\n/**\n * @param {*} arrayLike\n * @return {Array}\n */\nvar arrayFrom = function (arrayLike) {\n return Array.prototype.slice.call(arrayLike, 0);\n};\n\nvar browser = {\n isChrome: function () { return /chrome/i.test(navigator.userAgent); },\n isFirefox: function () { return /firefox/i.test(navigator.userAgent); },\n\n // https://msdn.microsoft.com/en-us/library/ms537503(v=vs.85).aspx\n isIE: function () { return /msie/i.test(navigator.userAgent) || /trident/i.test(navigator.userAgent); },\n isEdge: function () { return /edge/i.test(navigator.userAgent); }\n};\n\n/**\n * @param {string} name\n * @param {*} data\n */\nvar dispatchEvent = function (name, data) {\n var event = document.createEvent('CustomEvent');\n event.initCustomEvent(name, false, false, data);\n window.dispatchEvent(event);\n};\n\n/**\n * IE doesn't evaluate <style> tags in SVGs that are dynamically added to the page.\n * This trick will trigger IE to read and use any existing SVG <style> tags.\n * @see https://github.com/iconic/SVGInjector/issues/23\n * @see https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/10898469/\n *\n * @param {Element} node DOM Element to search <style> tags in\n * @return {Array<HTMLStyleElement>}\n */\nvar evalStylesIEWorkaround = function (node) {\n var updatedNodes = [];\n\n arrayFrom(node.querySelectorAll('style'))\n .forEach(function (style) {\n style.textContent += '';\n updatedNodes.push(style);\n });\n\n return updatedNodes;\n};\n\n/**\n * @param {string} [url] If not provided - current URL will be used\n * @return {string}\n */\nvar getUrlWithoutFragment = function (url) {\n return (url || window.location.href).split('#')[0];\n};\n\n/* global angular */\n/**\n * @param {string} eventName\n */\nvar locationChangeAngularEmitter = function (eventName) {\n angular.module('ng').run(['$rootScope', function ($rootScope) {\n $rootScope.$on('$locationChangeSuccess', function (e, newUrl, oldUrl) {\n dispatchEvent(eventName, { oldUrl: oldUrl, newUrl: newUrl });\n });\n }]);\n};\n\nvar defaultSelector = 'linearGradient, radialGradient, pattern, mask, clipPath';\n\n/**\n * @param {Element} svg\n * @param {string} [selector]\n * @return {Element}\n */\nvar moveGradientsOutsideSymbol = function (svg, selector) {\n if ( selector === void 0 ) selector = defaultSelector;\n\n arrayFrom(svg.querySelectorAll('symbol')).forEach(function (symbol) {\n arrayFrom(symbol.querySelectorAll(selector)).forEach(function (node) {\n symbol.parentNode.insertBefore(node, symbol);\n });\n });\n return svg;\n};\n\n/**\n * @param {NodeList} nodes\n * @param {Function} [matcher]\n * @return {Attr[]}\n */\nfunction selectAttributes(nodes, matcher) {\n var attrs = arrayFrom(nodes).reduce(function (acc, node) {\n if (!node.attributes) {\n return acc;\n }\n\n var arrayfied = arrayFrom(node.attributes);\n var matched = matcher ? arrayfied.filter(matcher) : arrayfied;\n return acc.concat(matched);\n }, []);\n\n return attrs;\n}\n\n/**\n * @param {NodeList|Node} nodes\n * @param {boolean} [clone=true]\n * @return {string}\n */\n\nvar xLinkNS = namespaces_1.xlink.uri;\nvar xLinkAttrName = 'xlink:href';\n\n// eslint-disable-next-line no-useless-escape\nvar specialUrlCharsPattern = /[{}|\\\\\\^\\[\\]`\"<>]/g;\n\nfunction encoder(url) {\n return url.replace(specialUrlCharsPattern, function (match) {\n return (\"%\" + (match[0].charCodeAt(0).toString(16).toUpperCase()));\n });\n}\n\nfunction escapeRegExp(str) {\n return str.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\"); // $& means the whole matched string\n}\n\n/**\n * @param {NodeList} nodes\n * @param {string} startsWith\n * @param {string} replaceWith\n * @return {NodeList}\n */\nfunction updateReferences(nodes, startsWith, replaceWith) {\n arrayFrom(nodes).forEach(function (node) {\n var href = node.getAttribute(xLinkAttrName);\n if (href && href.indexOf(startsWith) === 0) {\n var newUrl = href.replace(startsWith, replaceWith);\n node.setAttributeNS(xLinkNS, xLinkAttrName, newUrl);\n }\n });\n\n return nodes;\n}\n\n/**\n * List of SVG attributes to update url() target in them\n */\nvar attList = [\n 'clipPath',\n 'colorProfile',\n 'src',\n 'cursor',\n 'fill',\n 'filter',\n 'marker',\n 'markerStart',\n 'markerMid',\n 'markerEnd',\n 'mask',\n 'stroke',\n 'style'\n];\n\nvar attSelector = attList.map(function (attr) { return (\"[\" + attr + \"]\"); }).join(',');\n\n/**\n * Update URLs in svg image (like `fill=\"url(...)\"`) and update referencing elements\n * @param {Element} svg\n * @param {NodeList} references\n * @param {string|RegExp} startsWith\n * @param {string} replaceWith\n * @return {void}\n *\n * @example\n * const sprite = document.querySelector('svg.sprite');\n * const usages = document.querySelectorAll('use');\n * updateUrls(sprite, usages, '#', 'prefix#');\n */\nvar updateUrls = function (svg, references, startsWith, replaceWith) {\n var startsWithEncoded = encoder(startsWith);\n var replaceWithEncoded = encoder(replaceWith);\n\n var nodes = svg.querySelectorAll(attSelector);\n var attrs = selectAttributes(nodes, function (ref) {\n var localName = ref.localName;\n var value = ref.value;\n\n return attList.indexOf(localName) !== -1 && value.indexOf((\"url(\" + startsWithEncoded)) !== -1;\n });\n\n attrs.forEach(function (attr) { return attr.value = attr.value.replace(new RegExp(escapeRegExp(startsWithEncoded), 'g'), replaceWithEncoded); });\n updateReferences(references, startsWithEncoded, replaceWithEncoded);\n};\n\n/**\n * Internal emitter events\n * @enum\n * @private\n */\nvar Events = {\n MOUNT: 'mount',\n SYMBOL_MOUNT: 'symbol_mount'\n};\n\nvar BrowserSprite = (function (Sprite$$1) {\n function BrowserSprite(cfg) {\n var this$1 = this;\n if ( cfg === void 0 ) cfg = {};\n\n Sprite$$1.call(this, deepmerge(defaultConfig$1, cfg));\n\n var emitter = mitt();\n this._emitter = emitter;\n this.node = null;\n\n var ref = this;\n var config = ref.config;\n\n if (config.autoConfigure) {\n this._autoConfigure(cfg);\n }\n\n if (config.syncUrlsWithBaseTag) {\n var baseUrl = document.getElementsByTagName('base')[0].getAttribute('href');\n emitter.on(Events.MOUNT, function () { return this$1.updateUrls('#', baseUrl); });\n }\n\n var handleLocationChange = this._handleLocationChange.bind(this);\n this._handleLocationChange = handleLocationChange;\n\n // Provide way to update sprite urls externally via dispatching custom window event\n if (config.listenLocationChangeEvent) {\n window.addEventListener(config.locationChangeEvent, handleLocationChange);\n }\n\n // Emit location change event in Angular automatically\n if (config.locationChangeAngularEmitter) {\n locationChangeAngularEmitter(config.locationChangeEvent);\n }\n\n // After sprite mounted\n emitter.on(Events.MOUNT, function (spriteNode) {\n if (config.moveGradientsOutsideSymbol) {\n moveGradientsOutsideSymbol(spriteNode);\n }\n });\n\n // After symbol mounted into sprite\n emitter.on(Events.SYMBOL_MOUNT, function (symbolNode) {\n if (config.moveGradientsOutsideSymbol) {\n moveGradientsOutsideSymbol(symbolNode.parentNode);\n }\n\n if (browser.isIE() || browser.isEdge()) {\n evalStylesIEWorkaround(symbolNode);\n }\n });\n }\n\n if ( Sprite$$1 ) BrowserSprite.__proto__ = Sprite$$1;\n BrowserSprite.prototype = Object.create( Sprite$$1 && Sprite$$1.prototype );\n BrowserSprite.prototype.constructor = BrowserSprite;\n\n var prototypeAccessors = { isMounted: {} };\n\n /**\n * @return {boolean}\n */\n prototypeAccessors.isMounted.get = function () {\n return !!this.node;\n };\n\n /**\n * Automatically configure following options\n * - `syncUrlsWithBaseTag`\n * - `locationChangeAngularEmitter`\n * - `moveGradientsOutsideSymbol`\n * @param {Object} cfg\n * @private\n */\n BrowserSprite.prototype._autoConfigure = function _autoConfigure (cfg) {\n var ref = this;\n var config = ref.config;\n\n if (typeof cfg.syncUrlsWithBaseTag === 'undefined') {\n config.syncUrlsWithBaseTag = typeof document.getElementsByTagName('base')[0] !== 'undefined';\n }\n\n if (typeof cfg.locationChangeAngularEmitter === 'undefined') {\n config.locationChangeAngularEmitter = typeof window.angular !== 'undefined';\n }\n\n if (typeof cfg.moveGradientsOutsideSymbol === 'undefined') {\n config.moveGradientsOutsideSymbol = browser.isFirefox();\n }\n };\n\n /**\n * @param {Event} event\n * @param {Object} event.detail\n * @param {string} event.detail.oldUrl\n * @param {string} event.detail.newUrl\n * @private\n */\n BrowserSprite.prototype._handleLocationChange = function _handleLocationChange (event) {\n var ref = event.detail;\n var oldUrl = ref.oldUrl;\n var newUrl = ref.newUrl;\n this.updateUrls(oldUrl, newUrl);\n };\n\n /**\n * Add new symbol. If symbol with the same id exists it will be replaced.\n * If sprite already mounted - `symbol.mount(sprite.node)` will be called.\n * @fires Events#SYMBOL_MOUNT\n * @param {BrowserSpriteSymbol} symbol\n * @return {boolean} `true` - symbol was added, `false` - replaced\n */\n BrowserSprite.prototype.add = function add (symbol) {\n var sprite = this;\n var isNewSymbol = Sprite$$1.prototype.add.call(this, symbol);\n\n if (this.isMounted && isNewSymbol) {\n symbol.mount(sprite.node);\n this._emitter.emit(Events.SYMBOL_MOUNT, symbol.node);\n }\n\n return isNewSymbol;\n };\n\n /**\n * Attach to existing DOM node\n * @param {string|Element} target\n * @return {Element|null} attached DOM Element. null if node to attach not found.\n */\n BrowserSprite.prototype.attach = function attach (target) {\n var this$1 = this;\n\n var sprite = this;\n\n if (sprite.isMounted) {\n return sprite.node;\n }\n\n /** @type Element */\n var node = typeof target === 'string' ? document.querySelector(target) : target;\n sprite.node = node;\n\n // Already added symbols needs to be mounted\n this.symbols.forEach(function (symbol) {\n symbol.mount(sprite.node);\n this$1._emitter.emit(Events.SYMBOL_MOUNT, symbol.node);\n });\n\n // Create symbols from existing DOM nodes, add and mount them\n arrayFrom(node.querySelectorAll('symbol'))\n .forEach(function (symbolNode) {\n var symbol = BrowserSpriteSymbol.createFromExistingNode(symbolNode);\n symbol.node = symbolNode; // hack to prevent symbol mounting to sprite when adding\n sprite.add(symbol);\n });\n\n this._emitter.emit(Events.MOUNT, node);\n\n return node;\n };\n\n BrowserSprite.prototype.destroy = function destroy () {\n var ref = this;\n var config = ref.config;\n var symbols = ref.symbols;\n var _emitter = ref._emitter;\n\n symbols.forEach(function (s) { return s.destroy(); });\n\n _emitter.off('*');\n window.removeEventListener(config.locationChangeEvent, this._handleLocationChange);\n\n if (this.isMounted) {\n this.unmount();\n }\n };\n\n /**\n * @fires Events#MOUNT\n * @param {string|Element} [target]\n * @param {boolean} [prepend=false]\n * @return {Element|null} rendered sprite node. null if mount node not found.\n */\n BrowserSprite.prototype.mount = function mount (target, prepend) {\n if ( target === void 0 ) target = this.config.mountTo;\n if ( prepend === void 0 ) prepend = false;\n\n var sprite = this;\n\n if (sprite.isMounted) {\n return sprite.node;\n }\n\n var mountNode = typeof target === 'string' ? document.querySelector(target) : target;\n var node = sprite.render();\n this.node = node;\n\n if (prepend && mountNode.childNodes[0]) {\n mountNode.insertBefore(node, mountNode.childNodes[0]);\n } else {\n mountNode.appendChild(node);\n }\n\n this._emitter.emit(Events.MOUNT, node);\n\n return node;\n };\n\n /**\n * @return {Element}\n */\n BrowserSprite.prototype.render = function render () {\n return parse(this.stringify());\n };\n\n /**\n * Detach sprite from the DOM\n */\n BrowserSprite.prototype.unmount = function unmount () {\n this.node.parentNode.removeChild(this.node);\n };\n\n /**\n * Update URLs in sprite and usage elements\n * @param {string} oldUrl\n * @param {string} newUrl\n * @return {boolean} `true` - URLs was updated, `false` - sprite is not mounted\n */\n BrowserSprite.prototype.updateUrls = function updateUrls$1 (oldUrl, newUrl) {\n if (!this.isMounted) {\n return false;\n }\n\n var usages = document.querySelectorAll(this.config.usagesToUpdate);\n\n updateUrls(\n this.node,\n usages,\n ((getUrlWithoutFragment(oldUrl)) + \"#\"),\n ((getUrlWithoutFragment(newUrl)) + \"#\")\n );\n\n return true;\n };\n\n Object.defineProperties( BrowserSprite.prototype, prototypeAccessors );\n\n return BrowserSprite;\n}(Sprite));\n\nvar ready$1 = createCommonjsModule(function (module) {\n/*!\n * domready (c) Dustin Diaz 2014 - License MIT\n */\n!function (name, definition) {\n\n { module.exports = definition(); }\n\n}('domready', function () {\n\n var fns = [], listener\n , doc = document\n , hack = doc.documentElement.doScroll\n , domContentLoaded = 'DOMContentLoaded'\n , loaded = (hack ? /^loaded|^c/ : /^loaded|^i|^c/).test(doc.readyState);\n\n\n if (!loaded)\n { doc.addEventListener(domContentLoaded, listener = function () {\n doc.removeEventListener(domContentLoaded, listener);\n loaded = 1;\n while (listener = fns.shift()) { listener(); }\n }); }\n\n return function (fn) {\n loaded ? setTimeout(fn, 0) : fns.push(fn);\n }\n\n});\n});\n\nvar spriteNodeId = '__SVG_SPRITE_NODE__';\nvar spriteGlobalVarName = '__SVG_SPRITE__';\nvar isSpriteExists = !!window[spriteGlobalVarName];\n\n// eslint-disable-next-line import/no-mutable-exports\nvar sprite;\n\nif (isSpriteExists) {\n sprite = window[spriteGlobalVarName];\n} else {\n sprite = new BrowserSprite({\n attrs: {\n id: spriteNodeId,\n 'aria-hidden': 'true'\n }\n });\n window[spriteGlobalVarName] = sprite;\n}\n\nvar loadSprite = function () {\n /**\n * Check for page already contains sprite node\n * If found - attach to and reuse it's content\n * If not - render and mount the new sprite\n */\n var existing = document.getElementById(spriteNodeId);\n\n if (existing) {\n sprite.attach(existing);\n } else {\n sprite.mount(document.body, true);\n }\n};\n\nif (document.body) {\n loadSprite();\n} else {\n ready$1(loadSprite);\n}\n\nvar sprite$1 = sprite;\n\nreturn sprite$1;\n\n})));\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(\"yLpj\")))\n\n/***/ }),\n\n/***/ \"Jsr2\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"emptyState\":\"EmptyState_emptyState__3XIlm\",\"tiles\":\"EmptyState_tiles__2hoJY\"};\n\n/***/ }),\n\n/***/ \"JxyW\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"character\":\"Character_character__qmkor\",\"finished\":\"Character_finished__11v6G\",\"overused\":\"Character_overused__2l2ul\",\"tile\":\"Character_tile__1C3Oq\",\"count\":\"Character_count__2pNlL\"};\n\n/***/ }),\n\n/***/ \"Nhdc\":\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_Board_Board; });\n__webpack_require__.d(__webpack_exports__, \"b\", function() { return /* reexport */ components_Dictionary_Dictionary; });\n__webpack_require__.d(__webpack_exports__, \"c\", function() { return /* reexport */ components_DictionaryInput_DictionaryInput; });\n__webpack_require__.d(__webpack_exports__, \"d\", function() { return /* reexport */ components_KeyMap_KeyMap; });\n__webpack_require__.d(__webpack_exports__, \"e\", function() { return /* reexport */ components_Logo_Logo; });\n__webpack_require__.d(__webpack_exports__, \"f\", function() { return /* reexport */ components_NavButtons_NavButtons; });\n__webpack_require__.d(__webpack_exports__, \"g\", function() { return /* reexport */ components_NotFound_NotFound; });\n__webpack_require__.d(__webpack_exports__, \"h\", function() { return /* reexport */ components_Rack_Rack; });\n__webpack_require__.d(__webpack_exports__, \"i\", function() { return /* reexport */ components_RemainingTiles_RemainingTiles; });\n__webpack_require__.d(__webpack_exports__, \"j\", function() { return /* reexport */ components_Results_Results; });\n__webpack_require__.d(__webpack_exports__, \"k\", function() { return /* reexport */ components_Settings_Settings; });\n__webpack_require__.d(__webpack_exports__, \"l\", function() { return /* reexport */ components_Splash_Splash; });\n__webpack_require__.d(__webpack_exports__, \"m\", function() { return /* reexport */ components_SvgIcon_SvgIcon; });\n__webpack_require__.d(__webpack_exports__, \"n\", function() { return /* reexport */ Well_Well; });\n\n// UNUSED EXPORTS: Button, Checkbox, EmptyState, Key, Loading, PlainTiles, Radio, ResultsInput, Screen, Sidebar, SquareButton, Tile\n\n// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js\nvar jsx_runtime = __webpack_require__(\"nKUr\");\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules\nvar slicedToArray = __webpack_require__(\"ODXe\");\n\n// EXTERNAL MODULE: ./node_modules/react/index.js\nvar react = __webpack_require__(\"q1tI\");\n\n// EXTERNAL MODULE: ./src/state/index.ts + 40 modules\nvar src_state = __webpack_require__(\"8+rz\");\n\n// EXTERNAL MODULE: ./node_modules/classnames/index.js\nvar classnames = __webpack_require__(\"TSYQ\");\nvar classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);\n\n// EXTERNAL MODULE: ./src/components/Board/Board.module.scss\nvar Board_module = __webpack_require__(\"UE3f\");\nvar Board_module_default = /*#__PURE__*/__webpack_require__.n(Board_module);\n\n// EXTERNAL MODULE: ../constants/build/index.js\nvar build = __webpack_require__(\"U5qN\");\n\n// EXTERNAL MODULE: ./node_modules/react-redux/es/index.js + 22 modules\nvar es = __webpack_require__(\"/MKj\");\n\n// EXTERNAL MODULE: ./src/lib/index.ts + 26 modules\nvar lib = __webpack_require__(\"psLn\");\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js\nvar defineProperty = __webpack_require__(\"rePB\");\n\n// EXTERNAL MODULE: ./node_modules/svg-baker-runtime/browser-symbol.js\nvar browser_symbol = __webpack_require__(\"4BeY\");\nvar browser_symbol_default = /*#__PURE__*/__webpack_require__.n(browser_symbol);\n\n// EXTERNAL MODULE: ./node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\nvar browser_sprite_build = __webpack_require__(\"IaFt\");\nvar browser_sprite_build_default = /*#__PURE__*/__webpack_require__.n(browser_sprite_build);\n\n// CONCATENATED MODULE: ./src/icons/arrowDown.svg\n\n\nvar symbol = new browser_symbol_default.a({\n \"id\": \"arrowDown\",\n \"use\": \"arrowDown-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"arrowDown\\\">\\n <path d=\\\"M8 1a.5.5 0 0 1 .5.5v11.793l3.146-3.147a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 .708-.708L7.5 13.293V1.5A.5.5 0 0 1 8 1z\\\" fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" />\\n</symbol>\"\n});\nvar arrowDown_result = browser_sprite_build_default.a.add(symbol);\n/* harmony default export */ var arrowDown = (symbol);\n// CONCATENATED MODULE: ./src/icons/arrowLeft.svg\n\n\nvar arrowLeft_symbol = new browser_symbol_default.a({\n \"id\": \"arrowLeft\",\n \"use\": \"arrowLeft-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"arrowLeft\\\">\\n <path d=\\\"M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8z\\\" fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" />\\n</symbol>\"\n});\nvar arrowLeft_result = browser_sprite_build_default.a.add(arrowLeft_symbol);\n/* harmony default export */ var arrowLeft = (arrowLeft_symbol);\n// CONCATENATED MODULE: ./src/icons/arrowRight.svg\n\n\nvar arrowRight_symbol = new browser_symbol_default.a({\n \"id\": \"arrowRight\",\n \"use\": \"arrowRight-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"arrowRight\\\">\\n <path d=\\\"M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8z\\\" fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" />\\n</symbol>\"\n});\nvar arrowRight_result = browser_sprite_build_default.a.add(arrowRight_symbol);\n/* harmony default export */ var arrowRight = (arrowRight_symbol);\n// CONCATENATED MODULE: ./src/icons/arrowUp.svg\n\n\nvar arrowUp_symbol = new browser_symbol_default.a({\n \"id\": \"arrowUp\",\n \"use\": \"arrowUp-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"arrowUp\\\">\\n <path d=\\\"M8 15a.5.5 0 0 0 .5-.5V2.707l3.146 3.147a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 1 0 .708.708L7.5 2.707V14.5a.5.5 0 0 0 .5.5z\\\" fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" />\\n</symbol>\"\n});\nvar arrowUp_result = browser_sprite_build_default.a.add(arrowUp_symbol);\n/* harmony default export */ var arrowUp = (arrowUp_symbol);\n// CONCATENATED MODULE: ./src/icons/checkboxChecked.svg\n\n\nvar checkboxChecked_symbol = new browser_symbol_default.a({\n \"id\": \"checkboxChecked\",\n \"use\": \"checkboxChecked-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"checkboxChecked\\\">\\n <path d=\\\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm10.03 4.97a.75.75 0 0 1 .011 1.05l-3.992 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.75.75 0 0 1 1.08-.022z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar checkboxChecked_result = browser_sprite_build_default.a.add(checkboxChecked_symbol);\n/* harmony default export */ var checkboxChecked = (checkboxChecked_symbol);\n// CONCATENATED MODULE: ./src/icons/checkboxEmpty.svg\n\n\nvar checkboxEmpty_symbol = new browser_symbol_default.a({\n \"id\": \"checkboxEmpty\",\n \"use\": \"checkboxEmpty-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"checkboxEmpty\\\">\\n <path d=\\\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar checkboxEmpty_result = browser_sprite_build_default.a.add(checkboxEmpty_symbol);\n/* harmony default export */ var checkboxEmpty = (checkboxEmpty_symbol);\n// CONCATENATED MODULE: ./src/icons/cog.svg\n\n\nvar cog_symbol = new browser_symbol_default.a({\n \"id\": \"cog\",\n \"use\": \"cog-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"cog\\\">\\n <path d=\\\"M9.405 1.05c-.413-1.4-2.397-1.4-2.81 0l-.1.34a1.464 1.464 0 0 1-2.105.872l-.31-.17c-1.283-.698-2.686.705-1.987 1.987l.169.311c.446.82.023 1.841-.872 2.105l-.34.1c-1.4.413-1.4 2.397 0 2.81l.34.1a1.464 1.464 0 0 1 .872 2.105l-.17.31c-.698 1.283.705 2.686 1.987 1.987l.311-.169a1.464 1.464 0 0 1 2.105.872l.1.34c.413 1.4 2.397 1.4 2.81 0l.1-.34a1.464 1.464 0 0 1 2.105-.872l.31.17c1.283.698 2.686-.705 1.987-1.987l-.169-.311a1.464 1.464 0 0 1 .872-2.105l.34-.1c1.4-.413 1.4-2.397 0-2.81l-.34-.1a1.464 1.464 0 0 1-.872-2.105l.17-.31c.698-1.283-.705-2.686-1.987-1.987l-.311.169a1.464 1.464 0 0 1-2.105-.872l-.1-.34zM8 10.93a2.929 2.929 0 1 1 0-5.86 2.929 2.929 0 0 1 0 5.858z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar cog_result = browser_sprite_build_default.a.add(cog_symbol);\n/* harmony default export */ var cog = (cog_symbol);\n// CONCATENATED MODULE: ./src/icons/cross.svg\n\n\nvar cross_symbol = new browser_symbol_default.a({\n \"id\": \"cross\",\n \"use\": \"cross-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"cross\\\">\\n <path d=\\\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm3.354 4.646L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar cross_result = browser_sprite_build_default.a.add(cross_symbol);\n/* harmony default export */ var cross = (cross_symbol);\n// CONCATENATED MODULE: ./src/icons/dashCircleFill.svg\n\n\nvar dashCircleFill_symbol = new browser_symbol_default.a({\n \"id\": \"dashCircleFill\",\n \"use\": \"dashCircleFill-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"dashCircleFill\\\">\\n <path d=\\\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar dashCircleFill_result = browser_sprite_build_default.a.add(dashCircleFill_symbol);\n/* harmony default export */ var dashCircleFill = (dashCircleFill_symbol);\n// CONCATENATED MODULE: ./src/icons/eraser.svg\n\n\nvar eraser_symbol = new browser_symbol_default.a({\n \"id\": \"eraser\",\n \"use\": \"eraser-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"eraser\\\">\\n <path d=\\\"M8.086 2.207a2 2 0 0 1 2.828 0l3.879 3.879a2 2 0 0 1 0 2.828l-5.5 5.5A2 2 0 0 1 7.879 15H5.12a2 2 0 0 1-1.414-.586l-2.5-2.5a2 2 0 0 1 0-2.828l6.879-6.879zm.66 11.34L3.453 8.254 1.914 9.793a1 1 0 0 0 0 1.414l2.5 2.5a1 1 0 0 0 .707.293H7.88a1 1 0 0 0 .707-.293l.16-.16z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar eraser_result = browser_sprite_build_default.a.add(eraser_symbol);\n/* harmony default export */ var eraser = (eraser_symbol);\n// CONCATENATED MODULE: ./src/icons/flagEs.svg\n\n\nvar flagEs_symbol = new browser_symbol_default.a({\n \"id\": \"flagEs\",\n \"use\": \"flagEs-usage\",\n \"viewBox\": \"0 0 1280 853\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" viewBox=\\\"0 0 1280 853\\\" id=\\\"flagEs\\\"> <image id=\\\"flagEs_image0\\\" width=\\\"1280\\\" height=\\\"853\\\" x=\\\"0\\\" y=\\\"0\\\" xlink:href=\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABQAAAANVAgMAAABaGbsaAAAABGdBTUEAALGPC/xhBQAAACBjSFJN\\nAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEXGCx74rwP/xAD///8H\\ncjGDAAAAAWJLR0QDEQxM8gAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAAd0SU1FB+UCFwAsE4DcNqcA\\nAAPBSURBVHja7dAxAQAwEAOhmHyTVVkRt4IENgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALYj2SMRGAmMBEYCI4GRwEhgJDAS\\nGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhg\\nJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GR\\nwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYC\\nI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmM\\nBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDAS\\nGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhg\\nJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GR\\nwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYC\\nI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmM\\nBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDAS\\nGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhg\\nJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GR\\nwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYC\\nI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDDakQwAAAAAAAAAAAAAAAAAAAAA\\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIDtAwXRsbDe\\nnzaLAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTAyLTIzVDAwOjQ0OjE5KzAzOjAwYEEZrQAAACV0\\nRVh0ZGF0ZTptb2RpZnkAMjAyMS0wMi0yM1QwMDo0NDoxOSswMzowMBEcoREAAAAASUVORK5CYII=\\\"></image>\\n</symbol>\"\n});\nvar flagEs_result = browser_sprite_build_default.a.add(flagEs_symbol);\n/* harmony default export */ var flagEs = (flagEs_symbol);\n// CONCATENATED MODULE: ./src/icons/flagFr.svg\n\n\nvar flagFr_symbol = new browser_symbol_default.a({\n \"id\": \"flagFr\",\n \"use\": \"flagFr-usage\",\n \"viewBox\": \"0 0 24 15\",\n \"content\": \"<symbol viewBox=\\\"0 0 24 15\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"flagFr\\\">\\n <rect width=\\\"8\\\" height=\\\"15\\\" fill=\\\"#002395\\\" x=\\\"0 \\\" />\\n <rect width=\\\"8\\\" height=\\\"15\\\" fill=\\\"#FFFFFF\\\" x=\\\"8 \\\" />\\n <rect width=\\\"8\\\" height=\\\"15\\\" fill=\\\"#ED2939\\\" x=\\\"16 \\\" />\\n</symbol>\"\n});\nvar flagFr_result = browser_sprite_build_default.a.add(flagFr_symbol);\n/* harmony default export */ var flagFr = (flagFr_symbol);\n// CONCATENATED MODULE: ./src/icons/flagGb.svg\n\n\nvar flagGb_symbol = new browser_symbol_default.a({\n \"id\": \"flagGb\",\n \"use\": \"flagGb-usage\",\n \"viewBox\": \"0 0 60 30\",\n \"content\": \"<symbol viewBox=\\\"0 0 60 30\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"flagGb\\\">\\n <clipPath id=\\\"flagGb_t\\\">\\n <path d=\\\"M30,15 h30 v15 z v15 h-30 z h-30 v-15 z v-15 h30 z\\\" />\\n </clipPath>\\n <path d=\\\"M0,0 v30 h60 v-30 z\\\" fill=\\\"#00247d\\\" />\\n <path d=\\\"M0,0 L60,30 M60,0 L0,30\\\" stroke=\\\"#fff\\\" stroke-width=\\\"6\\\" />\\n <path d=\\\"M0,0 L60,30 M60,0 L0,30\\\" clipPath=\\\"url(#flagGb_t)\\\" stroke=\\\"#cf142b\\\" stroke-width=\\\"4\\\" />\\n <path d=\\\"M30,0 v30 M0,15 h60\\\" stroke=\\\"#fff\\\" stroke-width=\\\"10\\\" />\\n <path d=\\\"M30,0 v30 M0,15 h60\\\" stroke=\\\"#cf142b\\\" stroke-width=\\\"6\\\" />\\n</symbol>\"\n});\nvar flagGb_result = browser_sprite_build_default.a.add(flagGb_symbol);\n/* harmony default export */ var flagGb = (flagGb_symbol);\n// CONCATENATED MODULE: ./src/icons/flagPl.svg\n\n\nvar flagPl_symbol = new browser_symbol_default.a({\n \"id\": \"flagPl\",\n \"use\": \"flagPl-usage\",\n \"viewBox\": \"0 0 16 10\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 10\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"flagPl\\\">\\n <rect width=\\\"16\\\" height=\\\"10\\\" fill=\\\"#fff\\\" />\\n <rect width=\\\"16\\\" height=\\\"5\\\" fill=\\\"#dc143c\\\" y=\\\"5\\\" />\\n</symbol>\"\n});\nvar flagPl_result = browser_sprite_build_default.a.add(flagPl_symbol);\n/* harmony default export */ var flagPl = (flagPl_symbol);\n// CONCATENATED MODULE: ./src/icons/flagUs.svg\n\n\nvar flagUs_symbol = new browser_symbol_default.a({\n \"id\": \"flagUs\",\n \"use\": \"flagUs-usage\",\n \"viewBox\": \"0 0 7410 3900\",\n \"content\": \"<symbol viewBox=\\\"0 0 7410 3900\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"flagUs\\\">\\n <rect width=\\\"7410\\\" height=\\\"3900\\\" fill=\\\"#b22234\\\" />\\n <path d=\\\"M0,450H7410m0,600H0m0,600H7410m0,600H0m0,600H7410m0,600H0\\\" stroke=\\\"#fff\\\" stroke-width=\\\"300\\\" />\\n <rect width=\\\"2964\\\" height=\\\"2100\\\" fill=\\\"#3c3b6e\\\" />\\n <g fill=\\\"#fff\\\">\\n <g id=\\\"flagUs_s18\\\">\\n <g id=\\\"flagUs_s9\\\">\\n <g id=\\\"flagUs_s5\\\">\\n <g id=\\\"flagUs_s4\\\">\\n <path id=\\\"flagUs_s\\\" d=\\\"M247,90 317.534230,307.082039 132.873218,172.917961H361.126782L176.465770,307.082039z\\\" />\\n <use xlink:href=\\\"#flagUs_s\\\" y=\\\"420\\\" />\\n <use xlink:href=\\\"#flagUs_s\\\" y=\\\"840\\\" />\\n <use xlink:href=\\\"#flagUs_s\\\" y=\\\"1260\\\" />\\n </g>\\n <use xlink:href=\\\"#flagUs_s\\\" y=\\\"1680\\\" />\\n </g>\\n <use xlink:href=\\\"#flagUs_s4\\\" x=\\\"247\\\" y=\\\"210\\\" />\\n </g>\\n <use xlink:href=\\\"#flagUs_s9\\\" x=\\\"494\\\" />\\n </g>\\n <use xlink:href=\\\"#flagUs_s18\\\" x=\\\"988\\\" />\\n <use xlink:href=\\\"#flagUs_s9\\\" x=\\\"1976\\\" />\\n <use xlink:href=\\\"#flagUs_s5\\\" x=\\\"2470\\\" />\\n </g>\\n <clipPath id=\\\"flagUs_t\\\">\\n <path d=\\\"M30,15 h30 v15 z v15 h-30 z h-30 v-15 z v-15 h30 z\\\" />\\n </clipPath>\\n <path d=\\\"M0,0 v30 h60 v-30 z\\\" fill=\\\"#00247d\\\" />\\n <path d=\\\"M0,0 L60,30 M60,0 L0,30\\\" stroke=\\\"#fff\\\" stroke-width=\\\"6\\\" />\\n <path d=\\\"M0,0 L60,30 M60,0 L0,30\\\" clipPath=\\\"url(#flagUs_t)\\\" stroke=\\\"#cf142b\\\" stroke-width=\\\"4\\\" />\\n <path d=\\\"M30,0 v30 M0,15 h60\\\" stroke=\\\"#fff\\\" stroke-width=\\\"10\\\" />\\n <path d=\\\"M30,0 v30 M0,15 h60\\\" stroke=\\\"#cf142b\\\" stroke-width=\\\"6\\\" />\\n</symbol>\"\n});\nvar flagUs_result = browser_sprite_build_default.a.add(flagUs_symbol);\n/* harmony default export */ var flagUs = (flagUs_symbol);\n// CONCATENATED MODULE: ./src/icons/github.svg\n\n\nvar github_symbol = new browser_symbol_default.a({\n \"id\": \"github\",\n \"use\": \"github-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"github\\\">\\n <path d=\\\"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar github_result = browser_sprite_build_default.a.add(github_symbol);\n/* harmony default export */ var github = (github_symbol);\n// CONCATENATED MODULE: ./src/icons/keyboard.svg\n\n\nvar keyboard_symbol = new browser_symbol_default.a({\n \"id\": \"keyboard\",\n \"use\": \"keyboard-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"keyboard\\\">\\n <path d=\\\"M0 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V6zm13 .25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM2.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 3 8.75v-.5A.25.25 0 0 0 2.75 8h-.5zM4 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 5 8.75v-.5A.25.25 0 0 0 4.75 8h-.5a.25.25 0 0 0-.25.25zM6.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 7 8.75v-.5A.25.25 0 0 0 6.75 8h-.5zM8 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 9 8.75v-.5A.25.25 0 0 0 8.75 8h-.5a.25.25 0 0 0-.25.25zM13.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zm0 2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zm-3-2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-1.5zm.75 2.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM11.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zM9 6.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5A.25.25 0 0 0 9.75 6h-.5a.25.25 0 0 0-.25.25zM7.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 8 6.75v-.5A.25.25 0 0 0 7.75 6h-.5zM5 6.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 6 6.75v-.5A.25.25 0 0 0 5.75 6h-.5a.25.25 0 0 0-.25.25zM2.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5A.25.25 0 0 0 4 6.75v-.5A.25.25 0 0 0 3.75 6h-1.5zM2 10.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM4.25 10a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h5.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-5.5z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar keyboard_result = browser_sprite_build_default.a.add(keyboard_symbol);\n/* harmony default export */ var keyboard = (keyboard_symbol);\n// CONCATENATED MODULE: ./src/icons/play.svg\n\n\nvar play_symbol = new browser_symbol_default.a({\n \"id\": \"play\",\n \"use\": \"play-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"play\\\">\\n <path d=\\\"M11.596 8.697l-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.692-1.01 1.233-.696l6.363 3.692a.802.802 0 0 1 0 1.393z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar play_result = browser_sprite_build_default.a.add(play_symbol);\n/* harmony default export */ var play = (play_symbol);\n// CONCATENATED MODULE: ./src/icons/sack.svg\n\n\nvar sack_symbol = new browser_symbol_default.a({\n \"id\": \"sack\",\n \"use\": \"sack-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol viewBox=\\\"0 0 24 24\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"sack\\\">\\n <path d=\\\"M16,9C20,11 21,18 21,18C21,18 22,22 16,22C10,22 8,22 8,22C2,22 3,18 3,18C3,18 4,11 8,9M14,4L12,2L10,4L6,2L8,7H16L18,2L14,4Z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar sack_result = browser_sprite_build_default.a.add(sack_symbol);\n/* harmony default export */ var sack = (sack_symbol);\n// CONCATENATED MODULE: ./src/icons/sortDown.svg\n\n\nvar sortDown_symbol = new browser_symbol_default.a({\n \"id\": \"sortDown\",\n \"use\": \"sortDown-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"sortDown\\\">\\n <path d=\\\"M3.5 2.5a.5.5 0 0 0-1 0v8.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L3.5 11.293V2.5zm3.5 1a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar sortDown_result = browser_sprite_build_default.a.add(sortDown_symbol);\n/* harmony default export */ var sortDown = (sortDown_symbol);\n// CONCATENATED MODULE: ./src/icons/sortUp.svg\n\n\nvar sortUp_symbol = new browser_symbol_default.a({\n \"id\": \"sortUp\",\n \"use\": \"sortUp-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"sortUp\\\">\\n <path d=\\\"M3.5 12.5a.5.5 0 0 1-1 0V3.707L1.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L3.5 3.707V12.5zm3.5-9a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar sortUp_result = browser_sprite_build_default.a.add(sortUp_symbol);\n/* harmony default export */ var sortUp = (sortUp_symbol);\n// CONCATENATED MODULE: ./src/icons/index.ts\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js\nvar objectWithoutPropertiesLoose = __webpack_require__(\"zLVn\");\n\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = Object(objectWithoutPropertiesLoose[\"a\" /* default */])(source, excluded);\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n// CONCATENATED MODULE: ./src/components/SvgIcon/SvgIcon.tsx\n\n\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\nvar SvgIcon_SvgIcon = function SvgIcon(_ref) {\n var icon = _ref.icon,\n props = _objectWithoutProperties(_ref, [\"icon\"]);\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"svg\", _objectSpread(_objectSpread({}, props), {}, {\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"use\", {\n xlinkHref: \"#\".concat(icon.id)\n })\n }));\n};\n\n/* harmony default export */ var components_SvgIcon_SvgIcon = (SvgIcon_SvgIcon);\n// CONCATENATED MODULE: ./src/components/SvgIcon/index.ts\n\n// EXTERNAL MODULE: ./src/components/Tile/Tile.module.scss\nvar Tile_module = __webpack_require__(\"r/Hp\");\nvar Tile_module_default = /*#__PURE__*/__webpack_require__.n(Tile_module);\n\n// CONCATENATED MODULE: ./src/components/Tile/TilePure.tsx\n\n\n\n\n\n\n\nvar TilePure_handleChange = function handleChange(event) {\n return event.preventDefault();\n};\n\nvar TilePure_TilePure = function TilePure(_ref) {\n var _classNames;\n\n var autoFocus = _ref.autoFocus,\n canShowPoints = _ref.canShowPoints,\n character = _ref.character,\n className = _ref.className,\n disabled = _ref.disabled,\n highlighted = _ref.highlighted,\n inputRef = _ref.inputRef,\n inputStyle = _ref.inputStyle,\n isBlank = _ref.isBlank,\n placeholder = _ref.placeholder,\n points = _ref.points,\n pointsStyle = _ref.pointsStyle,\n raised = _ref.raised,\n style = _ref.style,\n tabIndex = _ref.tabIndex,\n onFocus = _ref.onFocus,\n onKeyDown = _ref.onKeyDown;\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: classnames_default()(Tile_module_default.a.tile, className, (_classNames = {}, Object(defineProperty[\"a\" /* default */])(_classNames, Tile_module_default.a.highlighted, highlighted), Object(defineProperty[\"a\" /* default */])(_classNames, Tile_module_default.a.blank, isBlank), Object(defineProperty[\"a\" /* default */])(_classNames, Tile_module_default.a.raised, raised), Object(defineProperty[\"a\" /* default */])(_classNames, Tile_module_default.a.points1, points === 1), Object(defineProperty[\"a\" /* default */])(_classNames, Tile_module_default.a.points2, points === 2), Object(defineProperty[\"a\" /* default */])(_classNames, Tile_module_default.a.points3, points === 3), Object(defineProperty[\"a\" /* default */])(_classNames, Tile_module_default.a.points4, points === 4), Object(defineProperty[\"a\" /* default */])(_classNames, Tile_module_default.a.points5, typeof points === 'number' && points >= 5), _classNames)),\n style: style,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"input\", {\n autoCapitalize: \"off\",\n autoComplete: \"off\",\n autoCorrect: \"off\",\n autoFocus: autoFocus,\n className: Tile_module_default.a.character,\n disabled: disabled,\n maxLength: 1,\n placeholder: placeholder,\n ref: inputRef,\n spellCheck: false,\n style: inputStyle,\n tabIndex: tabIndex,\n value: character || '',\n onChange: TilePure_handleChange,\n onFocus: onFocus,\n onKeyDown: onKeyDown\n }), canShowPoints && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"span\", {\n className: Tile_module_default.a.points,\n style: pointsStyle,\n children: points\n })]\n });\n};\n\n/* harmony default export */ var Tile_TilePure = (/*#__PURE__*/Object(react[\"memo\"])(TilePure_TilePure));\n// CONCATENATED MODULE: ./src/components/Tile/Tile.tsx\n\n\n\n\n\n\nvar Tile_Tile = function Tile(_ref) {\n var autoFocus = _ref.autoFocus,\n className = _ref.className,\n _ref$character = _ref.character,\n character = _ref$character === void 0 ? '' : _ref$character,\n disabled = _ref.disabled,\n highlighted = _ref.highlighted,\n ref = _ref.inputRef,\n isBlank = _ref.isBlank,\n placeholder = _ref.placeholder,\n points = _ref.points,\n raised = _ref.raised,\n size = _ref.size,\n tabIndex = _ref.tabIndex,\n onFocus = _ref.onFocus,\n onKeyDown = _ref.onKeyDown;\n\n var _getTileSizes = Object(lib[\"j\" /* getTileSizes */])(size),\n pointsFontSize = _getTileSizes.pointsFontSize,\n tileFontSize = _getTileSizes.tileFontSize,\n tileSize = _getTileSizes.tileSize;\n\n var style = Object(react[\"useMemo\"])(function () {\n return {\n height: tileSize,\n width: tileSize\n };\n }, [tileSize]);\n var inputStyle = Object(react[\"useMemo\"])(function () {\n return {\n fontSize: tileFontSize\n };\n }, [tileFontSize]);\n var pointsStyle = Object(react[\"useMemo\"])(function () {\n return {\n fontSize: pointsFontSize\n };\n }, [pointsFontSize]);\n var inputRef = Object(react[\"useMemo\"])(function () {\n return ref || /*#__PURE__*/Object(react[\"createRef\"])();\n }, [ref]);\n var isEmpty = !character || character === build[\"EMPTY_CELL\"];\n var canShowPoints = (isBlank || !isEmpty) && typeof points !== 'undefined';\n Object(react[\"useEffect\"])(function () {\n if (autoFocus && inputRef.current) {\n inputRef.current.focus();\n }\n }, [autoFocus, inputRef]);\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Tile_TilePure, {\n autoFocus: autoFocus,\n canShowPoints: canShowPoints,\n character: character,\n className: className,\n disabled: disabled,\n highlighted: highlighted,\n inputRef: inputRef,\n inputStyle: inputStyle,\n isBlank: isBlank,\n placeholder: placeholder,\n points: points,\n pointsStyle: pointsStyle,\n raised: raised,\n style: style,\n tabIndex: tabIndex,\n onFocus: onFocus,\n onKeyDown: onKeyDown\n });\n};\n\n/* harmony default export */ var components_Tile_Tile = (Tile_Tile);\n// CONCATENATED MODULE: ./src/components/Tile/index.ts\n\n// EXTERNAL MODULE: ./src/components/Board/components/Cell/Cell.module.scss\nvar Cell_module = __webpack_require__(\"CjmZ\");\nvar Cell_module_default = /*#__PURE__*/__webpack_require__.n(Cell_module);\n\n// CONCATENATED MODULE: ./src/components/Board/components/Cell/Button.tsx\n\n\n\n\nfunction Button_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 Button_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { Button_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 { Button_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\n\n\nvar Button_Button = function Button(_ref) {\n var children = _ref.children,\n className = _ref.className,\n props = _objectWithoutProperties(_ref, [\"children\", \"className\"]);\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"button\", Button_objectSpread(Button_objectSpread({\n className: classnames_default()(Cell_module_default.a.action, className) // It's fine to make it not focusable with TAB from a11y point of view\n // because alternative key combos are provided.\n ,\n tabIndex: -1,\n type: \"button\"\n }, props), {}, {\n children: children\n }));\n};\n\n/* harmony default export */ var Cell_Button = (Button_Button);\n// CONCATENATED MODULE: ./src/components/Board/components/Cell/lib.ts\n\n\nvar CHARACTER_CLASSNAMES = {\n 1: Cell_module_default.a.bonusCharacter1,\n 2: Cell_module_default.a.bonusCharacter2,\n 3: Cell_module_default.a.bonusCharacter3,\n 5: Cell_module_default.a.bonusCharacter5\n};\nvar WORD_CLASSNAMES = {\n 2: Cell_module_default.a.bonusWord2,\n 3: Cell_module_default.a.bonusWord3\n};\nvar CHARACTER_MULTIPLIER_CLASSNAMES = {\n 2: Cell_module_default.a.bonusCharacterMultiplier2,\n 3: Cell_module_default.a.bonusCharacterMultiplier3\n};\nvar lib_getBonusClassname = function getBonusClassname(cell, bonus) {\n if (!bonus || !cell.isEmpty) {\n return undefined;\n }\n\n var type = bonus.type;\n\n if (type === build[\"BONUS_WORD\"]) {\n return getWordBonusClassname(bonus);\n }\n\n if (type === build[\"BONUS_CHARACTER\"]) {\n return getCharacterBonusClassname(bonus);\n }\n\n throw new Error(\"Unknown bonus type: \".concat(type, \" \").concat(bonus.x, \" \").concat(bonus.y, \" \").concat(bonus.multiplier, \" \").concat(bonus.score));\n};\n\nvar getWordBonusClassname = function getWordBonusClassname(bonus) {\n return WORD_CLASSNAMES[bonus.multiplier];\n};\n\nvar getCharacterBonusClassname = function getCharacterBonusClassname(bonus) {\n if (bonus.score) {\n return CHARACTER_CLASSNAMES[bonus.score];\n }\n\n return CHARACTER_MULTIPLIER_CLASSNAMES[bonus.multiplier];\n};\n// CONCATENATED MODULE: ./src/components/Board/components/Cell/CellPure.tsx\n\n\n\n\n\n\n\n\n\n\n\n\nvar CellPure_CellPure = function CellPure(_ref) {\n var bonus = _ref.bonus,\n cell = _ref.cell,\n className = _ref.className,\n direction = _ref.direction,\n inputRef = _ref.inputRef,\n isEmpty = _ref.isEmpty,\n points = _ref.points,\n size = _ref.size,\n style = _ref.style,\n tile = _ref.tile,\n translate = _ref.translate,\n onDirectionToggleClick = _ref.onDirectionToggleClick,\n onFocus = _ref.onFocus,\n onToggleBlankClick = _ref.onToggleBlankClick;\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: classnames_default()(Cell_module_default.a.cell, lib_getBonusClassname(cell, bonus), className, Object(defineProperty[\"a\" /* default */])({}, Cell_module_default.a.candidate, cell.isCandidate())),\n style: style,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Tile_Tile, {\n className: Cell_module_default.a.tile,\n character: isEmpty ? undefined : tile.character,\n highlighted: cell.isCandidate(),\n inputRef: inputRef,\n isBlank: tile.isBlank,\n points: points,\n raised: !isEmpty,\n size: size,\n tabIndex: cell.x === 0 && cell.y === 0 ? undefined : -1,\n onFocus: onFocus\n }), /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: Cell_module_default.a.actions,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Cell_Button, {\n title: translate('cell.toggle-direction'),\n onClick: onDirectionToggleClick,\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SvgIcon_SvgIcon, {\n className: classnames_default()(Cell_module_default.a.toggleDirection, Object(defineProperty[\"a\" /* default */])({}, Cell_module_default.a.right, direction === 'horizontal')),\n icon: arrowDown\n })\n }), !isEmpty && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Cell_Button, {\n className: classnames_default()(Cell_module_default.a.blank, Object(defineProperty[\"a\" /* default */])({}, Cell_module_default.a.active, tile.isBlank)),\n title: tile.isBlank ? translate('cell.set-not-blank') : translate('cell.set-blank'),\n onClick: onToggleBlankClick,\n children: \"B\"\n })]\n })]\n });\n};\n\n/* harmony default export */ var Cell_CellPure = (/*#__PURE__*/Object(react[\"memo\"])(CellPure_CellPure));\n// CONCATENATED MODULE: ./src/components/Board/components/Cell/Cell.tsx\n\n\n\n\n\n\n\n\nvar Cell_Cell = function Cell(_ref) {\n var cell = _ref.cell,\n className = _ref.className,\n direction = _ref.direction,\n inputRef = _ref.inputRef,\n size = _ref.size,\n onDirectionToggle = _ref.onDirectionToggle,\n onFocus = _ref.onFocus;\n var tile = cell.tile,\n x = cell.x,\n y = cell.y;\n var dispatch = Object(es[\"b\" /* useDispatch */])();\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n var bonus = Object(src_state[\"G\" /* useTypedSelector */])(function (state) {\n return Object(src_state[\"l\" /* selectCellBonus */])(state, cell);\n });\n var points = Object(src_state[\"G\" /* useTypedSelector */])(function (state) {\n return Object(src_state[\"C\" /* selectTilePoints */])(state, cell.tile);\n });\n\n var _getTileSizes = Object(lib[\"j\" /* getTileSizes */])(size),\n tileFontSize = _getTileSizes.tileFontSize;\n\n var isEmpty = tile.character === build[\"EMPTY_CELL\"];\n var style = Object(react[\"useMemo\"])(function () {\n return {\n fontSize: tileFontSize\n };\n }, [tileFontSize]);\n var handleFocus = Object(react[\"useCallback\"])(function () {\n return onFocus(x, y);\n }, [x, y, onFocus]);\n var handleToggleBlankClick = Object(react[\"useCallback\"])(function () {\n if (inputRef.current) {\n inputRef.current.focus();\n }\n\n dispatch(src_state[\"a\" /* boardSlice */].actions.toggleCellIsBlank({\n x: x,\n y: y\n }));\n }, [dispatch, x, y]);\n var handleDirectionToggleClick = Object(react[\"useCallback\"])(function () {\n if (inputRef.current) {\n inputRef.current.focus();\n }\n\n onDirectionToggle();\n }, [onDirectionToggle]);\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Cell_CellPure, {\n bonus: bonus,\n cell: cell,\n className: className,\n direction: direction,\n inputRef: inputRef,\n isEmpty: isEmpty,\n points: points,\n size: size,\n style: style,\n tile: tile,\n translate: translate,\n onDirectionToggleClick: handleDirectionToggleClick,\n onFocus: handleFocus,\n onToggleBlankClick: handleToggleBlankClick\n });\n};\n\n/* harmony default export */ var components_Cell_Cell = (Cell_Cell);\n// CONCATENATED MODULE: ./src/components/Board/components/Cell/index.ts\n\n// CONCATENATED MODULE: ./src/components/Board/components/index.ts\n\n// CONCATENATED MODULE: ./src/components/Board/BoardPure.tsx\n\n\n\n\n\n\nvar BoardPure_BoardPure = function BoardPure(_ref) {\n var className = _ref.className,\n innerRef = _ref.innerRef,\n lastDirection = _ref.lastDirection,\n refs = _ref.refs,\n rows = _ref.rows,\n cellSize = _ref.cellSize,\n onDirectionToggle = _ref.onDirectionToggle,\n onFocus = _ref.onFocus,\n onKeyDown = _ref.onKeyDown;\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: classnames_default()(Board_module_default.a.board, className),\n ref: innerRef,\n onKeyDown: onKeyDown,\n children: rows.map(function (cells, y) {\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: Board_module_default.a.row,\n children: cells.map(function (cell, x) {\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Cell_Cell, {\n className: Board_module_default.a.cell,\n cell: cell,\n direction: lastDirection,\n inputRef: refs[y][x],\n size: cellSize,\n onDirectionToggle: onDirectionToggle,\n onFocus: onFocus\n }, x);\n })\n }, y);\n })\n });\n};\n\n/* harmony default export */ var Board_BoardPure = (/*#__PURE__*/Object(react[\"memo\"])(BoardPure_BoardPure));\n// CONCATENATED MODULE: ./node_modules/react-use/esm/useLatest.js\n\nvar useLatest = function (value) {\n var ref = Object(react[\"useRef\"])(value);\n ref.current = value;\n return ref;\n};\n/* harmony default export */ var esm_useLatest = (useLatest);\n\n// CONCATENATED MODULE: ./src/components/Board/lib/getPositionInGrid.ts\nvar getPositionInGrid = function getPositionInGrid(grid, constraint) {\n for (var y = 0; y < grid.length; ++y) {\n for (var x = 0; x < grid[0].length; ++x) {\n if (constraint(grid[y][x])) {\n return {\n x: x,\n y: y\n };\n }\n }\n }\n\n return undefined;\n};\n\n/* harmony default export */ var lib_getPositionInGrid = (getPositionInGrid);\n// CONCATENATED MODULE: ./src/components/Board/lib/index.ts\n\n// CONCATENATED MODULE: ./src/components/Board/hooks/useGrid.ts\n\n\nfunction useGrid_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 useGrid_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { useGrid_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 { useGrid_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\n\n\n\n\n\n\nvar useGrid_useGrid = function useGrid(rows) {\n var height = rows.length;\n var width = rows[0].length;\n var dispatch = Object(es[\"b\" /* useDispatch */])();\n var config = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"n\" /* selectConfig */]);\n var refs = Object(react[\"useMemo\"])(function () {\n return Object(lib[\"b\" /* createGridOf */])(width, height, function () {\n return /*#__PURE__*/Object(react[\"createRef\"])();\n });\n }, [width, height]);\n var activeIndexRef = Object(react[\"useRef\"])({\n x: 0,\n y: 0\n });\n\n var _useState = Object(react[\"useState\"])('horizontal'),\n lastDirection = _useState[0],\n setLastDirection = _useState[1];\n\n var lastDirectionRef = esm_useLatest(lastDirection);\n var changeActiveIndex = Object(react[\"useCallback\"])(function (offsetX, offsetY) {\n var _refs$y$x$current;\n\n var x = Math.min(Math.max(activeIndexRef.current.x + offsetX, 0), width - 1);\n var y = Math.min(Math.max(activeIndexRef.current.y + offsetY, 0), height - 1);\n activeIndexRef.current = {\n x: x,\n y: y\n };\n (_refs$y$x$current = refs[y][x].current) === null || _refs$y$x$current === void 0 ? void 0 : _refs$y$x$current.focus();\n }, [activeIndexRef, refs]);\n var getInputRefPosition = Object(react[\"useCallback\"])(function (inputRef) {\n return lib_getPositionInGrid(refs, function (ref) {\n return ref.current === inputRef;\n });\n }, [refs]);\n var onDirectionToggle = Object(react[\"useCallback\"])(function () {\n setLastDirection(function (direction) {\n return direction === 'vertical' ? 'horizontal' : 'vertical';\n });\n }, []);\n var onFocus = Object(react[\"useCallback\"])(function (x, y) {\n activeIndexRef.current = {\n x: x,\n y: y\n };\n }, []);\n var onMoveFocus = Object(react[\"useCallback\"])(function (direction) {\n var offset = direction === 'forward' ? 1 : -1;\n\n if (lastDirectionRef.current === 'horizontal') {\n changeActiveIndex(offset, 0);\n } else {\n changeActiveIndex(0, offset);\n }\n }, [changeActiveIndex, lastDirectionRef]);\n var onKeyDown = Object(react[\"useMemo\"])(function () {\n return Object(lib[\"c\" /* createKeyboardNavigation */])({\n onArrowDown: function onArrowDown(event) {\n if (Object(lib[\"l\" /* isCtrl */])(event)) {\n onDirectionToggle();\n } else {\n changeActiveIndex(0, 1);\n }\n },\n onArrowLeft: function onArrowLeft(event) {\n if (Object(lib[\"l\" /* isCtrl */])(event)) {\n onDirectionToggle();\n } else {\n changeActiveIndex(-1, 0);\n }\n },\n onArrowRight: function onArrowRight(event) {\n if (Object(lib[\"l\" /* isCtrl */])(event)) {\n onDirectionToggle();\n } else {\n changeActiveIndex(1, 0);\n }\n },\n onArrowUp: function onArrowUp(event) {\n if (Object(lib[\"l\" /* isCtrl */])(event)) {\n onDirectionToggle();\n } else {\n changeActiveIndex(0, -1);\n }\n },\n onBackspace: function onBackspace(event) {\n var position = getInputRefPosition(event.target);\n\n if (!position) {\n return;\n }\n\n dispatch(src_state[\"a\" /* boardSlice */].actions.changeCellValue(useGrid_objectSpread(useGrid_objectSpread({}, position), {}, {\n value: build[\"EMPTY_CELL\"]\n })));\n onMoveFocus('backward');\n },\n onDelete: function onDelete(event) {\n var position = getInputRefPosition(event.target);\n\n if (!position) {\n return;\n }\n\n dispatch(src_state[\"a\" /* boardSlice */].actions.changeCellValue(useGrid_objectSpread(useGrid_objectSpread({}, position), {}, {\n value: build[\"EMPTY_CELL\"]\n })));\n onMoveFocus('forward');\n },\n onKeyDown: function onKeyDown(event) {\n var position = getInputRefPosition(event.target);\n\n if (!position) {\n return;\n }\n\n var x = position.x,\n y = position.y;\n var character = event.key.toLowerCase();\n var isTogglingBlank = Object(lib[\"l\" /* isCtrl */])(event) && character === 'b';\n var twoCharacterTile = config.getTwoCharacterTileByPrefix(character);\n\n if (isTogglingBlank) {\n dispatch(src_state[\"a\" /* boardSlice */].actions.toggleCellIsBlank(position));\n return;\n }\n\n if (Object(lib[\"l\" /* isCtrl */])(event) && twoCharacterTile) {\n event.preventDefault();\n dispatch(src_state[\"a\" /* boardSlice */].actions.changeCellValue({\n x: x,\n y: y,\n value: twoCharacterTile\n }));\n onMoveFocus('forward');\n return;\n }\n\n if (!config.hasCharacter(character)) {\n return;\n }\n\n var canCheckUp = y - 1 > 0;\n var canCheckLeft = x > 0;\n var canCheckRight = x + 1 < width;\n var canCheckDown = y + 1 < height;\n\n if (canCheckUp) {\n var cellUp = rows[y - 1][x];\n var twoCharacterCandidate = cellUp.tile.character + character;\n\n if (config.twoCharacterTiles.includes(twoCharacterCandidate)) {\n dispatch(src_state[\"a\" /* boardSlice */].actions.changeCellValue(useGrid_objectSpread(useGrid_objectSpread({}, position), {}, {\n y: y - 1,\n value: twoCharacterCandidate\n })));\n return;\n }\n }\n\n if (canCheckDown) {\n var cellDown = rows[y + 1][x];\n\n var _twoCharacterCandidate = character + cellDown.tile.character;\n\n if (config.twoCharacterTiles.includes(_twoCharacterCandidate)) {\n dispatch(src_state[\"a\" /* boardSlice */].actions.changeCellValue(useGrid_objectSpread(useGrid_objectSpread({}, position), {}, {\n value: character\n })));\n dispatch(src_state[\"a\" /* boardSlice */].actions.changeCellValue(useGrid_objectSpread(useGrid_objectSpread({}, position), {}, {\n y: y + 1,\n value: build[\"EMPTY_CELL\"]\n })));\n onMoveFocus('forward');\n return;\n }\n }\n\n if (canCheckLeft) {\n var cellLeft = rows[y][x - 1];\n\n var _twoCharacterCandidate2 = cellLeft.tile.character + character;\n\n if (config.twoCharacterTiles.includes(_twoCharacterCandidate2)) {\n dispatch(src_state[\"a\" /* boardSlice */].actions.changeCellValue(useGrid_objectSpread(useGrid_objectSpread({}, position), {}, {\n x: x - 1,\n value: _twoCharacterCandidate2\n })));\n return;\n }\n }\n\n if (canCheckRight) {\n var cellRight = rows[y][x + 1];\n\n var _twoCharacterCandidate3 = character + cellRight.tile.character;\n\n if (config.twoCharacterTiles.includes(_twoCharacterCandidate3)) {\n dispatch(src_state[\"a\" /* boardSlice */].actions.changeCellValue(useGrid_objectSpread(useGrid_objectSpread({}, position), {}, {\n value: character\n })));\n dispatch(src_state[\"a\" /* boardSlice */].actions.changeCellValue(useGrid_objectSpread(useGrid_objectSpread({}, position), {}, {\n x: x + 1,\n value: build[\"EMPTY_CELL\"]\n })));\n onMoveFocus('forward');\n return;\n }\n }\n\n if (!canCheckDown || !canCheckRight) {\n var cell = rows[y][x];\n\n var _twoCharacterCandidate4 = cell.tile.character + character;\n\n if (config.twoCharacterTiles.includes(_twoCharacterCandidate4)) {\n dispatch(src_state[\"a\" /* boardSlice */].actions.changeCellValue(useGrid_objectSpread(useGrid_objectSpread({}, position), {}, {\n value: _twoCharacterCandidate4\n })));\n return;\n }\n }\n\n dispatch(src_state[\"a\" /* boardSlice */].actions.changeCellValue(useGrid_objectSpread(useGrid_objectSpread({}, position), {}, {\n value: character\n })));\n onMoveFocus('forward');\n }\n });\n }, [changeActiveIndex, config, dispatch, lastDirectionRef, onDirectionToggle, rows]);\n return [{\n lastDirection: lastDirection,\n refs: refs\n }, {\n onDirectionToggle: onDirectionToggle,\n onFocus: onFocus,\n onKeyDown: onKeyDown\n }];\n};\n\n/* harmony default export */ var hooks_useGrid = (useGrid_useGrid);\n// CONCATENATED MODULE: ./src/components/Board/hooks/index.ts\n\n// CONCATENATED MODULE: ./src/components/Board/Board.tsx\n\n\n\n\n\n\n\nvar Board_Board = function Board(_ref) {\n var cellSize = _ref.cellSize,\n className = _ref.className,\n innerRef = _ref.innerRef;\n var rows = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"z\" /* selectRowsWithCandidate */]);\n\n var _useGrid = hooks_useGrid(rows),\n _useGrid2 = Object(slicedToArray[\"a\" /* default */])(_useGrid, 2),\n _useGrid2$ = _useGrid2[0],\n lastDirection = _useGrid2$.lastDirection,\n refs = _useGrid2$.refs,\n _useGrid2$2 = _useGrid2[1],\n onDirectionToggle = _useGrid2$2.onDirectionToggle,\n onFocus = _useGrid2$2.onFocus,\n onKeyDown = _useGrid2$2.onKeyDown;\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Board_BoardPure, {\n className: className,\n cellSize: cellSize,\n innerRef: innerRef,\n lastDirection: lastDirection,\n refs: refs,\n rows: rows,\n onDirectionToggle: onDirectionToggle,\n onFocus: onFocus,\n onKeyDown: onKeyDown\n });\n};\n\n/* harmony default export */ var components_Board_Board = (Board_Board);\n// CONCATENATED MODULE: ./src/components/Board/index.ts\n\n// EXTERNAL MODULE: ./src/components/Button/Button.module.scss\nvar Button_module = __webpack_require__(\"1zWx\");\nvar Button_module_default = /*#__PURE__*/__webpack_require__.n(Button_module);\n\n// CONCATENATED MODULE: ./src/components/Button/Content.tsx\n\n\n\n\n\n\nvar Content_Content = function Content(_ref) {\n var children = _ref.children,\n icon = _ref.icon;\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"span\", {\n className: Button_module_default.a.content,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"span\", {\n className: Button_module_default.a.label,\n children: children\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SvgIcon_SvgIcon, {\n className: Button_module_default.a.icon,\n icon: icon\n })]\n });\n};\n\n/* harmony default export */ var Button_Content = (Content_Content);\n// CONCATENATED MODULE: ./src/components/Button/Link.tsx\n\n\n\n\nfunction Link_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 Link_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { Link_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 { Link_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\n\n\n\nvar Link_Link = function Link(_ref) {\n var children = _ref.children,\n className = _ref.className,\n icon = _ref.icon,\n props = _objectWithoutProperties(_ref, [\"children\", \"className\", \"icon\"]);\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"a\", Link_objectSpread(Link_objectSpread({\n className: classnames_default()(Button_module_default.a.button, className)\n }, props), {}, {\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Button_Content, {\n icon: icon,\n children: children\n })\n }));\n};\n\n/* harmony default export */ var Button_Link = (Link_Link);\n// CONCATENATED MODULE: ./src/components/Button/Button.tsx\n\n\n\n\nfunction Button_Button_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 Button_Button_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { Button_Button_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 { Button_Button_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\n\n\n\n\nvar Button_Button_Button = function Button(_ref) {\n var children = _ref.children,\n className = _ref.className,\n icon = _ref.icon,\n props = _objectWithoutProperties(_ref, [\"children\", \"className\", \"icon\"]);\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"button\", Button_Button_objectSpread(Button_Button_objectSpread({\n className: classnames_default()(Button_module_default.a.button, className),\n type: \"button\"\n }, props), {}, {\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Button_Content, {\n icon: icon,\n children: children\n })\n }));\n};\n\n/* harmony default export */ var components_Button_Button = (Object.assign(Button_Button_Button, {\n Link: Button_Link\n}));\n// CONCATENATED MODULE: ./src/components/Button/index.ts\n\n// EXTERNAL MODULE: ./src/components/Checkbox/Checkbox.module.scss\nvar Checkbox_module = __webpack_require__(\"hj7B\");\nvar Checkbox_module_default = /*#__PURE__*/__webpack_require__.n(Checkbox_module);\n\n// CONCATENATED MODULE: ./src/components/Checkbox/Checkbox.tsx\n\n\n\n\n\n\n\n\n\nvar Checkbox_Checkbox = function Checkbox(_ref) {\n var checked = _ref.checked,\n children = _ref.children,\n className = _ref.className,\n disabled = _ref.disabled,\n id = _ref.id,\n name = _ref.name,\n title = _ref.title,\n onChange = _ref.onChange;\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"label\", {\n className: classnames_default()(Checkbox_module_default.a.checkbox, className, Object(defineProperty[\"a\" /* default */])({}, Checkbox_module_default.a.checked, checked)),\n htmlFor: id,\n title: title,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"input\", {\n checked: checked,\n className: Checkbox_module_default.a.input,\n disabled: disabled,\n id: id,\n name: name,\n type: \"checkbox\",\n onChange: onChange\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SvgIcon_SvgIcon, {\n className: Checkbox_module_default.a.icon,\n icon: checked ? checkboxChecked : checkboxEmpty\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: Checkbox_module_default.a.content,\n children: children\n })]\n });\n};\n\n/* harmony default export */ var components_Checkbox_Checkbox = (Checkbox_Checkbox);\n// CONCATENATED MODULE: ./src/components/Checkbox/index.ts\n\n// EXTERNAL MODULE: ./src/parameters/index.ts\nvar parameters = __webpack_require__(\"dm5A\");\n\n// EXTERNAL MODULE: ../configs/build/index.js\nvar configs_build = __webpack_require__(\"4VI5\");\n\n// EXTERNAL MODULE: ../types/build/index.js\nvar types_build = __webpack_require__(\"v/x1\");\n\n// CONCATENATED MODULE: ./src/components/PlainTiles/lib/getX.ts\n\n\nvar getX_getX = function getX(index) {\n return parameters[\"o\" /* PLAIN_TILES_PADDING_HORIZONTAL */] + index * (parameters[\"u\" /* PLAIN_TILES_TILE_SIZE */] + parameters[\"r\" /* PLAIN_TILES_TILE_MARGIN */]);\n};\n\n/* harmony default export */ var lib_getX = (getX_getX);\n// CONCATENATED MODULE: ./src/components/PlainTiles/lib/getY.ts\n\n\nvar getY_getY = function getY(index) {\n return parameters[\"p\" /* PLAIN_TILES_PADDING_VERTICAL */] + index * (parameters[\"u\" /* PLAIN_TILES_TILE_SIZE */] + parameters[\"r\" /* PLAIN_TILES_TILE_MARGIN */]);\n};\n\n/* harmony default export */ var lib_getY = (getY_getY);\n// CONCATENATED MODULE: ./src/components/PlainTiles/lib/randomize.ts\nvar randomize = function randomize(value, maxChange) {\n return value + maxChange * 2 * (0.5 - Math.random());\n};\n\n/* harmony default export */ var lib_randomize = (randomize);\n// CONCATENATED MODULE: ./src/components/PlainTiles/lib/createPlainTile.ts\n\n\n\n\n\n\n\nvar createPlainTile_createPlainTile = function createPlainTile(_ref) {\n var cellIndex = _ref.cellIndex,\n character = _ref.character,\n color = _ref.color,\n rowIndex = _ref.rowIndex,\n showPoints = _ref.showPoints;\n var configPoints = configs_build[\"literaki\"][types_build[\"Locale\"].EN_US].getCharacterPoints(character.toLowerCase());\n var points = showPoints ? configPoints : undefined;\n var defaultColor = typeof configPoints === 'number' ? parameters[\"q\" /* PLAIN_TILES_POINTS_COLORS */][configPoints] : parameters[\"n\" /* PLAIN_TILES_COLOR_DEFAULT */];\n var x = lib_getX(cellIndex) + parameters[\"u\" /* PLAIN_TILES_TILE_SIZE */] / 2;\n var y = lib_getY(0) + parameters[\"u\" /* PLAIN_TILES_TILE_SIZE */] / 2;\n return {\n character: character,\n color: color || defaultColor,\n points: points,\n size: parameters[\"u\" /* PLAIN_TILES_TILE_SIZE */],\n transform: \"rotate(\".concat(lib_randomize(0, parameters[\"s\" /* PLAIN_TILES_TILE_MAX_ROTATE */]), \", \").concat(x, \", \").concat(y, \")\"),\n x: lib_randomize(lib_getX(cellIndex), parameters[\"t\" /* PLAIN_TILES_TILE_MAX_SCATTER */]),\n y: lib_randomize(lib_getY(rowIndex), parameters[\"t\" /* PLAIN_TILES_TILE_MAX_SCATTER */])\n };\n};\n\n/* harmony default export */ var lib_createPlainTile = (createPlainTile_createPlainTile);\n// CONCATENATED MODULE: ./src/components/PlainTiles/lib/createPlainTiles.ts\n\n\nvar createPlainTiles_createPlainTiles = function createPlainTiles(_ref) {\n var color = _ref.color,\n content = _ref.content,\n showPoints = _ref.showPoints;\n var rows = content.map(function (words, rowIndex) {\n return words.map(function (word, wordIndex) {\n var cellOffset = words.slice(0, wordIndex).reduce(function (result, _ref2) {\n var length = _ref2.length;\n return result + length + ' '.length;\n }, 0);\n var characters = word.split('');\n return characters.map(function (character, cellIndex) {\n return lib_createPlainTile({\n cellIndex: cellOffset + cellIndex,\n character: character,\n color: color,\n rowIndex: rowIndex,\n showPoints: showPoints\n });\n });\n });\n });\n var tiles = rows.flat(2);\n return tiles;\n};\n\n/* harmony default export */ var lib_createPlainTiles = (createPlainTiles_createPlainTiles);\n// CONCATENATED MODULE: ./src/components/PlainTiles/lib/getViewbox.ts\n\n\nvar getViewbox_getViewbox = function getViewbox(content) {\n var longestRowLength = content.reduce(function (result, words) {\n var wordsLength = words.reduce(function (sum, word) {\n return sum + word.length;\n }, 0);\n var rowLength = wordsLength + Math.max(words.length - 1, 0);\n return Math.max(result, rowLength);\n }, 0);\n var width = longestRowLength * (parameters[\"u\" /* PLAIN_TILES_TILE_SIZE */] + parameters[\"r\" /* PLAIN_TILES_TILE_MARGIN */]) - (longestRowLength === 0 ? 0 : parameters[\"r\" /* PLAIN_TILES_TILE_MARGIN */]);\n var height = content.length * (parameters[\"u\" /* PLAIN_TILES_TILE_SIZE */] + parameters[\"r\" /* PLAIN_TILES_TILE_MARGIN */]) - (content.length === 0 ? 0 : parameters[\"r\" /* PLAIN_TILES_TILE_MARGIN */]);\n return \"0 0 \".concat(width, \" \").concat(height);\n};\n\n/* harmony default export */ var lib_getViewbox = (getViewbox_getViewbox);\n// CONCATENATED MODULE: ./src/components/PlainTiles/lib/index.ts\n\n\n\n\n\n\n// EXTERNAL MODULE: ./src/components/PlainTiles/PlainTiles.module.scss\nvar PlainTiles_module = __webpack_require__(\"WX7Y\");\nvar PlainTiles_module_default = /*#__PURE__*/__webpack_require__.n(PlainTiles_module);\n\n// CONCATENATED MODULE: ./src/components/PlainTiles/Tile.tsx\n\n\n\n\nvar PlainTiles_Tile_Tile = function Tile(_ref) {\n var character = _ref.character,\n className = _ref.className,\n color = _ref.color,\n points = _ref.points,\n size = _ref.size,\n transform = _ref.transform,\n x = _ref.x,\n y = _ref.y;\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"g\", {\n className: className,\n transform: transform,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"rect\", {\n fill: color,\n height: size,\n width: size,\n x: x,\n y: y\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"text\", {\n dominantBaseline: \"central\",\n fontFamily: \"Open Sans\",\n fontSize: 0.6 * size,\n fontWeight: \"bold\",\n textAnchor: \"middle\",\n x: x + size / 2,\n y: y + size / 2,\n children: character\n }), typeof points === 'number' && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"text\", {\n dominantBaseline: \"text-after-edge\",\n fontFamily: \"Open Sans\",\n fontSize: 0.25 * size,\n fontWeight: \"bold\",\n textAnchor: \"end\",\n x: x + size * 0.9,\n y: y + size * 0.95,\n children: points\n })]\n });\n};\n\n/* harmony default export */ var PlainTiles_Tile = (PlainTiles_Tile_Tile);\n// CONCATENATED MODULE: ./src/components/PlainTiles/PlainTiles.tsx\n\n\n\n\n\n\n\n\nvar PlainTiles_PlainTiles = function PlainTiles(_ref) {\n var _classNames;\n\n var className = _ref.className,\n color = _ref.color,\n content = _ref.content,\n dropShadow = _ref.dropShadow,\n showPoints = _ref.showPoints,\n style = _ref.style,\n wave = _ref.wave;\n var tiles = Object(react[\"useMemo\"])(function () {\n return lib_createPlainTiles({\n color: color,\n content: content,\n showPoints: showPoints\n });\n }, [color, content, showPoints]);\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"svg\", {\n className: classnames_default()(className, (_classNames = {}, Object(defineProperty[\"a\" /* default */])(_classNames, PlainTiles_module_default.a.dropShadow, dropShadow), Object(defineProperty[\"a\" /* default */])(_classNames, PlainTiles_module_default.a.wave, wave), _classNames)),\n style: style,\n viewBox: lib_getViewbox(content),\n xmlns: \"http://www.w3.org/2000/svg\",\n children: tiles.map(function (tile, index) {\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(PlainTiles_Tile, {\n character: tile.character,\n className: PlainTiles_module_default.a.tile,\n color: tile.color,\n points: tile.points,\n size: tile.size,\n transform: tile.transform,\n x: tile.x,\n y: tile.y\n }, index);\n })\n });\n};\n\n/* harmony default export */ var components_PlainTiles_PlainTiles = (PlainTiles_PlainTiles);\n// CONCATENATED MODULE: ./src/components/PlainTiles/index.ts\n\n// EXTERNAL MODULE: ./src/components/EmptyState/EmptyState.module.scss\nvar EmptyState_module = __webpack_require__(\"Jsr2\");\nvar EmptyState_module_default = /*#__PURE__*/__webpack_require__.n(EmptyState_module);\n\n// CONCATENATED MODULE: ./src/components/EmptyState/EmptyState.tsx\n\n\n\n\n\n\n\n\nvar TITLE_KEY_PER_TYPE = {\n error: 'empty-state.error',\n info: 'empty-state.info',\n success: 'empty-state.success',\n warning: 'empty-state.warning'\n};\nvar COLORS_PER_TYPE = {\n error: parameters[\"h\" /* COLOR_RED */],\n info: parameters[\"f\" /* COLOR_BLUE */],\n success: parameters[\"g\" /* COLOR_GREEN */],\n warning: parameters[\"i\" /* COLOR_YELLOW */]\n};\n\nvar EmptyState_EmptyState = function EmptyState(_ref) {\n var className = _ref.className,\n children = _ref.children,\n type = _ref.type;\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n var title = Object(react[\"useMemo\"])(function () {\n return translate(TITLE_KEY_PER_TYPE[type]);\n }, [translate]);\n var content = Object(react[\"useMemo\"])(function () {\n return [[title.toUpperCase()]];\n }, [title]);\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: classnames_default()(EmptyState_module_default.a.emptyState, className),\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_PlainTiles_PlainTiles, {\n className: EmptyState_module_default.a.tiles,\n color: COLORS_PER_TYPE[type],\n content: content\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: EmptyState_module_default.a.content,\n children: children\n })]\n });\n};\n\n/* harmony default export */ var components_EmptyState_EmptyState = (EmptyState_EmptyState);\n// CONCATENATED MODULE: ./src/components/EmptyState/index.ts\n\n// EXTERNAL MODULE: ./src/components/Loading/Loading.module.scss\nvar Loading_module = __webpack_require__(\"sEFA\");\nvar Loading_module_default = /*#__PURE__*/__webpack_require__.n(Loading_module);\n\n// CONCATENATED MODULE: ./src/components/Loading/Loading.tsx\n\n\n\n\n\n\n\n\nvar Loading_Loading = function Loading(_ref) {\n var className = _ref.className,\n _ref$wave = _ref.wave,\n wave = _ref$wave === void 0 ? true : _ref$wave;\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n var content = Object(react[\"useMemo\"])(function () {\n return [[translate('common.loading').toUpperCase()]];\n }, [translate]);\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: classnames_default()(Loading_module_default.a.loading, className),\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: Loading_module_default.a.dim\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: Loading_module_default.a.logo,\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_PlainTiles_PlainTiles, {\n className: classnames_default()(Loading_module_default.a.tiles),\n content: content,\n dropShadow: true,\n wave: wave\n })\n })]\n });\n};\n\n/* harmony default export */ var components_Loading_Loading = (Loading_Loading);\n// CONCATENATED MODULE: ./src/components/Loading/index.ts\n\n// EXTERNAL MODULE: ./src/components/Dictionary/Dictionary.module.scss\nvar Dictionary_module = __webpack_require__(\"mk9T\");\nvar Dictionary_module_default = /*#__PURE__*/__webpack_require__.n(Dictionary_module);\n\n// CONCATENATED MODULE: ./src/components/Dictionary/Dictionary.tsx\n\n\n\n\n\n\n\n\n\n\n\nvar Dictionary_Dictionary = function Dictionary(_ref) {\n var _classNames;\n\n var className = _ref.className;\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n\n var _useTypedSelector = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"p\" /* selectDictionary */]),\n definitions = _useTypedSelector.definitions,\n isAllowed = _useTypedSelector.isAllowed,\n isLoading = _useTypedSelector.isLoading,\n word = _useTypedSelector.word;\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: classnames_default()(Dictionary_module_default.a.dictionary, className, (_classNames = {}, Object(defineProperty[\"a\" /* default */])(_classNames, Dictionary_module_default.a.isAllowed, isAllowed === true), Object(defineProperty[\"a\" /* default */])(_classNames, Dictionary_module_default.a.isNotAllowed, isAllowed === false), _classNames)),\n children: [typeof word === 'undefined' && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_EmptyState_EmptyState, {\n type: \"info\",\n children: translate('dictionary.empty-state.uninitialized')\n }), typeof word !== 'undefined' && /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: Dictionary_module_default.a.content,\n children: [word && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"h2\", {\n className: Dictionary_module_default.a.word,\n children: word\n }), isAllowed === false && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n children: translate('dictionary.empty-state.not-allowed')\n }), isAllowed === true && /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(jsx_runtime[\"Fragment\"], {\n children: [definitions.length === 0 && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n children: translate('dictionary.empty-state.no-definitions')\n }), definitions.length > 0 && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"ul\", {\n className: Dictionary_module_default.a.definitions,\n children: definitions.map(function (result, index) {\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"li\", {\n className: Dictionary_module_default.a.definition,\n children: result\n }, index);\n })\n })]\n }), !isLoading && isAllowed === null && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n children: translate('dictionary.empty-state.no-results')\n })]\n }), isLoading && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Loading_Loading, {})]\n });\n};\n\n/* harmony default export */ var components_Dictionary_Dictionary = (Dictionary_Dictionary);\n// CONCATENATED MODULE: ./src/components/Dictionary/index.ts\n\n// EXTERNAL MODULE: ./src/components/DictionaryInput/DictionaryInput.module.scss\nvar DictionaryInput_module = __webpack_require__(\"EIE9\");\nvar DictionaryInput_module_default = /*#__PURE__*/__webpack_require__.n(DictionaryInput_module);\n\n// CONCATENATED MODULE: ./src/components/DictionaryInput/DictionaryInput.tsx\n\n\n\n\n\n\n\nvar DictionaryInput_DictionaryInput = function DictionaryInput(_ref) {\n var className = _ref.className;\n var dispatch = Object(es[\"b\" /* useDispatch */])();\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n\n var _useTypedSelector = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"p\" /* selectDictionary */]),\n input = _useTypedSelector.input;\n\n var handleChange = function handleChange(event) {\n dispatch(src_state[\"c\" /* dictionarySlice */].actions.changeInput(event.target.value));\n };\n\n var handleSubmit = function handleSubmit(event) {\n event.preventDefault();\n dispatch(src_state[\"c\" /* dictionarySlice */].actions.submit());\n };\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"form\", {\n className: classnames_default()(DictionaryInput_module_default.a.dictionaryInput, className),\n onSubmit: handleSubmit,\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"input\", {\n className: DictionaryInput_module_default.a.input,\n placeholder: translate('dictionary.input.placeholder'),\n required: true,\n type: \"text\",\n value: input,\n onChange: handleChange\n })\n });\n};\n\n/* harmony default export */ var components_DictionaryInput_DictionaryInput = (DictionaryInput_DictionaryInput);\n// CONCATENATED MODULE: ./src/components/DictionaryInput/index.ts\n\n// EXTERNAL MODULE: ./src/components/Key/Key.module.scss\nvar Key_module = __webpack_require__(\"99so\");\nvar Key_module_default = /*#__PURE__*/__webpack_require__.n(Key_module);\n\n// CONCATENATED MODULE: ./src/components/Key/Key.tsx\n\n\n\n\n\nvar Key_Key = function Key(_ref) {\n var children = _ref.children,\n className = _ref.className;\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"kbd\", {\n className: classnames_default()(Key_module_default.a.key, className),\n children: children\n });\n};\n\n/* harmony default export */ var components_Key_Key = (Key_Key);\n// CONCATENATED MODULE: ./src/components/Key/index.ts\n\n// EXTERNAL MODULE: ./node_modules/react-modal/lib/index.js\nvar react_modal_lib = __webpack_require__(\"9rZX\");\nvar lib_default = /*#__PURE__*/__webpack_require__.n(react_modal_lib);\n\n// EXTERNAL MODULE: ./src/components/SquareButton/SquareButton.module.scss\nvar SquareButton_module = __webpack_require__(\"5d2k\");\nvar SquareButton_module_default = /*#__PURE__*/__webpack_require__.n(SquareButton_module);\n\n// CONCATENATED MODULE: ./src/components/SquareButton/Content.tsx\n\n\n\n\n\n\nvar SquareButton_Content_Content = function Content(_ref) {\n var children = _ref.children,\n icon = _ref.icon;\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"span\", {\n className: SquareButton_module_default.a.content,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SvgIcon_SvgIcon, {\n className: SquareButton_module_default.a.icon,\n icon: icon\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"span\", {\n className: SquareButton_module_default.a.label,\n children: children\n })]\n });\n};\n\n/* harmony default export */ var SquareButton_Content = (SquareButton_Content_Content);\n// CONCATENATED MODULE: ./src/components/SquareButton/Link.tsx\n\n\n\n\nfunction SquareButton_Link_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 SquareButton_Link_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { SquareButton_Link_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 { SquareButton_Link_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\n\n\n\nvar SquareButton_Link_Link = function Link(_ref) {\n var children = _ref.children,\n className = _ref.className,\n icon = _ref.icon,\n props = _objectWithoutProperties(_ref, [\"children\", \"className\", \"icon\"]);\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"a\", SquareButton_Link_objectSpread(SquareButton_Link_objectSpread({\n className: classnames_default()(SquareButton_module_default.a.squareButton, className)\n }, props), {}, {\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(SquareButton_Content, {\n icon: icon,\n children: children\n })\n }));\n};\n\n/* harmony default export */ var SquareButton_Link = (SquareButton_Link_Link);\n// CONCATENATED MODULE: ./src/components/SquareButton/SquareButton.tsx\n\n\n\n\nfunction SquareButton_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 SquareButton_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { SquareButton_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 { SquareButton_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\n\n\n\n\nvar SquareButton_SquareButton = function SquareButton(_ref) {\n var children = _ref.children,\n className = _ref.className,\n icon = _ref.icon,\n props = _objectWithoutProperties(_ref, [\"children\", \"className\", \"icon\"]);\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"button\", SquareButton_objectSpread(SquareButton_objectSpread({\n className: classnames_default()(SquareButton_module_default.a.squareButton, className),\n type: \"button\"\n }, props), {}, {\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(SquareButton_Content, {\n icon: icon,\n children: children\n })\n }));\n};\n\n/* harmony default export */ var components_SquareButton_SquareButton = (Object.assign(SquareButton_SquareButton, {\n Link: SquareButton_Link\n}));\n// CONCATENATED MODULE: ./src/components/SquareButton/index.ts\n\n// EXTERNAL MODULE: ./src/components/Sidebar/components/Section/Section.module.scss\nvar Section_module = __webpack_require__(\"z9kn\");\nvar Section_module_default = /*#__PURE__*/__webpack_require__.n(Section_module);\n\n// CONCATENATED MODULE: ./src/components/Sidebar/components/Section/Section.tsx\n\n\n\n\n\n\nvar Section_Section = function Section(_ref) {\n var children = _ref.children,\n className = _ref.className,\n title = _ref.title;\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"section\", {\n className: classnames_default()(Section_module_default.a.section, className),\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"h2\", {\n className: Section_module_default.a.heading,\n children: title\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n children: children\n })]\n });\n};\n\n/* harmony default export */ var components_Section_Section = (Section_Section);\n// CONCATENATED MODULE: ./src/components/Sidebar/components/Section/index.ts\n\n// CONCATENATED MODULE: ./src/components/Sidebar/components/index.ts\n\n// EXTERNAL MODULE: ./src/components/Sidebar/Sidebar.module.scss\nvar Sidebar_module = __webpack_require__(\"SySy\");\nvar Sidebar_module_default = /*#__PURE__*/__webpack_require__.n(Sidebar_module);\n\n// CONCATENATED MODULE: ./src/components/Sidebar/Sidebar.tsx\n\n\n\n\n\n\n\n\n\n\n\n\nvar Sidebar_Sidebar = function Sidebar(_ref) {\n var children = _ref.children,\n className = _ref.className,\n isOpen = _ref.isOpen,\n title = _ref.title,\n onClose = _ref.onClose;\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(lib_default.a, {\n className: {\n afterOpen: Sidebar_module_default.a.afterOpen,\n base: Sidebar_module_default.a.modal,\n beforeClose: Sidebar_module_default.a.beforeClose\n },\n closeTimeoutMS: parameters[\"A\" /* TRANSITION_DURATION_LONG */],\n contentLabel: title,\n isOpen: isOpen,\n overlayClassName: Sidebar_module_default.a.overlay,\n onRequestClose: onClose,\n children: /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: classnames_default()(Sidebar_module_default.a.sidebar, className),\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: Sidebar_module_default.a.header,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"h1\", {\n className: Sidebar_module_default.a.title,\n title: title,\n children: title\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SquareButton_SquareButton, {\n className: Sidebar_module_default.a.closeButton,\n icon: cross,\n title: translate('common.close'),\n onClick: onClose,\n children: translate('common.close')\n })]\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: Sidebar_module_default.a.content,\n children: children\n })]\n })\n });\n};\n\n/* harmony default export */ var components_Sidebar_Sidebar = (Object.assign(Sidebar_Sidebar, {\n Section: components_Section_Section\n}));\n// CONCATENATED MODULE: ./src/components/Sidebar/index.ts\n\n// EXTERNAL MODULE: ./src/components/KeyMap/components/Mapping/Mapping.module.scss\nvar Mapping_module = __webpack_require__(\"IH9G\");\nvar Mapping_module_default = /*#__PURE__*/__webpack_require__.n(Mapping_module);\n\n// CONCATENATED MODULE: ./src/components/KeyMap/components/Mapping/Mapping.tsx\n\n\n\n\n\n\n\nvar Mapping_Mapping = function Mapping(_ref) {\n var className = _ref.className,\n description = _ref.description,\n mapping = _ref.mapping;\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: classnames_default()(Mapping_module_default.a.mapping, className),\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"h3\", {\n className: Mapping_module_default.a.description,\n children: description\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: Mapping_module_default.a.keys,\n children: mapping.map(function (key, index) {\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: Mapping_module_default.a.group,\n children: Array.isArray(key) ? /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(jsx_runtime[\"Fragment\"], {\n children: [key[0], /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"span\", {\n className: Mapping_module_default.a.plus,\n children: \"+\"\n }), key[1]]\n }) : key\n }, index);\n })\n })]\n });\n};\n\n/* harmony default export */ var components_Mapping_Mapping = (Mapping_Mapping);\n// CONCATENATED MODULE: ./src/components/KeyMap/components/Mapping/index.ts\n\n// CONCATENATED MODULE: ./src/components/KeyMap/components/index.ts\n\n// CONCATENATED MODULE: ./src/components/KeyMap/keys.tsx\n\n\n\n\n\n\n\n\nvar ARROW_DOWN = /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Key_Key, {\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SvgIcon_SvgIcon, {\n icon: arrowLeft\n })\n});\nvar ARROW_LEFT = /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Key_Key, {\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SvgIcon_SvgIcon, {\n icon: arrowUp\n })\n});\nvar ARROW_RIGHT = /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Key_Key, {\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SvgIcon_SvgIcon, {\n icon: arrowRight\n })\n});\nvar ARROW_UP = /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Key_Key, {\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SvgIcon_SvgIcon, {\n icon: arrowDown\n })\n});\nvar BACKSPACE = /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Key_Key, {\n children: \"\\u2190 Backspace\"\n});\nvar CTRL = /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Key_Key, {\n children: Object(lib[\"m\" /* isMac */])() ? '⌘' : 'Ctrl'\n});\nvar DEL = /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Key_Key, {\n children: \"Del\"\n});\nvar ENTER = /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Key_Key, {\n children: \"Enter \\u23CE\"\n});\nvar ARROWS = /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(jsx_runtime[\"Fragment\"], {\n children: [ARROW_DOWN, ARROW_LEFT, ARROW_RIGHT, ARROW_UP]\n});\nvar SPACE = /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Key_Key, {\n children: \"\\u2423\"\n});\n// CONCATENATED MODULE: ./src/components/KeyMap/KeyMap.tsx\n\n\n\n\n\n\n\n\n\n\n\nvar KeyMap_KeyMap = function KeyMap(_ref) {\n var className = _ref.className,\n isOpen = _ref.isOpen,\n onClose = _ref.onClose;\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n var config = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"n\" /* selectConfig */]);\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(components_Sidebar_Sidebar, {\n className: className,\n isOpen: isOpen,\n title: translate('keyMap'),\n onClose: onClose,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(components_Sidebar_Sidebar.Section, {\n title: translate('keyMap.board-and-rack'),\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Mapping_Mapping, {\n description: translate('keyMap.board-and-rack.navigate'),\n mapping: [ARROWS]\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Mapping_Mapping, {\n description: translate('keyMap.board-and-rack.remove-tile'),\n mapping: [DEL, BACKSPACE]\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Mapping_Mapping, {\n description: translate('keyMap.board-and-rack.submit'),\n mapping: [ENTER]\n }), config.twoCharacterTiles.length > 0 && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Mapping_Mapping, {\n description: translate('keyMap.board-and-rack.insert-two-letter-tile'),\n mapping: [[CTRL, /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(jsx_runtime[\"Fragment\"], {\n children: config.twoCharacterTiles.map(function (_ref2) {\n var _ref3 = Object(slicedToArray[\"a\" /* default */])(_ref2, 1),\n firstLetter = _ref3[0];\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Key_Key, {\n children: firstLetter.toUpperCase()\n }, firstLetter);\n })\n })]]\n })]\n }), /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(components_Sidebar_Sidebar.Section, {\n title: translate('keyMap.board'),\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Mapping_Mapping, {\n description: translate('keyMap.board.toggle-blank'),\n mapping: [[CTRL, /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Key_Key, {\n children: \"B\"\n }, \"b\")]]\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Mapping_Mapping, {\n description: translate('keyMap.board.toggle-direction'),\n mapping: [[CTRL, ARROWS]]\n })]\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Sidebar_Sidebar.Section, {\n title: translate('keyMap.rack'),\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Mapping_Mapping, {\n description: translate('keyMap.rack.insert-blank'),\n mapping: [SPACE]\n })\n })]\n });\n};\n\n/* harmony default export */ var components_KeyMap_KeyMap = (KeyMap_KeyMap);\n// CONCATENATED MODULE: ./src/components/KeyMap/index.ts\n\n// CONCATENATED MODULE: ./src/components/Logo/Logo.tsx\n\n\n\nvar CONTENT = [['SCRABBLE'], ['SOLVER', '2']];\n\nvar Logo_Logo = function Logo(_ref) {\n var className = _ref.className,\n style = _ref.style;\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_PlainTiles_PlainTiles, {\n className: className,\n content: CONTENT,\n style: style\n });\n};\n\n/* harmony default export */ var components_Logo_Logo = (Logo_Logo);\n// CONCATENATED MODULE: ./src/components/Logo/index.ts\n\n// EXTERNAL MODULE: ./src/components/NavButtons/NavButtons.module.scss\nvar NavButtons_module = __webpack_require__(\"jVvz\");\nvar NavButtons_module_default = /*#__PURE__*/__webpack_require__.n(NavButtons_module);\n\n// CONCATENATED MODULE: ./src/components/NavButtons/NavButtons.tsx\n\n\n\n\n\n\n\n\n\n\n\nvar NavButtons_NavButtons = function NavButtons(_ref) {\n var onClear = _ref.onClear,\n onShowKeyMap = _ref.onShowKeyMap,\n onShowRemainingTiles = _ref.onShowRemainingTiles,\n onShowSettings = _ref.onShowSettings;\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n var hasOverusedTiles = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"q\" /* selectHasOverusedTiles */]);\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: NavButtons_module_default.a.navButtons,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SquareButton_SquareButton.Link, {\n className: NavButtons_module_default.a.button,\n href: parameters[\"m\" /* GITHUB_PROJECT_URL */],\n icon: github,\n rel: \"noopener noreferrer\",\n target: \"_blank\",\n title: translate('github'),\n children: \"GitHub\"\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: NavButtons_module_default.a.separator\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SquareButton_SquareButton, {\n className: NavButtons_module_default.a.button,\n icon: keyboard,\n title: translate('keyMap'),\n onClick: onShowKeyMap,\n children: translate('keyMap')\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SquareButton_SquareButton, {\n className: classnames_default()(NavButtons_module_default.a.button, Object(defineProperty[\"a\" /* default */])({}, NavButtons_module_default.a.error, hasOverusedTiles)),\n icon: sack,\n title: translate('remaining-tiles'),\n onClick: onShowRemainingTiles,\n children: translate('remaining-tiles')\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: NavButtons_module_default.a.separator\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SquareButton_SquareButton, {\n className: NavButtons_module_default.a.button,\n icon: eraser,\n title: translate('common.clear'),\n onClick: onClear,\n children: translate('common.clear')\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SquareButton_SquareButton, {\n className: NavButtons_module_default.a.button,\n icon: cog,\n title: translate('settings'),\n onClick: onShowSettings,\n children: translate('settings')\n })]\n });\n};\n\n/* harmony default export */ var components_NavButtons_NavButtons = (NavButtons_NavButtons);\n// CONCATENATED MODULE: ./src/components/NavButtons/index.ts\n\n// EXTERNAL MODULE: ./node_modules/next/link.js\nvar next_link = __webpack_require__(\"YFqc\");\nvar link_default = /*#__PURE__*/__webpack_require__.n(next_link);\n\n// EXTERNAL MODULE: ./src/components/NotFound/NotFound.module.scss\nvar NotFound_module = __webpack_require__(\"lFTW\");\nvar NotFound_module_default = /*#__PURE__*/__webpack_require__.n(NotFound_module);\n\n// CONCATENATED MODULE: ./src/components/NotFound/NotFound.tsx\n\n\n\n\n\n\n\n\nvar NotFound_CONTENT = [['HTTP', '404']];\n\nvar NotFound_NotFound = function NotFound() {\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: NotFound_module_default.a.notFound,\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(link_default.a, {\n href: \"/\",\n children: /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"a\", {\n className: NotFound_module_default.a.link,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SvgIcon_SvgIcon, {\n className: NotFound_module_default.a.icon,\n icon: dashCircleFill\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_PlainTiles_PlainTiles, {\n className: NotFound_module_default.a.tiles,\n content: NotFound_CONTENT\n })]\n })\n })\n });\n};\n\n/* harmony default export */ var components_NotFound_NotFound = (NotFound_NotFound);\n// CONCATENATED MODULE: ./src/components/NotFound/index.ts\n\n// EXTERNAL MODULE: ./src/components/Rack/Rack.module.scss\nvar Rack_module = __webpack_require__(\"RuLr\");\nvar Rack_module_default = /*#__PURE__*/__webpack_require__.n(Rack_module);\n\n// CONCATENATED MODULE: ./src/components/Rack/RackTile.tsx\n\n\n\n\n\n\n\n\n\n\nvar RackTile_RackTile = function RackTile(_ref) {\n var activeIndexRef = _ref.activeIndexRef,\n character = _ref.character,\n index = _ref.index,\n inputRef = _ref.inputRef,\n tile = _ref.tile,\n _onKeyDown = _ref.onKeyDown;\n var dispatch = Object(es[\"b\" /* useDispatch */])();\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n var config = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"n\" /* selectConfig */]);\n var points = Object(src_state[\"G\" /* useTypedSelector */])(function (state) {\n return Object(src_state[\"m\" /* selectCharacterPoints */])(state, character);\n });\n var handleFocus = Object(react[\"useCallback\"])(function () {\n activeIndexRef.current = index;\n }, [index]);\n var handleCharacterChange = Object(react[\"useCallback\"])(function (value) {\n dispatch(src_state[\"f\" /* rackSlice */].actions.changeCharacter({\n character: value,\n index: index\n }));\n }, [index]);\n var handleKeyDown = Object(react[\"useMemo\"])(function () {\n return Object(lib[\"c\" /* createKeyboardNavigation */])({\n onBackspace: function onBackspace() {\n return handleCharacterChange(null);\n },\n onDelete: function onDelete() {\n return handleCharacterChange(null);\n },\n onKeyDown: function onKeyDown(event) {\n var newCharacter = event.key.toLowerCase();\n var twoCharacterTile = config.getTwoCharacterTileByPrefix(newCharacter);\n\n if (Object(lib[\"l\" /* isCtrl */])(event) && twoCharacterTile) {\n event.preventDefault();\n handleCharacterChange(twoCharacterTile);\n } else if (config.hasCharacter(newCharacter) || newCharacter === build[\"BLANK\"]) {\n handleCharacterChange(newCharacter);\n }\n\n _onKeyDown(event);\n }\n });\n }, [config, handleCharacterChange, _onKeyDown]);\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Tile_Tile, {\n autoFocus: index === 0,\n className: Rack_module_default.a.tile,\n character: character === null ? undefined : character,\n highlighted: tile !== null,\n inputRef: inputRef,\n isBlank: character === build[\"BLANK\"],\n placeholder: translate('rack.placeholder')[index],\n points: points,\n raised: true,\n size: parameters[\"z\" /* TILE_SIZE */],\n tabIndex: index === 0 ? undefined : -1,\n onFocus: handleFocus,\n onKeyDown: handleKeyDown\n }, index);\n};\n\n/* harmony default export */ var Rack_RackTile = (RackTile_RackTile);\n// CONCATENATED MODULE: ./src/components/Rack/Rack.tsx\n\n\n\n\n\n\n\n\n\nvar Rack_Rack = function Rack(_ref) {\n var className = _ref.className;\n var config = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"n\" /* selectConfig */]);\n var rack = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"t\" /* selectRack */]);\n var resultCandidateTiles = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"v\" /* selectResultCandidateTiles */]);\n var tiles = Object(react[\"useMemo\"])(function () {\n return Object(lib[\"q\" /* zipCharactersAndTiles */])(rack, resultCandidateTiles);\n }, [rack, resultCandidateTiles]);\n var tilesCount = tiles.length;\n var tilesRefs = Object(react[\"useMemo\"])(function () {\n return Object(lib[\"a\" /* createArray */])(tilesCount).map(function () {\n return /*#__PURE__*/Object(react[\"createRef\"])();\n });\n }, [tilesCount]);\n var activeIndexRef = Object(react[\"useRef\"])();\n var changeActiveIndex = Object(react[\"useCallback\"])(function (offset) {\n var nextActiveIndex = Math.min(Math.max((activeIndexRef.current || 0) + offset, 0), tilesCount - 1);\n var tileRef = tilesRefs[nextActiveIndex].current;\n\n if (tileRef) {\n tileRef.focus();\n }\n\n activeIndexRef.current = nextActiveIndex;\n }, [activeIndexRef, tilesCount, tilesRefs]);\n var onKeyDown = Object(react[\"useMemo\"])(function () {\n return Object(lib[\"c\" /* createKeyboardNavigation */])({\n onArrowLeft: function onArrowLeft(event) {\n event.preventDefault();\n changeActiveIndex(-1);\n },\n onArrowRight: function onArrowRight(event) {\n event.preventDefault();\n changeActiveIndex(1);\n },\n onBackspace: function onBackspace() {\n changeActiveIndex(-1);\n },\n onKeyDown: function onKeyDown(event) {\n var character = event.key.toLowerCase();\n\n if (config.hasCharacter(character) || character === build[\"BLANK\"]) {\n changeActiveIndex(1);\n }\n }\n });\n }, [changeActiveIndex, config]);\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: classnames_default()(Rack_module_default.a.rack, className),\n children: tiles.map(function (_ref2, index) {\n var character = _ref2.character,\n tile = _ref2.tile;\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Rack_RackTile, {\n activeIndexRef: activeIndexRef,\n character: character,\n index: index,\n inputRef: tilesRefs[index],\n tile: tile,\n onKeyDown: onKeyDown\n }, index);\n })\n });\n};\n\n/* harmony default export */ var components_Rack_Rack = (Rack_Rack);\n// CONCATENATED MODULE: ./src/components/Rack/index.ts\n\n// EXTERNAL MODULE: ./src/components/Radio/Radio.module.scss\nvar Radio_module = __webpack_require__(\"BdcD\");\nvar Radio_module_default = /*#__PURE__*/__webpack_require__.n(Radio_module);\n\n// CONCATENATED MODULE: ./src/components/Radio/Radio.tsx\n\n\n\n\n\n\n\nvar Radio_Radio = function Radio(_ref) {\n var checked = _ref.checked,\n children = _ref.children,\n className = _ref.className,\n disabled = _ref.disabled,\n id = _ref.id,\n name = _ref.name,\n title = _ref.title,\n value = _ref.value,\n onChange = _ref.onChange;\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"label\", {\n className: classnames_default()(Radio_module_default.a.radio, className, Object(defineProperty[\"a\" /* default */])({}, Radio_module_default.a.checked, checked)),\n htmlFor: id,\n title: title,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"input\", {\n checked: checked,\n className: Radio_module_default.a.input,\n disabled: disabled,\n id: id,\n name: name,\n type: \"radio\",\n value: value,\n onChange: onChange\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: Radio_module_default.a.icon\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: Radio_module_default.a.content,\n children: children\n })]\n });\n};\n\n/* harmony default export */ var components_Radio_Radio = (Radio_Radio);\n// CONCATENATED MODULE: ./src/components/Radio/index.ts\n\n// EXTERNAL MODULE: ./src/components/RemainingTiles/Character.module.scss\nvar Character_module = __webpack_require__(\"JxyW\");\nvar Character_module_default = /*#__PURE__*/__webpack_require__.n(Character_module);\n\n// CONCATENATED MODULE: ./src/components/RemainingTiles/Character.tsx\n\n\n\n\n\n\n\n\n\n\n\nvar Character_Character = function Character(_ref) {\n var _classNames;\n\n var tile = _ref.tile;\n var character = tile.character,\n count = tile.count,\n usedCount = tile.usedCount;\n var remainingCount = count - usedCount;\n var points = Object(src_state[\"G\" /* useTypedSelector */])(function (state) {\n return Object(src_state[\"m\" /* selectCharacterPoints */])(state, character);\n });\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: classnames_default()(Character_module_default.a.character, (_classNames = {}, Object(defineProperty[\"a\" /* default */])(_classNames, Character_module_default.a.finished, remainingCount <= 0), Object(defineProperty[\"a\" /* default */])(_classNames, Character_module_default.a.overused, remainingCount < 0), _classNames)),\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Tile_Tile, {\n character: character,\n className: Character_module_default.a.tile,\n disabled: true,\n isBlank: character === build[\"BLANK\"],\n points: points,\n raised: true,\n size: parameters[\"v\" /* REMAINING_TILES_TILE_SIZE */]\n }), /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: Character_module_default.a.count,\n children: [remainingCount, \" / \", count]\n })]\n }, character);\n};\n\n/* harmony default export */ var RemainingTiles_Character = (Character_Character);\n// EXTERNAL MODULE: ./src/components/RemainingTiles/RemainingTiles.module.scss\nvar RemainingTiles_module = __webpack_require__(\"bHoz\");\nvar RemainingTiles_module_default = /*#__PURE__*/__webpack_require__.n(RemainingTiles_module);\n\n// CONCATENATED MODULE: ./src/components/RemainingTiles/RemainingTiles.tsx\n\n\n\n\n\n\n\n\nvar RemainingTiles_RemainingTiles = function RemainingTiles(_ref) {\n var className = _ref.className,\n isOpen = _ref.isOpen,\n onClose = _ref.onClose;\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n var groups = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"u\" /* selectRemainingTilesGroups */]);\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Sidebar_Sidebar, {\n className: className,\n isOpen: isOpen,\n title: translate('remaining-tiles'),\n onClose: onClose,\n children: groups.map(function (_ref2) {\n var remainingCount = _ref2.remainingCount,\n tiles = _ref2.tiles,\n translationKey = _ref2.translationKey,\n totalCount = _ref2.totalCount;\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: RemainingTiles_module_default.a.group,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"h2\", {\n className: RemainingTiles_module_default.a.title,\n children: \"\".concat(translate(translationKey), \" (\").concat(remainingCount, \" / \").concat(totalCount, \")\")\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: RemainingTiles_module_default.a.content,\n children: tiles.map(function (tile) {\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(RemainingTiles_Character, {\n tile: tile\n }, tile.character);\n })\n })]\n }, translationKey);\n })\n });\n};\n\n/* harmony default export */ var components_RemainingTiles_RemainingTiles = (RemainingTiles_RemainingTiles);\n// CONCATENATED MODULE: ./src/components/RemainingTiles/index.ts\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js\nvar esm_extends = __webpack_require__(\"wx14\");\n\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n// CONCATENATED MODULE: ./node_modules/memoize-one/dist/memoize-one.esm.js\nfunction areInputsEqual(newInputs, lastInputs) {\n if (newInputs.length !== lastInputs.length) {\n return false;\n }\n for (var i = 0; i < newInputs.length; i++) {\n if (newInputs[i] !== lastInputs[i]) {\n return false;\n }\n }\n return true;\n}\n\nfunction memoizeOne(resultFn, isEqual) {\n if (isEqual === void 0) { isEqual = areInputsEqual; }\n var lastThis;\n var lastArgs = [];\n var lastResult;\n var calledOnce = false;\n function memoized() {\n var newArgs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n newArgs[_i] = arguments[_i];\n }\n if (calledOnce && lastThis === this && isEqual(newArgs, lastArgs)) {\n return lastResult;\n }\n lastResult = resultFn.apply(this, newArgs);\n calledOnce = true;\n lastThis = this;\n lastArgs = newArgs;\n return lastResult;\n }\n return memoized;\n}\n\n/* harmony default export */ var memoize_one_esm = (memoizeOne);\n\n// CONCATENATED MODULE: ./node_modules/react-window/dist/index.esm.js\n\n\n\n\n\n\n\n// Animation frame based implementation of setTimeout.\n// Inspired by Joe Lambert, https://gist.github.com/joelambert/1002116#file-requesttimeout-js\nvar hasNativePerformanceNow = typeof performance === 'object' && typeof performance.now === 'function';\nvar now = hasNativePerformanceNow ? function () {\n return performance.now();\n} : function () {\n return Date.now();\n};\nfunction cancelTimeout(timeoutID) {\n cancelAnimationFrame(timeoutID.id);\n}\nfunction requestTimeout(callback, delay) {\n var start = now();\n\n function tick() {\n if (now() - start >= delay) {\n callback.call(null);\n } else {\n timeoutID.id = requestAnimationFrame(tick);\n }\n }\n\n var timeoutID = {\n id: requestAnimationFrame(tick)\n };\n return timeoutID;\n}\n\nvar index_esm_size = -1; // This utility copied from \"dom-helpers\" package.\n\nfunction getScrollbarSize(recalculate) {\n if (recalculate === void 0) {\n recalculate = false;\n }\n\n if (index_esm_size === -1 || recalculate) {\n var div = document.createElement('div');\n var style = div.style;\n style.width = '50px';\n style.height = '50px';\n style.overflow = 'scroll';\n document.body.appendChild(div);\n index_esm_size = div.offsetWidth - div.clientWidth;\n document.body.removeChild(div);\n }\n\n return index_esm_size;\n}\nvar cachedRTLResult = null; // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.\n// Chrome does not seem to adhere; its scrollLeft values are positive (measured relative to the left).\n// Safari's elastic bounce makes detecting this even more complicated wrt potential false positives.\n// The safest way to check this is to intentionally set a negative offset,\n// and then verify that the subsequent \"scroll\" event matches the negative offset.\n// If it does not match, then we can assume a non-standard RTL scroll implementation.\n\nfunction getRTLOffsetType(recalculate) {\n if (recalculate === void 0) {\n recalculate = false;\n }\n\n if (cachedRTLResult === null || recalculate) {\n var outerDiv = document.createElement('div');\n var outerStyle = outerDiv.style;\n outerStyle.width = '50px';\n outerStyle.height = '50px';\n outerStyle.overflow = 'scroll';\n outerStyle.direction = 'rtl';\n var innerDiv = document.createElement('div');\n var innerStyle = innerDiv.style;\n innerStyle.width = '100px';\n innerStyle.height = '100px';\n outerDiv.appendChild(innerDiv);\n document.body.appendChild(outerDiv);\n\n if (outerDiv.scrollLeft > 0) {\n cachedRTLResult = 'positive-descending';\n } else {\n outerDiv.scrollLeft = 1;\n\n if (outerDiv.scrollLeft === 0) {\n cachedRTLResult = 'negative';\n } else {\n cachedRTLResult = 'positive-ascending';\n }\n }\n\n document.body.removeChild(outerDiv);\n return cachedRTLResult;\n }\n\n return cachedRTLResult;\n}\n\nvar IS_SCROLLING_DEBOUNCE_INTERVAL = 150;\n\nvar defaultItemKey = function defaultItemKey(_ref) {\n var columnIndex = _ref.columnIndex,\n data = _ref.data,\n rowIndex = _ref.rowIndex;\n return rowIndex + \":\" + columnIndex;\n}; // In DEV mode, this Set helps us only log a warning once per component instance.\n// This avoids spamming the console every time a render happens.\n\n\nvar devWarningsOverscanCount = null;\nvar devWarningsOverscanRowsColumnsCount = null;\nvar devWarningsTagName = null;\n\nif (false) {}\n\nfunction createGridComponent(_ref2) {\n var _class, _temp;\n\n var getColumnOffset = _ref2.getColumnOffset,\n getColumnStartIndexForOffset = _ref2.getColumnStartIndexForOffset,\n getColumnStopIndexForStartIndex = _ref2.getColumnStopIndexForStartIndex,\n getColumnWidth = _ref2.getColumnWidth,\n getEstimatedTotalHeight = _ref2.getEstimatedTotalHeight,\n getEstimatedTotalWidth = _ref2.getEstimatedTotalWidth,\n getOffsetForColumnAndAlignment = _ref2.getOffsetForColumnAndAlignment,\n getOffsetForRowAndAlignment = _ref2.getOffsetForRowAndAlignment,\n getRowHeight = _ref2.getRowHeight,\n getRowOffset = _ref2.getRowOffset,\n getRowStartIndexForOffset = _ref2.getRowStartIndexForOffset,\n getRowStopIndexForStartIndex = _ref2.getRowStopIndexForStartIndex,\n initInstanceProps = _ref2.initInstanceProps,\n shouldResetStyleCacheOnItemSizeChange = _ref2.shouldResetStyleCacheOnItemSizeChange,\n validateProps = _ref2.validateProps;\n return _temp = _class =\n /*#__PURE__*/\n function (_PureComponent) {\n _inheritsLoose(Grid, _PureComponent);\n\n // Always use explicit constructor for React components.\n // It produces less code after transpilation. (#26)\n // eslint-disable-next-line no-useless-constructor\n function Grid(props) {\n var _this;\n\n _this = _PureComponent.call(this, props) || this;\n _this._instanceProps = initInstanceProps(_this.props, _assertThisInitialized(_assertThisInitialized(_this)));\n _this._resetIsScrollingTimeoutId = null;\n _this._outerRef = void 0;\n _this.state = {\n instance: _assertThisInitialized(_assertThisInitialized(_this)),\n isScrolling: false,\n horizontalScrollDirection: 'forward',\n scrollLeft: typeof _this.props.initialScrollLeft === 'number' ? _this.props.initialScrollLeft : 0,\n scrollTop: typeof _this.props.initialScrollTop === 'number' ? _this.props.initialScrollTop : 0,\n scrollUpdateWasRequested: false,\n verticalScrollDirection: 'forward'\n };\n _this._callOnItemsRendered = void 0;\n _this._callOnItemsRendered = memoize_one_esm(function (overscanColumnStartIndex, overscanColumnStopIndex, overscanRowStartIndex, overscanRowStopIndex, visibleColumnStartIndex, visibleColumnStopIndex, visibleRowStartIndex, visibleRowStopIndex) {\n return _this.props.onItemsRendered({\n overscanColumnStartIndex: overscanColumnStartIndex,\n overscanColumnStopIndex: overscanColumnStopIndex,\n overscanRowStartIndex: overscanRowStartIndex,\n overscanRowStopIndex: overscanRowStopIndex,\n visibleColumnStartIndex: visibleColumnStartIndex,\n visibleColumnStopIndex: visibleColumnStopIndex,\n visibleRowStartIndex: visibleRowStartIndex,\n visibleRowStopIndex: visibleRowStopIndex\n });\n });\n _this._callOnScroll = void 0;\n _this._callOnScroll = memoize_one_esm(function (scrollLeft, scrollTop, horizontalScrollDirection, verticalScrollDirection, scrollUpdateWasRequested) {\n return _this.props.onScroll({\n horizontalScrollDirection: horizontalScrollDirection,\n scrollLeft: scrollLeft,\n scrollTop: scrollTop,\n verticalScrollDirection: verticalScrollDirection,\n scrollUpdateWasRequested: scrollUpdateWasRequested\n });\n });\n _this._getItemStyle = void 0;\n\n _this._getItemStyle = function (rowIndex, columnIndex) {\n var _this$props = _this.props,\n columnWidth = _this$props.columnWidth,\n direction = _this$props.direction,\n rowHeight = _this$props.rowHeight;\n\n var itemStyleCache = _this._getItemStyleCache(shouldResetStyleCacheOnItemSizeChange && columnWidth, shouldResetStyleCacheOnItemSizeChange && direction, shouldResetStyleCacheOnItemSizeChange && rowHeight);\n\n var key = rowIndex + \":\" + columnIndex;\n var style;\n\n if (itemStyleCache.hasOwnProperty(key)) {\n style = itemStyleCache[key];\n } else {\n var _offset = getColumnOffset(_this.props, columnIndex, _this._instanceProps);\n\n var isRtl = direction === 'rtl';\n itemStyleCache[key] = style = {\n position: 'absolute',\n left: isRtl ? undefined : _offset,\n right: isRtl ? _offset : undefined,\n top: getRowOffset(_this.props, rowIndex, _this._instanceProps),\n height: getRowHeight(_this.props, rowIndex, _this._instanceProps),\n width: getColumnWidth(_this.props, columnIndex, _this._instanceProps)\n };\n }\n\n return style;\n };\n\n _this._getItemStyleCache = void 0;\n _this._getItemStyleCache = memoize_one_esm(function (_, __, ___) {\n return {};\n });\n\n _this._onScroll = function (event) {\n var _event$currentTarget = event.currentTarget,\n clientHeight = _event$currentTarget.clientHeight,\n clientWidth = _event$currentTarget.clientWidth,\n scrollLeft = _event$currentTarget.scrollLeft,\n scrollTop = _event$currentTarget.scrollTop,\n scrollHeight = _event$currentTarget.scrollHeight,\n scrollWidth = _event$currentTarget.scrollWidth;\n\n _this.setState(function (prevState) {\n if (prevState.scrollLeft === scrollLeft && prevState.scrollTop === scrollTop) {\n // Scroll position may have been updated by cDM/cDU,\n // In which case we don't need to trigger another render,\n // And we don't want to update state.isScrolling.\n return null;\n }\n\n var direction = _this.props.direction; // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.\n // This is not the case for all browsers though (e.g. Chrome reports values as positive, measured relative to the left).\n // It's also easier for this component if we convert offsets to the same format as they would be in for ltr.\n // So the simplest solution is to determine which browser behavior we're dealing with, and convert based on it.\n\n var calculatedScrollLeft = scrollLeft;\n\n if (direction === 'rtl') {\n switch (getRTLOffsetType()) {\n case 'negative':\n calculatedScrollLeft = -scrollLeft;\n break;\n\n case 'positive-descending':\n calculatedScrollLeft = scrollWidth - clientWidth - scrollLeft;\n break;\n }\n } // Prevent Safari's elastic scrolling from causing visual shaking when scrolling past bounds.\n\n\n calculatedScrollLeft = Math.max(0, Math.min(calculatedScrollLeft, scrollWidth - clientWidth));\n var calculatedScrollTop = Math.max(0, Math.min(scrollTop, scrollHeight - clientHeight));\n return {\n isScrolling: true,\n horizontalScrollDirection: prevState.scrollLeft < scrollLeft ? 'forward' : 'backward',\n scrollLeft: calculatedScrollLeft,\n scrollTop: calculatedScrollTop,\n verticalScrollDirection: prevState.scrollTop < scrollTop ? 'forward' : 'backward',\n scrollUpdateWasRequested: false\n };\n }, _this._resetIsScrollingDebounced);\n };\n\n _this._outerRefSetter = function (ref) {\n var outerRef = _this.props.outerRef;\n _this._outerRef = ref;\n\n if (typeof outerRef === 'function') {\n outerRef(ref);\n } else if (outerRef != null && typeof outerRef === 'object' && outerRef.hasOwnProperty('current')) {\n outerRef.current = ref;\n }\n };\n\n _this._resetIsScrollingDebounced = function () {\n if (_this._resetIsScrollingTimeoutId !== null) {\n cancelTimeout(_this._resetIsScrollingTimeoutId);\n }\n\n _this._resetIsScrollingTimeoutId = requestTimeout(_this._resetIsScrolling, IS_SCROLLING_DEBOUNCE_INTERVAL);\n };\n\n _this._resetIsScrolling = function () {\n _this._resetIsScrollingTimeoutId = null;\n\n _this.setState({\n isScrolling: false\n }, function () {\n // Clear style cache after state update has been committed.\n // This way we don't break pure sCU for items that don't use isScrolling param.\n _this._getItemStyleCache(-1);\n });\n };\n\n return _this;\n }\n\n Grid.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {\n validateSharedProps(nextProps, prevState);\n validateProps(nextProps);\n return null;\n };\n\n var _proto = Grid.prototype;\n\n _proto.scrollTo = function scrollTo(_ref3) {\n var scrollLeft = _ref3.scrollLeft,\n scrollTop = _ref3.scrollTop;\n\n if (scrollLeft !== undefined) {\n scrollLeft = Math.max(0, scrollLeft);\n }\n\n if (scrollTop !== undefined) {\n scrollTop = Math.max(0, scrollTop);\n }\n\n this.setState(function (prevState) {\n if (scrollLeft === undefined) {\n scrollLeft = prevState.scrollLeft;\n }\n\n if (scrollTop === undefined) {\n scrollTop = prevState.scrollTop;\n }\n\n if (prevState.scrollLeft === scrollLeft && prevState.scrollTop === scrollTop) {\n return null;\n }\n\n return {\n horizontalScrollDirection: prevState.scrollLeft < scrollLeft ? 'forward' : 'backward',\n scrollLeft: scrollLeft,\n scrollTop: scrollTop,\n scrollUpdateWasRequested: true,\n verticalScrollDirection: prevState.scrollTop < scrollTop ? 'forward' : 'backward'\n };\n }, this._resetIsScrollingDebounced);\n };\n\n _proto.scrollToItem = function scrollToItem(_ref4) {\n var _ref4$align = _ref4.align,\n align = _ref4$align === void 0 ? 'auto' : _ref4$align,\n columnIndex = _ref4.columnIndex,\n rowIndex = _ref4.rowIndex;\n var _this$props2 = this.props,\n columnCount = _this$props2.columnCount,\n height = _this$props2.height,\n rowCount = _this$props2.rowCount,\n width = _this$props2.width;\n var _this$state = this.state,\n scrollLeft = _this$state.scrollLeft,\n scrollTop = _this$state.scrollTop;\n var scrollbarSize = getScrollbarSize();\n\n if (columnIndex !== undefined) {\n columnIndex = Math.max(0, Math.min(columnIndex, columnCount - 1));\n }\n\n if (rowIndex !== undefined) {\n rowIndex = Math.max(0, Math.min(rowIndex, rowCount - 1));\n }\n\n var estimatedTotalHeight = getEstimatedTotalHeight(this.props, this._instanceProps);\n var estimatedTotalWidth = getEstimatedTotalWidth(this.props, this._instanceProps); // The scrollbar size should be considered when scrolling an item into view,\n // to ensure it's fully visible.\n // But we only need to account for its size when it's actually visible.\n\n var horizontalScrollbarSize = estimatedTotalWidth > width ? scrollbarSize : 0;\n var verticalScrollbarSize = estimatedTotalHeight > height ? scrollbarSize : 0;\n this.scrollTo({\n scrollLeft: columnIndex !== undefined ? getOffsetForColumnAndAlignment(this.props, columnIndex, align, scrollLeft, this._instanceProps, verticalScrollbarSize) : scrollLeft,\n scrollTop: rowIndex !== undefined ? getOffsetForRowAndAlignment(this.props, rowIndex, align, scrollTop, this._instanceProps, horizontalScrollbarSize) : scrollTop\n });\n };\n\n _proto.componentDidMount = function componentDidMount() {\n var _this$props3 = this.props,\n initialScrollLeft = _this$props3.initialScrollLeft,\n initialScrollTop = _this$props3.initialScrollTop;\n\n if (this._outerRef != null) {\n var outerRef = this._outerRef;\n\n if (typeof initialScrollLeft === 'number') {\n outerRef.scrollLeft = initialScrollLeft;\n }\n\n if (typeof initialScrollTop === 'number') {\n outerRef.scrollTop = initialScrollTop;\n }\n }\n\n this._callPropsCallbacks();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n var direction = this.props.direction;\n var _this$state2 = this.state,\n scrollLeft = _this$state2.scrollLeft,\n scrollTop = _this$state2.scrollTop,\n scrollUpdateWasRequested = _this$state2.scrollUpdateWasRequested;\n\n if (scrollUpdateWasRequested && this._outerRef != null) {\n // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.\n // This is not the case for all browsers though (e.g. Chrome reports values as positive, measured relative to the left).\n // So we need to determine which browser behavior we're dealing with, and mimic it.\n var outerRef = this._outerRef;\n\n if (direction === 'rtl') {\n switch (getRTLOffsetType()) {\n case 'negative':\n outerRef.scrollLeft = -scrollLeft;\n break;\n\n case 'positive-ascending':\n outerRef.scrollLeft = scrollLeft;\n break;\n\n default:\n var clientWidth = outerRef.clientWidth,\n scrollWidth = outerRef.scrollWidth;\n outerRef.scrollLeft = scrollWidth - clientWidth - scrollLeft;\n break;\n }\n } else {\n outerRef.scrollLeft = Math.max(0, scrollLeft);\n }\n\n outerRef.scrollTop = Math.max(0, scrollTop);\n }\n\n this._callPropsCallbacks();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (this._resetIsScrollingTimeoutId !== null) {\n cancelTimeout(this._resetIsScrollingTimeoutId);\n }\n };\n\n _proto.render = function render() {\n var _this$props4 = this.props,\n children = _this$props4.children,\n className = _this$props4.className,\n columnCount = _this$props4.columnCount,\n direction = _this$props4.direction,\n height = _this$props4.height,\n innerRef = _this$props4.innerRef,\n innerElementType = _this$props4.innerElementType,\n innerTagName = _this$props4.innerTagName,\n itemData = _this$props4.itemData,\n _this$props4$itemKey = _this$props4.itemKey,\n itemKey = _this$props4$itemKey === void 0 ? defaultItemKey : _this$props4$itemKey,\n outerElementType = _this$props4.outerElementType,\n outerTagName = _this$props4.outerTagName,\n rowCount = _this$props4.rowCount,\n style = _this$props4.style,\n useIsScrolling = _this$props4.useIsScrolling,\n width = _this$props4.width;\n var isScrolling = this.state.isScrolling;\n\n var _this$_getHorizontalR = this._getHorizontalRangeToRender(),\n columnStartIndex = _this$_getHorizontalR[0],\n columnStopIndex = _this$_getHorizontalR[1];\n\n var _this$_getVerticalRan = this._getVerticalRangeToRender(),\n rowStartIndex = _this$_getVerticalRan[0],\n rowStopIndex = _this$_getVerticalRan[1];\n\n var items = [];\n\n if (columnCount > 0 && rowCount) {\n for (var _rowIndex = rowStartIndex; _rowIndex <= rowStopIndex; _rowIndex++) {\n for (var _columnIndex = columnStartIndex; _columnIndex <= columnStopIndex; _columnIndex++) {\n items.push(Object(react[\"createElement\"])(children, {\n columnIndex: _columnIndex,\n data: itemData,\n isScrolling: useIsScrolling ? isScrolling : undefined,\n key: itemKey({\n columnIndex: _columnIndex,\n data: itemData,\n rowIndex: _rowIndex\n }),\n rowIndex: _rowIndex,\n style: this._getItemStyle(_rowIndex, _columnIndex)\n }));\n }\n }\n } // Read this value AFTER items have been created,\n // So their actual sizes (if variable) are taken into consideration.\n\n\n var estimatedTotalHeight = getEstimatedTotalHeight(this.props, this._instanceProps);\n var estimatedTotalWidth = getEstimatedTotalWidth(this.props, this._instanceProps);\n return Object(react[\"createElement\"])(outerElementType || outerTagName || 'div', {\n className: className,\n onScroll: this._onScroll,\n ref: this._outerRefSetter,\n style: Object(esm_extends[\"a\" /* default */])({\n position: 'relative',\n height: height,\n width: width,\n overflow: 'auto',\n WebkitOverflowScrolling: 'touch',\n willChange: 'transform',\n direction: direction\n }, style)\n }, Object(react[\"createElement\"])(innerElementType || innerTagName || 'div', {\n children: items,\n ref: innerRef,\n style: {\n height: estimatedTotalHeight,\n pointerEvents: isScrolling ? 'none' : undefined,\n width: estimatedTotalWidth\n }\n }));\n };\n\n _proto._callPropsCallbacks = function _callPropsCallbacks() {\n var _this$props5 = this.props,\n columnCount = _this$props5.columnCount,\n onItemsRendered = _this$props5.onItemsRendered,\n onScroll = _this$props5.onScroll,\n rowCount = _this$props5.rowCount;\n\n if (typeof onItemsRendered === 'function') {\n if (columnCount > 0 && rowCount > 0) {\n var _this$_getHorizontalR2 = this._getHorizontalRangeToRender(),\n _overscanColumnStartIndex = _this$_getHorizontalR2[0],\n _overscanColumnStopIndex = _this$_getHorizontalR2[1],\n _visibleColumnStartIndex = _this$_getHorizontalR2[2],\n _visibleColumnStopIndex = _this$_getHorizontalR2[3];\n\n var _this$_getVerticalRan2 = this._getVerticalRangeToRender(),\n _overscanRowStartIndex = _this$_getVerticalRan2[0],\n _overscanRowStopIndex = _this$_getVerticalRan2[1],\n _visibleRowStartIndex = _this$_getVerticalRan2[2],\n _visibleRowStopIndex = _this$_getVerticalRan2[3];\n\n this._callOnItemsRendered(_overscanColumnStartIndex, _overscanColumnStopIndex, _overscanRowStartIndex, _overscanRowStopIndex, _visibleColumnStartIndex, _visibleColumnStopIndex, _visibleRowStartIndex, _visibleRowStopIndex);\n }\n }\n\n if (typeof onScroll === 'function') {\n var _this$state3 = this.state,\n _horizontalScrollDirection = _this$state3.horizontalScrollDirection,\n _scrollLeft = _this$state3.scrollLeft,\n _scrollTop = _this$state3.scrollTop,\n _scrollUpdateWasRequested = _this$state3.scrollUpdateWasRequested,\n _verticalScrollDirection = _this$state3.verticalScrollDirection;\n\n this._callOnScroll(_scrollLeft, _scrollTop, _horizontalScrollDirection, _verticalScrollDirection, _scrollUpdateWasRequested);\n }\n }; // Lazily create and cache item styles while scrolling,\n // So that pure component sCU will prevent re-renders.\n // We maintain this cache, and pass a style prop rather than index,\n // So that List can clear cached styles and force item re-render if necessary.\n\n\n _proto._getHorizontalRangeToRender = function _getHorizontalRangeToRender() {\n var _this$props6 = this.props,\n columnCount = _this$props6.columnCount,\n overscanColumnCount = _this$props6.overscanColumnCount,\n overscanColumnsCount = _this$props6.overscanColumnsCount,\n overscanCount = _this$props6.overscanCount,\n rowCount = _this$props6.rowCount;\n var _this$state4 = this.state,\n horizontalScrollDirection = _this$state4.horizontalScrollDirection,\n isScrolling = _this$state4.isScrolling,\n scrollLeft = _this$state4.scrollLeft;\n var overscanCountResolved = overscanColumnCount || overscanColumnsCount || overscanCount || 1;\n\n if (columnCount === 0 || rowCount === 0) {\n return [0, 0, 0, 0];\n }\n\n var startIndex = getColumnStartIndexForOffset(this.props, scrollLeft, this._instanceProps);\n var stopIndex = getColumnStopIndexForStartIndex(this.props, startIndex, scrollLeft, this._instanceProps); // Overscan by one item in each direction so that tab/focus works.\n // If there isn't at least one extra item, tab loops back around.\n\n var overscanBackward = !isScrolling || horizontalScrollDirection === 'backward' ? Math.max(1, overscanCountResolved) : 1;\n var overscanForward = !isScrolling || horizontalScrollDirection === 'forward' ? Math.max(1, overscanCountResolved) : 1;\n return [Math.max(0, startIndex - overscanBackward), Math.max(0, Math.min(columnCount - 1, stopIndex + overscanForward)), startIndex, stopIndex];\n };\n\n _proto._getVerticalRangeToRender = function _getVerticalRangeToRender() {\n var _this$props7 = this.props,\n columnCount = _this$props7.columnCount,\n overscanCount = _this$props7.overscanCount,\n overscanRowCount = _this$props7.overscanRowCount,\n overscanRowsCount = _this$props7.overscanRowsCount,\n rowCount = _this$props7.rowCount;\n var _this$state5 = this.state,\n isScrolling = _this$state5.isScrolling,\n verticalScrollDirection = _this$state5.verticalScrollDirection,\n scrollTop = _this$state5.scrollTop;\n var overscanCountResolved = overscanRowCount || overscanRowsCount || overscanCount || 1;\n\n if (columnCount === 0 || rowCount === 0) {\n return [0, 0, 0, 0];\n }\n\n var startIndex = getRowStartIndexForOffset(this.props, scrollTop, this._instanceProps);\n var stopIndex = getRowStopIndexForStartIndex(this.props, startIndex, scrollTop, this._instanceProps); // Overscan by one item in each direction so that tab/focus works.\n // If there isn't at least one extra item, tab loops back around.\n\n var overscanBackward = !isScrolling || verticalScrollDirection === 'backward' ? Math.max(1, overscanCountResolved) : 1;\n var overscanForward = !isScrolling || verticalScrollDirection === 'forward' ? Math.max(1, overscanCountResolved) : 1;\n return [Math.max(0, startIndex - overscanBackward), Math.max(0, Math.min(rowCount - 1, stopIndex + overscanForward)), startIndex, stopIndex];\n };\n\n return Grid;\n }(react[\"PureComponent\"]), _class.defaultProps = {\n direction: 'ltr',\n itemData: undefined,\n useIsScrolling: false\n }, _temp;\n}\n\nvar validateSharedProps = function validateSharedProps(_ref5, _ref6) {\n var children = _ref5.children,\n direction = _ref5.direction,\n height = _ref5.height,\n innerTagName = _ref5.innerTagName,\n outerTagName = _ref5.outerTagName,\n overscanColumnsCount = _ref5.overscanColumnsCount,\n overscanCount = _ref5.overscanCount,\n overscanRowsCount = _ref5.overscanRowsCount,\n width = _ref5.width;\n var instance = _ref6.instance;\n\n if (false) {}\n};\n\nvar DEFAULT_ESTIMATED_ITEM_SIZE = 50;\n\nvar index_esm_getEstimatedTotalHeight = function getEstimatedTotalHeight(_ref, _ref2) {\n var rowCount = _ref.rowCount;\n var rowMetadataMap = _ref2.rowMetadataMap,\n estimatedRowHeight = _ref2.estimatedRowHeight,\n lastMeasuredRowIndex = _ref2.lastMeasuredRowIndex;\n var totalSizeOfMeasuredRows = 0; // Edge case check for when the number of items decreases while a scroll is in progress.\n // https://github.com/bvaughn/react-window/pull/138\n\n if (lastMeasuredRowIndex >= rowCount) {\n lastMeasuredRowIndex = rowCount - 1;\n }\n\n if (lastMeasuredRowIndex >= 0) {\n var itemMetadata = rowMetadataMap[lastMeasuredRowIndex];\n totalSizeOfMeasuredRows = itemMetadata.offset + itemMetadata.size;\n }\n\n var numUnmeasuredItems = rowCount - lastMeasuredRowIndex - 1;\n var totalSizeOfUnmeasuredItems = numUnmeasuredItems * estimatedRowHeight;\n return totalSizeOfMeasuredRows + totalSizeOfUnmeasuredItems;\n};\n\nvar index_esm_getEstimatedTotalWidth = function getEstimatedTotalWidth(_ref3, _ref4) {\n var columnCount = _ref3.columnCount;\n var columnMetadataMap = _ref4.columnMetadataMap,\n estimatedColumnWidth = _ref4.estimatedColumnWidth,\n lastMeasuredColumnIndex = _ref4.lastMeasuredColumnIndex;\n var totalSizeOfMeasuredRows = 0; // Edge case check for when the number of items decreases while a scroll is in progress.\n // https://github.com/bvaughn/react-window/pull/138\n\n if (lastMeasuredColumnIndex >= columnCount) {\n lastMeasuredColumnIndex = columnCount - 1;\n }\n\n if (lastMeasuredColumnIndex >= 0) {\n var itemMetadata = columnMetadataMap[lastMeasuredColumnIndex];\n totalSizeOfMeasuredRows = itemMetadata.offset + itemMetadata.size;\n }\n\n var numUnmeasuredItems = columnCount - lastMeasuredColumnIndex - 1;\n var totalSizeOfUnmeasuredItems = numUnmeasuredItems * estimatedColumnWidth;\n return totalSizeOfMeasuredRows + totalSizeOfUnmeasuredItems;\n};\n\nvar getItemMetadata = function getItemMetadata(itemType, props, index, instanceProps) {\n var itemMetadataMap, itemSize, lastMeasuredIndex;\n\n if (itemType === 'column') {\n itemMetadataMap = instanceProps.columnMetadataMap;\n itemSize = props.columnWidth;\n lastMeasuredIndex = instanceProps.lastMeasuredColumnIndex;\n } else {\n itemMetadataMap = instanceProps.rowMetadataMap;\n itemSize = props.rowHeight;\n lastMeasuredIndex = instanceProps.lastMeasuredRowIndex;\n }\n\n if (index > lastMeasuredIndex) {\n var offset = 0;\n\n if (lastMeasuredIndex >= 0) {\n var itemMetadata = itemMetadataMap[lastMeasuredIndex];\n offset = itemMetadata.offset + itemMetadata.size;\n }\n\n for (var i = lastMeasuredIndex + 1; i <= index; i++) {\n var size = itemSize(i);\n itemMetadataMap[i] = {\n offset: offset,\n size: size\n };\n offset += size;\n }\n\n if (itemType === 'column') {\n instanceProps.lastMeasuredColumnIndex = index;\n } else {\n instanceProps.lastMeasuredRowIndex = index;\n }\n }\n\n return itemMetadataMap[index];\n};\n\nvar findNearestItem = function findNearestItem(itemType, props, instanceProps, offset) {\n var itemMetadataMap, lastMeasuredIndex;\n\n if (itemType === 'column') {\n itemMetadataMap = instanceProps.columnMetadataMap;\n lastMeasuredIndex = instanceProps.lastMeasuredColumnIndex;\n } else {\n itemMetadataMap = instanceProps.rowMetadataMap;\n lastMeasuredIndex = instanceProps.lastMeasuredRowIndex;\n }\n\n var lastMeasuredItemOffset = lastMeasuredIndex > 0 ? itemMetadataMap[lastMeasuredIndex].offset : 0;\n\n if (lastMeasuredItemOffset >= offset) {\n // If we've already measured items within this range just use a binary search as it's faster.\n return findNearestItemBinarySearch(itemType, props, instanceProps, lastMeasuredIndex, 0, offset);\n } else {\n // If we haven't yet measured this high, fallback to an exponential search with an inner binary search.\n // The exponential search avoids pre-computing sizes for the full set of items as a binary search would.\n // The overall complexity for this approach is O(log n).\n return findNearestItemExponentialSearch(itemType, props, instanceProps, Math.max(0, lastMeasuredIndex), offset);\n }\n};\n\nvar findNearestItemBinarySearch = function findNearestItemBinarySearch(itemType, props, instanceProps, high, low, offset) {\n while (low <= high) {\n var middle = low + Math.floor((high - low) / 2);\n var currentOffset = getItemMetadata(itemType, props, middle, instanceProps).offset;\n\n if (currentOffset === offset) {\n return middle;\n } else if (currentOffset < offset) {\n low = middle + 1;\n } else if (currentOffset > offset) {\n high = middle - 1;\n }\n }\n\n if (low > 0) {\n return low - 1;\n } else {\n return 0;\n }\n};\n\nvar findNearestItemExponentialSearch = function findNearestItemExponentialSearch(itemType, props, instanceProps, index, offset) {\n var itemCount = itemType === 'column' ? props.columnCount : props.rowCount;\n var interval = 1;\n\n while (index < itemCount && getItemMetadata(itemType, props, index, instanceProps).offset < offset) {\n index += interval;\n interval *= 2;\n }\n\n return findNearestItemBinarySearch(itemType, props, instanceProps, Math.min(index, itemCount - 1), Math.floor(index / 2), offset);\n};\n\nvar index_esm_getOffsetForIndexAndAlignment = function getOffsetForIndexAndAlignment(itemType, props, index, align, scrollOffset, instanceProps, scrollbarSize) {\n var size = itemType === 'column' ? props.width : props.height;\n var itemMetadata = getItemMetadata(itemType, props, index, instanceProps); // Get estimated total size after ItemMetadata is computed,\n // To ensure it reflects actual measurements instead of just estimates.\n\n var estimatedTotalSize = itemType === 'column' ? index_esm_getEstimatedTotalWidth(props, instanceProps) : index_esm_getEstimatedTotalHeight(props, instanceProps);\n var maxOffset = Math.max(0, Math.min(estimatedTotalSize - size, itemMetadata.offset));\n var minOffset = Math.max(0, itemMetadata.offset - size + scrollbarSize + itemMetadata.size);\n\n if (align === 'smart') {\n if (scrollOffset >= minOffset - size && scrollOffset <= maxOffset + size) {\n align = 'auto';\n } else {\n align = 'center';\n }\n }\n\n switch (align) {\n case 'start':\n return maxOffset;\n\n case 'end':\n return minOffset;\n\n case 'center':\n return Math.round(minOffset + (maxOffset - minOffset) / 2);\n\n case 'auto':\n default:\n if (scrollOffset >= minOffset && scrollOffset <= maxOffset) {\n return scrollOffset;\n } else if (minOffset > maxOffset) {\n // Because we only take into account the scrollbar size when calculating minOffset\n // this value can be larger than maxOffset when at the end of the list\n return minOffset;\n } else if (scrollOffset < minOffset) {\n return minOffset;\n } else {\n return maxOffset;\n }\n\n }\n};\n\nvar VariableSizeGrid =\n/*#__PURE__*/\ncreateGridComponent({\n getColumnOffset: function getColumnOffset(props, index, instanceProps) {\n return getItemMetadata('column', props, index, instanceProps).offset;\n },\n getColumnStartIndexForOffset: function getColumnStartIndexForOffset(props, scrollLeft, instanceProps) {\n return findNearestItem('column', props, instanceProps, scrollLeft);\n },\n getColumnStopIndexForStartIndex: function getColumnStopIndexForStartIndex(props, startIndex, scrollLeft, instanceProps) {\n var columnCount = props.columnCount,\n width = props.width;\n var itemMetadata = getItemMetadata('column', props, startIndex, instanceProps);\n var maxOffset = scrollLeft + width;\n var offset = itemMetadata.offset + itemMetadata.size;\n var stopIndex = startIndex;\n\n while (stopIndex < columnCount - 1 && offset < maxOffset) {\n stopIndex++;\n offset += getItemMetadata('column', props, stopIndex, instanceProps).size;\n }\n\n return stopIndex;\n },\n getColumnWidth: function getColumnWidth(props, index, instanceProps) {\n return instanceProps.columnMetadataMap[index].size;\n },\n getEstimatedTotalHeight: index_esm_getEstimatedTotalHeight,\n getEstimatedTotalWidth: index_esm_getEstimatedTotalWidth,\n getOffsetForColumnAndAlignment: function getOffsetForColumnAndAlignment(props, index, align, scrollOffset, instanceProps, scrollbarSize) {\n return index_esm_getOffsetForIndexAndAlignment('column', props, index, align, scrollOffset, instanceProps, scrollbarSize);\n },\n getOffsetForRowAndAlignment: function getOffsetForRowAndAlignment(props, index, align, scrollOffset, instanceProps, scrollbarSize) {\n return index_esm_getOffsetForIndexAndAlignment('row', props, index, align, scrollOffset, instanceProps, scrollbarSize);\n },\n getRowOffset: function getRowOffset(props, index, instanceProps) {\n return getItemMetadata('row', props, index, instanceProps).offset;\n },\n getRowHeight: function getRowHeight(props, index, instanceProps) {\n return instanceProps.rowMetadataMap[index].size;\n },\n getRowStartIndexForOffset: function getRowStartIndexForOffset(props, scrollTop, instanceProps) {\n return findNearestItem('row', props, instanceProps, scrollTop);\n },\n getRowStopIndexForStartIndex: function getRowStopIndexForStartIndex(props, startIndex, scrollTop, instanceProps) {\n var rowCount = props.rowCount,\n height = props.height;\n var itemMetadata = getItemMetadata('row', props, startIndex, instanceProps);\n var maxOffset = scrollTop + height;\n var offset = itemMetadata.offset + itemMetadata.size;\n var stopIndex = startIndex;\n\n while (stopIndex < rowCount - 1 && offset < maxOffset) {\n stopIndex++;\n offset += getItemMetadata('row', props, stopIndex, instanceProps).size;\n }\n\n return stopIndex;\n },\n initInstanceProps: function initInstanceProps(props, instance) {\n var _ref5 = props,\n estimatedColumnWidth = _ref5.estimatedColumnWidth,\n estimatedRowHeight = _ref5.estimatedRowHeight;\n var instanceProps = {\n columnMetadataMap: {},\n estimatedColumnWidth: estimatedColumnWidth || DEFAULT_ESTIMATED_ITEM_SIZE,\n estimatedRowHeight: estimatedRowHeight || DEFAULT_ESTIMATED_ITEM_SIZE,\n lastMeasuredColumnIndex: -1,\n lastMeasuredRowIndex: -1,\n rowMetadataMap: {}\n };\n\n instance.resetAfterColumnIndex = function (columnIndex, shouldForceUpdate) {\n if (shouldForceUpdate === void 0) {\n shouldForceUpdate = true;\n }\n\n instance.resetAfterIndices({\n columnIndex: columnIndex,\n shouldForceUpdate: shouldForceUpdate\n });\n };\n\n instance.resetAfterRowIndex = function (rowIndex, shouldForceUpdate) {\n if (shouldForceUpdate === void 0) {\n shouldForceUpdate = true;\n }\n\n instance.resetAfterIndices({\n rowIndex: rowIndex,\n shouldForceUpdate: shouldForceUpdate\n });\n };\n\n instance.resetAfterIndices = function (_ref6) {\n var columnIndex = _ref6.columnIndex,\n rowIndex = _ref6.rowIndex,\n _ref6$shouldForceUpda = _ref6.shouldForceUpdate,\n shouldForceUpdate = _ref6$shouldForceUpda === void 0 ? true : _ref6$shouldForceUpda;\n\n if (typeof columnIndex === 'number') {\n instanceProps.lastMeasuredColumnIndex = Math.min(instanceProps.lastMeasuredColumnIndex, columnIndex - 1);\n }\n\n if (typeof rowIndex === 'number') {\n instanceProps.lastMeasuredRowIndex = Math.min(instanceProps.lastMeasuredRowIndex, rowIndex - 1);\n } // We could potentially optimize further by only evicting styles after this index,\n // But since styles are only cached while scrolling is in progress-\n // It seems an unnecessary optimization.\n // It's unlikely that resetAfterIndex() will be called while a user is scrolling.\n\n\n instance._getItemStyleCache(-1);\n\n if (shouldForceUpdate) {\n instance.forceUpdate();\n }\n };\n\n return instanceProps;\n },\n shouldResetStyleCacheOnItemSizeChange: false,\n validateProps: function validateProps(_ref7) {\n var columnWidth = _ref7.columnWidth,\n rowHeight = _ref7.rowHeight;\n\n if (false) {}\n }\n});\n\nvar IS_SCROLLING_DEBOUNCE_INTERVAL$1 = 150;\n\nvar defaultItemKey$1 = function defaultItemKey(index, data) {\n return index;\n}; // In DEV mode, this Set helps us only log a warning once per component instance.\n// This avoids spamming the console every time a render happens.\n\n\nvar devWarningsDirection = null;\nvar devWarningsTagName$1 = null;\n\nif (false) {}\n\nfunction createListComponent(_ref) {\n var _class, _temp;\n\n var getItemOffset = _ref.getItemOffset,\n getEstimatedTotalSize = _ref.getEstimatedTotalSize,\n getItemSize = _ref.getItemSize,\n getOffsetForIndexAndAlignment = _ref.getOffsetForIndexAndAlignment,\n getStartIndexForOffset = _ref.getStartIndexForOffset,\n getStopIndexForStartIndex = _ref.getStopIndexForStartIndex,\n initInstanceProps = _ref.initInstanceProps,\n shouldResetStyleCacheOnItemSizeChange = _ref.shouldResetStyleCacheOnItemSizeChange,\n validateProps = _ref.validateProps;\n return _temp = _class =\n /*#__PURE__*/\n function (_PureComponent) {\n _inheritsLoose(List, _PureComponent);\n\n // Always use explicit constructor for React components.\n // It produces less code after transpilation. (#26)\n // eslint-disable-next-line no-useless-constructor\n function List(props) {\n var _this;\n\n _this = _PureComponent.call(this, props) || this;\n _this._instanceProps = initInstanceProps(_this.props, _assertThisInitialized(_assertThisInitialized(_this)));\n _this._outerRef = void 0;\n _this._resetIsScrollingTimeoutId = null;\n _this.state = {\n instance: _assertThisInitialized(_assertThisInitialized(_this)),\n isScrolling: false,\n scrollDirection: 'forward',\n scrollOffset: typeof _this.props.initialScrollOffset === 'number' ? _this.props.initialScrollOffset : 0,\n scrollUpdateWasRequested: false\n };\n _this._callOnItemsRendered = void 0;\n _this._callOnItemsRendered = memoize_one_esm(function (overscanStartIndex, overscanStopIndex, visibleStartIndex, visibleStopIndex) {\n return _this.props.onItemsRendered({\n overscanStartIndex: overscanStartIndex,\n overscanStopIndex: overscanStopIndex,\n visibleStartIndex: visibleStartIndex,\n visibleStopIndex: visibleStopIndex\n });\n });\n _this._callOnScroll = void 0;\n _this._callOnScroll = memoize_one_esm(function (scrollDirection, scrollOffset, scrollUpdateWasRequested) {\n return _this.props.onScroll({\n scrollDirection: scrollDirection,\n scrollOffset: scrollOffset,\n scrollUpdateWasRequested: scrollUpdateWasRequested\n });\n });\n _this._getItemStyle = void 0;\n\n _this._getItemStyle = function (index) {\n var _this$props = _this.props,\n direction = _this$props.direction,\n itemSize = _this$props.itemSize,\n layout = _this$props.layout;\n\n var itemStyleCache = _this._getItemStyleCache(shouldResetStyleCacheOnItemSizeChange && itemSize, shouldResetStyleCacheOnItemSizeChange && layout, shouldResetStyleCacheOnItemSizeChange && direction);\n\n var style;\n\n if (itemStyleCache.hasOwnProperty(index)) {\n style = itemStyleCache[index];\n } else {\n var _offset = getItemOffset(_this.props, index, _this._instanceProps);\n\n var size = getItemSize(_this.props, index, _this._instanceProps); // TODO Deprecate direction \"horizontal\"\n\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n var isRtl = direction === 'rtl';\n var offsetHorizontal = isHorizontal ? _offset : 0;\n itemStyleCache[index] = style = {\n position: 'absolute',\n left: isRtl ? undefined : offsetHorizontal,\n right: isRtl ? offsetHorizontal : undefined,\n top: !isHorizontal ? _offset : 0,\n height: !isHorizontal ? size : '100%',\n width: isHorizontal ? size : '100%'\n };\n }\n\n return style;\n };\n\n _this._getItemStyleCache = void 0;\n _this._getItemStyleCache = memoize_one_esm(function (_, __, ___) {\n return {};\n });\n\n _this._onScrollHorizontal = function (event) {\n var _event$currentTarget = event.currentTarget,\n clientWidth = _event$currentTarget.clientWidth,\n scrollLeft = _event$currentTarget.scrollLeft,\n scrollWidth = _event$currentTarget.scrollWidth;\n\n _this.setState(function (prevState) {\n if (prevState.scrollOffset === scrollLeft) {\n // Scroll position may have been updated by cDM/cDU,\n // In which case we don't need to trigger another render,\n // And we don't want to update state.isScrolling.\n return null;\n }\n\n var direction = _this.props.direction;\n var scrollOffset = scrollLeft;\n\n if (direction === 'rtl') {\n // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.\n // This is not the case for all browsers though (e.g. Chrome reports values as positive, measured relative to the left).\n // It's also easier for this component if we convert offsets to the same format as they would be in for ltr.\n // So the simplest solution is to determine which browser behavior we're dealing with, and convert based on it.\n switch (getRTLOffsetType()) {\n case 'negative':\n scrollOffset = -scrollLeft;\n break;\n\n case 'positive-descending':\n scrollOffset = scrollWidth - clientWidth - scrollLeft;\n break;\n }\n } // Prevent Safari's elastic scrolling from causing visual shaking when scrolling past bounds.\n\n\n scrollOffset = Math.max(0, Math.min(scrollOffset, scrollWidth - clientWidth));\n return {\n isScrolling: true,\n scrollDirection: prevState.scrollOffset < scrollLeft ? 'forward' : 'backward',\n scrollOffset: scrollOffset,\n scrollUpdateWasRequested: false\n };\n }, _this._resetIsScrollingDebounced);\n };\n\n _this._onScrollVertical = function (event) {\n var _event$currentTarget2 = event.currentTarget,\n clientHeight = _event$currentTarget2.clientHeight,\n scrollHeight = _event$currentTarget2.scrollHeight,\n scrollTop = _event$currentTarget2.scrollTop;\n\n _this.setState(function (prevState) {\n if (prevState.scrollOffset === scrollTop) {\n // Scroll position may have been updated by cDM/cDU,\n // In which case we don't need to trigger another render,\n // And we don't want to update state.isScrolling.\n return null;\n } // Prevent Safari's elastic scrolling from causing visual shaking when scrolling past bounds.\n\n\n var scrollOffset = Math.max(0, Math.min(scrollTop, scrollHeight - clientHeight));\n return {\n isScrolling: true,\n scrollDirection: prevState.scrollOffset < scrollOffset ? 'forward' : 'backward',\n scrollOffset: scrollOffset,\n scrollUpdateWasRequested: false\n };\n }, _this._resetIsScrollingDebounced);\n };\n\n _this._outerRefSetter = function (ref) {\n var outerRef = _this.props.outerRef;\n _this._outerRef = ref;\n\n if (typeof outerRef === 'function') {\n outerRef(ref);\n } else if (outerRef != null && typeof outerRef === 'object' && outerRef.hasOwnProperty('current')) {\n outerRef.current = ref;\n }\n };\n\n _this._resetIsScrollingDebounced = function () {\n if (_this._resetIsScrollingTimeoutId !== null) {\n cancelTimeout(_this._resetIsScrollingTimeoutId);\n }\n\n _this._resetIsScrollingTimeoutId = requestTimeout(_this._resetIsScrolling, IS_SCROLLING_DEBOUNCE_INTERVAL$1);\n };\n\n _this._resetIsScrolling = function () {\n _this._resetIsScrollingTimeoutId = null;\n\n _this.setState({\n isScrolling: false\n }, function () {\n // Clear style cache after state update has been committed.\n // This way we don't break pure sCU for items that don't use isScrolling param.\n _this._getItemStyleCache(-1, null);\n });\n };\n\n return _this;\n }\n\n List.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {\n validateSharedProps$1(nextProps, prevState);\n validateProps(nextProps);\n return null;\n };\n\n var _proto = List.prototype;\n\n _proto.scrollTo = function scrollTo(scrollOffset) {\n scrollOffset = Math.max(0, scrollOffset);\n this.setState(function (prevState) {\n if (prevState.scrollOffset === scrollOffset) {\n return null;\n }\n\n return {\n scrollDirection: prevState.scrollOffset < scrollOffset ? 'forward' : 'backward',\n scrollOffset: scrollOffset,\n scrollUpdateWasRequested: true\n };\n }, this._resetIsScrollingDebounced);\n };\n\n _proto.scrollToItem = function scrollToItem(index, align) {\n if (align === void 0) {\n align = 'auto';\n }\n\n var itemCount = this.props.itemCount;\n var scrollOffset = this.state.scrollOffset;\n index = Math.max(0, Math.min(index, itemCount - 1));\n this.scrollTo(getOffsetForIndexAndAlignment(this.props, index, align, scrollOffset, this._instanceProps));\n };\n\n _proto.componentDidMount = function componentDidMount() {\n var _this$props2 = this.props,\n direction = _this$props2.direction,\n initialScrollOffset = _this$props2.initialScrollOffset,\n layout = _this$props2.layout;\n\n if (typeof initialScrollOffset === 'number' && this._outerRef != null) {\n var outerRef = this._outerRef; // TODO Deprecate direction \"horizontal\"\n\n if (direction === 'horizontal' || layout === 'horizontal') {\n outerRef.scrollLeft = initialScrollOffset;\n } else {\n outerRef.scrollTop = initialScrollOffset;\n }\n }\n\n this._callPropsCallbacks();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n var _this$props3 = this.props,\n direction = _this$props3.direction,\n layout = _this$props3.layout;\n var _this$state = this.state,\n scrollOffset = _this$state.scrollOffset,\n scrollUpdateWasRequested = _this$state.scrollUpdateWasRequested;\n\n if (scrollUpdateWasRequested && this._outerRef != null) {\n var outerRef = this._outerRef; // TODO Deprecate direction \"horizontal\"\n\n if (direction === 'horizontal' || layout === 'horizontal') {\n if (direction === 'rtl') {\n // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.\n // This is not the case for all browsers though (e.g. Chrome reports values as positive, measured relative to the left).\n // So we need to determine which browser behavior we're dealing with, and mimic it.\n switch (getRTLOffsetType()) {\n case 'negative':\n outerRef.scrollLeft = -scrollOffset;\n break;\n\n case 'positive-ascending':\n outerRef.scrollLeft = scrollOffset;\n break;\n\n default:\n var clientWidth = outerRef.clientWidth,\n scrollWidth = outerRef.scrollWidth;\n outerRef.scrollLeft = scrollWidth - clientWidth - scrollOffset;\n break;\n }\n } else {\n outerRef.scrollLeft = scrollOffset;\n }\n } else {\n outerRef.scrollTop = scrollOffset;\n }\n }\n\n this._callPropsCallbacks();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (this._resetIsScrollingTimeoutId !== null) {\n cancelTimeout(this._resetIsScrollingTimeoutId);\n }\n };\n\n _proto.render = function render() {\n var _this$props4 = this.props,\n children = _this$props4.children,\n className = _this$props4.className,\n direction = _this$props4.direction,\n height = _this$props4.height,\n innerRef = _this$props4.innerRef,\n innerElementType = _this$props4.innerElementType,\n innerTagName = _this$props4.innerTagName,\n itemCount = _this$props4.itemCount,\n itemData = _this$props4.itemData,\n _this$props4$itemKey = _this$props4.itemKey,\n itemKey = _this$props4$itemKey === void 0 ? defaultItemKey$1 : _this$props4$itemKey,\n layout = _this$props4.layout,\n outerElementType = _this$props4.outerElementType,\n outerTagName = _this$props4.outerTagName,\n style = _this$props4.style,\n useIsScrolling = _this$props4.useIsScrolling,\n width = _this$props4.width;\n var isScrolling = this.state.isScrolling; // TODO Deprecate direction \"horizontal\"\n\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n var onScroll = isHorizontal ? this._onScrollHorizontal : this._onScrollVertical;\n\n var _this$_getRangeToRend = this._getRangeToRender(),\n startIndex = _this$_getRangeToRend[0],\n stopIndex = _this$_getRangeToRend[1];\n\n var items = [];\n\n if (itemCount > 0) {\n for (var _index = startIndex; _index <= stopIndex; _index++) {\n items.push(Object(react[\"createElement\"])(children, {\n data: itemData,\n key: itemKey(_index, itemData),\n index: _index,\n isScrolling: useIsScrolling ? isScrolling : undefined,\n style: this._getItemStyle(_index)\n }));\n }\n } // Read this value AFTER items have been created,\n // So their actual sizes (if variable) are taken into consideration.\n\n\n var estimatedTotalSize = getEstimatedTotalSize(this.props, this._instanceProps);\n return Object(react[\"createElement\"])(outerElementType || outerTagName || 'div', {\n className: className,\n onScroll: onScroll,\n ref: this._outerRefSetter,\n style: Object(esm_extends[\"a\" /* default */])({\n position: 'relative',\n height: height,\n width: width,\n overflow: 'auto',\n WebkitOverflowScrolling: 'touch',\n willChange: 'transform',\n direction: direction\n }, style)\n }, Object(react[\"createElement\"])(innerElementType || innerTagName || 'div', {\n children: items,\n ref: innerRef,\n style: {\n height: isHorizontal ? '100%' : estimatedTotalSize,\n pointerEvents: isScrolling ? 'none' : undefined,\n width: isHorizontal ? estimatedTotalSize : '100%'\n }\n }));\n };\n\n _proto._callPropsCallbacks = function _callPropsCallbacks() {\n if (typeof this.props.onItemsRendered === 'function') {\n var itemCount = this.props.itemCount;\n\n if (itemCount > 0) {\n var _this$_getRangeToRend2 = this._getRangeToRender(),\n _overscanStartIndex = _this$_getRangeToRend2[0],\n _overscanStopIndex = _this$_getRangeToRend2[1],\n _visibleStartIndex = _this$_getRangeToRend2[2],\n _visibleStopIndex = _this$_getRangeToRend2[3];\n\n this._callOnItemsRendered(_overscanStartIndex, _overscanStopIndex, _visibleStartIndex, _visibleStopIndex);\n }\n }\n\n if (typeof this.props.onScroll === 'function') {\n var _this$state2 = this.state,\n _scrollDirection = _this$state2.scrollDirection,\n _scrollOffset = _this$state2.scrollOffset,\n _scrollUpdateWasRequested = _this$state2.scrollUpdateWasRequested;\n\n this._callOnScroll(_scrollDirection, _scrollOffset, _scrollUpdateWasRequested);\n }\n }; // Lazily create and cache item styles while scrolling,\n // So that pure component sCU will prevent re-renders.\n // We maintain this cache, and pass a style prop rather than index,\n // So that List can clear cached styles and force item re-render if necessary.\n\n\n _proto._getRangeToRender = function _getRangeToRender() {\n var _this$props5 = this.props,\n itemCount = _this$props5.itemCount,\n overscanCount = _this$props5.overscanCount;\n var _this$state3 = this.state,\n isScrolling = _this$state3.isScrolling,\n scrollDirection = _this$state3.scrollDirection,\n scrollOffset = _this$state3.scrollOffset;\n\n if (itemCount === 0) {\n return [0, 0, 0, 0];\n }\n\n var startIndex = getStartIndexForOffset(this.props, scrollOffset, this._instanceProps);\n var stopIndex = getStopIndexForStartIndex(this.props, startIndex, scrollOffset, this._instanceProps); // Overscan by one item in each direction so that tab/focus works.\n // If there isn't at least one extra item, tab loops back around.\n\n var overscanBackward = !isScrolling || scrollDirection === 'backward' ? Math.max(1, overscanCount) : 1;\n var overscanForward = !isScrolling || scrollDirection === 'forward' ? Math.max(1, overscanCount) : 1;\n return [Math.max(0, startIndex - overscanBackward), Math.max(0, Math.min(itemCount - 1, stopIndex + overscanForward)), startIndex, stopIndex];\n };\n\n return List;\n }(react[\"PureComponent\"]), _class.defaultProps = {\n direction: 'ltr',\n itemData: undefined,\n layout: 'vertical',\n overscanCount: 2,\n useIsScrolling: false\n }, _temp;\n} // NOTE: I considered further wrapping individual items with a pure ListItem component.\n// This would avoid ever calling the render function for the same index more than once,\n// But it would also add the overhead of a lot of components/fibers.\n// I assume people already do this (render function returning a class component),\n// So my doing it would just unnecessarily double the wrappers.\n\nvar validateSharedProps$1 = function validateSharedProps(_ref2, _ref3) {\n var children = _ref2.children,\n direction = _ref2.direction,\n height = _ref2.height,\n layout = _ref2.layout,\n innerTagName = _ref2.innerTagName,\n outerTagName = _ref2.outerTagName,\n width = _ref2.width;\n var instance = _ref3.instance;\n\n if (false) { var isHorizontal; }\n};\n\nvar DEFAULT_ESTIMATED_ITEM_SIZE$1 = 50;\n\nvar getItemMetadata$1 = function getItemMetadata(props, index, instanceProps) {\n var _ref = props,\n itemSize = _ref.itemSize;\n var itemMetadataMap = instanceProps.itemMetadataMap,\n lastMeasuredIndex = instanceProps.lastMeasuredIndex;\n\n if (index > lastMeasuredIndex) {\n var offset = 0;\n\n if (lastMeasuredIndex >= 0) {\n var itemMetadata = itemMetadataMap[lastMeasuredIndex];\n offset = itemMetadata.offset + itemMetadata.size;\n }\n\n for (var i = lastMeasuredIndex + 1; i <= index; i++) {\n var size = itemSize(i);\n itemMetadataMap[i] = {\n offset: offset,\n size: size\n };\n offset += size;\n }\n\n instanceProps.lastMeasuredIndex = index;\n }\n\n return itemMetadataMap[index];\n};\n\nvar findNearestItem$1 = function findNearestItem(props, instanceProps, offset) {\n var itemMetadataMap = instanceProps.itemMetadataMap,\n lastMeasuredIndex = instanceProps.lastMeasuredIndex;\n var lastMeasuredItemOffset = lastMeasuredIndex > 0 ? itemMetadataMap[lastMeasuredIndex].offset : 0;\n\n if (lastMeasuredItemOffset >= offset) {\n // If we've already measured items within this range just use a binary search as it's faster.\n return findNearestItemBinarySearch$1(props, instanceProps, lastMeasuredIndex, 0, offset);\n } else {\n // If we haven't yet measured this high, fallback to an exponential search with an inner binary search.\n // The exponential search avoids pre-computing sizes for the full set of items as a binary search would.\n // The overall complexity for this approach is O(log n).\n return findNearestItemExponentialSearch$1(props, instanceProps, Math.max(0, lastMeasuredIndex), offset);\n }\n};\n\nvar findNearestItemBinarySearch$1 = function findNearestItemBinarySearch(props, instanceProps, high, low, offset) {\n while (low <= high) {\n var middle = low + Math.floor((high - low) / 2);\n var currentOffset = getItemMetadata$1(props, middle, instanceProps).offset;\n\n if (currentOffset === offset) {\n return middle;\n } else if (currentOffset < offset) {\n low = middle + 1;\n } else if (currentOffset > offset) {\n high = middle - 1;\n }\n }\n\n if (low > 0) {\n return low - 1;\n } else {\n return 0;\n }\n};\n\nvar findNearestItemExponentialSearch$1 = function findNearestItemExponentialSearch(props, instanceProps, index, offset) {\n var itemCount = props.itemCount;\n var interval = 1;\n\n while (index < itemCount && getItemMetadata$1(props, index, instanceProps).offset < offset) {\n index += interval;\n interval *= 2;\n }\n\n return findNearestItemBinarySearch$1(props, instanceProps, Math.min(index, itemCount - 1), Math.floor(index / 2), offset);\n};\n\nvar index_esm_getEstimatedTotalSize = function getEstimatedTotalSize(_ref2, _ref3) {\n var itemCount = _ref2.itemCount;\n var itemMetadataMap = _ref3.itemMetadataMap,\n estimatedItemSize = _ref3.estimatedItemSize,\n lastMeasuredIndex = _ref3.lastMeasuredIndex;\n var totalSizeOfMeasuredItems = 0; // Edge case check for when the number of items decreases while a scroll is in progress.\n // https://github.com/bvaughn/react-window/pull/138\n\n if (lastMeasuredIndex >= itemCount) {\n lastMeasuredIndex = itemCount - 1;\n }\n\n if (lastMeasuredIndex >= 0) {\n var itemMetadata = itemMetadataMap[lastMeasuredIndex];\n totalSizeOfMeasuredItems = itemMetadata.offset + itemMetadata.size;\n }\n\n var numUnmeasuredItems = itemCount - lastMeasuredIndex - 1;\n var totalSizeOfUnmeasuredItems = numUnmeasuredItems * estimatedItemSize;\n return totalSizeOfMeasuredItems + totalSizeOfUnmeasuredItems;\n};\n\nvar VariableSizeList =\n/*#__PURE__*/\ncreateListComponent({\n getItemOffset: function getItemOffset(props, index, instanceProps) {\n return getItemMetadata$1(props, index, instanceProps).offset;\n },\n getItemSize: function getItemSize(props, index, instanceProps) {\n return instanceProps.itemMetadataMap[index].size;\n },\n getEstimatedTotalSize: index_esm_getEstimatedTotalSize,\n getOffsetForIndexAndAlignment: function getOffsetForIndexAndAlignment(props, index, align, scrollOffset, instanceProps) {\n var direction = props.direction,\n height = props.height,\n layout = props.layout,\n width = props.width; // TODO Deprecate direction \"horizontal\"\n\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n var size = isHorizontal ? width : height;\n var itemMetadata = getItemMetadata$1(props, index, instanceProps); // Get estimated total size after ItemMetadata is computed,\n // To ensure it reflects actual measurements instead of just estimates.\n\n var estimatedTotalSize = index_esm_getEstimatedTotalSize(props, instanceProps);\n var maxOffset = Math.max(0, Math.min(estimatedTotalSize - size, itemMetadata.offset));\n var minOffset = Math.max(0, itemMetadata.offset - size + itemMetadata.size);\n\n if (align === 'smart') {\n if (scrollOffset >= minOffset - size && scrollOffset <= maxOffset + size) {\n align = 'auto';\n } else {\n align = 'center';\n }\n }\n\n switch (align) {\n case 'start':\n return maxOffset;\n\n case 'end':\n return minOffset;\n\n case 'center':\n return Math.round(minOffset + (maxOffset - minOffset) / 2);\n\n case 'auto':\n default:\n if (scrollOffset >= minOffset && scrollOffset <= maxOffset) {\n return scrollOffset;\n } else if (scrollOffset < minOffset) {\n return minOffset;\n } else {\n return maxOffset;\n }\n\n }\n },\n getStartIndexForOffset: function getStartIndexForOffset(props, offset, instanceProps) {\n return findNearestItem$1(props, instanceProps, offset);\n },\n getStopIndexForStartIndex: function getStopIndexForStartIndex(props, startIndex, scrollOffset, instanceProps) {\n var direction = props.direction,\n height = props.height,\n itemCount = props.itemCount,\n layout = props.layout,\n width = props.width; // TODO Deprecate direction \"horizontal\"\n\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n var size = isHorizontal ? width : height;\n var itemMetadata = getItemMetadata$1(props, startIndex, instanceProps);\n var maxOffset = scrollOffset + size;\n var offset = itemMetadata.offset + itemMetadata.size;\n var stopIndex = startIndex;\n\n while (stopIndex < itemCount - 1 && offset < maxOffset) {\n stopIndex++;\n offset += getItemMetadata$1(props, stopIndex, instanceProps).size;\n }\n\n return stopIndex;\n },\n initInstanceProps: function initInstanceProps(props, instance) {\n var _ref4 = props,\n estimatedItemSize = _ref4.estimatedItemSize;\n var instanceProps = {\n itemMetadataMap: {},\n estimatedItemSize: estimatedItemSize || DEFAULT_ESTIMATED_ITEM_SIZE$1,\n lastMeasuredIndex: -1\n };\n\n instance.resetAfterIndex = function (index, shouldForceUpdate) {\n if (shouldForceUpdate === void 0) {\n shouldForceUpdate = true;\n }\n\n instanceProps.lastMeasuredIndex = Math.min(instanceProps.lastMeasuredIndex, index - 1); // We could potentially optimize further by only evicting styles after this index,\n // But since styles are only cached while scrolling is in progress-\n // It seems an unnecessary optimization.\n // It's unlikely that resetAfterIndex() will be called while a user is scrolling.\n\n instance._getItemStyleCache(-1);\n\n if (shouldForceUpdate) {\n instance.forceUpdate();\n }\n };\n\n return instanceProps;\n },\n shouldResetStyleCacheOnItemSizeChange: false,\n validateProps: function validateProps(_ref5) {\n var itemSize = _ref5.itemSize;\n\n if (false) {}\n }\n});\n\nvar FixedSizeGrid =\n/*#__PURE__*/\ncreateGridComponent({\n getColumnOffset: function getColumnOffset(_ref, index) {\n var columnWidth = _ref.columnWidth;\n return index * columnWidth;\n },\n getColumnWidth: function getColumnWidth(_ref2, index) {\n var columnWidth = _ref2.columnWidth;\n return columnWidth;\n },\n getRowOffset: function getRowOffset(_ref3, index) {\n var rowHeight = _ref3.rowHeight;\n return index * rowHeight;\n },\n getRowHeight: function getRowHeight(_ref4, index) {\n var rowHeight = _ref4.rowHeight;\n return rowHeight;\n },\n getEstimatedTotalHeight: function getEstimatedTotalHeight(_ref5) {\n var rowCount = _ref5.rowCount,\n rowHeight = _ref5.rowHeight;\n return rowHeight * rowCount;\n },\n getEstimatedTotalWidth: function getEstimatedTotalWidth(_ref6) {\n var columnCount = _ref6.columnCount,\n columnWidth = _ref6.columnWidth;\n return columnWidth * columnCount;\n },\n getOffsetForColumnAndAlignment: function getOffsetForColumnAndAlignment(_ref7, columnIndex, align, scrollLeft, instanceProps, scrollbarSize) {\n var columnCount = _ref7.columnCount,\n columnWidth = _ref7.columnWidth,\n width = _ref7.width;\n var lastColumnOffset = Math.max(0, columnCount * columnWidth - width);\n var maxOffset = Math.min(lastColumnOffset, columnIndex * columnWidth);\n var minOffset = Math.max(0, columnIndex * columnWidth - width + scrollbarSize + columnWidth);\n\n if (align === 'smart') {\n if (scrollLeft >= minOffset - width && scrollLeft <= maxOffset + width) {\n align = 'auto';\n } else {\n align = 'center';\n }\n }\n\n switch (align) {\n case 'start':\n return maxOffset;\n\n case 'end':\n return minOffset;\n\n case 'center':\n // \"Centered\" offset is usually the average of the min and max.\n // But near the edges of the list, this doesn't hold true.\n var middleOffset = Math.round(minOffset + (maxOffset - minOffset) / 2);\n\n if (middleOffset < Math.ceil(width / 2)) {\n return 0; // near the beginning\n } else if (middleOffset > lastColumnOffset + Math.floor(width / 2)) {\n return lastColumnOffset; // near the end\n } else {\n return middleOffset;\n }\n\n case 'auto':\n default:\n if (scrollLeft >= minOffset && scrollLeft <= maxOffset) {\n return scrollLeft;\n } else if (minOffset > maxOffset) {\n // Because we only take into account the scrollbar size when calculating minOffset\n // this value can be larger than maxOffset when at the end of the list\n return minOffset;\n } else if (scrollLeft < minOffset) {\n return minOffset;\n } else {\n return maxOffset;\n }\n\n }\n },\n getOffsetForRowAndAlignment: function getOffsetForRowAndAlignment(_ref8, rowIndex, align, scrollTop, instanceProps, scrollbarSize) {\n var rowHeight = _ref8.rowHeight,\n height = _ref8.height,\n rowCount = _ref8.rowCount;\n var lastRowOffset = Math.max(0, rowCount * rowHeight - height);\n var maxOffset = Math.min(lastRowOffset, rowIndex * rowHeight);\n var minOffset = Math.max(0, rowIndex * rowHeight - height + scrollbarSize + rowHeight);\n\n if (align === 'smart') {\n if (scrollTop >= minOffset - height && scrollTop <= maxOffset + height) {\n align = 'auto';\n } else {\n align = 'center';\n }\n }\n\n switch (align) {\n case 'start':\n return maxOffset;\n\n case 'end':\n return minOffset;\n\n case 'center':\n // \"Centered\" offset is usually the average of the min and max.\n // But near the edges of the list, this doesn't hold true.\n var middleOffset = Math.round(minOffset + (maxOffset - minOffset) / 2);\n\n if (middleOffset < Math.ceil(height / 2)) {\n return 0; // near the beginning\n } else if (middleOffset > lastRowOffset + Math.floor(height / 2)) {\n return lastRowOffset; // near the end\n } else {\n return middleOffset;\n }\n\n case 'auto':\n default:\n if (scrollTop >= minOffset && scrollTop <= maxOffset) {\n return scrollTop;\n } else if (minOffset > maxOffset) {\n // Because we only take into account the scrollbar size when calculating minOffset\n // this value can be larger than maxOffset when at the end of the list\n return minOffset;\n } else if (scrollTop < minOffset) {\n return minOffset;\n } else {\n return maxOffset;\n }\n\n }\n },\n getColumnStartIndexForOffset: function getColumnStartIndexForOffset(_ref9, scrollLeft) {\n var columnWidth = _ref9.columnWidth,\n columnCount = _ref9.columnCount;\n return Math.max(0, Math.min(columnCount - 1, Math.floor(scrollLeft / columnWidth)));\n },\n getColumnStopIndexForStartIndex: function getColumnStopIndexForStartIndex(_ref10, startIndex, scrollLeft) {\n var columnWidth = _ref10.columnWidth,\n columnCount = _ref10.columnCount,\n width = _ref10.width;\n var left = startIndex * columnWidth;\n var numVisibleColumns = Math.ceil((width + scrollLeft - left) / columnWidth);\n return Math.max(0, Math.min(columnCount - 1, startIndex + numVisibleColumns - 1 // -1 is because stop index is inclusive\n ));\n },\n getRowStartIndexForOffset: function getRowStartIndexForOffset(_ref11, scrollTop) {\n var rowHeight = _ref11.rowHeight,\n rowCount = _ref11.rowCount;\n return Math.max(0, Math.min(rowCount - 1, Math.floor(scrollTop / rowHeight)));\n },\n getRowStopIndexForStartIndex: function getRowStopIndexForStartIndex(_ref12, startIndex, scrollTop) {\n var rowHeight = _ref12.rowHeight,\n rowCount = _ref12.rowCount,\n height = _ref12.height;\n var top = startIndex * rowHeight;\n var numVisibleRows = Math.ceil((height + scrollTop - top) / rowHeight);\n return Math.max(0, Math.min(rowCount - 1, startIndex + numVisibleRows - 1 // -1 is because stop index is inclusive\n ));\n },\n initInstanceProps: function initInstanceProps(props) {// Noop\n },\n shouldResetStyleCacheOnItemSizeChange: true,\n validateProps: function validateProps(_ref13) {\n var columnWidth = _ref13.columnWidth,\n rowHeight = _ref13.rowHeight;\n\n if (false) {}\n }\n});\n\nvar FixedSizeList =\n/*#__PURE__*/\ncreateListComponent({\n getItemOffset: function getItemOffset(_ref, index) {\n var itemSize = _ref.itemSize;\n return index * itemSize;\n },\n getItemSize: function getItemSize(_ref2, index) {\n var itemSize = _ref2.itemSize;\n return itemSize;\n },\n getEstimatedTotalSize: function getEstimatedTotalSize(_ref3) {\n var itemCount = _ref3.itemCount,\n itemSize = _ref3.itemSize;\n return itemSize * itemCount;\n },\n getOffsetForIndexAndAlignment: function getOffsetForIndexAndAlignment(_ref4, index, align, scrollOffset) {\n var direction = _ref4.direction,\n height = _ref4.height,\n itemCount = _ref4.itemCount,\n itemSize = _ref4.itemSize,\n layout = _ref4.layout,\n width = _ref4.width;\n // TODO Deprecate direction \"horizontal\"\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n var size = isHorizontal ? width : height;\n var lastItemOffset = Math.max(0, itemCount * itemSize - size);\n var maxOffset = Math.min(lastItemOffset, index * itemSize);\n var minOffset = Math.max(0, index * itemSize - size + itemSize);\n\n if (align === 'smart') {\n if (scrollOffset >= minOffset - size && scrollOffset <= maxOffset + size) {\n align = 'auto';\n } else {\n align = 'center';\n }\n }\n\n switch (align) {\n case 'start':\n return maxOffset;\n\n case 'end':\n return minOffset;\n\n case 'center':\n {\n // \"Centered\" offset is usually the average of the min and max.\n // But near the edges of the list, this doesn't hold true.\n var middleOffset = Math.round(minOffset + (maxOffset - minOffset) / 2);\n\n if (middleOffset < Math.ceil(size / 2)) {\n return 0; // near the beginning\n } else if (middleOffset > lastItemOffset + Math.floor(size / 2)) {\n return lastItemOffset; // near the end\n } else {\n return middleOffset;\n }\n }\n\n case 'auto':\n default:\n if (scrollOffset >= minOffset && scrollOffset <= maxOffset) {\n return scrollOffset;\n } else if (scrollOffset < minOffset) {\n return minOffset;\n } else {\n return maxOffset;\n }\n\n }\n },\n getStartIndexForOffset: function getStartIndexForOffset(_ref5, offset) {\n var itemCount = _ref5.itemCount,\n itemSize = _ref5.itemSize;\n return Math.max(0, Math.min(itemCount - 1, Math.floor(offset / itemSize)));\n },\n getStopIndexForStartIndex: function getStopIndexForStartIndex(_ref6, startIndex, scrollOffset) {\n var direction = _ref6.direction,\n height = _ref6.height,\n itemCount = _ref6.itemCount,\n itemSize = _ref6.itemSize,\n layout = _ref6.layout,\n width = _ref6.width;\n // TODO Deprecate direction \"horizontal\"\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n var offset = startIndex * itemSize;\n var size = isHorizontal ? width : height;\n var numVisibleItems = Math.ceil((size + scrollOffset - offset) / itemSize);\n return Math.max(0, Math.min(itemCount - 1, startIndex + numVisibleItems - 1 // -1 is because stop index is inclusive\n ));\n },\n initInstanceProps: function initInstanceProps(props) {// Noop\n },\n shouldResetStyleCacheOnItemSizeChange: true,\n validateProps: function validateProps(_ref7) {\n var itemSize = _ref7.itemSize;\n\n if (false) {}\n }\n});\n\n// Pulled from react-compat\n// https://github.com/developit/preact-compat/blob/7c5de00e7c85e2ffd011bf3af02899b63f699d3a/src/index.js#L349\nfunction shallowDiffers(prev, next) {\n for (var attribute in prev) {\n if (!(attribute in next)) {\n return true;\n }\n }\n\n for (var _attribute in next) {\n if (prev[_attribute] !== next[_attribute]) {\n return true;\n }\n }\n\n return false;\n}\n\n// It knows to compare individual style props and ignore the wrapper object.\n// See https://reactjs.org/docs/react-api.html#reactmemo\n\nfunction areEqual(prevProps, nextProps) {\n var prevStyle = prevProps.style,\n prevRest = Object(objectWithoutPropertiesLoose[\"a\" /* default */])(prevProps, [\"style\"]);\n\n var nextStyle = nextProps.style,\n nextRest = Object(objectWithoutPropertiesLoose[\"a\" /* default */])(nextProps, [\"style\"]);\n\n return !shallowDiffers(prevStyle, nextStyle) && !shallowDiffers(prevRest, nextRest);\n}\n\n// It knows to compare individual style props and ignore the wrapper object.\n// See https://reactjs.org/docs/react-component.html#shouldcomponentupdate\n\nfunction shouldComponentUpdate(nextProps, nextState) {\n return !areEqual(this.props, nextProps) || shallowDiffers(this.state, nextState);\n}\n\n\n//# sourceMappingURL=index.esm.js.map\n\n// EXTERNAL MODULE: ./src/components/ResultsInput/ResultsInput.module.scss\nvar ResultsInput_module = __webpack_require__(\"UFVg\");\nvar ResultsInput_module_default = /*#__PURE__*/__webpack_require__.n(ResultsInput_module);\n\n// CONCATENATED MODULE: ./src/components/ResultsInput/ResultsInput.tsx\n\n\n\n\n\n\n\nvar ResultsInput_ResultsInput = function ResultsInput(_ref) {\n var className = _ref.className;\n var dispatch = Object(es[\"b\" /* useDispatch */])();\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n var value = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"w\" /* selectResultsQuery */]);\n\n var handleChange = function handleChange(event) {\n dispatch(src_state[\"h\" /* resultsSlice */].actions.changeQuery(event.target.value));\n };\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"form\", {\n className: classnames_default()(ResultsInput_module_default.a.resultsInput, className),\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"input\", {\n className: ResultsInput_module_default.a.input,\n placeholder: translate('results.input.placeholder'),\n type: \"text\",\n value: value,\n onChange: handleChange\n })\n });\n};\n\n/* harmony default export */ var components_ResultsInput_ResultsInput = (ResultsInput_ResultsInput);\n// CONCATENATED MODULE: ./src/components/ResultsInput/index.ts\n\n// EXTERNAL MODULE: ./src/types/index.ts\nvar types = __webpack_require__(\"6+LV\");\n\n// EXTERNAL MODULE: ./src/components/Results/Results.module.scss\nvar Results_module = __webpack_require__(\"IQtc\");\nvar Results_module_default = /*#__PURE__*/__webpack_require__.n(Results_module);\n\n// CONCATENATED MODULE: ./src/components/Results/Header.tsx\n\n\n\n\n\n\n\n\n\n\nvar columns = [{\n className: Results_module_default.a.word,\n id: types[\"a\" /* ResultColumn */].Word,\n translationKey: 'common.word'\n}, {\n className: Results_module_default.a.stat,\n id: types[\"a\" /* ResultColumn */].TilesCount,\n translationKey: 'common.tiles'\n}, {\n className: Results_module_default.a.stat,\n id: types[\"a\" /* ResultColumn */].ConsonantsCount,\n translationKey: 'common.consonants'\n}, {\n className: Results_module_default.a.stat,\n id: types[\"a\" /* ResultColumn */].VowelsCount,\n translationKey: 'common.vowels'\n}, {\n className: Results_module_default.a.stat,\n id: types[\"a\" /* ResultColumn */].BlanksCount,\n translationKey: 'common.blanks'\n}, {\n className: Results_module_default.a.stat,\n id: types[\"a\" /* ResultColumn */].WordsCount,\n translationKey: 'common.words'\n}, {\n className: Results_module_default.a.points,\n id: types[\"a\" /* ResultColumn */].Points,\n translationKey: 'common.points'\n}];\n\nvar Header_Header = function Header() {\n var dispatch = Object(es[\"b\" /* useDispatch */])();\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n var sortColumn = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"x\" /* selectResultsSortColumn */]);\n var sortDirection = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"y\" /* selectResultsSortDirection */]);\n\n var handleOrderChange = function handleOrderChange(columnId) {\n dispatch(src_state[\"h\" /* resultsSlice */].actions.sort(columnId));\n };\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: Results_module_default.a.header,\n children: columns.map(function (column) {\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"button\", {\n className: classnames_default()(Results_module_default.a.headerButton, column.className),\n title: translate(column.translationKey),\n type: \"button\",\n onClick: function onClick() {\n return handleOrderChange(column.id);\n },\n children: /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"span\", {\n className: Results_module_default.a.cell,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"span\", {\n className: Results_module_default.a.headerButtonLabel,\n children: translate(column.translationKey)\n }), sortColumn === column.id && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SvgIcon_SvgIcon, {\n className: Results_module_default.a.sortIcon,\n icon: sortDirection === types[\"b\" /* SortDirection */].Ascending ? sortUp : sortDown\n })]\n })\n }, column.id);\n })\n });\n};\n\n/* harmony default export */ var Results_Header = (Header_Header);\n// CONCATENATED MODULE: ./src/components/Results/Cell.tsx\n\n\n\n\n\n\nvar Results_Cell_Cell = function Cell(_ref) {\n var className = _ref.className,\n translationKey = _ref.translationKey,\n value = _ref.value;\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"span\", {\n className: classnames_default()(Results_module_default.a.cell, className),\n title: \"\".concat(translate(translationKey), \": \").concat(value),\n children: value\n });\n};\n\n/* harmony default export */ var Results_Cell = (Results_Cell_Cell);\n// CONCATENATED MODULE: ./src/components/Results/Result.tsx\n\n\n\n\n\n\n\n\nvar Result_Result = function Result(_ref) {\n var index = _ref.index,\n style = _ref.style;\n var dispatch = Object(es[\"b\" /* useDispatch */])(); // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n\n var results = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"A\" /* selectSortedFilteredResults */]);\n var result = results[index];\n\n var handleClick = function handleClick() {\n dispatch(src_state[\"h\" /* resultsSlice */].actions.applyResult(result));\n };\n\n var handleMouseEnter = function handleMouseEnter() {\n dispatch(src_state[\"h\" /* resultsSlice */].actions.changeResultCandidate(result));\n };\n\n var handleMouseLeave = function handleMouseLeave() {\n dispatch(src_state[\"h\" /* resultsSlice */].actions.changeResultCandidate(null));\n };\n\n var handleFocus = function handleFocus() {\n dispatch(src_state[\"h\" /* resultsSlice */].actions.changeResultCandidate(result));\n };\n\n var handleBlur = function handleBlur() {\n dispatch(src_state[\"h\" /* resultsSlice */].actions.changeResultCandidate(null));\n };\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"button\", {\n className: Results_module_default.a.result,\n style: style,\n type: \"button\",\n onBlur: handleBlur,\n onClick: handleClick,\n onFocus: handleFocus,\n onMouseEnter: handleMouseEnter,\n onMouseLeave: handleMouseLeave,\n children: /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"span\", {\n className: Results_module_default.a.resultContent,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Results_Cell, {\n className: Results_module_default.a.word,\n translationKey: \"common.word\",\n value: result.word\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Results_Cell, {\n className: Results_module_default.a.stat,\n translationKey: \"common.tiles\",\n value: result.numberOfTiles\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Results_Cell, {\n className: Results_module_default.a.stat,\n translationKey: \"common.consonants\",\n value: result.numberOfConsonants\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Results_Cell, {\n className: Results_module_default.a.stat,\n translationKey: \"common.vowels\",\n value: result.numberOfVowels\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Results_Cell, {\n className: Results_module_default.a.stat,\n translationKey: \"common.blanks\",\n value: result.numberOfBlanks\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Results_Cell, {\n className: Results_module_default.a.stat,\n translationKey: \"common.words\",\n value: result.numberOfWords\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Results_Cell, {\n className: Results_module_default.a.points,\n translationKey: \"common.points\",\n value: result.points\n })]\n })\n });\n};\n\n/* harmony default export */ var Results_Result = (Result_Result);\n// CONCATENATED MODULE: ./src/components/Results/SolveButton.tsx\n\n\n\n\n\n\n\n\nvar SolveButton_SolveButton = function SolveButton() {\n var dispatch = Object(es[\"b\" /* useDispatch */])();\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n var isLoading = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"r\" /* selectIsLoading */]);\n var rack = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"t\" /* selectRack */]);\n var isOutdated = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"i\" /* selectAreResultsOutdated */]);\n var hasTiles = rack.some(function (tile) {\n return tile !== null;\n });\n\n var handleRefresh = function handleRefresh() {\n dispatch(src_state[\"E\" /* solveSlice */].actions.submit());\n };\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Button_Button, {\n className: Results_module_default.a.outdatedButton,\n disabled: isLoading || !isOutdated || !hasTiles,\n icon: play,\n title: translate('results.solve'),\n type: \"submit\",\n onClick: handleRefresh,\n children: translate('results.solve')\n });\n};\n\n/* harmony default export */ var Results_SolveButton = (SolveButton_SolveButton);\n// CONCATENATED MODULE: ./src/components/Results/Results.tsx\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar Results_Results = function Results(_ref) {\n var height = _ref.height,\n width = _ref.width;\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n var allResults = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"B\" /* selectSortedResults */]);\n var results = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"A\" /* selectSortedFilteredResults */]);\n var isLoading = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"r\" /* selectIsLoading */]);\n var isOutdated = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"i\" /* selectAreResultsOutdated */]);\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: Results_module_default.a.results,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Results_Header, {}), typeof results === 'undefined' && /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(components_EmptyState_EmptyState, {\n className: Results_module_default.a.emptyState,\n type: \"info\",\n children: [translate('results.empty-state.uninitialized'), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Results_SolveButton, {})]\n }), typeof results !== 'undefined' && typeof allResults !== 'undefined' && /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(jsx_runtime[\"Fragment\"], {\n children: [isOutdated && /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(components_EmptyState_EmptyState, {\n className: Results_module_default.a.emptyState,\n type: \"info\",\n children: [translate('results.empty-state.outdated'), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(Results_SolveButton, {})]\n }), !isOutdated && /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(jsx_runtime[\"Fragment\"], {\n children: [allResults.length === 0 && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_EmptyState_EmptyState, {\n className: Results_module_default.a.emptyState,\n type: \"warning\",\n children: translate('results.empty-state.no-results')\n }), allResults.length > 0 && results.length === 0 && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_EmptyState_EmptyState, {\n className: Results_module_default.a.emptyState,\n type: \"info\",\n children: translate('results.empty-state.no-filtered-results')\n }), allResults.length > 0 && results.length > 0 && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(FixedSizeList, {\n className: classnames_default()(Results_module_default.a.list, Object(defineProperty[\"a\" /* default */])({}, Results_module_default.a.outdated, isOutdated)),\n height: height - parameters[\"w\" /* RESULTS_HEADER_HEIGHT */] - parameters[\"x\" /* RESULTS_INPUT_HEIGHT */],\n itemCount: results.length,\n itemSize: parameters[\"y\" /* RESULTS_ITEM_HEIGHT */],\n width: width,\n children: Results_Result\n }), allResults.length > 0 && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_ResultsInput_ResultsInput, {\n className: Results_module_default.a.input\n })]\n })]\n }), isLoading && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Loading_Loading, {})]\n });\n};\n\n/* harmony default export */ var components_Results_Results = (Results_Results);\n// CONCATENATED MODULE: ./src/components/Results/index.ts\n\n// EXTERNAL MODULE: ./src/components/Screen/Screen.module.scss\nvar Screen_module = __webpack_require__(\"SQnd\");\nvar Screen_module_default = /*#__PURE__*/__webpack_require__.n(Screen_module);\n\n// CONCATENATED MODULE: ./src/components/Screen/Screen.tsx\n\n\n\n\n\n\n\n\n\nvar Screen_Screen = function Screen(_ref) {\n var children = _ref.children,\n className = _ref.className,\n contentClassName = _ref.contentClassName,\n onAnimationEnd = _ref.onAnimationEnd,\n onClose = _ref.onClose;\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: classnames_default()(Screen_module_default.a.screen, className),\n onAnimationEnd: onAnimationEnd,\n children: [onClose && /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Button_Button, {\n className: Screen_module_default.a.closeButton,\n icon: cross,\n title: translate('common.close'),\n onClick: onClose,\n children: translate('common.close')\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: classnames_default()(Screen_module_default.a.content, contentClassName),\n children: children\n })]\n });\n};\n\n/* harmony default export */ var components_Screen_Screen = (Screen_Screen);\n// CONCATENATED MODULE: ./src/components/Screen/index.ts\n\n// EXTERNAL MODULE: ./src/components/Settings/components/AutoGroupTilesSetting/AutoGroupTilesSetting.module.scss\nvar AutoGroupTilesSetting_module = __webpack_require__(\"NpR5\");\nvar AutoGroupTilesSetting_module_default = /*#__PURE__*/__webpack_require__.n(AutoGroupTilesSetting_module);\n\n// CONCATENATED MODULE: ./src/components/Settings/components/AutoGroupTilesSetting/constants.ts\nvar NULL_VALUE = 'null';\n// CONCATENATED MODULE: ./src/components/Settings/components/AutoGroupTilesSetting/lib.ts\n\nvar lib_parseValue = function parseValue(value) {\n if (value === 'left' || value === 'right') {\n return value;\n }\n\n if (value === NULL_VALUE) {\n return null;\n }\n\n throw new Error(\"\\\"\".concat(value, \"\\\" is not valid. Should be \\\"left\\\", \\\"right\\\", or \\\"\").concat(NULL_VALUE, \"\\\"\"));\n};\n// CONCATENATED MODULE: ./src/components/Settings/components/AutoGroupTilesSetting/AutoGroupTilesSetting.tsx\n\n\n\n\n\n\n\n\n\nvar AutoGroupTilesSetting_AutoGroupTilesSetting = function AutoGroupTilesSetting(_ref) {\n var className = _ref.className,\n disabled = _ref.disabled;\n var dispatch = Object(es[\"b\" /* useDispatch */])();\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n var configId = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"j\" /* selectAutoGroupTiles */]);\n var options = [{\n label: translate('settings.autoGroupTiles.left'),\n value: 'left'\n }, {\n label: translate('settings.autoGroupTiles.right'),\n value: 'right'\n }, {\n label: translate('settings.autoGroupTiles.null'),\n value: NULL_VALUE\n }];\n\n var handleChange = function handleChange(event) {\n var autoGroupTiles = lib_parseValue(event.target.value);\n dispatch(src_state[\"D\" /* settingsSlice */].actions.changeAutoGroupTiles(autoGroupTiles));\n };\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: className,\n children: options.map(function (option) {\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Radio_Radio, {\n checked: configId === lib_parseValue(option.value),\n className: AutoGroupTilesSetting_module_default.a.option,\n disabled: disabled,\n id: \"autoGroupTiles\",\n name: \"autoGroupTiles\",\n title: option.label,\n value: option.value,\n onChange: handleChange,\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: AutoGroupTilesSetting_module_default.a.label,\n children: option.label\n })\n }, option.value);\n })\n });\n};\n\n/* harmony default export */ var components_AutoGroupTilesSetting_AutoGroupTilesSetting = (AutoGroupTilesSetting_AutoGroupTilesSetting);\n// CONCATENATED MODULE: ./src/components/Settings/components/AutoGroupTilesSetting/index.ts\n\n// EXTERNAL MODULE: ./src/components/Settings/components/ConfigSetting/ConfigSetting.module.scss\nvar ConfigSetting_module = __webpack_require__(\"A/bs\");\nvar ConfigSetting_module_default = /*#__PURE__*/__webpack_require__.n(ConfigSetting_module);\n\n// CONCATENATED MODULE: ./src/components/Settings/components/ConfigSetting/options.ts\n\nvar options_options = [{\n label: configs_build[\"scrabble\"].name,\n value: configs_build[\"scrabble\"].id\n}, {\n label: configs_build[\"literaki\"].name,\n value: configs_build[\"literaki\"].id\n}];\n/* harmony default export */ var ConfigSetting_options = (options_options);\n// CONCATENATED MODULE: ./src/components/Settings/components/ConfigSetting/ConfigSetting.tsx\n\n\n\n\n\n\n\n\nvar ConfigSetting_ConfigSetting = function ConfigSetting(_ref) {\n var className = _ref.className,\n disabled = _ref.disabled;\n var dispatch = Object(es[\"b\" /* useDispatch */])();\n var configId = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"o\" /* selectConfigId */]);\n\n var handleChange = function handleChange(event) {\n dispatch(src_state[\"D\" /* settingsSlice */].actions.changeConfigId(event.target.value));\n };\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: className,\n children: ConfigSetting_options.map(function (option) {\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Radio_Radio, {\n checked: configId === option.value,\n className: ConfigSetting_module_default.a.option,\n disabled: disabled,\n id: \"configId\",\n name: \"configId\",\n title: option.label,\n value: option.value,\n onChange: handleChange,\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: ConfigSetting_module_default.a.label,\n children: option.label\n })\n }, option.value);\n })\n });\n};\n\n/* harmony default export */ var components_ConfigSetting_ConfigSetting = (ConfigSetting_ConfigSetting);\n// CONCATENATED MODULE: ./src/components/Settings/components/ConfigSetting/index.ts\n\n// EXTERNAL MODULE: ./src/components/Settings/components/LocaleSetting/LocaleSetting.module.scss\nvar LocaleSetting_module = __webpack_require__(\"41Wr\");\nvar LocaleSetting_module_default = /*#__PURE__*/__webpack_require__.n(LocaleSetting_module);\n\n// CONCATENATED MODULE: ./src/components/Settings/components/LocaleSetting/options.ts\n\n\n\nvar LocaleSetting_options_options = [{\n className: LocaleSetting_module_default.a.gb,\n icon: flagGb,\n label: 'English (GB)',\n value: types_build[\"Locale\"].EN_GB\n}, {\n className: LocaleSetting_module_default.a.us,\n icon: flagUs,\n label: 'English (US)',\n value: types_build[\"Locale\"].EN_US\n}, {\n className: LocaleSetting_module_default.a.fr,\n icon: flagFr,\n label: 'Français',\n value: types_build[\"Locale\"].FR_FR\n}, {\n className: LocaleSetting_module_default.a.pl,\n icon: flagPl,\n label: 'Polski',\n value: types_build[\"Locale\"].PL_PL\n}, {\n className: LocaleSetting_module_default.a.es,\n icon: flagEs,\n label: 'Español',\n value: types_build[\"Locale\"].ES_ES\n}];\n/* harmony default export */ var LocaleSetting_options = (LocaleSetting_options_options);\n// CONCATENATED MODULE: ./src/components/Settings/components/LocaleSetting/LocaleSetting.tsx\n\n\n\n\n\n\n\n\n\n\n\n\nvar LocaleSetting_LocaleSetting = function LocaleSetting(_ref) {\n var className = _ref.className,\n disabled = _ref.disabled;\n var dispatch = Object(es[\"b\" /* useDispatch */])();\n var locale = Object(src_state[\"G\" /* useTypedSelector */])(src_state[\"s\" /* selectLocale */]);\n\n var handleChange = function handleChange(event) {\n var newLocale = event.target.value;\n dispatch(src_state[\"D\" /* settingsSlice */].actions.changeLocale(newLocale));\n };\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", {\n className: className,\n children: LocaleSetting_options.map(function (option) {\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Radio_Radio, {\n checked: locale === option.value,\n className: classnames_default()(LocaleSetting_module_default.a.option, className, Object(defineProperty[\"a\" /* default */])({}, LocaleSetting_module_default.a.checked, locale === option.value)),\n disabled: disabled,\n id: \"locale\",\n name: \"locale\",\n title: \"\".concat(option.label, \" (\").concat(option.value, \")\"),\n value: option.value,\n onChange: handleChange,\n children: /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"span\", {\n className: LocaleSetting_module_default.a.label,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_SvgIcon_SvgIcon, {\n className: classnames_default()(LocaleSetting_module_default.a.flag, option.className),\n icon: option.icon\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"span\", {\n children: option.label\n })]\n })\n }, option.value);\n })\n });\n};\n\n/* harmony default export */ var components_LocaleSetting_LocaleSetting = (LocaleSetting_LocaleSetting);\n// CONCATENATED MODULE: ./src/components/Settings/components/LocaleSetting/index.ts\n\n// CONCATENATED MODULE: ./src/components/Settings/components/index.ts\n\n\n\n// CONCATENATED MODULE: ./src/components/Settings/Settings.tsx\n\n\n\n\n\n\n\nvar Settings_Settings = function Settings(_ref) {\n var className = _ref.className,\n isOpen = _ref.isOpen,\n onClose = _ref.onClose;\n var translate = Object(src_state[\"F\" /* useTranslate */])();\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(components_Sidebar_Sidebar, {\n className: className,\n isOpen: isOpen,\n title: translate('settings'),\n onClose: onClose,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Sidebar_Sidebar.Section, {\n title: translate('settings.game'),\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_ConfigSetting_ConfigSetting, {\n disabled: !isOpen\n })\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Sidebar_Sidebar.Section, {\n title: translate('settings.language'),\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_LocaleSetting_LocaleSetting, {\n disabled: !isOpen\n })\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Sidebar_Sidebar.Section, {\n title: translate('settings.autoGroupTiles'),\n children: /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_AutoGroupTilesSetting_AutoGroupTilesSetting, {\n disabled: !isOpen\n })\n })]\n });\n};\n\n/* harmony default export */ var components_Settings_Settings = (Settings_Settings);\n// CONCATENATED MODULE: ./src/components/Settings/index.ts\n\n// EXTERNAL MODULE: ./src/components/Splash/Splash.module.scss\nvar Splash_module = __webpack_require__(\"pdKp\");\nvar Splash_module_default = /*#__PURE__*/__webpack_require__.n(Splash_module);\n\n// CONCATENATED MODULE: ./src/components/Splash/Splash.tsx\n\n\n\n\n\n\n\n\n\nvar Splash_Splash = function Splash(_ref) {\n var className = _ref.className,\n forceShow = _ref.forceShow,\n onAnimationEnd = _ref.onAnimationEnd;\n return /*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(components_Screen_Screen, {\n className: classnames_default()(Splash_module_default.a.splash, className, Object(defineProperty[\"a\" /* default */])({}, Splash_module_default.a.animated, !forceShow)),\n onAnimationEnd: onAnimationEnd,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsxs\"])(\"div\", {\n className: Splash_module_default.a.logos,\n children: [/*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Logo_Logo, {\n className: Splash_module_default.a.logoGrayscale\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(components_Logo_Logo, {\n className: Splash_module_default.a.logoColor\n })]\n }), /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"h1\", {\n className: Splash_module_default.a.author,\n children: \"by Kamil Mielnik\"\n })]\n });\n};\n\n/* harmony default export */ var components_Splash_Splash = (Splash_Splash);\n// CONCATENATED MODULE: ./src/components/Splash/index.ts\n\n// EXTERNAL MODULE: ./src/components/Well/Well.module.scss\nvar Well_module = __webpack_require__(\"X4yr\");\nvar Well_module_default = /*#__PURE__*/__webpack_require__.n(Well_module);\n\n// CONCATENATED MODULE: ./src/components/Well/Well.tsx\n\n\n\n\nfunction Well_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 Well_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { Well_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 { Well_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n\n\n\nvar Well = /*#__PURE__*/Object(react[\"forwardRef\"])(function (_ref, ref) {\n var children = _ref.children,\n className = _ref.className,\n props = _objectWithoutProperties(_ref, [\"children\", \"className\"]);\n\n return /*#__PURE__*/Object(jsx_runtime[\"jsx\"])(\"div\", Well_objectSpread(Well_objectSpread({\n className: classnames_default()(Well_module_default.a.well, className),\n ref: ref\n }, props), {}, {\n children: children\n }));\n});\n/* harmony default export */ var Well_Well = (Well);\n// CONCATENATED MODULE: ./src/components/Well/index.ts\n\n// CONCATENATED MODULE: ./src/components/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/***/ \"NpR5\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"option\":\"AutoGroupTilesSetting_option__iqYF_\",\"label\":\"AutoGroupTilesSetting_label__6_UJu\"};\n\n/***/ }),\n\n/***/ \"ODXe\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, \"a\", function() { return /* binding */ _slicedToArray; });\n\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\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/nonIterableRest.js\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure 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/slicedToArray.js\n\n\n\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || Object(unsupportedIterableToArray[\"a\" /* default */])(arr, i) || _nonIterableRest();\n}\n\n/***/ }),\n\n/***/ \"QEso\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = __webpack_require__(\"q1tI\");\n\nvar _propTypes = __webpack_require__(\"17x9\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _focusManager = __webpack_require__(\"VKEO\");\n\nvar focusManager = _interopRequireWildcard(_focusManager);\n\nvar _scopeTab = __webpack_require__(\"S1to\");\n\nvar _scopeTab2 = _interopRequireDefault(_scopeTab);\n\nvar _ariaAppHider = __webpack_require__(\"Ye7m\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _classList = __webpack_require__(\"fbhf\");\n\nvar classList = _interopRequireWildcard(_classList);\n\nvar _safeHTMLElement = __webpack_require__(\"2zs7\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _portalOpenInstances = __webpack_require__(\"UIKY\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\n__webpack_require__(\"WkvU\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n// so that our CSS is statically analyzable\nvar CLASS_NAMES = {\n overlay: \"ReactModal__Overlay\",\n content: \"ReactModal__Content\"\n};\n\nvar TAB_KEY = 9;\nvar ESC_KEY = 27;\n\nvar ariaHiddenInstances = 0;\n\nvar ModalPortal = function (_Component) {\n _inherits(ModalPortal, _Component);\n\n function ModalPortal(props) {\n _classCallCheck(this, ModalPortal);\n\n var _this = _possibleConstructorReturn(this, (ModalPortal.__proto__ || Object.getPrototypeOf(ModalPortal)).call(this, props));\n\n _this.setOverlayRef = function (overlay) {\n _this.overlay = overlay;\n _this.props.overlayRef && _this.props.overlayRef(overlay);\n };\n\n _this.setContentRef = function (content) {\n _this.content = content;\n _this.props.contentRef && _this.props.contentRef(content);\n };\n\n _this.afterClose = function () {\n var _this$props = _this.props,\n appElement = _this$props.appElement,\n ariaHideApp = _this$props.ariaHideApp,\n htmlOpenClassName = _this$props.htmlOpenClassName,\n bodyOpenClassName = _this$props.bodyOpenClassName;\n\n // Remove classes.\n\n bodyOpenClassName && classList.remove(document.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.remove(document.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n // Reset aria-hidden attribute if all modals have been removed\n if (ariaHideApp && ariaHiddenInstances > 0) {\n ariaHiddenInstances -= 1;\n\n if (ariaHiddenInstances === 0) {\n ariaAppHider.show(appElement);\n }\n }\n\n if (_this.props.shouldFocusAfterRender) {\n if (_this.props.shouldReturnFocusAfterClose) {\n focusManager.returnFocus(_this.props.preventScroll);\n focusManager.teardownScopedFocus();\n } else {\n focusManager.popWithoutFocus();\n }\n }\n\n if (_this.props.onAfterClose) {\n _this.props.onAfterClose();\n }\n\n _portalOpenInstances2.default.deregister(_this);\n };\n\n _this.open = function () {\n _this.beforeOpen();\n if (_this.state.afterOpen && _this.state.beforeClose) {\n clearTimeout(_this.closeTimer);\n _this.setState({ beforeClose: false });\n } else {\n if (_this.props.shouldFocusAfterRender) {\n focusManager.setupScopedFocus(_this.node);\n focusManager.markForFocusLater();\n }\n\n _this.setState({ isOpen: true }, function () {\n _this.setState({ afterOpen: true });\n\n if (_this.props.isOpen && _this.props.onAfterOpen) {\n _this.props.onAfterOpen({\n overlayEl: _this.overlay,\n contentEl: _this.content\n });\n }\n });\n }\n };\n\n _this.close = function () {\n if (_this.props.closeTimeoutMS > 0) {\n _this.closeWithTimeout();\n } else {\n _this.closeWithoutTimeout();\n }\n };\n\n _this.focusContent = function () {\n return _this.content && !_this.contentHasFocus() && _this.content.focus({ preventScroll: true });\n };\n\n _this.closeWithTimeout = function () {\n var closesAt = Date.now() + _this.props.closeTimeoutMS;\n _this.setState({ beforeClose: true, closesAt: closesAt }, function () {\n _this.closeTimer = setTimeout(_this.closeWithoutTimeout, _this.state.closesAt - Date.now());\n });\n };\n\n _this.closeWithoutTimeout = function () {\n _this.setState({\n beforeClose: false,\n isOpen: false,\n afterOpen: false,\n closesAt: null\n }, _this.afterClose);\n };\n\n _this.handleKeyDown = function (event) {\n if (event.keyCode === TAB_KEY) {\n (0, _scopeTab2.default)(_this.content, event);\n }\n\n if (_this.props.shouldCloseOnEsc && event.keyCode === ESC_KEY) {\n event.stopPropagation();\n _this.requestClose(event);\n }\n };\n\n _this.handleOverlayOnClick = function (event) {\n if (_this.shouldClose === null) {\n _this.shouldClose = true;\n }\n\n if (_this.shouldClose && _this.props.shouldCloseOnOverlayClick) {\n if (_this.ownerHandlesClose()) {\n _this.requestClose(event);\n } else {\n _this.focusContent();\n }\n }\n _this.shouldClose = null;\n };\n\n _this.handleContentOnMouseUp = function () {\n _this.shouldClose = false;\n };\n\n _this.handleOverlayOnMouseDown = function (event) {\n if (!_this.props.shouldCloseOnOverlayClick && event.target == _this.overlay) {\n event.preventDefault();\n }\n };\n\n _this.handleContentOnClick = function () {\n _this.shouldClose = false;\n };\n\n _this.handleContentOnMouseDown = function () {\n _this.shouldClose = false;\n };\n\n _this.requestClose = function (event) {\n return _this.ownerHandlesClose() && _this.props.onRequestClose(event);\n };\n\n _this.ownerHandlesClose = function () {\n return _this.props.onRequestClose;\n };\n\n _this.shouldBeClosed = function () {\n return !_this.state.isOpen && !_this.state.beforeClose;\n };\n\n _this.contentHasFocus = function () {\n return document.activeElement === _this.content || _this.content.contains(document.activeElement);\n };\n\n _this.buildClassName = function (which, additional) {\n var classNames = (typeof additional === \"undefined\" ? \"undefined\" : _typeof(additional)) === \"object\" ? additional : {\n base: CLASS_NAMES[which],\n afterOpen: CLASS_NAMES[which] + \"--after-open\",\n beforeClose: CLASS_NAMES[which] + \"--before-close\"\n };\n var className = classNames.base;\n if (_this.state.afterOpen) {\n className = className + \" \" + classNames.afterOpen;\n }\n if (_this.state.beforeClose) {\n className = className + \" \" + classNames.beforeClose;\n }\n return typeof additional === \"string\" && additional ? className + \" \" + additional : className;\n };\n\n _this.attributesFromObject = function (prefix, items) {\n return Object.keys(items).reduce(function (acc, name) {\n acc[prefix + \"-\" + name] = items[name];\n return acc;\n }, {});\n };\n\n _this.state = {\n afterOpen: false,\n beforeClose: false\n };\n\n _this.shouldClose = null;\n _this.moveFromContentToOverlay = null;\n return _this;\n }\n\n _createClass(ModalPortal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this.props.isOpen) {\n this.open();\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, prevState) {\n if (false) {}\n\n if (this.props.isOpen && !prevProps.isOpen) {\n this.open();\n } else if (!this.props.isOpen && prevProps.isOpen) {\n this.close();\n }\n\n // Focus only needs to be set once when the modal is being opened\n if (this.props.shouldFocusAfterRender && this.state.isOpen && !prevState.isOpen) {\n this.focusContent();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.state.isOpen) {\n this.afterClose();\n }\n clearTimeout(this.closeTimer);\n }\n }, {\n key: \"beforeOpen\",\n value: function beforeOpen() {\n var _props = this.props,\n appElement = _props.appElement,\n ariaHideApp = _props.ariaHideApp,\n htmlOpenClassName = _props.htmlOpenClassName,\n bodyOpenClassName = _props.bodyOpenClassName;\n\n // Add classes.\n\n bodyOpenClassName && classList.add(document.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.add(document.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n if (ariaHideApp) {\n ariaHiddenInstances += 1;\n ariaAppHider.hide(appElement);\n }\n\n _portalOpenInstances2.default.register(this);\n }\n\n // Don't steal focus from inner elements\n\n }, {\n key: \"render\",\n value: function render() {\n var _props2 = this.props,\n id = _props2.id,\n className = _props2.className,\n overlayClassName = _props2.overlayClassName,\n defaultStyles = _props2.defaultStyles,\n children = _props2.children;\n\n var contentStyles = className ? {} : defaultStyles.content;\n var overlayStyles = overlayClassName ? {} : defaultStyles.overlay;\n\n if (this.shouldBeClosed()) {\n return null;\n }\n\n var overlayProps = {\n ref: this.setOverlayRef,\n className: this.buildClassName(\"overlay\", overlayClassName),\n style: _extends({}, overlayStyles, this.props.style.overlay),\n onClick: this.handleOverlayOnClick,\n onMouseDown: this.handleOverlayOnMouseDown\n };\n\n var contentProps = _extends({\n id: id,\n ref: this.setContentRef,\n style: _extends({}, contentStyles, this.props.style.content),\n className: this.buildClassName(\"content\", className),\n tabIndex: \"-1\",\n onKeyDown: this.handleKeyDown,\n onMouseDown: this.handleContentOnMouseDown,\n onMouseUp: this.handleContentOnMouseUp,\n onClick: this.handleContentOnClick,\n role: this.props.role,\n \"aria-label\": this.props.contentLabel\n }, this.attributesFromObject(\"aria\", _extends({ modal: true }, this.props.aria)), this.attributesFromObject(\"data\", this.props.data || {}), {\n \"data-testid\": this.props.testId\n });\n\n var contentElement = this.props.contentElement(contentProps, children);\n return this.props.overlayElement(overlayProps, contentElement);\n }\n }]);\n\n return ModalPortal;\n}(_react.Component);\n\nModalPortal.defaultProps = {\n style: {\n overlay: {},\n content: {}\n },\n defaultStyles: {}\n};\nModalPortal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n defaultStyles: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n ariaHideApp: _propTypes2.default.bool,\n appElement: _propTypes2.default.instanceOf(_safeHTMLElement2.default),\n onAfterOpen: _propTypes2.default.func,\n onAfterClose: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n children: _propTypes2.default.node,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func,\n testId: _propTypes2.default.string\n};\nexports.default = ModalPortal;\nmodule.exports = exports[\"default\"];\n\n/***/ }),\n\n/***/ \"RuLr\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"rack\":\"Rack_rack__19pRD\",\"tile\":\"Rack_tile__3eMqz\"};\n\n/***/ }),\n\n/***/ \"S1to\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = scopeTab;\n\nvar _tabbable = __webpack_require__(\"ZDLa\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction scopeTab(node, event) {\n var tabbable = (0, _tabbable2.default)(node);\n\n if (!tabbable.length) {\n // Do nothing, since there are no elements that can receive focus.\n event.preventDefault();\n return;\n }\n\n var target = void 0;\n\n var shiftKey = event.shiftKey;\n var head = tabbable[0];\n var tail = tabbable[tabbable.length - 1];\n\n // proceed with default browser behavior on tab.\n // Focus on last element on shift + tab.\n if (node === document.activeElement) {\n if (!shiftKey) return;\n target = tail;\n }\n\n if (tail === document.activeElement && !shiftKey) {\n target = head;\n }\n\n if (head === document.activeElement && shiftKey) {\n target = tail;\n }\n\n if (target) {\n event.preventDefault();\n target.focus();\n return;\n }\n\n // Safari radio issue.\n //\n // Safari does not move the focus to the radio button,\n // so we need to force it to really walk through all elements.\n //\n // This is very error prone, since we are trying to guess\n // if it is a safari browser from the first occurence between\n // chrome or safari.\n //\n // The chrome user agent contains the first ocurrence\n // as the 'chrome/version' and later the 'safari/version'.\n var checkSafari = /(\\bChrome\\b|\\bSafari\\b)\\//.exec(navigator.userAgent);\n var isSafariDesktop = checkSafari != null && checkSafari[1] != \"Chrome\" && /\\biPod\\b|\\biPad\\b/g.exec(navigator.userAgent) == null;\n\n // If we are not in safari desktop, let the browser control\n // the focus\n if (!isSafariDesktop) return;\n\n var x = tabbable.indexOf(document.activeElement);\n\n if (x > -1) {\n x += shiftKey ? -1 : 1;\n }\n\n target = tabbable[x];\n\n // If the tabbable element does not exist,\n // focus head/tail based on shiftKey\n if (typeof target === \"undefined\") {\n event.preventDefault();\n target = shiftKey ? tail : head;\n target.focus();\n return;\n }\n\n event.preventDefault();\n\n target.focus();\n}\nmodule.exports = exports[\"default\"];\n\n/***/ }),\n\n/***/ \"SQnd\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"screen\":\"Screen_screen__1JVwd\",\"closeButton\":\"Screen_closeButton__2eAGy\",\"content\":\"Screen_content__3Bn9G\"};\n\n/***/ }),\n\n/***/ \"SySy\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"modal\":\"Sidebar_modal__AVVNt\",\"afterOpen\":\"Sidebar_afterOpen__3qtCP\",\"sidebar\":\"Sidebar_sidebar__1BmXf\",\"beforeClose\":\"Sidebar_beforeClose__vU4tB\",\"overlay\":\"Sidebar_overlay__1Ccrb\",\"header\":\"Sidebar_header__VjKGT\",\"title\":\"Sidebar_title__2nqWj\",\"closeButton\":\"Sidebar_closeButton__2Yro_\",\"content\":\"Sidebar_content__1ezIJ\"};\n\n/***/ }),\n\n/***/ \"TSYQ\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n Copyright (c) 2017 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg) && arg.length) {\n\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\tif (inner) {\n\t\t\t\t\tclasses.push(inner);\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif ( true && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (true) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\t!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {\n\t\t\treturn classNames;\n\t\t}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t} else {}\n}());\n\n\n/***/ }),\n\n/***/ \"UE3f\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"board\":\"Board_board__ASOu2\",\"row\":\"Board_row__WXJ7Q\"};\n\n/***/ }),\n\n/***/ \"UFVg\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"resultsInput\":\"ResultsInput_resultsInput__1xGkX\",\"input\":\"ResultsInput_input__soybt\"};\n\n/***/ }),\n\n/***/ \"UIKY\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// Tracks portals that are open and emits events to subscribers\n\nvar PortalOpenInstances = function PortalOpenInstances() {\n var _this = this;\n\n _classCallCheck(this, PortalOpenInstances);\n\n this.register = function (openInstance) {\n if (_this.openInstances.indexOf(openInstance) !== -1) {\n if (false) {}\n return;\n }\n _this.openInstances.push(openInstance);\n _this.emit(\"register\");\n };\n\n this.deregister = function (openInstance) {\n var index = _this.openInstances.indexOf(openInstance);\n if (index === -1) {\n if (false) {}\n return;\n }\n _this.openInstances.splice(index, 1);\n _this.emit(\"deregister\");\n };\n\n this.subscribe = function (callback) {\n _this.subscribers.push(callback);\n };\n\n this.emit = function (eventType) {\n _this.subscribers.forEach(function (subscriber) {\n return subscriber(eventType,\n // shallow copy to avoid accidental mutation\n _this.openInstances.slice());\n });\n };\n\n this.openInstances = [];\n this.subscribers = [];\n};\n\nvar portalOpenInstances = new PortalOpenInstances();\n\nexports.default = portalOpenInstances;\nmodule.exports = exports[\"default\"];\n\n/***/ }),\n\n/***/ \"VCL8\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"polyfill\", function() { return polyfill; });\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\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\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\n\n\n\n/***/ }),\n\n/***/ \"VKEO\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.handleBlur = handleBlur;\nexports.handleFocus = handleFocus;\nexports.markForFocusLater = markForFocusLater;\nexports.returnFocus = returnFocus;\nexports.popWithoutFocus = popWithoutFocus;\nexports.setupScopedFocus = setupScopedFocus;\nexports.teardownScopedFocus = teardownScopedFocus;\n\nvar _tabbable = __webpack_require__(\"ZDLa\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar focusLaterElements = [];\nvar modalElement = null;\nvar needToFocus = false;\n\nfunction handleBlur() {\n needToFocus = true;\n}\n\nfunction handleFocus() {\n if (needToFocus) {\n needToFocus = false;\n if (!modalElement) {\n return;\n }\n // need to see how jQuery shims document.on('focusin') so we don't need the\n // setTimeout, firefox doesn't support focusin, if it did, we could focus\n // the element outside of a setTimeout. Side-effect of this implementation\n // is that the document.body gets focus, and then we focus our element right\n // after, seems fine.\n setTimeout(function () {\n if (modalElement.contains(document.activeElement)) {\n return;\n }\n var el = (0, _tabbable2.default)(modalElement)[0] || modalElement;\n el.focus();\n }, 0);\n }\n}\n\nfunction markForFocusLater() {\n focusLaterElements.push(document.activeElement);\n}\n\n/* eslint-disable no-console */\nfunction returnFocus() {\n var preventScroll = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n var toFocus = null;\n try {\n if (focusLaterElements.length !== 0) {\n toFocus = focusLaterElements.pop();\n toFocus.focus({ preventScroll: preventScroll });\n }\n return;\n } catch (e) {\n console.warn([\"You tried to return focus to\", toFocus, \"but it is not in the DOM anymore\"].join(\" \"));\n }\n}\n/* eslint-enable no-console */\n\nfunction popWithoutFocus() {\n focusLaterElements.length > 0 && focusLaterElements.pop();\n}\n\nfunction setupScopedFocus(element) {\n modalElement = element;\n\n if (window.addEventListener) {\n window.addEventListener(\"blur\", handleBlur, false);\n document.addEventListener(\"focus\", handleFocus, true);\n } else {\n window.attachEvent(\"onBlur\", handleBlur);\n document.attachEvent(\"onFocus\", handleFocus);\n }\n}\n\nfunction teardownScopedFocus() {\n modalElement = null;\n\n if (window.addEventListener) {\n window.removeEventListener(\"blur\", handleBlur);\n document.removeEventListener(\"focus\", handleFocus);\n } else {\n window.detachEvent(\"onBlur\", handleBlur);\n document.detachEvent(\"onFocus\", handleFocus);\n }\n}\n\n/***/ }),\n\n/***/ \"WX7Y\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"wave\":\"PlainTiles_wave__RkrSN\",\"tile\":\"PlainTiles_tile__3-ZhZ\",\"dropShadow\":\"PlainTiles_dropShadow__3ARSR\",\"hide\":\"PlainTiles_hide__17cvO\",\"progress\":\"PlainTiles_progress__3cL21\",\"pulse\":\"PlainTiles_pulse__3r1EF\"};\n\n/***/ }),\n\n/***/ \"WkvU\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar _portalOpenInstances = __webpack_require__(\"UIKY\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// Body focus trap see Issue #742\n\nvar before = void 0,\n after = void 0,\n instances = [];\n\nfunction focusContent() {\n if (instances.length === 0) {\n if (false) {}\n return;\n }\n instances[instances.length - 1].focusContent();\n}\n\nfunction bodyTrap(eventType, openInstances) {\n if (!before || !after) {\n before = document.createElement(\"div\");\n before.setAttribute(\"data-react-modal-body-trap\", \"\");\n before.style.position = \"absolute\";\n before.style.opacity = \"0\";\n before.setAttribute(\"tabindex\", \"0\");\n before.addEventListener(\"focus\", focusContent);\n after = before.cloneNode();\n after.addEventListener(\"focus\", focusContent);\n }\n\n instances = openInstances;\n\n if (instances.length > 0) {\n // Add focus trap\n if (document.body.firstChild !== before) {\n document.body.insertBefore(before, document.body.firstChild);\n }\n if (document.body.lastChild !== after) {\n document.body.appendChild(after);\n }\n } else {\n // Remove focus trap\n if (before.parentElement) {\n before.parentElement.removeChild(before);\n }\n if (after.parentElement) {\n after.parentElement.removeChild(after);\n }\n }\n}\n\n_portalOpenInstances2.default.subscribe(bodyTrap);\n\n/***/ }),\n\n/***/ \"X4yr\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"well\":\"Well_well__2rvZn\"};\n\n/***/ }),\n\n/***/ \"YFqc\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(\"cTJO\")\n\n\n/***/ }),\n\n/***/ \"Ye7m\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.assertNodeList = assertNodeList;\nexports.setElement = setElement;\nexports.validateElement = validateElement;\nexports.hide = hide;\nexports.show = show;\nexports.documentNotReadyOrSSRTesting = documentNotReadyOrSSRTesting;\nexports.resetForTesting = resetForTesting;\n\nvar _warning = __webpack_require__(\"2W6z\");\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _safeHTMLElement = __webpack_require__(\"2zs7\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar globalElement = null;\n\nfunction assertNodeList(nodeList, selector) {\n if (!nodeList || !nodeList.length) {\n throw new Error(\"react-modal: No elements were found for selector \" + selector + \".\");\n }\n}\n\nfunction setElement(element) {\n var useElement = element;\n if (typeof useElement === \"string\" && _safeHTMLElement.canUseDOM) {\n var el = document.querySelectorAll(useElement);\n assertNodeList(el, useElement);\n useElement = \"length\" in el ? el[0] : el;\n }\n globalElement = useElement || globalElement;\n return globalElement;\n}\n\nfunction validateElement(appElement) {\n if (!appElement && !globalElement) {\n (0, _warning2.default)(false, [\"react-modal: App element is not defined.\", \"Please use `Modal.setAppElement(el)` or set `appElement={el}`.\", \"This is needed so screen readers don't see main content\", \"when modal is opened. It is not recommended, but you can opt-out\", \"by setting `ariaHideApp={false}`.\"].join(\" \"));\n\n return false;\n }\n\n return true;\n}\n\nfunction hide(appElement) {\n if (validateElement(appElement)) {\n (appElement || globalElement).setAttribute(\"aria-hidden\", \"true\");\n }\n}\n\nfunction show(appElement) {\n if (validateElement(appElement)) {\n (appElement || globalElement).removeAttribute(\"aria-hidden\");\n }\n}\n\nfunction documentNotReadyOrSSRTesting() {\n globalElement = null;\n}\n\nfunction resetForTesting() {\n globalElement = null;\n}\n\n/***/ }),\n\n/***/ \"ZDLa\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = findTabbableDescendants;\n/*!\n * Adapted from jQuery UI core\n *\n * http://jqueryui.com\n *\n * Copyright 2014 jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/category/ui-core/\n */\n\nvar tabbableNode = /input|select|textarea|button|object/;\n\nfunction hidesContents(element) {\n var zeroSize = element.offsetWidth <= 0 && element.offsetHeight <= 0;\n\n // If the node is empty, this is good enough\n if (zeroSize && !element.innerHTML) return true;\n\n // Otherwise we need to check some styles\n var style = window.getComputedStyle(element);\n return zeroSize ? style.getPropertyValue(\"overflow\") !== \"visible\" ||\n // if 'overflow: visible' set, check if there is actually any overflow\n element.scrollWidth <= 0 && element.scrollHeight <= 0 : style.getPropertyValue(\"display\") == \"none\";\n}\n\nfunction visible(element) {\n var parentElement = element;\n while (parentElement) {\n if (parentElement === document.body) break;\n if (hidesContents(parentElement)) return false;\n parentElement = parentElement.parentNode;\n }\n return true;\n}\n\nfunction focusable(element, isTabIndexNotNaN) {\n var nodeName = element.nodeName.toLowerCase();\n var res = tabbableNode.test(nodeName) && !element.disabled || (nodeName === \"a\" ? element.href || isTabIndexNotNaN : isTabIndexNotNaN);\n return res && visible(element);\n}\n\nfunction tabbable(element) {\n var tabIndex = element.getAttribute(\"tabindex\");\n if (tabIndex === null) tabIndex = undefined;\n var isTabIndexNaN = isNaN(tabIndex);\n return (isTabIndexNaN || tabIndex >= 0) && focusable(element, !isTabIndexNaN);\n}\n\nfunction findTabbableDescendants(element) {\n return [].slice.call(element.querySelectorAll(\"*\"), 0).filter(tabbable);\n}\nmodule.exports = exports[\"default\"];\n\n/***/ }),\n\n/***/ \"bHoz\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"group\":\"RemainingTiles_group__2AWTh\",\"title\":\"RemainingTiles_title__1zi0v\",\"content\":\"RemainingTiles_content__3xzgX\"};\n\n/***/ }),\n\n/***/ \"cTJO\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar _slicedToArray = __webpack_require__(\"J4zp\");\n\nvar _interopRequireWildcard = __webpack_require__(\"284h\");\n\nexports.__esModule = true;\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(__webpack_require__(\"q1tI\"));\n\nvar _router = __webpack_require__(\"elyg\");\n\nvar _router2 = __webpack_require__(\"nOHt\");\n\nvar _useIntersection = __webpack_require__(\"vNVm\");\n\nvar prefetched = {};\n\nfunction prefetch(router, href, as, options) {\n if ( false || !router) return;\n if (!(0, _router.isLocalURL)(href)) return; // Prefetch the JSON page if asked (only in the client)\n // We need to handle a prefetch error here since we may be\n // loading with priority which can reject but we don't\n // want to force navigation since this is only a prefetch\n\n router.prefetch(href, as, options)[\"catch\"](function (err) {\n if (false) {}\n });\n var curLocale = options && typeof options.locale !== 'undefined' ? options.locale : router && router.locale; // Join on an invalid URI character\n\n prefetched[href + '%' + as + (curLocale ? '%' + curLocale : '')] = true;\n}\n\nfunction isModifiedEvent(event) {\n var target = event.currentTarget.target;\n return target && target !== '_self' || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey || // triggers resource download\n event.nativeEvent && event.nativeEvent.which === 2;\n}\n\nfunction linkClicked(e, router, href, as, replace, shallow, scroll, locale) {\n var nodeName = e.currentTarget.nodeName;\n\n if (nodeName === 'A' && (isModifiedEvent(e) || !(0, _router.isLocalURL)(href))) {\n // ignore click for browser’s default behavior\n return;\n }\n\n e.preventDefault(); // avoid scroll for urls with anchor refs\n\n if (scroll == null) {\n scroll = as.indexOf('#') < 0;\n } // replace state instead of push if prop is present\n\n\n router[replace ? 'replace' : 'push'](href, as, {\n shallow: shallow,\n locale: locale,\n scroll: scroll\n }).then(function (success) {\n if (!success) return;\n\n if (scroll) {\n // FIXME: proper route announcing at Router level, not Link:\n document.body.focus();\n }\n });\n}\n\nfunction Link(props) {\n if (false) { var hasWarned, optionalProps, optionalPropsGuard, requiredProps, requiredPropsGuard, createPropError; }\n\n var p = props.prefetch !== false;\n var router = (0, _router2.useRouter)();\n var pathname = router && router.pathname || '/';\n\n var _react$default$useMem = _react[\"default\"].useMemo(function () {\n var _ref = (0, _router.resolveHref)(pathname, props.href, true),\n _ref2 = _slicedToArray(_ref, 2),\n resolvedHref = _ref2[0],\n resolvedAs = _ref2[1];\n\n return {\n href: resolvedHref,\n as: props.as ? (0, _router.resolveHref)(pathname, props.as) : resolvedAs || resolvedHref\n };\n }, [pathname, props.href, props.as]),\n href = _react$default$useMem.href,\n as = _react$default$useMem.as;\n\n var children = props.children,\n replace = props.replace,\n shallow = props.shallow,\n scroll = props.scroll,\n locale = props.locale; // Deprecated. Warning shown by propType check. If the children provided is a string (<Link>example</Link>) we wrap it in an <a> tag\n\n if (typeof children === 'string') {\n children = /*#__PURE__*/_react[\"default\"].createElement(\"a\", null, children);\n } // This will return the first child, if multiple are provided it will throw an error\n\n\n var child = _react.Children.only(children);\n\n var childRef = child && typeof child === 'object' && child.ref;\n\n var _ref3 = (0, _useIntersection.useIntersection)({\n rootMargin: '200px'\n }),\n _ref4 = _slicedToArray(_ref3, 2),\n setIntersectionRef = _ref4[0],\n isVisible = _ref4[1];\n\n var setRef = _react[\"default\"].useCallback(function (el) {\n setIntersectionRef(el);\n\n if (childRef) {\n if (typeof childRef === 'function') childRef(el);else if (typeof childRef === 'object') {\n childRef.current = el;\n }\n }\n }, [childRef, setIntersectionRef]);\n\n (0, _react.useEffect)(function () {\n var shouldPrefetch = isVisible && p && (0, _router.isLocalURL)(href);\n var curLocale = typeof locale !== 'undefined' ? locale : router && router.locale;\n var isPrefetched = prefetched[href + '%' + as + (curLocale ? '%' + curLocale : '')];\n\n if (shouldPrefetch && !isPrefetched) {\n prefetch(router, href, as, {\n locale: curLocale\n });\n }\n }, [as, href, isVisible, locale, p, router]);\n var childProps = {\n ref: setRef,\n onClick: function onClick(e) {\n if (child.props && typeof child.props.onClick === 'function') {\n child.props.onClick(e);\n }\n\n if (!e.defaultPrevented) {\n linkClicked(e, router, href, as, replace, shallow, scroll, locale);\n }\n }\n };\n\n childProps.onMouseEnter = function (e) {\n if (!(0, _router.isLocalURL)(href)) return;\n\n if (child.props && typeof child.props.onMouseEnter === 'function') {\n child.props.onMouseEnter(e);\n }\n\n prefetch(router, href, as, {\n priority: true\n });\n }; // If child is an <a> tag and doesn't have a href attribute, or if the 'passHref' property is\n // defined, we specify the current 'href', so that repetition is not needed by the user\n\n\n if (props.passHref || child.type === 'a' && !('href' in child.props)) {\n var curLocale = typeof locale !== 'undefined' ? locale : router && router.locale;\n var localeDomain = (0, _router.getDomainLocale)(as, curLocale, router && router.locales, router && router.domainLocales);\n childProps.href = localeDomain || (0, _router.addBasePath)((0, _router.addLocale)(as, curLocale, router && router.defaultLocale));\n }\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(child, childProps);\n}\n\nvar _default = Link;\nexports[\"default\"] = _default;\n\n/***/ }),\n\n/***/ \"fbhf\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.dumpClassLists = dumpClassLists;\nvar htmlClassList = {};\nvar docBodyClassList = {};\n\nfunction dumpClassLists() {\n if (false) { var _x, x, buffer, classes; }\n}\n\n/**\n * Track the number of reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar incrementReference = function incrementReference(poll, className) {\n if (!poll[className]) {\n poll[className] = 0;\n }\n poll[className] += 1;\n return className;\n};\n\n/**\n * Drop the reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar decrementReference = function decrementReference(poll, className) {\n if (poll[className]) {\n poll[className] -= 1;\n }\n return className;\n};\n\n/**\n * Track a class and add to the given class list.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be tracked.\n */\nvar trackClass = function trackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n incrementReference(poll, className);\n classListRef.add(className);\n });\n};\n\n/**\n * Untrack a class and remove from the given class list if the reference\n * reaches 0.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be untracked.\n */\nvar untrackClass = function untrackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n decrementReference(poll, className);\n poll[className] === 0 && classListRef.remove(className);\n });\n};\n\n/**\n * Public inferface to add classes to the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar add = exports.add = function add(element, classString) {\n return trackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};\n\n/**\n * Public inferface to remove classes from the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar remove = exports.remove = function remove(element, classString) {\n return untrackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};\n\n/***/ }),\n\n/***/ \"hj7B\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"checkbox\":\"Checkbox_checkbox__TMzB8\",\"icon\":\"Checkbox_icon__1x7ag\",\"checked\":\"Checkbox_checked__2Le1z\",\"input\":\"Checkbox_input__3o21M\",\"content\":\"Checkbox_content__1VcXS\"};\n\n/***/ }),\n\n/***/ \"jVvz\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"navButtons\":\"NavButtons_navButtons__1og2w\",\"button\":\"NavButtons_button__2YUcq\",\"separator\":\"NavButtons_separator__3dZKW\",\"error\":\"NavButtons_error___bS0g\"};\n\n/***/ }),\n\n/***/ \"lFTW\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"notFound\":\"NotFound_notFound__3lall\",\"link\":\"NotFound_link__23_eH\",\"icon\":\"NotFound_icon__2qUrU\",\"tiles\":\"NotFound_tiles__1Qnr3\"};\n\n/***/ }),\n\n/***/ \"mk9T\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"dictionary\":\"Dictionary_dictionary__2LVIo\",\"content\":\"Dictionary_content__35SFT\",\"word\":\"Dictionary_word__yTxK-\",\"isAllowed\":\"Dictionary_isAllowed__1pY0l\",\"isNotAllowed\":\"Dictionary_isNotAllowed__sGDpa\",\"definitions\":\"Dictionary_definitions__1B_VQ\",\"definition\":\"Dictionary_definition__1tU6g\"};\n\n/***/ }),\n\n/***/ \"pdKp\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"splash\":\"Splash_splash__1fgIO\",\"animated\":\"Splash_animated__3KuaO\",\"hide\":\"Splash_hide__xGaFV\",\"logos\":\"Splash_logos__XgKlA\",\"pulse\":\"Splash_pulse__2k_vY\",\"logoColor\":\"Splash_logoColor__1R-9s\",\"progress\":\"Splash_progress__1OiT4\",\"logoGrayscale\":\"Splash_logoGrayscale__1Q8n_\",\"author\":\"Splash_author__10OKS\",\"wave\":\"Splash_wave__1o-S9\"};\n\n/***/ }),\n\n/***/ \"qFS3\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.bodyOpenClassName = exports.portalClassName = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = __webpack_require__(\"q1tI\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = __webpack_require__(\"i8i4\");\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _propTypes = __webpack_require__(\"17x9\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ModalPortal = __webpack_require__(\"QEso\");\n\nvar _ModalPortal2 = _interopRequireDefault(_ModalPortal);\n\nvar _ariaAppHider = __webpack_require__(\"Ye7m\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _safeHTMLElement = __webpack_require__(\"2zs7\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _reactLifecyclesCompat = __webpack_require__(\"VCL8\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar portalClassName = exports.portalClassName = \"ReactModalPortal\";\nvar bodyOpenClassName = exports.bodyOpenClassName = \"ReactModal__Body--open\";\n\nvar isReact16 = _safeHTMLElement.canUseDOM && _reactDom2.default.createPortal !== undefined;\n\nvar getCreatePortal = function getCreatePortal() {\n return isReact16 ? _reactDom2.default.createPortal : _reactDom2.default.unstable_renderSubtreeIntoContainer;\n};\n\nfunction getParentElement(parentSelector) {\n return parentSelector();\n}\n\nvar Modal = function (_Component) {\n _inherits(Modal, _Component);\n\n function Modal() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Modal);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Modal.__proto__ || Object.getPrototypeOf(Modal)).call.apply(_ref, [this].concat(args))), _this), _this.removePortal = function () {\n !isReact16 && _reactDom2.default.unmountComponentAtNode(_this.node);\n var parent = getParentElement(_this.props.parentSelector);\n if (parent && parent.contains(_this.node)) {\n parent.removeChild(_this.node);\n } else {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"parentSelector\" prop did not returned any DOM ' + \"element. Make sure that the parent element is unmounted to \" + \"avoid any memory leaks.\");\n }\n }, _this.portalRef = function (ref) {\n _this.portal = ref;\n }, _this.renderPortal = function (props) {\n var createPortal = getCreatePortal();\n var portal = createPortal(_this, _react2.default.createElement(_ModalPortal2.default, _extends({ defaultStyles: Modal.defaultStyles }, props)), _this.node);\n _this.portalRef(portal);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Modal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!_safeHTMLElement.canUseDOM) return;\n\n if (!isReact16) {\n this.node = document.createElement(\"div\");\n }\n this.node.className = this.props.portalClassName;\n\n var parent = getParentElement(this.props.parentSelector);\n parent.appendChild(this.node);\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"getSnapshotBeforeUpdate\",\n value: function getSnapshotBeforeUpdate(prevProps) {\n var prevParent = getParentElement(prevProps.parentSelector);\n var nextParent = getParentElement(this.props.parentSelector);\n return { prevParent: prevParent, nextParent: nextParent };\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, _, snapshot) {\n if (!_safeHTMLElement.canUseDOM) return;\n var _props = this.props,\n isOpen = _props.isOpen,\n portalClassName = _props.portalClassName;\n\n\n if (prevProps.portalClassName !== portalClassName) {\n this.node.className = portalClassName;\n }\n\n var prevParent = snapshot.prevParent,\n nextParent = snapshot.nextParent;\n\n if (nextParent !== prevParent) {\n prevParent.removeChild(this.node);\n nextParent.appendChild(this.node);\n }\n\n // Stop unnecessary renders if modal is remaining closed\n if (!prevProps.isOpen && !isOpen) return;\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (!_safeHTMLElement.canUseDOM || !this.node || !this.portal) return;\n\n var state = this.portal.state;\n var now = Date.now();\n var closesAt = state.isOpen && this.props.closeTimeoutMS && (state.closesAt || now + this.props.closeTimeoutMS);\n\n if (closesAt) {\n if (!state.beforeClose) {\n this.portal.closeWithTimeout();\n }\n\n setTimeout(this.removePortal, closesAt - now);\n } else {\n this.removePortal();\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n if (!_safeHTMLElement.canUseDOM || !isReact16) {\n return null;\n }\n\n if (!this.node && isReact16) {\n this.node = document.createElement(\"div\");\n }\n\n var createPortal = getCreatePortal();\n return createPortal(_react2.default.createElement(_ModalPortal2.default, _extends({\n ref: this.portalRef,\n defaultStyles: Modal.defaultStyles\n }, this.props)), this.node);\n }\n }], [{\n key: \"setAppElement\",\n value: function setAppElement(element) {\n ariaAppHider.setElement(element);\n }\n\n /* eslint-disable react/no-unused-prop-types */\n\n /* eslint-enable react/no-unused-prop-types */\n\n }]);\n\n return Modal;\n}(_react.Component);\n\nModal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n portalClassName: _propTypes2.default.string,\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n appElement: _propTypes2.default.instanceOf(_safeHTMLElement2.default),\n onAfterOpen: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n ariaHideApp: _propTypes2.default.bool,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n parentSelector: _propTypes2.default.func,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func\n};\nModal.defaultProps = {\n isOpen: false,\n portalClassName: portalClassName,\n bodyOpenClassName: bodyOpenClassName,\n role: \"dialog\",\n ariaHideApp: true,\n closeTimeoutMS: 0,\n shouldFocusAfterRender: true,\n shouldCloseOnEsc: true,\n shouldCloseOnOverlayClick: true,\n shouldReturnFocusAfterClose: true,\n preventScroll: false,\n parentSelector: function parentSelector() {\n return document.body;\n },\n overlayElement: function overlayElement(props, contentEl) {\n return _react2.default.createElement(\n \"div\",\n props,\n contentEl\n );\n },\n contentElement: function contentElement(props, children) {\n return _react2.default.createElement(\n \"div\",\n props,\n children\n );\n }\n};\nModal.defaultStyles = {\n overlay: {\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: \"rgba(255, 255, 255, 0.75)\"\n },\n content: {\n position: \"absolute\",\n top: \"40px\",\n left: \"40px\",\n right: \"40px\",\n bottom: \"40px\",\n border: \"1px solid #ccc\",\n background: \"#fff\",\n overflow: \"auto\",\n WebkitOverflowScrolling: \"touch\",\n borderRadius: \"4px\",\n outline: \"none\",\n padding: \"20px\"\n }\n};\n\n\n(0, _reactLifecyclesCompat.polyfill)(Modal);\n\nexports.default = Modal;\n\n/***/ }),\n\n/***/ \"r/Hp\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"tile\":\"Tile_tile__2zdlK\",\"raised\":\"Tile_raised__3bruO\",\"points1\":\"Tile_points1__3kQ_0\",\"points2\":\"Tile_points2__1TZdg\",\"points3\":\"Tile_points3__28-Zh\",\"points4\":\"Tile_points4__1HVw7\",\"points5\":\"Tile_points5___-zw4\",\"blank\":\"Tile_blank__MbmGr\",\"character\":\"Tile_character__3dEBi\",\"highlighted\":\"Tile_highlighted__1L53H\",\"points\":\"Tile_points__-wyIb\"};\n\n/***/ }),\n\n/***/ \"sEFA\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"loading\":\"Loading_loading__1dXNE\",\"dim\":\"Loading_dim__2ewDS\",\"logo\":\"Loading_logo__2nlr3\",\"tiles\":\"Loading_tiles__gEhWd\"};\n\n/***/ }),\n\n/***/ \"vNVm\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar _slicedToArray = __webpack_require__(\"J4zp\");\n\nvar _interopRequireDefault = __webpack_require__(\"TqRt\");\n\nexports.__esModule = true;\nexports.useIntersection = useIntersection;\n\nvar _react = __webpack_require__(\"q1tI\");\n\nvar _requestIdleCallback = _interopRequireDefault(__webpack_require__(\"0G5g\"));\n\nvar hasIntersectionObserver = typeof IntersectionObserver !== 'undefined';\n\nfunction useIntersection(_ref) {\n var rootMargin = _ref.rootMargin,\n disabled = _ref.disabled;\n var isDisabled = disabled || !hasIntersectionObserver;\n var unobserve = (0, _react.useRef)();\n\n var _ref2 = (0, _react.useState)(false),\n _ref3 = _slicedToArray(_ref2, 2),\n visible = _ref3[0],\n setVisible = _ref3[1];\n\n var setRef = (0, _react.useCallback)(function (el) {\n if (unobserve.current) {\n unobserve.current();\n unobserve.current = undefined;\n }\n\n if (isDisabled || visible) return;\n\n if (el && el.tagName) {\n unobserve.current = observe(el, function (isVisible) {\n return isVisible && setVisible(isVisible);\n }, {\n rootMargin: rootMargin\n });\n }\n }, [isDisabled, rootMargin, visible]);\n (0, _react.useEffect)(function () {\n if (!hasIntersectionObserver) {\n if (!visible) (0, _requestIdleCallback[\"default\"])(function () {\n return setVisible(true);\n });\n }\n }, [visible]);\n return [setRef, visible];\n}\n\nfunction observe(element, callback, options) {\n var _createObserver = createObserver(options),\n id = _createObserver.id,\n observer = _createObserver.observer,\n elements = _createObserver.elements;\n\n elements.set(element, callback);\n observer.observe(element);\n return function unobserve() {\n elements[\"delete\"](element);\n observer.unobserve(element); // Destroy observer when there's nothing left to watch:\n\n if (elements.size === 0) {\n observer.disconnect();\n observers[\"delete\"](id);\n }\n };\n}\n\nvar observers = new Map();\n\nfunction createObserver(options) {\n var id = options.rootMargin || '';\n var instance = observers.get(id);\n\n if (instance) {\n return instance;\n }\n\n var elements = new Map();\n var observer = new IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n var callback = elements.get(entry.target);\n var isVisible = entry.isIntersecting || entry.intersectionRatio > 0;\n\n if (callback && isVisible) {\n callback(isVisible);\n }\n });\n }, options);\n observers.set(id, instance = {\n id: id,\n observer: observer,\n elements: elements\n });\n return instance;\n}\n\n/***/ }),\n\n/***/ \"z9kn\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\nmodule.exports = {\"section\":\"Section_section__o4HeJ\",\"heading\":\"Section_heading__2mcEO\"};\n\n/***/ })\n\n}]);","inputSourceMap":{"version":3,"sources":["/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Button/Button.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/warning/warning.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/exenv/index.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-modal/lib/helpers/safeHTMLElement.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Settings/components/LocaleSetting/LocaleSetting.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-baker-runtime/browser-symbol.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/SquareButton/SquareButton.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Key/Key.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-modal/lib/index.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Settings/components/ConfigSetting/ConfigSetting.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Radio/Radio.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Board/components/Cell/Cell.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/DictionaryInput/DictionaryInput.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/KeyMap/components/Mapping/Mapping.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Results/Results.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/runtime/browser-sprite.build.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/EmptyState/EmptyState.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/RemainingTiles/Character.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/arrowDown.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/arrowLeft.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/arrowRight.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/arrowUp.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/checkboxChecked.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/checkboxEmpty.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/cog.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/cross.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/dashCircleFill.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/eraser.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/flagEs.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/flagFr.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/flagGb.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/flagPl.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/flagUs.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/github.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/keyboard.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/play.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/sack.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/sortDown.svg","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/svg-sprite-loader/lib/loader.js!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/icons/sortUp.svg","/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/icons/index.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.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/components/SvgIcon/SvgIcon.tsx","/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/components/Tile/TilePure.tsx","/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/components/Tile/Tile.tsx","/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/components/Board/components/Cell/Button.tsx","/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/components/Board/components/Cell/lib.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/components/Board/components/Cell/CellPure.tsx","/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/components/Board/components/Cell/Cell.tsx","/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/components/Board/BoardPure.tsx","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-use/esm/useLatest.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/components/Board/lib/getPositionInGrid.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/components/Board/hooks/useGrid.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/components/Board/Board.tsx","/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/components/Button/Content.tsx","/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/components/Button/Link.tsx","/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/components/Button/Button.tsx","/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/components/Checkbox/Checkbox.tsx","/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/components/PlainTiles/lib/getX.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/components/PlainTiles/lib/getY.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/components/PlainTiles/lib/randomize.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/components/PlainTiles/lib/createPlainTile.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/components/PlainTiles/lib/createPlainTiles.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/components/PlainTiles/lib/getViewbox.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/components/PlainTiles/lib/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/components/PlainTiles/Tile.tsx","/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/components/PlainTiles/PlainTiles.tsx","/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/components/EmptyState/EmptyState.tsx","/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/components/Loading/Loading.tsx","/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/components/Dictionary/Dictionary.tsx","/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/components/DictionaryInput/DictionaryInput.tsx","/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/components/Key/Key.tsx","/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/components/SquareButton/Content.tsx","/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/components/SquareButton/Link.tsx","/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/components/SquareButton/SquareButton.tsx","/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/components/Sidebar/components/Section/Section.tsx","/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/components/Sidebar/Sidebar.tsx","/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/components/KeyMap/components/Mapping/Mapping.tsx","/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/components/KeyMap/keys.tsx","/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/components/KeyMap/KeyMap.tsx","/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/components/Logo/Logo.tsx","/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/components/NavButtons/NavButtons.tsx","/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/components/NotFound/NotFound.tsx","/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/components/Rack/RackTile.tsx","/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/components/Rack/Rack.tsx","/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/components/Radio/Radio.tsx","/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/components/RemainingTiles/Character.tsx","/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/components/RemainingTiles/RemainingTiles.tsx","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/memoize-one/dist/memoize-one.esm.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-window/dist/index.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/components/ResultsInput/ResultsInput.tsx","/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/components/Results/Header.tsx","/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/components/Results/Cell.tsx","/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/components/Results/Result.tsx","/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/components/Results/SolveButton.tsx","/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/components/Results/Results.tsx","/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/components/Screen/Screen.tsx","/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/components/Settings/components/AutoGroupTilesSetting/constants.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/components/Settings/components/AutoGroupTilesSetting/lib.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/components/Settings/components/AutoGroupTilesSetting/AutoGroupTilesSetting.tsx","/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/components/Settings/components/ConfigSetting/options.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/components/Settings/components/ConfigSetting/ConfigSetting.tsx","/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/components/Settings/components/LocaleSetting/options.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/components/Settings/components/LocaleSetting/LocaleSetting.tsx","/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/components/Settings/components/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/components/Settings/Settings.tsx","/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/components/Splash/Splash.tsx","/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/components/Well/Well.tsx","/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/components/index.ts","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Settings/components/AutoGroupTilesSetting/AutoGroupTilesSetting.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-modal/lib/components/ModalPortal.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Rack/Rack.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-modal/lib/helpers/scopeTab.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Screen/Screen.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Sidebar/Sidebar.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/classnames/index.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Board/Board.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/ResultsInput/ResultsInput.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-modal/lib/helpers/portalOpenInstances.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-modal/lib/helpers/focusManager.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/PlainTiles/PlainTiles.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-modal/lib/helpers/bodyTrap.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Well/Well.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/link.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-modal/lib/helpers/ariaAppHider.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-modal/lib/helpers/tabbable.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/RemainingTiles/RemainingTiles.module.scss","/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/node_modules/next/dist/client/link.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-modal/lib/helpers/classList.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Checkbox/Checkbox.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/NavButtons/NavButtons.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/NotFound/NotFound.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Dictionary/Dictionary.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Splash/Splash.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/react-modal/lib/components/Modal.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Tile/Tile.module.scss","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Loading/Loading.module.scss","/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/node_modules/next/dist/client/use-intersection.js","/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin/src/loader.js??ref--5-oneOf-3-0!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/css-loader/dist/cjs.js??ref--5-oneOf-3-1!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/next/dist/compiled/postcss-loader/cjs.js??ref--5-oneOf-3-2!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/resolve-url-loader/index.js??ref--5-oneOf-3-3!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/node_modules/sass-loader/dist/cjs.js??ref--5-oneOf-3-4!/home/kamil/projects/scrabble-solver/packages/scrabble-solver/src/components/Sidebar/components/Section/Section.module.scss"],"names":[],"mappings":";;;;;AAAA;AACA,kBAAkB,6H;;;;;;;;ACDlB;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;AACA;AACA;AACA;AACA;AACA;;AAEA,cAAc,YAAoB;;AAElC;;AAEA;AACA;AACA;AACA;AACA,qBAAqB,WAAW;AAChC;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA,qBAAqB,WAAW;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;AC7DA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,KAAK,IAA4E;AACjF,EAAE,mCAAO;AACT;AACA,GAAG;AAAA,oGAAC;AACJ,EAAE,MAAM,EAIN;;AAEF,CAAC;;;;;;;;;ACvCY;;AAEb;AACA;AACA,CAAC;AACD;;AAEA,aAAa,mBAAO,CAAC,MAAO;;AAE5B;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;;AAEA;;AAEA;;AAEA,kC;;;;;;;ACnBA;AACA,kBAAkB,oT;;;;;;;ACDlB;AACA,CAAC,KAA4D;AAC7D,CAAC,SACwC;AACzC,CAAC,qBAAqB;;AAEtB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA;;AAEA,wDAAwD,4BAA4B,EAAE;AACtF;;AAEA;AACA,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;;;;;AAMA;AACA,kBAAkB,YAAY,EAAE;AAChC;;AAEA;AACA;AACA,QAAQ,KAAgD,EAAE,EAErD;AACL;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,sCAAsC;AACtC;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;;AAEA,CAAC;AACD,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;AACA,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;AACA,4DAA4D;AAC5D;AACA,GAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;;AAEA,sDAAsD;AACtD;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,4BAA4B,cAAc;;AAE1C;AACA;AACA;;AAEA;AACA,aAAa,QAAQ;AACrB,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,eAAe;AAC5B,cAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,CAAC;;AAED;;AAEA,CAAC;;;;;;;;;AC7QD;AACA,kBAAkB,iK;;;;;;;ACDlB;AACA,kBAAkB,wB;;;;;;;;ACDL;;AAEb;AACA;AACA,CAAC;;AAED,aAAa,mBAAO,CAAC,MAAoB;;AAEzC;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA,oC;;;;;;;ACbA;AACA,kBAAkB,6E;;;;;;;ACDlB;AACA,kBAAkB,wJ;;;;;;;ACDlB;AACA,kBAAkB,+1B;;;;;;;ACDlB;AACA,kBAAkB,mG;;;;;;;ACDlB;AACA,kBAAkB,wK;;;;;;;ACDlB;AACA,kBAAkB,ilB;;;;;;;ACDlB;AACA,CAAC,KAA4D;AAC7D,CAAC,SACkC;AACnC,CAAC,qBAAqB;;AAEtB;;;;;;AAMA;AACA,kBAAkB,YAAY,EAAE;AAChC;;AAEA;AACA;AACA,QAAQ,KAAgD,EAAE,EAErD;AACL;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,sCAAsC;AACtC;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;;AAEA,CAAC;AACD,CAAC;;AAED;AACA;AACA;;AAEA;;AAEA;;;;;AAKA;AACA;AACA,cAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,SAAS;AACvB;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,SAAS;AACvB;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,aAAa,OAAO;AACpB,aAAa,IAAI;AACjB;AACA;AACA;AACA,6CAA6C,cAAc,EAAE;AAC7D,4CAA4C,oBAAoB,EAAE;AAClE;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;AACA,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;AACA,4DAA4D;AAC5D;AACA,GAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;;AAEA,sDAAsD;AACtD;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,kEAAkE;AAClE;AACA,GAAG;AACH;AACA;;AAEA;AACA,qDAAqD;AACrD;AACA;;AAEA;AACA;AACA,WAAW,aAAa;AACxB,YAAY,QAAQ;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,OAAO;AAClB,YAAY,QAAQ;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA,2CAA2C,oBAAoB,EAAE;AACjE;;AAEA;AACA,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA,0DAA0D,sBAAsB,EAAE;AAClF;AACA;;AAEA;AACA,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA,qCAAqC,oBAAoB,EAAE;AAC3D;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA;;AAEA,wDAAwD,4BAA4B,EAAE;AACtF;;AAEA;AACA,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,4BAA4B,cAAc;;AAE1C;AACA;AACA;;AAEA;AACA,aAAa,QAAQ;AACrB,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,eAAe;AAC5B,cAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;;AAEA;AACA,WAAW,EAAE;AACb,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA,yBAAyB,4CAA4C,EAAE;AACvE,0BAA0B,6CAA6C,EAAE;;AAEzE;AACA,qBAAqB,kFAAkF,EAAE;AACzG,uBAAuB,0CAA0C;AACjE;;AAEA;AACA,WAAW,OAAO;AAClB,WAAW,EAAE;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,OAAO;AAClB;AACA;AACA;AACA;AACA,gCAAgC,iCAAiC;AACjE,KAAK;AACL,GAAG;AACH;;AAEA;;AAEA;AACA,WAAW,QAAQ;AACnB,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;;AAEA;AACA,WAAW,SAAS;AACpB,WAAW,SAAS;AACpB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA,WAAW,cAAc;AACzB,WAAW,QAAQ;AACnB,YAAY;AACZ;;AAEA;AACA;;AAEA;AACA,iCAAiC;;AAEjC;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA,+BAA+B,qBAAqB;AACpD;;AAEA;AACA,WAAW,SAAS;AACpB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,+CAA+C,2BAA2B,EAAE;;AAE5E;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,SAAS;AACpB,WAAW,cAAc;AACzB,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH,iCAAiC,8GAA8G,EAAE;AACjJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,4CAA4C,wCAAwC,EAAE;AACtF;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;;AAEA,4BAA4B,cAAc;;AAE1C;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,aAAa,MAAM;AACnB,aAAa,OAAO;AACpB,aAAa,OAAO;AACpB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa,oBAAoB;AACjC,cAAc,QAAQ;AACtB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,aAAa,eAAe;AAC5B,cAAc,aAAa;AAC3B;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA,OAAO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB,EAAE;;AAExD;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,eAAe;AAC5B,aAAa,QAAQ;AACrB,cAAc,aAAa;AAC3B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,OAAO;AACpB,aAAa,OAAO;AACpB,cAAc,QAAQ;AACtB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;;AAEA,GAAG,+BAA+B;;AAElC,CAAC;;AAED;AACA;AACA;AACA;AACA;;;AAGA;AACA,GAAG;AACH;AACA;AACA,oCAAoC,YAAY;AAChD,GAAG,EAAE;;AAEL;AACA;AACA;;AAEA,CAAC;AACD,CAAC;;AAED;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;;AAEA;;AAEA;;AAEA,CAAC;;;;;;;;;ACj/BD;AACA,kBAAkB,+E;;;;;;;ACDlB;AACA,kBAAkB,wL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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e,uFAAe,E;;AC7BkB;;AAEhD,IAAI,iCAAgB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,eAAe,mBAAe;AAC9B;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP,KAAK;AACL,GAAG;AACH;AACA;AACA;;AAEe,0FAAgB,E;;AC5B6C;;AAE5E,IAAI,qBAAU;AACd;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH,kCAAkC,2CAAqB,GAAG,6CAAuB,kCAAkC,6CAAuB;AAC1I,iCAAiC,2CAAqB,GAAG,6CAAuB,gCAAgC,6CAAuB;AACvI;AACA;;AAEe,wEAAU,E;;ACfsC;AACE;AACZ;AACZ;AACA;;;;;;;ACJS;AACF;AACtB;;AAE1B,IAAI,oBAAI;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,2BAAK;AAC3B;AACA;AACA,4BAA4B,0BAAI;AAChC;AACA;AACA;AACA;AACA;AACA,KAAK,gBAAgB,0BAAI;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,8CAA8C,0BAAI;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;;AAEe,wEAAI,E;;AC5C6B;AACwB;AACpC;AACG;AACc;AACP;AACpB;;AAE1B,IAAI,qBAAU;AACd;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,wBAAO;AACrB,WAAW,oBAAgB;AAC3B;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH,sBAAsB,0BAAI;AAC1B,eAAe,oBAAU,6BAA6B,EAAE,yCAAe,cAAc,2BAAM,0BAA0B,yCAAe,cAAc,2BAAM;AACxJ;AACA,aAAa,cAAU;AACvB;AACA;AACA,0BAA0B,0BAAI,CAAC,eAAI;AACnC;AACA,mBAAmB,2BAAM;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL,GAAG;AACH;;AAEe,0FAAU,E;;;;;;;;AC7CyB;AACF;AACZ;AACG;AACuC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AiC,yCAAe,cAAc,0BAAM;AACtK,4BAA4B,0BAAI,CAAC,oBAAI;AACrC;AACA,iBAAiB,0BAAM;AACvB;AACA,6BAA6B,cAAK;AAClC;AACA;AACA,YAAY,+CAAyB;AACrC,KAAK,gBAAgB,2BAAK;AAC1B,iBAAiB,0BAAM;AACvB;AACA,KAAK;AACL,GAAG;AACH;;AAEe,gFAAS,E;;;;;;ACvC0B;AACF;AACtB;AACyD;AAClD;AACG;AACc;;AAElD,IAAI,6BAAc;AAClB;AACA;AACA;AACA,kBAAkB,yCAAY;AAC9B,eAAe,6CAAgB,CAAC,+CAA0B;AAC1D,sBAAsB,0BAAI,CAAC,0BAAO;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,2BAAK;AAC/B,mBAAmB,+BAAM;AACzB,gCAAgC,0BAAI;AACpC,qBAAqB,+BAAM;AAC3B;AACA,SAAS,gBAAgB,0BAAI;AAC7B,qBAAqB,+BAAM;AAC3B;AACA,gCAAgC,0BAAI,CAAC,wBAAS;AAC9C;AACA,aAAa;AACb,WAAW;AACX,SAAS;AACT,OAAO;AACP,KAAK;AACL,GAAG;AACH;;AAEe,0GAAc,E;;;;;;;AC1Cd;AACf;AACA;AACA;AACA,C;;ACJe;AACf;AACA;AACA;;AAEA;AACA,C;;ACNA;AACA;AACA;AACA;AACA,mBAAmB,sBAAsB;AACzC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,6BAA6B,0BAA0B;AACvD;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEe,8DAAU,EAAC;;;ACnCgC;AACY;AACgB;AACjD;AACgB;AAC+C;;AAEpG;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,IAAI,cAAI,MAAM;;AAEd;AACA;AACA;AACA;;AAEA,MAAM,cAAI;AACV;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,cAAI;AACR;AACA;;AAEA,SAAS,cAAI;AACb;AACA,2BAA2B;AAC3B,kCAAkC;AAClC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;;;AAGA;AACA;AACA;;AAEA,IAAI,KAAqC,EAAE,EAY1C;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,cAAc;;AAElB;AACA;AACA;AACA;AACA;;AAEA;AACA,4DAA4D,sBAAsB,CAAC,sBAAsB;AACzG;AACA;AACA;AACA,kBAAkB,sBAAsB,CAAC,sBAAsB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,eAAU;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA,4BAA4B,eAAU;AACtC;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,iCAAiC,eAAU;AAC3C;AACA,OAAO;;AAEP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,gDAAgD;AAChD;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;;;AAGX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,wFAAwF;AACxF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,2CAA2C,2BAA2B;AACtE,mDAAmD,iCAAiC;AACpF,uBAAuB,8BAAa;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA,aAAa;AACb;AACA;AACA,OAAO;AACP;;;AAGA;AACA;AACA,aAAa,8BAAa;AAC1B;AACA;AACA;AACA,eAAe,sCAAQ;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO,EAAE,8BAAa;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,+GAA+G;AAC/G;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,2GAA2G;AAC3G;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG,CAAC,sBAAa;AACjB;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAM,KAAqC,EAAE,EA2C1C;AACH;;AAEA;;AAEA,IAAI,iCAAuB;AAC3B;AACA;AACA;AACA;AACA,kCAAkC;AAClC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,IAAI,gCAAsB;AAC1B;AACA;AACA;AACA;AACA,kCAAkC;AAClC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,uCAAuC,YAAY;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,IAAI,uCAA6B;AACjC;AACA,4EAA4E;AAC5E;;AAEA,mDAAmD,gCAAsB,yBAAyB,iCAAuB;AACzH;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH,2BAA2B,iCAAuB;AAClD,0BAA0B,gCAAsB;AAChD;AACA,WAAW,uCAA6B;AACxC,GAAG;AACH;AACA,WAAW,uCAA6B;AACxC,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,OAAO;AACP;AACA;AACA;;;AAGA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA,QAAQ,KAAqC,EAAE,EAM1C;AACL;AACA,CAAC;;AAED;;AAEA;AACA;AACA,EAAE;AACF;;;AAGA;AACA;;AAEA,IAAI,KAAqC,EAAE,EAS1C;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,cAAc;;AAElB;AACA;AACA;AACA;AACA;;AAEA;AACA,4DAA4D,sBAAsB,CAAC,sBAAsB;AACzG;AACA;AACA;AACA,kBAAkB,sBAAsB,CAAC,sBAAsB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,eAAU;AAC7C;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA,4BAA4B,eAAU;AACtC;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,SAAS;AACT;;AAEA,2EAA2E;;AAE3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,iCAAiC,eAAU;AAC3C;AACA,OAAO;;AAEP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;;;AAGX;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;;;AAGX;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,sCAAsC;;AAEtC;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sCAAsC;;AAEtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;;AAE/C;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,qCAAqC,qBAAqB;AAC1D,qBAAqB,8BAAa;AAClC;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,OAAO;AACP;;;AAGA;AACA,aAAa,8BAAa;AAC1B;AACA;AACA;AACA,eAAe,sCAAQ;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO,EAAE,8BAAa;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,2GAA2G;AAC3G;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG,CAAC,sBAAa;AACjB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAM,KAAqC,EAAE,qBAiD1C;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,uCAAuC,YAAY;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,IAAI,+BAAqB;AACzB;AACA;AACA;AACA;AACA,mCAAmC;AACnC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH,yBAAyB,+BAAqB;AAC9C;AACA;AACA;AACA;AACA,4BAA4B;;AAE5B;AACA;AACA,sEAAsE;AACtE;;AAEA,6BAA6B,+BAAqB;AAClD;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,4BAA4B;;AAE5B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,6FAA6F;AAC7F;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;;AAEA,QAAQ,KAAqC,EAAE,EAI1C;AACL;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,mBAAmB;AACnB,SAAS;AACT,kCAAkC;AAClC,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,mBAAmB;AACnB,SAAS;AACT,+BAA+B;AAC/B,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,wDAAwD;AACxD,GAAG;AACH;AACA;AACA;AACA;;AAEA,QAAQ,KAAqC,EAAE,EAQ1C;AACL;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB,WAAW;AACX,kCAAkC;AAClC,WAAW;AACX;AACA;AACA;;AAEA;AACA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A;AACA,sBAAsB,wCAAwC;AAC9D;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO,IAAI;AACX;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,UAAU,KAAqC,EAAE,EAS1C;;AAEP;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wCAAwC;AACxC,+CAA+C;;AAE/C;AACA;AACA;;AAEA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA;AACA;;AAEA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,8CAA8C,cAAc,4EAA4E;AAC/I;AACA,OAAO;;AAEP;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;AACA,eAAe;AACf;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;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,oC;;;;;;;ACzaA;AACA,kBAAkB,qD;;;;;;;;ACDL;;AAEb;AACA;AACA,CAAC;AACD;;AAEA,gBAAgB,mBAAO,CAAC,MAAY;;AAEpC;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,oC;;;;;;;ACxFA;AACA,kBAAkB,6G;;;;;;;ACDlB;AACA,kBAAkB,sU;;;;;;;ACDlB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,gBAAgB;;AAEhB;AACA;;AAEA,iBAAiB,sBAAsB;AACvC;AACA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,KAAK,KAA6B;AAClC;AACA;AACA,EAAE,UAAU,IAA4E;AACxF;AACA,EAAE,iCAAqB,EAAE,mCAAE;AAC3B;AACA,GAAG;AAAA,oGAAC;AACJ,EAAE,MAAM,EAEN;AACF,CAAC;;;;;;;;ACnDD;AACA,kBAAkB,uD;;;;;;;ACDlB;AACA,kBAAkB,uF;;;;;;;;ACDL;;AAEb;AACA;AACA,CAAC;;AAED,iDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,UAAU,KAAqC,EAAE,EAG1C;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU,KAAqC,EAAE,EAG1C;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,oC;;;;;;;;AC3DA;AAAA;AAAA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEoB;;;;;;;;;AC7JP;;AAEb;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,gBAAgB,mBAAO,CAAC,MAAqB;;AAE7C;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,qBAAqB,+BAA+B;AACpD;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,C;;;;;;;AC/FA;AACA,kBAAkB,uN;;;;;;;;ACDL;;AAEb,2BAA2B,mBAAO,CAAC,MAAuB;;AAE1D;;AAEA,sCAAsC,uCAAuC,gBAAgB;;AAE7F;;AAEA;AACA;AACA;;AAEA;AACA;AACA,QAAQ,KAAqC,EAAE,EAG1C;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,kD;;;;;;;AC1DA;AACA,kBAAkB,2B;;;;;;;ACDlB,iBAAiB,mBAAO,CAAC,MAAoB;;;;;;;;;ACAhC;;AAEb;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,eAAe,mBAAO,CAAC,MAAS;;AAEhC;;AAEA,uBAAuB,mBAAO,CAAC,MAAmB;;AAElD,sCAAsC,uCAAuC,gBAAgB;;AAE7F;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,yIAAyI,GAAG,8JAA8J,MAAM;;AAEhT;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,C;;;;;;;;ACpEa;;AAEb;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,oC;;;;;;;AC3DA;AACA,kBAAkB,uH;;;;;;;;ACDL;;AAEb,qBAAqB,mBAAO,CAAC,MAAsC;;AAEnE,8BAA8B,mBAAO,CAAC,MAA+C;;AAErF;AACA;;AAEA,qCAAqC,mBAAO,CAAC,MAAO;;AAEpD,cAAc,mBAAO,CAAC,MAAkC;;AAExD,eAAe,mBAAO,CAAC,MAAU;;AAEjC,uBAAuB,mBAAO,CAAC,MAAoB;;AAEnD;;AAEA;AACA,MAAM,MAAK;AACX,6CAA6C;AAC7C;AACA;AACA;;AAEA;AACA,eAAe,EAGV;AACL,GAAG;AACH,8GAA8G;;AAE9G;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,qBAAqB;;AAErB;AACA;AACA,GAAG;;;AAGH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA,aAAa,yGA6EV;;AAEH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA,4BAA4B;;AAE5B;AACA;AACA,GAAG;;;AAGH;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA;AACA,uDAAuD;AACvD;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL,IAAI;AACJ;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,8B;;;;;;;;AC1Pa;;AAEb;AACA;AACA,CAAC;AACD;AACA;AACA;;AAEA;AACA,MAAM,KAAqC,EAAE,+BAqB1C;AACH;;AAEA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,MAAM;AACjB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,MAAM;AACjB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA,WAAW,OAAO;AAClB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,OAAO;AAClB;AACA;AACA;AACA;AACA;AACA,E;;;;;;;AC1GA;AACA,kBAAkB,6K;;;;;;;ACDlB;AACA,kBAAkB,6J;;;;;;;ACDlB;AACA,kBAAkB,mI;;;;;;;ACDlB;AACA,kBAAkB,uS;;;;;;;ACDlB;AACA,kBAAkB,iV;;;;;;;;ACDL;;AAEb;AACA;AACA,CAAC;AACD;;AAEA,mDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P,gCAAgC,2CAA2C,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE,EAAE,yDAAyD,qEAAqE,6DAA6D,oBAAoB,GAAG,EAAE;;AAEjjB,aAAa,mBAAO,CAAC,MAAO;;AAE5B;;AAEA,gBAAgB,mBAAO,CAAC,MAAW;;AAEnC;;AAEA,iBAAiB,mBAAO,CAAC,MAAY;;AAErC;;AAEA,mBAAmB,mBAAO,CAAC,MAAe;;AAE1C;;AAEA,oBAAoB,mBAAO,CAAC,MAAyB;;AAErD;;AAEA,uBAAuB,mBAAO,CAAC,MAA4B;;AAE3D;;AAEA,6BAA6B,mBAAO,CAAC,MAAyB;;AAE9D,uCAAuC,6BAA6B,YAAY,EAAE,OAAO,iBAAiB,mBAAmB,uBAAuB,4EAA4E,EAAE,EAAE,sBAAsB,eAAe,EAAE;;AAE3Q,sCAAsC,uCAAuC,gBAAgB;;AAE7F,iDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,iDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,0CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,mEAAmE,aAAa;AAChF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA,sGAAsG,qCAAqC;AAC3I;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,OAAO;AACP;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;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,GAAG;AACH;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;;AAEA,wB;;;;;;;ACjSA;AACA,kBAAkB,+V;;;;;;;ACDlB;AACA,kBAAkB,2H;;;;;;;;ACDL;;AAEb,qBAAqB,mBAAO,CAAC,MAAsC;;AAEnE,6BAA6B,mBAAO,CAAC,MAA8C;;AAEnF;AACA;;AAEA,aAAa,mBAAO,CAAC,MAAO;;AAE5B,kDAAkD,mBAAO,CAAC,MAAyB;;AAEnF;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gCAAgC;;AAEhC;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,C;;;;;;;AClGA;AACA,kBAAkB,uE","file":"x","sourcesContent":["// extracted by mini-css-extract-plugin\nmodule.exports = {\"button\":\"Button_button__NTtqi\",\"content\":\"Button_content__1ng3a\",\"icon\":\"Button_icon__3NvAw\",\"label\":\"Button_label__2kVgE\"};","/**\n * Copyright (c) 2014-present, Facebook, Inc.\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';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n","/*!\n Copyright (c) 2015 Jed Watson.\n Based on code that is Copyright 2013-2015, Facebook, Inc.\n All rights reserved.\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar canUseDOM = !!(\n\t\ttypeof window !== 'undefined' &&\n\t\twindow.document &&\n\t\twindow.document.createElement\n\t);\n\n\tvar ExecutionEnvironment = {\n\n\t\tcanUseDOM: canUseDOM,\n\n\t\tcanUseWorkers: typeof Worker !== 'undefined',\n\n\t\tcanUseEventListeners:\n\t\t\tcanUseDOM && !!(window.addEventListener || window.attachEvent),\n\n\t\tcanUseViewport: canUseDOM && !!window.screen\n\n\t};\n\n\tif (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\tdefine(function () {\n\t\t\treturn ExecutionEnvironment;\n\t\t});\n\t} else if (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = ExecutionEnvironment;\n\t} else {\n\t\twindow.ExecutionEnvironment = ExecutionEnvironment;\n\t}\n\n}());\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.canUseDOM = undefined;\n\nvar _exenv = require(\"exenv\");\n\nvar _exenv2 = _interopRequireDefault(_exenv);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar EE = _exenv2.default;\n\nvar SafeHTMLElement = EE.canUseDOM ? window.HTMLElement : {};\n\nvar canUseDOM = exports.canUseDOM = EE.canUseDOM;\n\nexports.default = SafeHTMLElement;","// extracted by mini-css-extract-plugin\nmodule.exports = {\"option\":\"LocaleSetting_option__2xt_o\",\"flag\":\"LocaleSetting_flag__1pprE\",\"checked\":\"LocaleSetting_checked__3XJSh\",\"label\":\"LocaleSetting_label__2rj6n\",\"es\":\"LocaleSetting_es__3avX3\",\"fr\":\"LocaleSetting_fr__25G9k\",\"gb\":\"LocaleSetting_gb__qVZSX\",\"pl\":\"LocaleSetting_pl__YUmDs\",\"us\":\"LocaleSetting_us__30qoJ\"};","(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n\ttypeof define === 'function' && define.amd ? define(factory) :\n\t(global.BrowserSpriteSymbol = factory());\n}(this, (function () { 'use strict';\n\nvar SpriteSymbol = function SpriteSymbol(ref) {\n var id = ref.id;\n var viewBox = ref.viewBox;\n var content = ref.content;\n\n this.id = id;\n this.viewBox = viewBox;\n this.content = content;\n};\n\n/**\n * @return {string}\n */\nSpriteSymbol.prototype.stringify = function stringify () {\n return this.content;\n};\n\n/**\n * @return {string}\n */\nSpriteSymbol.prototype.toString = function toString () {\n return this.stringify();\n};\n\nSpriteSymbol.prototype.destroy = function destroy () {\n var this$1 = this;\n\n ['id', 'viewBox', 'content'].forEach(function (prop) { return delete this$1[prop]; });\n};\n\n/**\n * @param {string} content\n * @return {Element}\n */\nvar parse = function (content) {\n var hasImportNode = !!document.importNode;\n var doc = new DOMParser().parseFromString(content, 'image/svg+xml').documentElement;\n\n /**\n * Fix for browser which are throwing WrongDocumentError\n * if you insert an element which is not part of the document\n * @see http://stackoverflow.com/a/7986519/4624403\n */\n if (hasImportNode) {\n return document.importNode(doc, true);\n }\n\n return doc;\n};\n\nvar commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\n\n\n\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\nvar deepmerge = createCommonjsModule(function (module, exports) {\n(function (root, factory) {\n if (typeof undefined === 'function' && undefined.amd) {\n undefined(factory);\n } else {\n module.exports = factory();\n }\n}(commonjsGlobal, function () {\n\nfunction isMergeableObject(val) {\n var nonNullObject = val && typeof val === 'object';\n\n return nonNullObject\n && Object.prototype.toString.call(val) !== '[object RegExp]'\n && Object.prototype.toString.call(val) !== '[object Date]'\n}\n\nfunction emptyTarget(val) {\n return Array.isArray(val) ? [] : {}\n}\n\nfunction cloneIfNecessary(value, optionsArgument) {\n var clone = optionsArgument && optionsArgument.clone === true;\n return (clone && isMergeableObject(value)) ? deepmerge(emptyTarget(value), value, optionsArgument) : value\n}\n\nfunction defaultArrayMerge(target, source, optionsArgument) {\n var destination = target.slice();\n source.forEach(function(e, i) {\n if (typeof destination[i] === 'undefined') {\n destination[i] = cloneIfNecessary(e, optionsArgument);\n } else if (isMergeableObject(e)) {\n destination[i] = deepmerge(target[i], e, optionsArgument);\n } else if (target.indexOf(e) === -1) {\n destination.push(cloneIfNecessary(e, optionsArgument));\n }\n });\n return destination\n}\n\nfunction mergeObject(target, source, optionsArgument) {\n var destination = {};\n if (isMergeableObject(target)) {\n Object.keys(target).forEach(function (key) {\n destination[key] = cloneIfNecessary(target[key], optionsArgument);\n });\n }\n Object.keys(source).forEach(function (key) {\n if (!isMergeableObject(source[key]) || !target[key]) {\n destination[key] = cloneIfNecessary(source[key], optionsArgument);\n } else {\n destination[key] = deepmerge(target[key], source[key], optionsArgument);\n }\n });\n return destination\n}\n\nfunction deepmerge(target, source, optionsArgument) {\n var array = Array.isArray(source);\n var options = optionsArgument || { arrayMerge: defaultArrayMerge };\n var arrayMerge = options.arrayMerge || defaultArrayMerge;\n\n if (array) {\n return Array.isArray(target) ? arrayMerge(target, source, optionsArgument) : cloneIfNecessary(source, optionsArgument)\n } else {\n return mergeObject(target, source, optionsArgument)\n }\n}\n\ndeepmerge.all = function deepmergeAll(array, optionsArgument) {\n if (!Array.isArray(array) || array.length < 2) {\n throw new Error('first argument should be an array with at least two elements')\n }\n\n // we are sure there are at least 2 values, so it is safe to have no initial value\n return array.reduce(function(prev, next) {\n return deepmerge(prev, next, optionsArgument)\n })\n};\n\nreturn deepmerge\n\n}));\n});\n\nvar namespaces_1 = createCommonjsModule(function (module, exports) {\nvar namespaces = {\n svg: {\n name: 'xmlns',\n uri: 'http://www.w3.org/2000/svg'\n },\n xlink: {\n name: 'xmlns:xlink',\n uri: 'http://www.w3.org/1999/xlink'\n }\n};\n\nexports.default = namespaces;\nmodule.exports = exports.default;\n});\n\n/**\n * @param {Object} attrs\n * @return {string}\n */\nvar objectToAttrsString = function (attrs) {\n return Object.keys(attrs).map(function (attr) {\n var value = attrs[attr].toString().replace(/\"/g, '&quot;');\n return (attr + \"=\\\"\" + value + \"\\\"\");\n }).join(' ');\n};\n\nvar svg = namespaces_1.svg;\nvar xlink = namespaces_1.xlink;\n\nvar defaultAttrs = {};\ndefaultAttrs[svg.name] = svg.uri;\ndefaultAttrs[xlink.name] = xlink.uri;\n\n/**\n * @param {string} [content]\n * @param {Object} [attributes]\n * @return {string}\n */\nvar wrapInSvgString = function (content, attributes) {\n if ( content === void 0 ) content = '';\n\n var attrs = deepmerge(defaultAttrs, attributes || {});\n var attrsRendered = objectToAttrsString(attrs);\n return (\"<svg \" + attrsRendered + \">\" + content + \"</svg>\");\n};\n\nvar BrowserSpriteSymbol = (function (SpriteSymbol$$1) {\n function BrowserSpriteSymbol () {\n SpriteSymbol$$1.apply(this, arguments);\n }\n\n if ( SpriteSymbol$$1 ) BrowserSpriteSymbol.__proto__ = SpriteSymbol$$1;\n BrowserSpriteSymbol.prototype = Object.create( SpriteSymbol$$1 && SpriteSymbol$$1.prototype );\n BrowserSpriteSymbol.prototype.constructor = BrowserSpriteSymbol;\n\n var prototypeAccessors = { isMounted: {} };\n\n prototypeAccessors.isMounted.get = function () {\n return !!this.node;\n };\n\n /**\n * @param {Element} node\n * @return {BrowserSpriteSymbol}\n */\n BrowserSpriteSymbol.createFromExistingNode = function createFromExistingNode (node) {\n return new BrowserSpriteSymbol({\n id: node.getAttribute('id'),\n viewBox: node.getAttribute('viewBox'),\n content: node.outerHTML\n });\n };\n\n BrowserSpriteSymbol.prototype.destroy = function destroy () {\n if (this.isMounted) {\n this.unmount();\n }\n SpriteSymbol$$1.prototype.destroy.call(this);\n };\n\n /**\n * @param {Element|string} target\n * @return {Element}\n */\n BrowserSpriteSymbol.prototype.mount = function mount (target) {\n if (this.isMounted) {\n return this.node;\n }\n\n var mountTarget = typeof target === 'string' ? document.querySelector(target) : target;\n var node = this.render();\n this.node = node;\n\n mountTarget.appendChild(node);\n\n return node;\n };\n\n /**\n * @return {Element}\n */\n BrowserSpriteSymbol.prototype.render = function render () {\n var content = this.stringify();\n return parse(wrapInSvgString(content)).childNodes[0];\n };\n\n BrowserSpriteSymbol.prototype.unmount = function unmount () {\n this.node.parentNode.removeChild(this.node);\n };\n\n Object.defineProperties( BrowserSpriteSymbol.prototype, prototypeAccessors );\n\n return BrowserSpriteSymbol;\n}(SpriteSymbol));\n\nreturn BrowserSpriteSymbol;\n\n})));\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"squareButton\":\"SquareButton_squareButton__3XZzH\",\"label\":\"SquareButton_label__2lvIX\",\"content\":\"SquareButton_content__2e8pD\",\"icon\":\"SquareButton_icon__2HxOh\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"key\":\"Key_key__2Quc4\"};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Modal = require(\"./components/Modal\");\n\nvar _Modal2 = _interopRequireDefault(_Modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _Modal2.default;\nmodule.exports = exports[\"default\"];","// extracted by mini-css-extract-plugin\nmodule.exports = {\"option\":\"ConfigSetting_option__2T-wW\",\"label\":\"ConfigSetting_label__3tZD6\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"radio\":\"Radio_radio__32uSc\",\"icon\":\"Radio_icon__dTLfl\",\"checked\":\"Radio_checked__1ad9P\",\"input\":\"Radio_input__2cGaT\",\"content\":\"Radio_content__3psCG\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"cell\":\"Cell_cell__3wKgm\",\"bonusCharacter1\":\"Cell_bonusCharacter1__34xQ_\",\"bonusCharacter2\":\"Cell_bonusCharacter2__1xH4M\",\"bonusCharacter3\":\"Cell_bonusCharacter3__3xUsl\",\"bonusCharacter5\":\"Cell_bonusCharacter5__2nWfH\",\"bonusCharacterMultiplier2\":\"Cell_bonusCharacterMultiplier2__1wTiA\",\"bonusCharacterMultiplier3\":\"Cell_bonusCharacterMultiplier3__1shAb\",\"bonusWord2\":\"Cell_bonusWord2__qdCLX\",\"bonusWord3\":\"Cell_bonusWord3__sSJti\",\"characterPoints1\":\"Cell_characterPoints1__3rhFH\",\"characterPoints2\":\"Cell_characterPoints2__2sud4\",\"characterPoints3\":\"Cell_characterPoints3__1v_ZX\",\"characterPoints5\":\"Cell_characterPoints5__Hen_b\",\"candidate\":\"Cell_candidate__13l8_\",\"actions\":\"Cell_actions__3JTry\",\"action\":\"Cell_action__3RPdm\",\"toggleDirection\":\"Cell_toggleDirection__5rp_g\",\"right\":\"Cell_right__3g3qY\",\"blank\":\"Cell_blank__3l4Pq\",\"active\":\"Cell_active__2O7iE\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dictionaryInput\":\"DictionaryInput_dictionaryInput__U7DaM\",\"input\":\"DictionaryInput_input__2r5WW\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mapping\":\"Mapping_mapping__1ZcKV\",\"description\":\"Mapping_description__Mbn8w\",\"keys\":\"Mapping_keys__3Vf5K\",\"group\":\"Mapping_group__2WX5v\",\"plus\":\"Mapping_plus__1j3oP\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"results\":\"Results_results__x8VdK\",\"emptyState\":\"Results_emptyState__2-LxF\",\"list\":\"Results_list__1B8VD\",\"outdated\":\"Results_outdated__3nWlA\",\"header\":\"Results_header__noJ3I\",\"headerButton\":\"Results_headerButton__1N5Kw\",\"headerButtonLabel\":\"Results_headerButtonLabel__2QiqD\",\"result\":\"Results_result__1y1Jv\",\"resultContent\":\"Results_resultContent__2StBW\",\"word\":\"Results_word__1zvOl\",\"cell\":\"Results_cell__1cXgg\",\"stat\":\"Results_stat__3xHhu\",\"points\":\"Results_points__wnPy8\",\"outdatedButton\":\"Results_outdatedButton__2uCmc\",\"sortIcon\":\"Results_sortIcon__2BYB5\",\"input\":\"Results_input__2lOjT\"};","(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n\ttypeof define === 'function' && define.amd ? define(factory) :\n\t(global.BrowserSprite = factory());\n}(this, (function () { 'use strict';\n\nvar commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\n\n\n\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\nvar deepmerge = createCommonjsModule(function (module, exports) {\n(function (root, factory) {\n if (typeof undefined === 'function' && undefined.amd) {\n undefined(factory);\n } else {\n module.exports = factory();\n }\n}(commonjsGlobal, function () {\n\nfunction isMergeableObject(val) {\n var nonNullObject = val && typeof val === 'object';\n\n return nonNullObject\n && Object.prototype.toString.call(val) !== '[object RegExp]'\n && Object.prototype.toString.call(val) !== '[object Date]'\n}\n\nfunction emptyTarget(val) {\n return Array.isArray(val) ? [] : {}\n}\n\nfunction cloneIfNecessary(value, optionsArgument) {\n var clone = optionsArgument && optionsArgument.clone === true;\n return (clone && isMergeableObject(value)) ? deepmerge(emptyTarget(value), value, optionsArgument) : value\n}\n\nfunction defaultArrayMerge(target, source, optionsArgument) {\n var destination = target.slice();\n source.forEach(function(e, i) {\n if (typeof destination[i] === 'undefined') {\n destination[i] = cloneIfNecessary(e, optionsArgument);\n } else if (isMergeableObject(e)) {\n destination[i] = deepmerge(target[i], e, optionsArgument);\n } else if (target.indexOf(e) === -1) {\n destination.push(cloneIfNecessary(e, optionsArgument));\n }\n });\n return destination\n}\n\nfunction mergeObject(target, source, optionsArgument) {\n var destination = {};\n if (isMergeableObject(target)) {\n Object.keys(target).forEach(function (key) {\n destination[key] = cloneIfNecessary(target[key], optionsArgument);\n });\n }\n Object.keys(source).forEach(function (key) {\n if (!isMergeableObject(source[key]) || !target[key]) {\n destination[key] = cloneIfNecessary(source[key], optionsArgument);\n } else {\n destination[key] = deepmerge(target[key], source[key], optionsArgument);\n }\n });\n return destination\n}\n\nfunction deepmerge(target, source, optionsArgument) {\n var array = Array.isArray(source);\n var options = optionsArgument || { arrayMerge: defaultArrayMerge };\n var arrayMerge = options.arrayMerge || defaultArrayMerge;\n\n if (array) {\n return Array.isArray(target) ? arrayMerge(target, source, optionsArgument) : cloneIfNecessary(source, optionsArgument)\n } else {\n return mergeObject(target, source, optionsArgument)\n }\n}\n\ndeepmerge.all = function deepmergeAll(array, optionsArgument) {\n if (!Array.isArray(array) || array.length < 2) {\n throw new Error('first argument should be an array with at least two elements')\n }\n\n // we are sure there are at least 2 values, so it is safe to have no initial value\n return array.reduce(function(prev, next) {\n return deepmerge(prev, next, optionsArgument)\n })\n};\n\nreturn deepmerge\n\n}));\n});\n\n// \n// An event handler can take an optional event argument\n// and should not return a value\n \n// An array of all currently registered event handlers for a type\n \n// A map of event types and their corresponding event handlers.\n \n \n \n\n/** Mitt: Tiny (~200b) functional event emitter / pubsub.\n * @name mitt\n * @returns {Mitt}\n */\nfunction mitt(all ) {\n\tall = all || Object.create(null);\n\n\treturn {\n\t\t/**\n\t\t * Register an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to listen for, or `\"*\"` for all events\n\t\t * @param {Function} handler Function to call in response to given event\n\t\t * @memberOf mitt\n\t\t */\n\t\ton: function on(type , handler ) {\n\t\t\t(all[type] || (all[type] = [])).push(handler);\n\t\t},\n\n\t\t/**\n\t\t * Remove an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to unregister `handler` from, or `\"*\"`\n\t\t * @param {Function} handler Handler function to remove\n\t\t * @memberOf mitt\n\t\t */\n\t\toff: function off(type , handler ) {\n\t\t\tif (all[type]) {\n\t\t\t\tall[type].splice(all[type].indexOf(handler) >>> 0, 1);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Invoke all handlers for the given type.\n\t\t * If present, `\"*\"` handlers are invoked after type-matched handlers.\n\t\t *\n\t\t * @param {String} type The event type to invoke\n\t\t * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler\n\t\t * @memberof mitt\n\t\t */\n\t\temit: function emit(type , evt ) {\n\t\t\t(all[type] || []).map(function (handler) { handler(evt); });\n\t\t\t(all['*'] || []).map(function (handler) { handler(type, evt); });\n\t\t}\n\t};\n}\n\nvar namespaces_1 = createCommonjsModule(function (module, exports) {\nvar namespaces = {\n svg: {\n name: 'xmlns',\n uri: 'http://www.w3.org/2000/svg'\n },\n xlink: {\n name: 'xmlns:xlink',\n uri: 'http://www.w3.org/1999/xlink'\n }\n};\n\nexports.default = namespaces;\nmodule.exports = exports.default;\n});\n\n/**\n * @param {Object} attrs\n * @return {string}\n */\nvar objectToAttrsString = function (attrs) {\n return Object.keys(attrs).map(function (attr) {\n var value = attrs[attr].toString().replace(/\"/g, '&quot;');\n return (attr + \"=\\\"\" + value + \"\\\"\");\n }).join(' ');\n};\n\nvar svg = namespaces_1.svg;\nvar xlink = namespaces_1.xlink;\n\nvar defaultAttrs = {};\ndefaultAttrs[svg.name] = svg.uri;\ndefaultAttrs[xlink.name] = xlink.uri;\n\n/**\n * @param {string} [content]\n * @param {Object} [attributes]\n * @return {string}\n */\nvar wrapInSvgString = function (content, attributes) {\n if ( content === void 0 ) content = '';\n\n var attrs = deepmerge(defaultAttrs, attributes || {});\n var attrsRendered = objectToAttrsString(attrs);\n return (\"<svg \" + attrsRendered + \">\" + content + \"</svg>\");\n};\n\nvar svg$1 = namespaces_1.svg;\nvar xlink$1 = namespaces_1.xlink;\n\nvar defaultConfig = {\n attrs: ( obj = {\n style: ['position: absolute', 'width: 0', 'height: 0'].join('; '),\n 'aria-hidden': 'true'\n }, obj[svg$1.name] = svg$1.uri, obj[xlink$1.name] = xlink$1.uri, obj )\n};\nvar obj;\n\nvar Sprite = function Sprite(config) {\n this.config = deepmerge(defaultConfig, config || {});\n this.symbols = [];\n};\n\n/**\n * Add new symbol. If symbol with the same id exists it will be replaced.\n * @param {SpriteSymbol} symbol\n * @return {boolean} `true` - symbol was added, `false` - replaced\n */\nSprite.prototype.add = function add (symbol) {\n var ref = this;\n var symbols = ref.symbols;\n var existing = this.find(symbol.id);\n\n if (existing) {\n symbols[symbols.indexOf(existing)] = symbol;\n return false;\n }\n\n symbols.push(symbol);\n return true;\n};\n\n/**\n * Remove symbol & destroy it\n * @param {string} id\n * @return {boolean} `true` - symbol was found & successfully destroyed, `false` - otherwise\n */\nSprite.prototype.remove = function remove (id) {\n var ref = this;\n var symbols = ref.symbols;\n var symbol = this.find(id);\n\n if (symbol) {\n symbols.splice(symbols.indexOf(symbol), 1);\n symbol.destroy();\n return true;\n }\n\n return false;\n};\n\n/**\n * @param {string} id\n * @return {SpriteSymbol|null}\n */\nSprite.prototype.find = function find (id) {\n return this.symbols.filter(function (s) { return s.id === id; })[0] || null;\n};\n\n/**\n * @param {string} id\n * @return {boolean}\n */\nSprite.prototype.has = function has (id) {\n return this.find(id) !== null;\n};\n\n/**\n * @return {string}\n */\nSprite.prototype.stringify = function stringify () {\n var ref = this.config;\n var attrs = ref.attrs;\n var stringifiedSymbols = this.symbols.map(function (s) { return s.stringify(); }).join('');\n return wrapInSvgString(stringifiedSymbols, attrs);\n};\n\n/**\n * @return {string}\n */\nSprite.prototype.toString = function toString () {\n return this.stringify();\n};\n\nSprite.prototype.destroy = function destroy () {\n this.symbols.forEach(function (s) { return s.destroy(); });\n};\n\nvar SpriteSymbol = function SpriteSymbol(ref) {\n var id = ref.id;\n var viewBox = ref.viewBox;\n var content = ref.content;\n\n this.id = id;\n this.viewBox = viewBox;\n this.content = content;\n};\n\n/**\n * @return {string}\n */\nSpriteSymbol.prototype.stringify = function stringify () {\n return this.content;\n};\n\n/**\n * @return {string}\n */\nSpriteSymbol.prototype.toString = function toString () {\n return this.stringify();\n};\n\nSpriteSymbol.prototype.destroy = function destroy () {\n var this$1 = this;\n\n ['id', 'viewBox', 'content'].forEach(function (prop) { return delete this$1[prop]; });\n};\n\n/**\n * @param {string} content\n * @return {Element}\n */\nvar parse = function (content) {\n var hasImportNode = !!document.importNode;\n var doc = new DOMParser().parseFromString(content, 'image/svg+xml').documentElement;\n\n /**\n * Fix for browser which are throwing WrongDocumentError\n * if you insert an element which is not part of the document\n * @see http://stackoverflow.com/a/7986519/4624403\n */\n if (hasImportNode) {\n return document.importNode(doc, true);\n }\n\n return doc;\n};\n\nvar BrowserSpriteSymbol = (function (SpriteSymbol$$1) {\n function BrowserSpriteSymbol () {\n SpriteSymbol$$1.apply(this, arguments);\n }\n\n if ( SpriteSymbol$$1 ) BrowserSpriteSymbol.__proto__ = SpriteSymbol$$1;\n BrowserSpriteSymbol.prototype = Object.create( SpriteSymbol$$1 && SpriteSymbol$$1.prototype );\n BrowserSpriteSymbol.prototype.constructor = BrowserSpriteSymbol;\n\n var prototypeAccessors = { isMounted: {} };\n\n prototypeAccessors.isMounted.get = function () {\n return !!this.node;\n };\n\n /**\n * @param {Element} node\n * @return {BrowserSpriteSymbol}\n */\n BrowserSpriteSymbol.createFromExistingNode = function createFromExistingNode (node) {\n return new BrowserSpriteSymbol({\n id: node.getAttribute('id'),\n viewBox: node.getAttribute('viewBox'),\n content: node.outerHTML\n });\n };\n\n BrowserSpriteSymbol.prototype.destroy = function destroy () {\n if (this.isMounted) {\n this.unmount();\n }\n SpriteSymbol$$1.prototype.destroy.call(this);\n };\n\n /**\n * @param {Element|string} target\n * @return {Element}\n */\n BrowserSpriteSymbol.prototype.mount = function mount (target) {\n if (this.isMounted) {\n return this.node;\n }\n\n var mountTarget = typeof target === 'string' ? document.querySelector(target) : target;\n var node = this.render();\n this.node = node;\n\n mountTarget.appendChild(node);\n\n return node;\n };\n\n /**\n * @return {Element}\n */\n BrowserSpriteSymbol.prototype.render = function render () {\n var content = this.stringify();\n return parse(wrapInSvgString(content)).childNodes[0];\n };\n\n BrowserSpriteSymbol.prototype.unmount = function unmount () {\n this.node.parentNode.removeChild(this.node);\n };\n\n Object.defineProperties( BrowserSpriteSymbol.prototype, prototypeAccessors );\n\n return BrowserSpriteSymbol;\n}(SpriteSymbol));\n\nvar defaultConfig$1 = {\n /**\n * Should following options be automatically configured:\n * - `syncUrlsWithBaseTag`\n * - `locationChangeAngularEmitter`\n * - `moveGradientsOutsideSymbol`\n * @type {boolean}\n */\n autoConfigure: true,\n\n /**\n * Default mounting selector\n * @type {string}\n */\n mountTo: 'body',\n\n /**\n * Fix disappearing SVG elements when <base href> exists.\n * Executes when sprite mounted.\n * @see http://stackoverflow.com/a/18265336/796152\n * @see https://github.com/everdimension/angular-svg-base-fix\n * @see https://github.com/angular/angular.js/issues/8934#issuecomment-56568466\n * @type {boolean}\n */\n syncUrlsWithBaseTag: false,\n\n /**\n * Should sprite listen custom location change event\n * @type {boolean}\n */\n listenLocationChangeEvent: true,\n\n /**\n * Custom window event name which should be emitted to update sprite urls\n * @type {string}\n */\n locationChangeEvent: 'locationChange',\n\n /**\n * Emit location change event in Angular automatically\n * @type {boolean}\n */\n locationChangeAngularEmitter: false,\n\n /**\n * Selector to find symbols usages when updating sprite urls\n * @type {string}\n */\n usagesToUpdate: 'use[*|href]',\n\n /**\n * Fix Firefox bug when gradients and patterns don't work if they are within a symbol.\n * Executes when sprite is rendered, but not mounted.\n * @see https://bugzilla.mozilla.org/show_bug.cgi?id=306674\n * @see https://bugzilla.mozilla.org/show_bug.cgi?id=353575\n * @see https://bugzilla.mozilla.org/show_bug.cgi?id=1235364\n * @type {boolean}\n */\n moveGradientsOutsideSymbol: false\n};\n\n/**\n * @param {*} arrayLike\n * @return {Array}\n */\nvar arrayFrom = function (arrayLike) {\n return Array.prototype.slice.call(arrayLike, 0);\n};\n\nvar browser = {\n isChrome: function () { return /chrome/i.test(navigator.userAgent); },\n isFirefox: function () { return /firefox/i.test(navigator.userAgent); },\n\n // https://msdn.microsoft.com/en-us/library/ms537503(v=vs.85).aspx\n isIE: function () { return /msie/i.test(navigator.userAgent) || /trident/i.test(navigator.userAgent); },\n isEdge: function () { return /edge/i.test(navigator.userAgent); }\n};\n\n/**\n * @param {string} name\n * @param {*} data\n */\nvar dispatchEvent = function (name, data) {\n var event = document.createEvent('CustomEvent');\n event.initCustomEvent(name, false, false, data);\n window.dispatchEvent(event);\n};\n\n/**\n * IE doesn't evaluate <style> tags in SVGs that are dynamically added to the page.\n * This trick will trigger IE to read and use any existing SVG <style> tags.\n * @see https://github.com/iconic/SVGInjector/issues/23\n * @see https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/10898469/\n *\n * @param {Element} node DOM Element to search <style> tags in\n * @return {Array<HTMLStyleElement>}\n */\nvar evalStylesIEWorkaround = function (node) {\n var updatedNodes = [];\n\n arrayFrom(node.querySelectorAll('style'))\n .forEach(function (style) {\n style.textContent += '';\n updatedNodes.push(style);\n });\n\n return updatedNodes;\n};\n\n/**\n * @param {string} [url] If not provided - current URL will be used\n * @return {string}\n */\nvar getUrlWithoutFragment = function (url) {\n return (url || window.location.href).split('#')[0];\n};\n\n/* global angular */\n/**\n * @param {string} eventName\n */\nvar locationChangeAngularEmitter = function (eventName) {\n angular.module('ng').run(['$rootScope', function ($rootScope) {\n $rootScope.$on('$locationChangeSuccess', function (e, newUrl, oldUrl) {\n dispatchEvent(eventName, { oldUrl: oldUrl, newUrl: newUrl });\n });\n }]);\n};\n\nvar defaultSelector = 'linearGradient, radialGradient, pattern, mask, clipPath';\n\n/**\n * @param {Element} svg\n * @param {string} [selector]\n * @return {Element}\n */\nvar moveGradientsOutsideSymbol = function (svg, selector) {\n if ( selector === void 0 ) selector = defaultSelector;\n\n arrayFrom(svg.querySelectorAll('symbol')).forEach(function (symbol) {\n arrayFrom(symbol.querySelectorAll(selector)).forEach(function (node) {\n symbol.parentNode.insertBefore(node, symbol);\n });\n });\n return svg;\n};\n\n/**\n * @param {NodeList} nodes\n * @param {Function} [matcher]\n * @return {Attr[]}\n */\nfunction selectAttributes(nodes, matcher) {\n var attrs = arrayFrom(nodes).reduce(function (acc, node) {\n if (!node.attributes) {\n return acc;\n }\n\n var arrayfied = arrayFrom(node.attributes);\n var matched = matcher ? arrayfied.filter(matcher) : arrayfied;\n return acc.concat(matched);\n }, []);\n\n return attrs;\n}\n\n/**\n * @param {NodeList|Node} nodes\n * @param {boolean} [clone=true]\n * @return {string}\n */\n\nvar xLinkNS = namespaces_1.xlink.uri;\nvar xLinkAttrName = 'xlink:href';\n\n// eslint-disable-next-line no-useless-escape\nvar specialUrlCharsPattern = /[{}|\\\\\\^\\[\\]`\"<>]/g;\n\nfunction encoder(url) {\n return url.replace(specialUrlCharsPattern, function (match) {\n return (\"%\" + (match[0].charCodeAt(0).toString(16).toUpperCase()));\n });\n}\n\nfunction escapeRegExp(str) {\n return str.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\"); // $& means the whole matched string\n}\n\n/**\n * @param {NodeList} nodes\n * @param {string} startsWith\n * @param {string} replaceWith\n * @return {NodeList}\n */\nfunction updateReferences(nodes, startsWith, replaceWith) {\n arrayFrom(nodes).forEach(function (node) {\n var href = node.getAttribute(xLinkAttrName);\n if (href && href.indexOf(startsWith) === 0) {\n var newUrl = href.replace(startsWith, replaceWith);\n node.setAttributeNS(xLinkNS, xLinkAttrName, newUrl);\n }\n });\n\n return nodes;\n}\n\n/**\n * List of SVG attributes to update url() target in them\n */\nvar attList = [\n 'clipPath',\n 'colorProfile',\n 'src',\n 'cursor',\n 'fill',\n 'filter',\n 'marker',\n 'markerStart',\n 'markerMid',\n 'markerEnd',\n 'mask',\n 'stroke',\n 'style'\n];\n\nvar attSelector = attList.map(function (attr) { return (\"[\" + attr + \"]\"); }).join(',');\n\n/**\n * Update URLs in svg image (like `fill=\"url(...)\"`) and update referencing elements\n * @param {Element} svg\n * @param {NodeList} references\n * @param {string|RegExp} startsWith\n * @param {string} replaceWith\n * @return {void}\n *\n * @example\n * const sprite = document.querySelector('svg.sprite');\n * const usages = document.querySelectorAll('use');\n * updateUrls(sprite, usages, '#', 'prefix#');\n */\nvar updateUrls = function (svg, references, startsWith, replaceWith) {\n var startsWithEncoded = encoder(startsWith);\n var replaceWithEncoded = encoder(replaceWith);\n\n var nodes = svg.querySelectorAll(attSelector);\n var attrs = selectAttributes(nodes, function (ref) {\n var localName = ref.localName;\n var value = ref.value;\n\n return attList.indexOf(localName) !== -1 && value.indexOf((\"url(\" + startsWithEncoded)) !== -1;\n });\n\n attrs.forEach(function (attr) { return attr.value = attr.value.replace(new RegExp(escapeRegExp(startsWithEncoded), 'g'), replaceWithEncoded); });\n updateReferences(references, startsWithEncoded, replaceWithEncoded);\n};\n\n/**\n * Internal emitter events\n * @enum\n * @private\n */\nvar Events = {\n MOUNT: 'mount',\n SYMBOL_MOUNT: 'symbol_mount'\n};\n\nvar BrowserSprite = (function (Sprite$$1) {\n function BrowserSprite(cfg) {\n var this$1 = this;\n if ( cfg === void 0 ) cfg = {};\n\n Sprite$$1.call(this, deepmerge(defaultConfig$1, cfg));\n\n var emitter = mitt();\n this._emitter = emitter;\n this.node = null;\n\n var ref = this;\n var config = ref.config;\n\n if (config.autoConfigure) {\n this._autoConfigure(cfg);\n }\n\n if (config.syncUrlsWithBaseTag) {\n var baseUrl = document.getElementsByTagName('base')[0].getAttribute('href');\n emitter.on(Events.MOUNT, function () { return this$1.updateUrls('#', baseUrl); });\n }\n\n var handleLocationChange = this._handleLocationChange.bind(this);\n this._handleLocationChange = handleLocationChange;\n\n // Provide way to update sprite urls externally via dispatching custom window event\n if (config.listenLocationChangeEvent) {\n window.addEventListener(config.locationChangeEvent, handleLocationChange);\n }\n\n // Emit location change event in Angular automatically\n if (config.locationChangeAngularEmitter) {\n locationChangeAngularEmitter(config.locationChangeEvent);\n }\n\n // After sprite mounted\n emitter.on(Events.MOUNT, function (spriteNode) {\n if (config.moveGradientsOutsideSymbol) {\n moveGradientsOutsideSymbol(spriteNode);\n }\n });\n\n // After symbol mounted into sprite\n emitter.on(Events.SYMBOL_MOUNT, function (symbolNode) {\n if (config.moveGradientsOutsideSymbol) {\n moveGradientsOutsideSymbol(symbolNode.parentNode);\n }\n\n if (browser.isIE() || browser.isEdge()) {\n evalStylesIEWorkaround(symbolNode);\n }\n });\n }\n\n if ( Sprite$$1 ) BrowserSprite.__proto__ = Sprite$$1;\n BrowserSprite.prototype = Object.create( Sprite$$1 && Sprite$$1.prototype );\n BrowserSprite.prototype.constructor = BrowserSprite;\n\n var prototypeAccessors = { isMounted: {} };\n\n /**\n * @return {boolean}\n */\n prototypeAccessors.isMounted.get = function () {\n return !!this.node;\n };\n\n /**\n * Automatically configure following options\n * - `syncUrlsWithBaseTag`\n * - `locationChangeAngularEmitter`\n * - `moveGradientsOutsideSymbol`\n * @param {Object} cfg\n * @private\n */\n BrowserSprite.prototype._autoConfigure = function _autoConfigure (cfg) {\n var ref = this;\n var config = ref.config;\n\n if (typeof cfg.syncUrlsWithBaseTag === 'undefined') {\n config.syncUrlsWithBaseTag = typeof document.getElementsByTagName('base')[0] !== 'undefined';\n }\n\n if (typeof cfg.locationChangeAngularEmitter === 'undefined') {\n config.locationChangeAngularEmitter = typeof window.angular !== 'undefined';\n }\n\n if (typeof cfg.moveGradientsOutsideSymbol === 'undefined') {\n config.moveGradientsOutsideSymbol = browser.isFirefox();\n }\n };\n\n /**\n * @param {Event} event\n * @param {Object} event.detail\n * @param {string} event.detail.oldUrl\n * @param {string} event.detail.newUrl\n * @private\n */\n BrowserSprite.prototype._handleLocationChange = function _handleLocationChange (event) {\n var ref = event.detail;\n var oldUrl = ref.oldUrl;\n var newUrl = ref.newUrl;\n this.updateUrls(oldUrl, newUrl);\n };\n\n /**\n * Add new symbol. If symbol with the same id exists it will be replaced.\n * If sprite already mounted - `symbol.mount(sprite.node)` will be called.\n * @fires Events#SYMBOL_MOUNT\n * @param {BrowserSpriteSymbol} symbol\n * @return {boolean} `true` - symbol was added, `false` - replaced\n */\n BrowserSprite.prototype.add = function add (symbol) {\n var sprite = this;\n var isNewSymbol = Sprite$$1.prototype.add.call(this, symbol);\n\n if (this.isMounted && isNewSymbol) {\n symbol.mount(sprite.node);\n this._emitter.emit(Events.SYMBOL_MOUNT, symbol.node);\n }\n\n return isNewSymbol;\n };\n\n /**\n * Attach to existing DOM node\n * @param {string|Element} target\n * @return {Element|null} attached DOM Element. null if node to attach not found.\n */\n BrowserSprite.prototype.attach = function attach (target) {\n var this$1 = this;\n\n var sprite = this;\n\n if (sprite.isMounted) {\n return sprite.node;\n }\n\n /** @type Element */\n var node = typeof target === 'string' ? document.querySelector(target) : target;\n sprite.node = node;\n\n // Already added symbols needs to be mounted\n this.symbols.forEach(function (symbol) {\n symbol.mount(sprite.node);\n this$1._emitter.emit(Events.SYMBOL_MOUNT, symbol.node);\n });\n\n // Create symbols from existing DOM nodes, add and mount them\n arrayFrom(node.querySelectorAll('symbol'))\n .forEach(function (symbolNode) {\n var symbol = BrowserSpriteSymbol.createFromExistingNode(symbolNode);\n symbol.node = symbolNode; // hack to prevent symbol mounting to sprite when adding\n sprite.add(symbol);\n });\n\n this._emitter.emit(Events.MOUNT, node);\n\n return node;\n };\n\n BrowserSprite.prototype.destroy = function destroy () {\n var ref = this;\n var config = ref.config;\n var symbols = ref.symbols;\n var _emitter = ref._emitter;\n\n symbols.forEach(function (s) { return s.destroy(); });\n\n _emitter.off('*');\n window.removeEventListener(config.locationChangeEvent, this._handleLocationChange);\n\n if (this.isMounted) {\n this.unmount();\n }\n };\n\n /**\n * @fires Events#MOUNT\n * @param {string|Element} [target]\n * @param {boolean} [prepend=false]\n * @return {Element|null} rendered sprite node. null if mount node not found.\n */\n BrowserSprite.prototype.mount = function mount (target, prepend) {\n if ( target === void 0 ) target = this.config.mountTo;\n if ( prepend === void 0 ) prepend = false;\n\n var sprite = this;\n\n if (sprite.isMounted) {\n return sprite.node;\n }\n\n var mountNode = typeof target === 'string' ? document.querySelector(target) : target;\n var node = sprite.render();\n this.node = node;\n\n if (prepend && mountNode.childNodes[0]) {\n mountNode.insertBefore(node, mountNode.childNodes[0]);\n } else {\n mountNode.appendChild(node);\n }\n\n this._emitter.emit(Events.MOUNT, node);\n\n return node;\n };\n\n /**\n * @return {Element}\n */\n BrowserSprite.prototype.render = function render () {\n return parse(this.stringify());\n };\n\n /**\n * Detach sprite from the DOM\n */\n BrowserSprite.prototype.unmount = function unmount () {\n this.node.parentNode.removeChild(this.node);\n };\n\n /**\n * Update URLs in sprite and usage elements\n * @param {string} oldUrl\n * @param {string} newUrl\n * @return {boolean} `true` - URLs was updated, `false` - sprite is not mounted\n */\n BrowserSprite.prototype.updateUrls = function updateUrls$1 (oldUrl, newUrl) {\n if (!this.isMounted) {\n return false;\n }\n\n var usages = document.querySelectorAll(this.config.usagesToUpdate);\n\n updateUrls(\n this.node,\n usages,\n ((getUrlWithoutFragment(oldUrl)) + \"#\"),\n ((getUrlWithoutFragment(newUrl)) + \"#\")\n );\n\n return true;\n };\n\n Object.defineProperties( BrowserSprite.prototype, prototypeAccessors );\n\n return BrowserSprite;\n}(Sprite));\n\nvar ready$1 = createCommonjsModule(function (module) {\n/*!\n * domready (c) Dustin Diaz 2014 - License MIT\n */\n!function (name, definition) {\n\n { module.exports = definition(); }\n\n}('domready', function () {\n\n var fns = [], listener\n , doc = document\n , hack = doc.documentElement.doScroll\n , domContentLoaded = 'DOMContentLoaded'\n , loaded = (hack ? /^loaded|^c/ : /^loaded|^i|^c/).test(doc.readyState);\n\n\n if (!loaded)\n { doc.addEventListener(domContentLoaded, listener = function () {\n doc.removeEventListener(domContentLoaded, listener);\n loaded = 1;\n while (listener = fns.shift()) { listener(); }\n }); }\n\n return function (fn) {\n loaded ? setTimeout(fn, 0) : fns.push(fn);\n }\n\n});\n});\n\nvar spriteNodeId = '__SVG_SPRITE_NODE__';\nvar spriteGlobalVarName = '__SVG_SPRITE__';\nvar isSpriteExists = !!window[spriteGlobalVarName];\n\n// eslint-disable-next-line import/no-mutable-exports\nvar sprite;\n\nif (isSpriteExists) {\n sprite = window[spriteGlobalVarName];\n} else {\n sprite = new BrowserSprite({\n attrs: {\n id: spriteNodeId,\n 'aria-hidden': 'true'\n }\n });\n window[spriteGlobalVarName] = sprite;\n}\n\nvar loadSprite = function () {\n /**\n * Check for page already contains sprite node\n * If found - attach to and reuse it's content\n * If not - render and mount the new sprite\n */\n var existing = document.getElementById(spriteNodeId);\n\n if (existing) {\n sprite.attach(existing);\n } else {\n sprite.mount(document.body, true);\n }\n};\n\nif (document.body) {\n loadSprite();\n} else {\n ready$1(loadSprite);\n}\n\nvar sprite$1 = sprite;\n\nreturn sprite$1;\n\n})));\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"emptyState\":\"EmptyState_emptyState__3XIlm\",\"tiles\":\"EmptyState_tiles__2hoJY\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"character\":\"Character_character__qmkor\",\"finished\":\"Character_finished__11v6G\",\"overused\":\"Character_overused__2l2ul\",\"tile\":\"Character_tile__1C3Oq\",\"count\":\"Character_count__2pNlL\"};","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"arrowDown\",\n \"use\": \"arrowDown-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"arrowDown\\\">\\n <path d=\\\"M8 1a.5.5 0 0 1 .5.5v11.793l3.146-3.147a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 .708-.708L7.5 13.293V1.5A.5.5 0 0 1 8 1z\\\" fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"arrowLeft\",\n \"use\": \"arrowLeft-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"arrowLeft\\\">\\n <path d=\\\"M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8z\\\" fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"arrowRight\",\n \"use\": \"arrowRight-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"arrowRight\\\">\\n <path d=\\\"M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8z\\\" fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"arrowUp\",\n \"use\": \"arrowUp-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"arrowUp\\\">\\n <path d=\\\"M8 15a.5.5 0 0 0 .5-.5V2.707l3.146 3.147a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 1 0 .708.708L7.5 2.707V14.5a.5.5 0 0 0 .5.5z\\\" fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"checkboxChecked\",\n \"use\": \"checkboxChecked-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"checkboxChecked\\\">\\n <path d=\\\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm10.03 4.97a.75.75 0 0 1 .011 1.05l-3.992 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.75.75 0 0 1 1.08-.022z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"checkboxEmpty\",\n \"use\": \"checkboxEmpty-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"checkboxEmpty\\\">\\n <path d=\\\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"cog\",\n \"use\": \"cog-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"cog\\\">\\n <path d=\\\"M9.405 1.05c-.413-1.4-2.397-1.4-2.81 0l-.1.34a1.464 1.464 0 0 1-2.105.872l-.31-.17c-1.283-.698-2.686.705-1.987 1.987l.169.311c.446.82.023 1.841-.872 2.105l-.34.1c-1.4.413-1.4 2.397 0 2.81l.34.1a1.464 1.464 0 0 1 .872 2.105l-.17.31c-.698 1.283.705 2.686 1.987 1.987l.311-.169a1.464 1.464 0 0 1 2.105.872l.1.34c.413 1.4 2.397 1.4 2.81 0l.1-.34a1.464 1.464 0 0 1 2.105-.872l.31.17c1.283.698 2.686-.705 1.987-1.987l-.169-.311a1.464 1.464 0 0 1 .872-2.105l.34-.1c1.4-.413 1.4-2.397 0-2.81l-.34-.1a1.464 1.464 0 0 1-.872-2.105l.17-.31c.698-1.283-.705-2.686-1.987-1.987l-.311.169a1.464 1.464 0 0 1-2.105-.872l-.1-.34zM8 10.93a2.929 2.929 0 1 1 0-5.86 2.929 2.929 0 0 1 0 5.858z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"cross\",\n \"use\": \"cross-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"cross\\\">\\n <path d=\\\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm3.354 4.646L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"dashCircleFill\",\n \"use\": \"dashCircleFill-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"dashCircleFill\\\">\\n <path d=\\\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"eraser\",\n \"use\": \"eraser-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"eraser\\\">\\n <path d=\\\"M8.086 2.207a2 2 0 0 1 2.828 0l3.879 3.879a2 2 0 0 1 0 2.828l-5.5 5.5A2 2 0 0 1 7.879 15H5.12a2 2 0 0 1-1.414-.586l-2.5-2.5a2 2 0 0 1 0-2.828l6.879-6.879zm.66 11.34L3.453 8.254 1.914 9.793a1 1 0 0 0 0 1.414l2.5 2.5a1 1 0 0 0 .707.293H7.88a1 1 0 0 0 .707-.293l.16-.16z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"flagEs\",\n \"use\": \"flagEs-usage\",\n \"viewBox\": \"0 0 1280 853\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" viewBox=\\\"0 0 1280 853\\\" id=\\\"flagEs\\\"> <image id=\\\"flagEs_image0\\\" width=\\\"1280\\\" height=\\\"853\\\" x=\\\"0\\\" y=\\\"0\\\" xlink:href=\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABQAAAANVAgMAAABaGbsaAAAABGdBTUEAALGPC/xhBQAAACBjSFJN\\nAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEXGCx74rwP/xAD///8H\\ncjGDAAAAAWJLR0QDEQxM8gAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAAd0SU1FB+UCFwAsE4DcNqcA\\nAAPBSURBVHja7dAxAQAwEAOhmHyTVVkRt4IENgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALYj2SMRGAmMBEYCI4GRwEhgJDAS\\nGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhg\\nJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GR\\nwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYC\\nI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmM\\nBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDAS\\nGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhg\\nJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GR\\nwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYC\\nI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmM\\nBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDAS\\nGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhg\\nJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GR\\nwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYC\\nI4GRwEhgJDASGAmMBEYCI4GRwEhgJDASGAmMBEYCI4GRwEhgJDDakQwAAAAAAAAAAAAAAAAAAAAA\\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIDtAwXRsbDe\\nnzaLAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTAyLTIzVDAwOjQ0OjE5KzAzOjAwYEEZrQAAACV0\\nRVh0ZGF0ZTptb2RpZnkAMjAyMS0wMi0yM1QwMDo0NDoxOSswMzowMBEcoREAAAAASUVORK5CYII=\\\"></image>\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"flagFr\",\n \"use\": \"flagFr-usage\",\n \"viewBox\": \"0 0 24 15\",\n \"content\": \"<symbol viewBox=\\\"0 0 24 15\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"flagFr\\\">\\n <rect width=\\\"8\\\" height=\\\"15\\\" fill=\\\"#002395\\\" x=\\\"0 \\\" />\\n <rect width=\\\"8\\\" height=\\\"15\\\" fill=\\\"#FFFFFF\\\" x=\\\"8 \\\" />\\n <rect width=\\\"8\\\" height=\\\"15\\\" fill=\\\"#ED2939\\\" x=\\\"16 \\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"flagGb\",\n \"use\": \"flagGb-usage\",\n \"viewBox\": \"0 0 60 30\",\n \"content\": \"<symbol viewBox=\\\"0 0 60 30\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"flagGb\\\">\\n <clipPath id=\\\"flagGb_t\\\">\\n <path d=\\\"M30,15 h30 v15 z v15 h-30 z h-30 v-15 z v-15 h30 z\\\" />\\n </clipPath>\\n <path d=\\\"M0,0 v30 h60 v-30 z\\\" fill=\\\"#00247d\\\" />\\n <path d=\\\"M0,0 L60,30 M60,0 L0,30\\\" stroke=\\\"#fff\\\" stroke-width=\\\"6\\\" />\\n <path d=\\\"M0,0 L60,30 M60,0 L0,30\\\" clipPath=\\\"url(#flagGb_t)\\\" stroke=\\\"#cf142b\\\" stroke-width=\\\"4\\\" />\\n <path d=\\\"M30,0 v30 M0,15 h60\\\" stroke=\\\"#fff\\\" stroke-width=\\\"10\\\" />\\n <path d=\\\"M30,0 v30 M0,15 h60\\\" stroke=\\\"#cf142b\\\" stroke-width=\\\"6\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"flagPl\",\n \"use\": \"flagPl-usage\",\n \"viewBox\": \"0 0 16 10\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 10\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"flagPl\\\">\\n <rect width=\\\"16\\\" height=\\\"10\\\" fill=\\\"#fff\\\" />\\n <rect width=\\\"16\\\" height=\\\"5\\\" fill=\\\"#dc143c\\\" y=\\\"5\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"flagUs\",\n \"use\": \"flagUs-usage\",\n \"viewBox\": \"0 0 7410 3900\",\n \"content\": \"<symbol viewBox=\\\"0 0 7410 3900\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"flagUs\\\">\\n <rect width=\\\"7410\\\" height=\\\"3900\\\" fill=\\\"#b22234\\\" />\\n <path d=\\\"M0,450H7410m0,600H0m0,600H7410m0,600H0m0,600H7410m0,600H0\\\" stroke=\\\"#fff\\\" stroke-width=\\\"300\\\" />\\n <rect width=\\\"2964\\\" height=\\\"2100\\\" fill=\\\"#3c3b6e\\\" />\\n <g fill=\\\"#fff\\\">\\n <g id=\\\"flagUs_s18\\\">\\n <g id=\\\"flagUs_s9\\\">\\n <g id=\\\"flagUs_s5\\\">\\n <g id=\\\"flagUs_s4\\\">\\n <path id=\\\"flagUs_s\\\" d=\\\"M247,90 317.534230,307.082039 132.873218,172.917961H361.126782L176.465770,307.082039z\\\" />\\n <use xlink:href=\\\"#flagUs_s\\\" y=\\\"420\\\" />\\n <use xlink:href=\\\"#flagUs_s\\\" y=\\\"840\\\" />\\n <use xlink:href=\\\"#flagUs_s\\\" y=\\\"1260\\\" />\\n </g>\\n <use xlink:href=\\\"#flagUs_s\\\" y=\\\"1680\\\" />\\n </g>\\n <use xlink:href=\\\"#flagUs_s4\\\" x=\\\"247\\\" y=\\\"210\\\" />\\n </g>\\n <use xlink:href=\\\"#flagUs_s9\\\" x=\\\"494\\\" />\\n </g>\\n <use xlink:href=\\\"#flagUs_s18\\\" x=\\\"988\\\" />\\n <use xlink:href=\\\"#flagUs_s9\\\" x=\\\"1976\\\" />\\n <use xlink:href=\\\"#flagUs_s5\\\" x=\\\"2470\\\" />\\n </g>\\n <clipPath id=\\\"flagUs_t\\\">\\n <path d=\\\"M30,15 h30 v15 z v15 h-30 z h-30 v-15 z v-15 h30 z\\\" />\\n </clipPath>\\n <path d=\\\"M0,0 v30 h60 v-30 z\\\" fill=\\\"#00247d\\\" />\\n <path d=\\\"M0,0 L60,30 M60,0 L0,30\\\" stroke=\\\"#fff\\\" stroke-width=\\\"6\\\" />\\n <path d=\\\"M0,0 L60,30 M60,0 L0,30\\\" clipPath=\\\"url(#flagUs_t)\\\" stroke=\\\"#cf142b\\\" stroke-width=\\\"4\\\" />\\n <path d=\\\"M30,0 v30 M0,15 h60\\\" stroke=\\\"#fff\\\" stroke-width=\\\"10\\\" />\\n <path d=\\\"M30,0 v30 M0,15 h60\\\" stroke=\\\"#cf142b\\\" stroke-width=\\\"6\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"github\",\n \"use\": \"github-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"github\\\">\\n <path d=\\\"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"keyboard\",\n \"use\": \"keyboard-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"keyboard\\\">\\n <path d=\\\"M0 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V6zm13 .25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM2.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 3 8.75v-.5A.25.25 0 0 0 2.75 8h-.5zM4 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 5 8.75v-.5A.25.25 0 0 0 4.75 8h-.5a.25.25 0 0 0-.25.25zM6.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 7 8.75v-.5A.25.25 0 0 0 6.75 8h-.5zM8 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 9 8.75v-.5A.25.25 0 0 0 8.75 8h-.5a.25.25 0 0 0-.25.25zM13.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zm0 2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zm-3-2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-1.5zm.75 2.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM11.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zM9 6.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5A.25.25 0 0 0 9.75 6h-.5a.25.25 0 0 0-.25.25zM7.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 8 6.75v-.5A.25.25 0 0 0 7.75 6h-.5zM5 6.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 6 6.75v-.5A.25.25 0 0 0 5.75 6h-.5a.25.25 0 0 0-.25.25zM2.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5A.25.25 0 0 0 4 6.75v-.5A.25.25 0 0 0 3.75 6h-1.5zM2 10.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM4.25 10a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h5.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-5.5z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"play\",\n \"use\": \"play-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"play\\\">\\n <path d=\\\"M11.596 8.697l-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.692-1.01 1.233-.696l6.363 3.692a.802.802 0 0 1 0 1.393z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"sack\",\n \"use\": \"sack-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol viewBox=\\\"0 0 24 24\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"sack\\\">\\n <path d=\\\"M16,9C20,11 21,18 21,18C21,18 22,22 16,22C10,22 8,22 8,22C2,22 3,18 3,18C3,18 4,11 8,9M14,4L12,2L10,4L6,2L8,7H16L18,2L14,4Z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"sortDown\",\n \"use\": \"sortDown-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"sortDown\\\">\\n <path d=\\\"M3.5 2.5a.5.5 0 0 0-1 0v8.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L3.5 11.293V2.5zm3.5 1a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"sortUp\",\n \"use\": \"sortUp-usage\",\n \"viewBox\": \"0 0 16 16\",\n \"content\": \"<symbol viewBox=\\\"0 0 16 16\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"sortUp\\\">\\n <path d=\\\"M3.5 12.5a.5.5 0 0 1-1 0V3.707L1.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L3.5 3.707V12.5zm3.5-9a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z\\\" fill=\\\"currentColor\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","export { default as arrowDown } from './arrowDown.svg';\nexport { default as arrowLeft } from './arrowLeft.svg';\nexport { default as arrowRight } from './arrowRight.svg';\nexport { default as arrowUp } from './arrowUp.svg';\nexport { default as checkboxChecked } from './checkboxChecked.svg';\nexport { default as checkboxEmpty } from './checkboxEmpty.svg';\nexport { default as cog } from './cog.svg';\nexport { default as cross } from './cross.svg';\nexport { default as dashCircleFill } from './dashCircleFill.svg';\nexport { default as eraser } from './eraser.svg';\nexport { default as flagEs } from './flagEs.svg';\nexport { default as flagFr } from './flagFr.svg';\nexport { default as flagGb } from './flagGb.svg';\nexport { default as flagPl } from './flagPl.svg';\nexport { default as flagUs } from './flagUs.svg';\nexport { default as github } from './github.svg';\nexport { default as keyboard } from './keyboard.svg';\nexport { default as play } from './play.svg';\nexport { default as sack } from './sack.svg';\nexport { default as sortDown } from './sortDown.svg';\nexport { default as sortUp } from './sortUp.svg';","import objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\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 React from 'react';\n\nvar SvgIcon = function SvgIcon(_ref) {\n var icon = _ref.icon,\n props = _objectWithoutProperties(_ref, [\"icon\"]);\n\n return /*#__PURE__*/_jsx(\"svg\", _objectSpread(_objectSpread({}, props), {}, {\n children: /*#__PURE__*/_jsx(\"use\", {\n xlinkHref: \"#\".concat(icon.id)\n })\n }));\n};\n\nexport default SvgIcon;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport React, { memo } from 'react';\nimport styles from './Tile.module.scss';\n\nvar handleChange = function handleChange(event) {\n return event.preventDefault();\n};\n\nvar TilePure = function TilePure(_ref) {\n var _classNames;\n\n var autoFocus = _ref.autoFocus,\n canShowPoints = _ref.canShowPoints,\n character = _ref.character,\n className = _ref.className,\n disabled = _ref.disabled,\n highlighted = _ref.highlighted,\n inputRef = _ref.inputRef,\n inputStyle = _ref.inputStyle,\n isBlank = _ref.isBlank,\n placeholder = _ref.placeholder,\n points = _ref.points,\n pointsStyle = _ref.pointsStyle,\n raised = _ref.raised,\n style = _ref.style,\n tabIndex = _ref.tabIndex,\n onFocus = _ref.onFocus,\n onKeyDown = _ref.onKeyDown;\n return /*#__PURE__*/_jsxs(\"div\", {\n className: classNames(styles.tile, className, (_classNames = {}, _defineProperty(_classNames, styles.highlighted, highlighted), _defineProperty(_classNames, styles.blank, isBlank), _defineProperty(_classNames, styles.raised, raised), _defineProperty(_classNames, styles.points1, points === 1), _defineProperty(_classNames, styles.points2, points === 2), _defineProperty(_classNames, styles.points3, points === 3), _defineProperty(_classNames, styles.points4, points === 4), _defineProperty(_classNames, styles.points5, typeof points === 'number' && points >= 5), _classNames)),\n style: style,\n children: [/*#__PURE__*/_jsx(\"input\", {\n autoCapitalize: \"off\",\n autoComplete: \"off\",\n autoCorrect: \"off\",\n autoFocus: autoFocus,\n className: styles.character,\n disabled: disabled,\n maxLength: 1,\n placeholder: placeholder,\n ref: inputRef,\n spellCheck: false,\n style: inputStyle,\n tabIndex: tabIndex,\n value: character || '',\n onChange: handleChange,\n onFocus: onFocus,\n onKeyDown: onKeyDown\n }), canShowPoints && /*#__PURE__*/_jsx(\"span\", {\n className: styles.points,\n style: pointsStyle,\n children: points\n })]\n });\n};\n\nexport default /*#__PURE__*/memo(TilePure);","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { EMPTY_CELL } from '@scrabble-solver/constants';\nimport React, { createRef, useEffect, useMemo } from 'react';\nimport { getTileSizes } from 'lib';\nimport TilePure from './TilePure';\n\nvar Tile = function Tile(_ref) {\n var autoFocus = _ref.autoFocus,\n className = _ref.className,\n _ref$character = _ref.character,\n character = _ref$character === void 0 ? '' : _ref$character,\n disabled = _ref.disabled,\n highlighted = _ref.highlighted,\n ref = _ref.inputRef,\n isBlank = _ref.isBlank,\n placeholder = _ref.placeholder,\n points = _ref.points,\n raised = _ref.raised,\n size = _ref.size,\n tabIndex = _ref.tabIndex,\n onFocus = _ref.onFocus,\n onKeyDown = _ref.onKeyDown;\n\n var _getTileSizes = getTileSizes(size),\n pointsFontSize = _getTileSizes.pointsFontSize,\n tileFontSize = _getTileSizes.tileFontSize,\n tileSize = _getTileSizes.tileSize;\n\n var style = useMemo(function () {\n return {\n height: tileSize,\n width: tileSize\n };\n }, [tileSize]);\n var inputStyle = useMemo(function () {\n return {\n fontSize: tileFontSize\n };\n }, [tileFontSize]);\n var pointsStyle = useMemo(function () {\n return {\n fontSize: pointsFontSize\n };\n }, [pointsFontSize]);\n var inputRef = useMemo(function () {\n return ref || /*#__PURE__*/createRef();\n }, [ref]);\n var isEmpty = !character || character === EMPTY_CELL;\n var canShowPoints = (isBlank || !isEmpty) && typeof points !== 'undefined';\n useEffect(function () {\n if (autoFocus && inputRef.current) {\n inputRef.current.focus();\n }\n }, [autoFocus, inputRef]);\n return /*#__PURE__*/_jsx(TilePure, {\n autoFocus: autoFocus,\n canShowPoints: canShowPoints,\n character: character,\n className: className,\n disabled: disabled,\n highlighted: highlighted,\n inputRef: inputRef,\n inputStyle: inputStyle,\n isBlank: isBlank,\n placeholder: placeholder,\n points: points,\n pointsStyle: pointsStyle,\n raised: raised,\n style: style,\n tabIndex: tabIndex,\n onFocus: onFocus,\n onKeyDown: onKeyDown\n });\n};\n\nexport default Tile;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\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 classNames from 'classnames';\nimport React from 'react';\nimport styles from './Cell.module.scss';\n\nvar Button = function Button(_ref) {\n var children = _ref.children,\n className = _ref.className,\n props = _objectWithoutProperties(_ref, [\"children\", \"className\"]);\n\n return /*#__PURE__*/_jsx(\"button\", _objectSpread(_objectSpread({\n className: classNames(styles.action, className) // It's fine to make it not focusable with TAB from a11y point of view\n // because alternative key combos are provided.\n ,\n tabIndex: -1,\n type: \"button\"\n }, props), {}, {\n children: children\n }));\n};\n\nexport default Button;","import { BONUS_CHARACTER, BONUS_WORD } from '@scrabble-solver/constants';\nimport styles from './Cell.module.scss';\nvar CHARACTER_CLASSNAMES = {\n 1: styles.bonusCharacter1,\n 2: styles.bonusCharacter2,\n 3: styles.bonusCharacter3,\n 5: styles.bonusCharacter5\n};\nvar WORD_CLASSNAMES = {\n 2: styles.bonusWord2,\n 3: styles.bonusWord3\n};\nvar CHARACTER_MULTIPLIER_CLASSNAMES = {\n 2: styles.bonusCharacterMultiplier2,\n 3: styles.bonusCharacterMultiplier3\n};\nexport var getBonusClassname = function getBonusClassname(cell, bonus) {\n if (!bonus || !cell.isEmpty) {\n return undefined;\n }\n\n var type = bonus.type;\n\n if (type === BONUS_WORD) {\n return getWordBonusClassname(bonus);\n }\n\n if (type === BONUS_CHARACTER) {\n return getCharacterBonusClassname(bonus);\n }\n\n throw new Error(\"Unknown bonus type: \".concat(type, \" \").concat(bonus.x, \" \").concat(bonus.y, \" \").concat(bonus.multiplier, \" \").concat(bonus.score));\n};\n\nvar getWordBonusClassname = function getWordBonusClassname(bonus) {\n return WORD_CLASSNAMES[bonus.multiplier];\n};\n\nvar getCharacterBonusClassname = function getCharacterBonusClassname(bonus) {\n if (bonus.score) {\n return CHARACTER_CLASSNAMES[bonus.score];\n }\n\n return CHARACTER_MULTIPLIER_CLASSNAMES[bonus.multiplier];\n};","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport React, { memo } from 'react';\nimport { arrowDown } from 'icons';\nimport SvgIcon from '../../../SvgIcon';\nimport Tile from '../../../Tile';\nimport Button from './Button';\nimport styles from './Cell.module.scss';\nimport { getBonusClassname } from './lib';\n\nvar CellPure = function CellPure(_ref) {\n var bonus = _ref.bonus,\n cell = _ref.cell,\n className = _ref.className,\n direction = _ref.direction,\n inputRef = _ref.inputRef,\n isEmpty = _ref.isEmpty,\n points = _ref.points,\n size = _ref.size,\n style = _ref.style,\n tile = _ref.tile,\n translate = _ref.translate,\n onDirectionToggleClick = _ref.onDirectionToggleClick,\n onFocus = _ref.onFocus,\n onToggleBlankClick = _ref.onToggleBlankClick;\n return /*#__PURE__*/_jsxs(\"div\", {\n className: classNames(styles.cell, getBonusClassname(cell, bonus), className, _defineProperty({}, styles.candidate, cell.isCandidate())),\n style: style,\n children: [/*#__PURE__*/_jsx(Tile, {\n className: styles.tile,\n character: isEmpty ? undefined : tile.character,\n highlighted: cell.isCandidate(),\n inputRef: inputRef,\n isBlank: tile.isBlank,\n points: points,\n raised: !isEmpty,\n size: size,\n tabIndex: cell.x === 0 && cell.y === 0 ? undefined : -1,\n onFocus: onFocus\n }), /*#__PURE__*/_jsxs(\"div\", {\n className: styles.actions,\n children: [/*#__PURE__*/_jsx(Button, {\n title: translate('cell.toggle-direction'),\n onClick: onDirectionToggleClick,\n children: /*#__PURE__*/_jsx(SvgIcon, {\n className: classNames(styles.toggleDirection, _defineProperty({}, styles.right, direction === 'horizontal')),\n icon: arrowDown\n })\n }), !isEmpty && /*#__PURE__*/_jsx(Button, {\n className: classNames(styles.blank, _defineProperty({}, styles.active, tile.isBlank)),\n title: tile.isBlank ? translate('cell.set-not-blank') : translate('cell.set-blank'),\n onClick: onToggleBlankClick,\n children: \"B\"\n })]\n })]\n });\n};\n\nexport default /*#__PURE__*/memo(CellPure);","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { EMPTY_CELL } from '@scrabble-solver/constants';\nimport React, { useCallback, useMemo } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { getTileSizes } from 'lib';\nimport { boardSlice, selectCellBonus, selectTilePoints, useTranslate, useTypedSelector } from 'state';\nimport CellPure from './CellPure';\n\nvar Cell = function Cell(_ref) {\n var cell = _ref.cell,\n className = _ref.className,\n direction = _ref.direction,\n inputRef = _ref.inputRef,\n size = _ref.size,\n onDirectionToggle = _ref.onDirectionToggle,\n onFocus = _ref.onFocus;\n var tile = cell.tile,\n x = cell.x,\n y = cell.y;\n var dispatch = useDispatch();\n var translate = useTranslate();\n var bonus = useTypedSelector(function (state) {\n return selectCellBonus(state, cell);\n });\n var points = useTypedSelector(function (state) {\n return selectTilePoints(state, cell.tile);\n });\n\n var _getTileSizes = getTileSizes(size),\n tileFontSize = _getTileSizes.tileFontSize;\n\n var isEmpty = tile.character === EMPTY_CELL;\n var style = useMemo(function () {\n return {\n fontSize: tileFontSize\n };\n }, [tileFontSize]);\n var handleFocus = useCallback(function () {\n return onFocus(x, y);\n }, [x, y, onFocus]);\n var handleToggleBlankClick = useCallback(function () {\n if (inputRef.current) {\n inputRef.current.focus();\n }\n\n dispatch(boardSlice.actions.toggleCellIsBlank({\n x: x,\n y: y\n }));\n }, [dispatch, x, y]);\n var handleDirectionToggleClick = useCallback(function () {\n if (inputRef.current) {\n inputRef.current.focus();\n }\n\n onDirectionToggle();\n }, [onDirectionToggle]);\n return /*#__PURE__*/_jsx(CellPure, {\n bonus: bonus,\n cell: cell,\n className: className,\n direction: direction,\n inputRef: inputRef,\n isEmpty: isEmpty,\n points: points,\n size: size,\n style: style,\n tile: tile,\n translate: translate,\n onDirectionToggleClick: handleDirectionToggleClick,\n onFocus: handleFocus,\n onToggleBlankClick: handleToggleBlankClick\n });\n};\n\nexport default Cell;","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React, { memo } from 'react';\nimport styles from './Board.module.scss';\nimport { Cell as CellComponent } from './components';\n\nvar BoardPure = function BoardPure(_ref) {\n var className = _ref.className,\n innerRef = _ref.innerRef,\n lastDirection = _ref.lastDirection,\n refs = _ref.refs,\n rows = _ref.rows,\n cellSize = _ref.cellSize,\n onDirectionToggle = _ref.onDirectionToggle,\n onFocus = _ref.onFocus,\n onKeyDown = _ref.onKeyDown;\n return /*#__PURE__*/_jsx(\"div\", {\n className: classNames(styles.board, className),\n ref: innerRef,\n onKeyDown: onKeyDown,\n children: rows.map(function (cells, y) {\n return /*#__PURE__*/_jsx(\"div\", {\n className: styles.row,\n children: cells.map(function (cell, x) {\n return /*#__PURE__*/_jsx(CellComponent, {\n className: styles.cell,\n cell: cell,\n direction: lastDirection,\n inputRef: refs[y][x],\n size: cellSize,\n onDirectionToggle: onDirectionToggle,\n onFocus: onFocus\n }, x);\n })\n }, y);\n })\n });\n};\n\nexport default /*#__PURE__*/memo(BoardPure);","import { useRef } from 'react';\nvar useLatest = function (value) {\n var ref = useRef(value);\n ref.current = value;\n return ref;\n};\nexport default useLatest;\n","var getPositionInGrid = function getPositionInGrid(grid, constraint) {\n for (var y = 0; y < grid.length; ++y) {\n for (var x = 0; x < grid[0].length; ++x) {\n if (constraint(grid[y][x])) {\n return {\n x: x,\n y: y\n };\n }\n }\n }\n\n return undefined;\n};\n\nexport default getPositionInGrid;","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 { EMPTY_CELL } from '@scrabble-solver/constants';\nimport { createRef, useCallback, useMemo, useState, useRef } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { useLatest } from 'react-use';\nimport { createGridOf, createKeyboardNavigation, isCtrl } from 'lib';\nimport { boardSlice, selectConfig, useTypedSelector } from 'state';\nimport { getPositionInGrid } from '../lib';\n\nvar useGrid = function useGrid(rows) {\n var height = rows.length;\n var width = rows[0].length;\n var dispatch = useDispatch();\n var config = useTypedSelector(selectConfig);\n var refs = useMemo(function () {\n return createGridOf(width, height, function () {\n return /*#__PURE__*/createRef();\n });\n }, [width, height]);\n var activeIndexRef = useRef({\n x: 0,\n y: 0\n });\n\n var _useState = useState('horizontal'),\n lastDirection = _useState[0],\n setLastDirection = _useState[1];\n\n var lastDirectionRef = useLatest(lastDirection);\n var changeActiveIndex = useCallback(function (offsetX, offsetY) {\n var _refs$y$x$current;\n\n var x = Math.min(Math.max(activeIndexRef.current.x + offsetX, 0), width - 1);\n var y = Math.min(Math.max(activeIndexRef.current.y + offsetY, 0), height - 1);\n activeIndexRef.current = {\n x: x,\n y: y\n };\n (_refs$y$x$current = refs[y][x].current) === null || _refs$y$x$current === void 0 ? void 0 : _refs$y$x$current.focus();\n }, [activeIndexRef, refs]);\n var getInputRefPosition = useCallback(function (inputRef) {\n return getPositionInGrid(refs, function (ref) {\n return ref.current === inputRef;\n });\n }, [refs]);\n var onDirectionToggle = useCallback(function () {\n setLastDirection(function (direction) {\n return direction === 'vertical' ? 'horizontal' : 'vertical';\n });\n }, []);\n var onFocus = useCallback(function (x, y) {\n activeIndexRef.current = {\n x: x,\n y: y\n };\n }, []);\n var onMoveFocus = useCallback(function (direction) {\n var offset = direction === 'forward' ? 1 : -1;\n\n if (lastDirectionRef.current === 'horizontal') {\n changeActiveIndex(offset, 0);\n } else {\n changeActiveIndex(0, offset);\n }\n }, [changeActiveIndex, lastDirectionRef]);\n var onKeyDown = useMemo(function () {\n return createKeyboardNavigation({\n onArrowDown: function onArrowDown(event) {\n if (isCtrl(event)) {\n onDirectionToggle();\n } else {\n changeActiveIndex(0, 1);\n }\n },\n onArrowLeft: function onArrowLeft(event) {\n if (isCtrl(event)) {\n onDirectionToggle();\n } else {\n changeActiveIndex(-1, 0);\n }\n },\n onArrowRight: function onArrowRight(event) {\n if (isCtrl(event)) {\n onDirectionToggle();\n } else {\n changeActiveIndex(1, 0);\n }\n },\n onArrowUp: function onArrowUp(event) {\n if (isCtrl(event)) {\n onDirectionToggle();\n } else {\n changeActiveIndex(0, -1);\n }\n },\n onBackspace: function onBackspace(event) {\n var position = getInputRefPosition(event.target);\n\n if (!position) {\n return;\n }\n\n dispatch(boardSlice.actions.changeCellValue(_objectSpread(_objectSpread({}, position), {}, {\n value: EMPTY_CELL\n })));\n onMoveFocus('backward');\n },\n onDelete: function onDelete(event) {\n var position = getInputRefPosition(event.target);\n\n if (!position) {\n return;\n }\n\n dispatch(boardSlice.actions.changeCellValue(_objectSpread(_objectSpread({}, position), {}, {\n value: EMPTY_CELL\n })));\n onMoveFocus('forward');\n },\n onKeyDown: function onKeyDown(event) {\n var position = getInputRefPosition(event.target);\n\n if (!position) {\n return;\n }\n\n var x = position.x,\n y = position.y;\n var character = event.key.toLowerCase();\n var isTogglingBlank = isCtrl(event) && character === 'b';\n var twoCharacterTile = config.getTwoCharacterTileByPrefix(character);\n\n if (isTogglingBlank) {\n dispatch(boardSlice.actions.toggleCellIsBlank(position));\n return;\n }\n\n if (isCtrl(event) && twoCharacterTile) {\n event.preventDefault();\n dispatch(boardSlice.actions.changeCellValue({\n x: x,\n y: y,\n value: twoCharacterTile\n }));\n onMoveFocus('forward');\n return;\n }\n\n if (!config.hasCharacter(character)) {\n return;\n }\n\n var canCheckUp = y - 1 > 0;\n var canCheckLeft = x > 0;\n var canCheckRight = x + 1 < width;\n var canCheckDown = y + 1 < height;\n\n if (canCheckUp) {\n var cellUp = rows[y - 1][x];\n var twoCharacterCandidate = cellUp.tile.character + character;\n\n if (config.twoCharacterTiles.includes(twoCharacterCandidate)) {\n dispatch(boardSlice.actions.changeCellValue(_objectSpread(_objectSpread({}, position), {}, {\n y: y - 1,\n value: twoCharacterCandidate\n })));\n return;\n }\n }\n\n if (canCheckDown) {\n var cellDown = rows[y + 1][x];\n\n var _twoCharacterCandidate = character + cellDown.tile.character;\n\n if (config.twoCharacterTiles.includes(_twoCharacterCandidate)) {\n dispatch(boardSlice.actions.changeCellValue(_objectSpread(_objectSpread({}, position), {}, {\n value: character\n })));\n dispatch(boardSlice.actions.changeCellValue(_objectSpread(_objectSpread({}, position), {}, {\n y: y + 1,\n value: EMPTY_CELL\n })));\n onMoveFocus('forward');\n return;\n }\n }\n\n if (canCheckLeft) {\n var cellLeft = rows[y][x - 1];\n\n var _twoCharacterCandidate2 = cellLeft.tile.character + character;\n\n if (config.twoCharacterTiles.includes(_twoCharacterCandidate2)) {\n dispatch(boardSlice.actions.changeCellValue(_objectSpread(_objectSpread({}, position), {}, {\n x: x - 1,\n value: _twoCharacterCandidate2\n })));\n return;\n }\n }\n\n if (canCheckRight) {\n var cellRight = rows[y][x + 1];\n\n var _twoCharacterCandidate3 = character + cellRight.tile.character;\n\n if (config.twoCharacterTiles.includes(_twoCharacterCandidate3)) {\n dispatch(boardSlice.actions.changeCellValue(_objectSpread(_objectSpread({}, position), {}, {\n value: character\n })));\n dispatch(boardSlice.actions.changeCellValue(_objectSpread(_objectSpread({}, position), {}, {\n x: x + 1,\n value: EMPTY_CELL\n })));\n onMoveFocus('forward');\n return;\n }\n }\n\n if (!canCheckDown || !canCheckRight) {\n var cell = rows[y][x];\n\n var _twoCharacterCandidate4 = cell.tile.character + character;\n\n if (config.twoCharacterTiles.includes(_twoCharacterCandidate4)) {\n dispatch(boardSlice.actions.changeCellValue(_objectSpread(_objectSpread({}, position), {}, {\n value: _twoCharacterCandidate4\n })));\n return;\n }\n }\n\n dispatch(boardSlice.actions.changeCellValue(_objectSpread(_objectSpread({}, position), {}, {\n value: character\n })));\n onMoveFocus('forward');\n }\n });\n }, [changeActiveIndex, config, dispatch, lastDirectionRef, onDirectionToggle, rows]);\n return [{\n lastDirection: lastDirection,\n refs: refs\n }, {\n onDirectionToggle: onDirectionToggle,\n onFocus: onFocus,\n onKeyDown: onKeyDown\n }];\n};\n\nexport default useGrid;","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport React from 'react';\nimport { selectRowsWithCandidate, useTypedSelector } from 'state';\nimport BoardPure from './BoardPure';\nimport { useGrid } from './hooks';\n\nvar Board = function Board(_ref) {\n var cellSize = _ref.cellSize,\n className = _ref.className,\n innerRef = _ref.innerRef;\n var rows = useTypedSelector(selectRowsWithCandidate);\n\n var _useGrid = useGrid(rows),\n _useGrid2 = _slicedToArray(_useGrid, 2),\n _useGrid2$ = _useGrid2[0],\n lastDirection = _useGrid2$.lastDirection,\n refs = _useGrid2$.refs,\n _useGrid2$2 = _useGrid2[1],\n onDirectionToggle = _useGrid2$2.onDirectionToggle,\n onFocus = _useGrid2$2.onFocus,\n onKeyDown = _useGrid2$2.onKeyDown;\n\n return /*#__PURE__*/_jsx(BoardPure, {\n className: className,\n cellSize: cellSize,\n innerRef: innerRef,\n lastDirection: lastDirection,\n refs: refs,\n rows: rows,\n onDirectionToggle: onDirectionToggle,\n onFocus: onFocus,\n onKeyDown: onKeyDown\n });\n};\n\nexport default Board;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from 'react';\nimport { SvgIcon } from 'components';\nimport styles from './Button.module.scss';\n\nvar Content = function Content(_ref) {\n var children = _ref.children,\n icon = _ref.icon;\n return /*#__PURE__*/_jsxs(\"span\", {\n className: styles.content,\n children: [/*#__PURE__*/_jsx(\"span\", {\n className: styles.label,\n children: children\n }), /*#__PURE__*/_jsx(SvgIcon, {\n className: styles.icon,\n icon: icon\n })]\n });\n};\n\nexport default Content;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\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 classNames from 'classnames';\nimport React from 'react';\nimport styles from './Button.module.scss';\nimport Content from './Content';\n\nvar Link = function Link(_ref) {\n var children = _ref.children,\n className = _ref.className,\n icon = _ref.icon,\n props = _objectWithoutProperties(_ref, [\"children\", \"className\", \"icon\"]);\n\n return /*#__PURE__*/_jsx(\"a\", _objectSpread(_objectSpread({\n className: classNames(styles.button, className)\n }, props), {}, {\n children: /*#__PURE__*/_jsx(Content, {\n icon: icon,\n children: children\n })\n }));\n};\n\nexport default Link;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\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 classNames from 'classnames';\nimport React from 'react';\nimport styles from './Button.module.scss';\nimport Content from './Content';\nimport Link from './Link';\n\nvar Button = function Button(_ref) {\n var children = _ref.children,\n className = _ref.className,\n icon = _ref.icon,\n props = _objectWithoutProperties(_ref, [\"children\", \"className\", \"icon\"]);\n\n return /*#__PURE__*/_jsx(\"button\", _objectSpread(_objectSpread({\n className: classNames(styles.button, className),\n type: \"button\"\n }, props), {}, {\n children: /*#__PURE__*/_jsx(Content, {\n icon: icon,\n children: children\n })\n }));\n};\n\nexport default Object.assign(Button, {\n Link: Link\n});","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { checkboxChecked, checkboxEmpty } from 'icons';\nimport SvgIcon from '../SvgIcon';\nimport styles from './Checkbox.module.scss';\n\nvar Checkbox = function Checkbox(_ref) {\n var checked = _ref.checked,\n children = _ref.children,\n className = _ref.className,\n disabled = _ref.disabled,\n id = _ref.id,\n name = _ref.name,\n title = _ref.title,\n onChange = _ref.onChange;\n return /*#__PURE__*/_jsxs(\"label\", {\n className: classNames(styles.checkbox, className, _defineProperty({}, styles.checked, checked)),\n htmlFor: id,\n title: title,\n children: [/*#__PURE__*/_jsx(\"input\", {\n checked: checked,\n className: styles.input,\n disabled: disabled,\n id: id,\n name: name,\n type: \"checkbox\",\n onChange: onChange\n }), /*#__PURE__*/_jsx(SvgIcon, {\n className: styles.icon,\n icon: checked ? checkboxChecked : checkboxEmpty\n }), /*#__PURE__*/_jsx(\"div\", {\n className: styles.content,\n children: children\n })]\n });\n};\n\nexport default Checkbox;","import { PLAIN_TILES_PADDING_HORIZONTAL, PLAIN_TILES_TILE_MARGIN, PLAIN_TILES_TILE_SIZE } from 'parameters';\n\nvar getX = function getX(index) {\n return PLAIN_TILES_PADDING_HORIZONTAL + index * (PLAIN_TILES_TILE_SIZE + PLAIN_TILES_TILE_MARGIN);\n};\n\nexport default getX;","import { PLAIN_TILES_PADDING_VERTICAL, PLAIN_TILES_TILE_MARGIN, PLAIN_TILES_TILE_SIZE } from 'parameters';\n\nvar getY = function getY(index) {\n return PLAIN_TILES_PADDING_VERTICAL + index * (PLAIN_TILES_TILE_SIZE + PLAIN_TILES_TILE_MARGIN);\n};\n\nexport default getY;","var randomize = function randomize(value, maxChange) {\n return value + maxChange * 2 * (0.5 - Math.random());\n};\n\nexport default randomize;","import { literaki } from '@scrabble-solver/configs';\nimport { Locale } from '@scrabble-solver/types';\nimport { PLAIN_TILES_COLOR_DEFAULT, PLAIN_TILES_POINTS_COLORS, PLAIN_TILES_TILE_MAX_SCATTER, PLAIN_TILES_TILE_MAX_ROTATE, PLAIN_TILES_TILE_SIZE } from 'parameters';\nimport getX from './getX';\nimport getY from './getY';\nimport randomize from './randomize';\n\nvar createPlainTile = function createPlainTile(_ref) {\n var cellIndex = _ref.cellIndex,\n character = _ref.character,\n color = _ref.color,\n rowIndex = _ref.rowIndex,\n showPoints = _ref.showPoints;\n var configPoints = literaki[Locale.EN_US].getCharacterPoints(character.toLowerCase());\n var points = showPoints ? configPoints : undefined;\n var defaultColor = typeof configPoints === 'number' ? PLAIN_TILES_POINTS_COLORS[configPoints] : PLAIN_TILES_COLOR_DEFAULT;\n var x = getX(cellIndex) + PLAIN_TILES_TILE_SIZE / 2;\n var y = getY(0) + PLAIN_TILES_TILE_SIZE / 2;\n return {\n character: character,\n color: color || defaultColor,\n points: points,\n size: PLAIN_TILES_TILE_SIZE,\n transform: \"rotate(\".concat(randomize(0, PLAIN_TILES_TILE_MAX_ROTATE), \", \").concat(x, \", \").concat(y, \")\"),\n x: randomize(getX(cellIndex), PLAIN_TILES_TILE_MAX_SCATTER),\n y: randomize(getY(rowIndex), PLAIN_TILES_TILE_MAX_SCATTER)\n };\n};\n\nexport default createPlainTile;","import createPlainTile from './createPlainTile';\n\nvar createPlainTiles = function createPlainTiles(_ref) {\n var color = _ref.color,\n content = _ref.content,\n showPoints = _ref.showPoints;\n var rows = content.map(function (words, rowIndex) {\n return words.map(function (word, wordIndex) {\n var cellOffset = words.slice(0, wordIndex).reduce(function (result, _ref2) {\n var length = _ref2.length;\n return result + length + ' '.length;\n }, 0);\n var characters = word.split('');\n return characters.map(function (character, cellIndex) {\n return createPlainTile({\n cellIndex: cellOffset + cellIndex,\n character: character,\n color: color,\n rowIndex: rowIndex,\n showPoints: showPoints\n });\n });\n });\n });\n var tiles = rows.flat(2);\n return tiles;\n};\n\nexport default createPlainTiles;","import { PLAIN_TILES_TILE_MARGIN, PLAIN_TILES_TILE_SIZE } from 'parameters';\n\nvar getViewbox = function getViewbox(content) {\n var longestRowLength = content.reduce(function (result, words) {\n var wordsLength = words.reduce(function (sum, word) {\n return sum + word.length;\n }, 0);\n var rowLength = wordsLength + Math.max(words.length - 1, 0);\n return Math.max(result, rowLength);\n }, 0);\n var width = longestRowLength * (PLAIN_TILES_TILE_SIZE + PLAIN_TILES_TILE_MARGIN) - (longestRowLength === 0 ? 0 : PLAIN_TILES_TILE_MARGIN);\n var height = content.length * (PLAIN_TILES_TILE_SIZE + PLAIN_TILES_TILE_MARGIN) - (content.length === 0 ? 0 : PLAIN_TILES_TILE_MARGIN);\n return \"0 0 \".concat(width, \" \").concat(height);\n};\n\nexport default getViewbox;","export { default as createPlainTile } from './createPlainTile';\nexport { default as createPlainTiles } from './createPlainTiles';\nexport { default as getViewbox } from './getViewbox';\nexport { default as getX } from './getX';\nexport { default as getY } from './getY';\nexport { default as randomize } from './randomize';","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from 'react';\n\nvar Tile = function Tile(_ref) {\n var character = _ref.character,\n className = _ref.className,\n color = _ref.color,\n points = _ref.points,\n size = _ref.size,\n transform = _ref.transform,\n x = _ref.x,\n y = _ref.y;\n return /*#__PURE__*/_jsxs(\"g\", {\n className: className,\n transform: transform,\n children: [/*#__PURE__*/_jsx(\"rect\", {\n fill: color,\n height: size,\n width: size,\n x: x,\n y: y\n }), /*#__PURE__*/_jsx(\"text\", {\n dominantBaseline: \"central\",\n fontFamily: \"Open Sans\",\n fontSize: 0.6 * size,\n fontWeight: \"bold\",\n textAnchor: \"middle\",\n x: x + size / 2,\n y: y + size / 2,\n children: character\n }), typeof points === 'number' && /*#__PURE__*/_jsx(\"text\", {\n dominantBaseline: \"text-after-edge\",\n fontFamily: \"Open Sans\",\n fontSize: 0.25 * size,\n fontWeight: \"bold\",\n textAnchor: \"end\",\n x: x + size * 0.9,\n y: y + size * 0.95,\n children: points\n })]\n });\n};\n\nexport default Tile;","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport React, { useMemo } from 'react';\nimport { createPlainTiles, getViewbox } from './lib';\nimport styles from './PlainTiles.module.scss';\nimport Tile from './Tile';\n\nvar PlainTiles = function PlainTiles(_ref) {\n var _classNames;\n\n var className = _ref.className,\n color = _ref.color,\n content = _ref.content,\n dropShadow = _ref.dropShadow,\n showPoints = _ref.showPoints,\n style = _ref.style,\n wave = _ref.wave;\n var tiles = useMemo(function () {\n return createPlainTiles({\n color: color,\n content: content,\n showPoints: showPoints\n });\n }, [color, content, showPoints]);\n return /*#__PURE__*/_jsx(\"svg\", {\n className: classNames(className, (_classNames = {}, _defineProperty(_classNames, styles.dropShadow, dropShadow), _defineProperty(_classNames, styles.wave, wave), _classNames)),\n style: style,\n viewBox: getViewbox(content),\n xmlns: \"http://www.w3.org/2000/svg\",\n children: tiles.map(function (tile, index) {\n return /*#__PURE__*/_jsx(Tile, {\n character: tile.character,\n className: styles.tile,\n color: tile.color,\n points: tile.points,\n size: tile.size,\n transform: tile.transform,\n x: tile.x,\n y: tile.y\n }, index);\n })\n });\n};\n\nexport default PlainTiles;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React, { useMemo } from 'react';\nimport { COLOR_BLUE, COLOR_GREEN, COLOR_RED, COLOR_YELLOW } from 'parameters';\nimport { useTranslate } from 'state';\nimport PlainTiles from '../PlainTiles';\nimport styles from './EmptyState.module.scss';\nvar TITLE_KEY_PER_TYPE = {\n error: 'empty-state.error',\n info: 'empty-state.info',\n success: 'empty-state.success',\n warning: 'empty-state.warning'\n};\nvar COLORS_PER_TYPE = {\n error: COLOR_RED,\n info: COLOR_BLUE,\n success: COLOR_GREEN,\n warning: COLOR_YELLOW\n};\n\nvar EmptyState = function EmptyState(_ref) {\n var className = _ref.className,\n children = _ref.children,\n type = _ref.type;\n var translate = useTranslate();\n var title = useMemo(function () {\n return translate(TITLE_KEY_PER_TYPE[type]);\n }, [translate]);\n var content = useMemo(function () {\n return [[title.toUpperCase()]];\n }, [title]);\n return /*#__PURE__*/_jsxs(\"div\", {\n className: classNames(styles.emptyState, className),\n children: [/*#__PURE__*/_jsx(PlainTiles, {\n className: styles.tiles,\n color: COLORS_PER_TYPE[type],\n content: content\n }), /*#__PURE__*/_jsx(\"div\", {\n className: styles.content,\n children: children\n })]\n });\n};\n\nexport default EmptyState;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React, { useMemo } from 'react';\nimport { useTranslate } from 'state';\nimport PlainTiles from '../PlainTiles';\nimport styles from './Loading.module.scss';\n\nvar Loading = function Loading(_ref) {\n var className = _ref.className,\n _ref$wave = _ref.wave,\n wave = _ref$wave === void 0 ? true : _ref$wave;\n var translate = useTranslate();\n var content = useMemo(function () {\n return [[translate('common.loading').toUpperCase()]];\n }, [translate]);\n return /*#__PURE__*/_jsxs(\"div\", {\n className: classNames(styles.loading, className),\n children: [/*#__PURE__*/_jsx(\"div\", {\n className: styles.dim\n }), /*#__PURE__*/_jsx(\"div\", {\n className: styles.logo,\n children: /*#__PURE__*/_jsx(PlainTiles, {\n className: classNames(styles.tiles),\n content: content,\n dropShadow: true,\n wave: wave\n })\n })]\n });\n};\n\nexport default Loading;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { selectDictionary, useTranslate, useTypedSelector } from 'state';\nimport EmptyState from '../EmptyState';\nimport Loading from '../Loading';\nimport styles from './Dictionary.module.scss';\n\nvar Dictionary = function Dictionary(_ref) {\n var _classNames;\n\n var className = _ref.className;\n var translate = useTranslate();\n\n var _useTypedSelector = useTypedSelector(selectDictionary),\n definitions = _useTypedSelector.definitions,\n isAllowed = _useTypedSelector.isAllowed,\n isLoading = _useTypedSelector.isLoading,\n word = _useTypedSelector.word;\n\n return /*#__PURE__*/_jsxs(\"div\", {\n className: classNames(styles.dictionary, className, (_classNames = {}, _defineProperty(_classNames, styles.isAllowed, isAllowed === true), _defineProperty(_classNames, styles.isNotAllowed, isAllowed === false), _classNames)),\n children: [typeof word === 'undefined' && /*#__PURE__*/_jsx(EmptyState, {\n type: \"info\",\n children: translate('dictionary.empty-state.uninitialized')\n }), typeof word !== 'undefined' && /*#__PURE__*/_jsxs(\"div\", {\n className: styles.content,\n children: [word && /*#__PURE__*/_jsx(\"h2\", {\n className: styles.word,\n children: word\n }), isAllowed === false && /*#__PURE__*/_jsx(\"div\", {\n children: translate('dictionary.empty-state.not-allowed')\n }), isAllowed === true && /*#__PURE__*/_jsxs(_Fragment, {\n children: [definitions.length === 0 && /*#__PURE__*/_jsx(\"div\", {\n children: translate('dictionary.empty-state.no-definitions')\n }), definitions.length > 0 && /*#__PURE__*/_jsx(\"ul\", {\n className: styles.definitions,\n children: definitions.map(function (result, index) {\n return /*#__PURE__*/_jsx(\"li\", {\n className: styles.definition,\n children: result\n }, index);\n })\n })]\n }), !isLoading && isAllowed === null && /*#__PURE__*/_jsx(\"div\", {\n children: translate('dictionary.empty-state.no-results')\n })]\n }), isLoading && /*#__PURE__*/_jsx(Loading, {})]\n });\n};\n\nexport default Dictionary;","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { useDispatch } from 'react-redux';\nimport { dictionarySlice, selectDictionary, useTranslate, useTypedSelector } from 'state';\nimport styles from './DictionaryInput.module.scss';\n\nvar DictionaryInput = function DictionaryInput(_ref) {\n var className = _ref.className;\n var dispatch = useDispatch();\n var translate = useTranslate();\n\n var _useTypedSelector = useTypedSelector(selectDictionary),\n input = _useTypedSelector.input;\n\n var handleChange = function handleChange(event) {\n dispatch(dictionarySlice.actions.changeInput(event.target.value));\n };\n\n var handleSubmit = function handleSubmit(event) {\n event.preventDefault();\n dispatch(dictionarySlice.actions.submit());\n };\n\n return /*#__PURE__*/_jsx(\"form\", {\n className: classNames(styles.dictionaryInput, className),\n onSubmit: handleSubmit,\n children: /*#__PURE__*/_jsx(\"input\", {\n className: styles.input,\n placeholder: translate('dictionary.input.placeholder'),\n required: true,\n type: \"text\",\n value: input,\n onChange: handleChange\n })\n });\n};\n\nexport default DictionaryInput;","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport styles from './Key.module.scss';\n\nvar Key = function Key(_ref) {\n var children = _ref.children,\n className = _ref.className;\n return /*#__PURE__*/_jsx(\"kbd\", {\n className: classNames(styles.key, className),\n children: children\n });\n};\n\nexport default Key;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from 'react';\nimport { SvgIcon } from 'components';\nimport styles from './SquareButton.module.scss';\n\nvar Content = function Content(_ref) {\n var children = _ref.children,\n icon = _ref.icon;\n return /*#__PURE__*/_jsxs(\"span\", {\n className: styles.content,\n children: [/*#__PURE__*/_jsx(SvgIcon, {\n className: styles.icon,\n icon: icon\n }), /*#__PURE__*/_jsx(\"span\", {\n className: styles.label,\n children: children\n })]\n });\n};\n\nexport default Content;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\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 classNames from 'classnames';\nimport React from 'react';\nimport Content from './Content';\nimport styles from './SquareButton.module.scss';\n\nvar Link = function Link(_ref) {\n var children = _ref.children,\n className = _ref.className,\n icon = _ref.icon,\n props = _objectWithoutProperties(_ref, [\"children\", \"className\", \"icon\"]);\n\n return /*#__PURE__*/_jsx(\"a\", _objectSpread(_objectSpread({\n className: classNames(styles.squareButton, className)\n }, props), {}, {\n children: /*#__PURE__*/_jsx(Content, {\n icon: icon,\n children: children\n })\n }));\n};\n\nexport default Link;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\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 classNames from 'classnames';\nimport React from 'react';\nimport Content from './Content';\nimport Link from './Link';\nimport styles from './SquareButton.module.scss';\n\nvar SquareButton = function SquareButton(_ref) {\n var children = _ref.children,\n className = _ref.className,\n icon = _ref.icon,\n props = _objectWithoutProperties(_ref, [\"children\", \"className\", \"icon\"]);\n\n return /*#__PURE__*/_jsx(\"button\", _objectSpread(_objectSpread({\n className: classNames(styles.squareButton, className),\n type: \"button\"\n }, props), {}, {\n children: /*#__PURE__*/_jsx(Content, {\n icon: icon,\n children: children\n })\n }));\n};\n\nexport default Object.assign(SquareButton, {\n Link: Link\n});","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport styles from './Section.module.scss';\n\nvar Section = function Section(_ref) {\n var children = _ref.children,\n className = _ref.className,\n title = _ref.title;\n return /*#__PURE__*/_jsxs(\"section\", {\n className: classNames(styles.section, className),\n children: [/*#__PURE__*/_jsx(\"h2\", {\n className: styles.heading,\n children: title\n }), /*#__PURE__*/_jsx(\"div\", {\n children: children\n })]\n });\n};\n\nexport default Section;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport Modal from 'react-modal';\nimport { cross } from 'icons';\nimport { TRANSITION_DURATION_LONG } from 'parameters';\nimport { useTranslate } from 'state';\nimport SquareButton from '../SquareButton';\nimport { Section } from './components';\nimport styles from './Sidebar.module.scss';\n\nvar Sidebar = function Sidebar(_ref) {\n var children = _ref.children,\n className = _ref.className,\n isOpen = _ref.isOpen,\n title = _ref.title,\n onClose = _ref.onClose;\n var translate = useTranslate();\n return /*#__PURE__*/_jsx(Modal, {\n className: {\n afterOpen: styles.afterOpen,\n base: styles.modal,\n beforeClose: styles.beforeClose\n },\n closeTimeoutMS: TRANSITION_DURATION_LONG,\n contentLabel: title,\n isOpen: isOpen,\n overlayClassName: styles.overlay,\n onRequestClose: onClose,\n children: /*#__PURE__*/_jsxs(\"div\", {\n className: classNames(styles.sidebar, className),\n children: [/*#__PURE__*/_jsxs(\"div\", {\n className: styles.header,\n children: [/*#__PURE__*/_jsx(\"h1\", {\n className: styles.title,\n title: title,\n children: title\n }), /*#__PURE__*/_jsx(SquareButton, {\n className: styles.closeButton,\n icon: cross,\n title: translate('common.close'),\n onClick: onClose,\n children: translate('common.close')\n })]\n }), /*#__PURE__*/_jsx(\"div\", {\n className: styles.content,\n children: children\n })]\n })\n });\n};\n\nexport default Object.assign(Sidebar, {\n Section: Section\n});","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport styles from './Mapping.module.scss';\n\nvar Mapping = function Mapping(_ref) {\n var className = _ref.className,\n description = _ref.description,\n mapping = _ref.mapping;\n return /*#__PURE__*/_jsxs(\"div\", {\n className: classNames(styles.mapping, className),\n children: [/*#__PURE__*/_jsx(\"h3\", {\n className: styles.description,\n children: description\n }), /*#__PURE__*/_jsx(\"div\", {\n className: styles.keys,\n children: mapping.map(function (key, index) {\n return /*#__PURE__*/_jsx(\"div\", {\n className: styles.group,\n children: Array.isArray(key) ? /*#__PURE__*/_jsxs(_Fragment, {\n children: [key[0], /*#__PURE__*/_jsx(\"span\", {\n className: styles.plus,\n children: \"+\"\n }), key[1]]\n }) : key\n }, index);\n })\n })]\n });\n};\n\nexport default Mapping;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from 'react';\nimport { arrowDown, arrowLeft, arrowRight, arrowUp } from 'icons';\nimport { isMac } from 'lib';\nimport Key from '../Key';\nimport SvgIcon from '../SvgIcon';\nexport var ARROW_DOWN = /*#__PURE__*/_jsx(Key, {\n children: /*#__PURE__*/_jsx(SvgIcon, {\n icon: arrowLeft\n })\n});\nexport var ARROW_LEFT = /*#__PURE__*/_jsx(Key, {\n children: /*#__PURE__*/_jsx(SvgIcon, {\n icon: arrowUp\n })\n});\nexport var ARROW_RIGHT = /*#__PURE__*/_jsx(Key, {\n children: /*#__PURE__*/_jsx(SvgIcon, {\n icon: arrowRight\n })\n});\nexport var ARROW_UP = /*#__PURE__*/_jsx(Key, {\n children: /*#__PURE__*/_jsx(SvgIcon, {\n icon: arrowDown\n })\n});\nexport var BACKSPACE = /*#__PURE__*/_jsx(Key, {\n children: \"\\u2190 Backspace\"\n});\nexport var CTRL = /*#__PURE__*/_jsx(Key, {\n children: isMac() ? '⌘' : 'Ctrl'\n});\nexport var DEL = /*#__PURE__*/_jsx(Key, {\n children: \"Del\"\n});\nexport var ENTER = /*#__PURE__*/_jsx(Key, {\n children: \"Enter \\u23CE\"\n});\nexport var ARROWS = /*#__PURE__*/_jsxs(_Fragment, {\n children: [ARROW_DOWN, ARROW_LEFT, ARROW_RIGHT, ARROW_UP]\n});\nexport var SPACE = /*#__PURE__*/_jsx(Key, {\n children: \"\\u2423\"\n});","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-runtime\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from 'react';\nimport { selectConfig, useTranslate, useTypedSelector } from 'state';\nimport Key from '../Key';\nimport Sidebar from '../Sidebar';\nimport { Mapping } from './components';\nimport { ARROWS, BACKSPACE, CTRL, DEL, ENTER, SPACE } from './keys';\n\nvar KeyMap = function KeyMap(_ref) {\n var className = _ref.className,\n isOpen = _ref.isOpen,\n onClose = _ref.onClose;\n var translate = useTranslate();\n var config = useTypedSelector(selectConfig);\n return /*#__PURE__*/_jsxs(Sidebar, {\n className: className,\n isOpen: isOpen,\n title: translate('keyMap'),\n onClose: onClose,\n children: [/*#__PURE__*/_jsxs(Sidebar.Section, {\n title: translate('keyMap.board-and-rack'),\n children: [/*#__PURE__*/_jsx(Mapping, {\n description: translate('keyMap.board-and-rack.navigate'),\n mapping: [ARROWS]\n }), /*#__PURE__*/_jsx(Mapping, {\n description: translate('keyMap.board-and-rack.remove-tile'),\n mapping: [DEL, BACKSPACE]\n }), /*#__PURE__*/_jsx(Mapping, {\n description: translate('keyMap.board-and-rack.submit'),\n mapping: [ENTER]\n }), config.twoCharacterTiles.length > 0 && /*#__PURE__*/_jsx(Mapping, {\n description: translate('keyMap.board-and-rack.insert-two-letter-tile'),\n mapping: [[CTRL, /*#__PURE__*/_jsx(_Fragment, {\n children: config.twoCharacterTiles.map(function (_ref2) {\n var _ref3 = _slicedToArray(_ref2, 1),\n firstLetter = _ref3[0];\n\n return /*#__PURE__*/_jsx(Key, {\n children: firstLetter.toUpperCase()\n }, firstLetter);\n })\n })]]\n })]\n }), /*#__PURE__*/_jsxs(Sidebar.Section, {\n title: translate('keyMap.board'),\n children: [/*#__PURE__*/_jsx(Mapping, {\n description: translate('keyMap.board.toggle-blank'),\n mapping: [[CTRL, /*#__PURE__*/_jsx(Key, {\n children: \"B\"\n }, \"b\")]]\n }), /*#__PURE__*/_jsx(Mapping, {\n description: translate('keyMap.board.toggle-direction'),\n mapping: [[CTRL, ARROWS]]\n })]\n }), /*#__PURE__*/_jsx(Sidebar.Section, {\n title: translate('keyMap.rack'),\n children: /*#__PURE__*/_jsx(Mapping, {\n description: translate('keyMap.rack.insert-blank'),\n mapping: [SPACE]\n })\n })]\n });\n};\n\nexport default KeyMap;","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from 'react';\nimport PlainTiles from '../PlainTiles';\nvar CONTENT = [['SCRABBLE'], ['SOLVER', '2']];\n\nvar Logo = function Logo(_ref) {\n var className = _ref.className,\n style = _ref.style;\n return /*#__PURE__*/_jsx(PlainTiles, {\n className: className,\n content: CONTENT,\n style: style\n });\n};\n\nexport default Logo;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { cog, eraser, github, keyboard, sack } from 'icons';\nimport { GITHUB_PROJECT_URL } from 'parameters';\nimport { selectHasOverusedTiles, useTranslate, useTypedSelector } from 'state';\nimport SquareButton from '../SquareButton';\nimport styles from './NavButtons.module.scss';\n\nvar NavButtons = function NavButtons(_ref) {\n var onClear = _ref.onClear,\n onShowKeyMap = _ref.onShowKeyMap,\n onShowRemainingTiles = _ref.onShowRemainingTiles,\n onShowSettings = _ref.onShowSettings;\n var translate = useTranslate();\n var hasOverusedTiles = useTypedSelector(selectHasOverusedTiles);\n return /*#__PURE__*/_jsxs(\"div\", {\n className: styles.navButtons,\n children: [/*#__PURE__*/_jsx(SquareButton.Link, {\n className: styles.button,\n href: GITHUB_PROJECT_URL,\n icon: github,\n rel: \"noopener noreferrer\",\n target: \"_blank\",\n title: translate('github'),\n children: \"GitHub\"\n }), /*#__PURE__*/_jsx(\"div\", {\n className: styles.separator\n }), /*#__PURE__*/_jsx(SquareButton, {\n className: styles.button,\n icon: keyboard,\n title: translate('keyMap'),\n onClick: onShowKeyMap,\n children: translate('keyMap')\n }), /*#__PURE__*/_jsx(SquareButton, {\n className: classNames(styles.button, _defineProperty({}, styles.error, hasOverusedTiles)),\n icon: sack,\n title: translate('remaining-tiles'),\n onClick: onShowRemainingTiles,\n children: translate('remaining-tiles')\n }), /*#__PURE__*/_jsx(\"div\", {\n className: styles.separator\n }), /*#__PURE__*/_jsx(SquareButton, {\n className: styles.button,\n icon: eraser,\n title: translate('common.clear'),\n onClick: onClear,\n children: translate('common.clear')\n }), /*#__PURE__*/_jsx(SquareButton, {\n className: styles.button,\n icon: cog,\n title: translate('settings'),\n onClick: onShowSettings,\n children: translate('settings')\n })]\n });\n};\n\nexport default NavButtons;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport Link from 'next/link';\nimport React from 'react';\nimport { dashCircleFill } from 'icons';\nimport PlainTiles from '../PlainTiles';\nimport SvgIcon from '../SvgIcon';\nimport styles from './NotFound.module.scss';\nvar CONTENT = [['HTTP', '404']];\n\nvar NotFound = function NotFound() {\n return /*#__PURE__*/_jsx(\"div\", {\n className: styles.notFound,\n children: /*#__PURE__*/_jsx(Link, {\n href: \"/\",\n children: /*#__PURE__*/_jsxs(\"a\", {\n className: styles.link,\n children: [/*#__PURE__*/_jsx(SvgIcon, {\n className: styles.icon,\n icon: dashCircleFill\n }), /*#__PURE__*/_jsx(PlainTiles, {\n className: styles.tiles,\n content: CONTENT\n })]\n })\n })\n });\n};\n\nexport default NotFound;","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { BLANK } from '@scrabble-solver/constants';\nimport React, { useCallback, useMemo } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { createKeyboardNavigation, isCtrl } from 'lib';\nimport { TILE_SIZE } from 'parameters';\nimport { rackSlice, selectCharacterPoints, selectConfig, useTranslate, useTypedSelector } from 'state';\nimport Tile from '../Tile';\nimport styles from './Rack.module.scss';\n\nvar RackTile = function RackTile(_ref) {\n var activeIndexRef = _ref.activeIndexRef,\n character = _ref.character,\n index = _ref.index,\n inputRef = _ref.inputRef,\n tile = _ref.tile,\n _onKeyDown = _ref.onKeyDown;\n var dispatch = useDispatch();\n var translate = useTranslate();\n var config = useTypedSelector(selectConfig);\n var points = useTypedSelector(function (state) {\n return selectCharacterPoints(state, character);\n });\n var handleFocus = useCallback(function () {\n activeIndexRef.current = index;\n }, [index]);\n var handleCharacterChange = useCallback(function (value) {\n dispatch(rackSlice.actions.changeCharacter({\n character: value,\n index: index\n }));\n }, [index]);\n var handleKeyDown = useMemo(function () {\n return createKeyboardNavigation({\n onBackspace: function onBackspace() {\n return handleCharacterChange(null);\n },\n onDelete: function onDelete() {\n return handleCharacterChange(null);\n },\n onKeyDown: function onKeyDown(event) {\n var newCharacter = event.key.toLowerCase();\n var twoCharacterTile = config.getTwoCharacterTileByPrefix(newCharacter);\n\n if (isCtrl(event) && twoCharacterTile) {\n event.preventDefault();\n handleCharacterChange(twoCharacterTile);\n } else if (config.hasCharacter(newCharacter) || newCharacter === BLANK) {\n handleCharacterChange(newCharacter);\n }\n\n _onKeyDown(event);\n }\n });\n }, [config, handleCharacterChange, _onKeyDown]);\n return /*#__PURE__*/_jsx(Tile, {\n autoFocus: index === 0,\n className: styles.tile,\n character: character === null ? undefined : character,\n highlighted: tile !== null,\n inputRef: inputRef,\n isBlank: character === BLANK,\n placeholder: translate('rack.placeholder')[index],\n points: points,\n raised: true,\n size: TILE_SIZE,\n tabIndex: index === 0 ? undefined : -1,\n onFocus: handleFocus,\n onKeyDown: handleKeyDown\n }, index);\n};\n\nexport default RackTile;","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { BLANK } from '@scrabble-solver/constants';\nimport classNames from 'classnames';\nimport React, { createRef, useCallback, useMemo, useRef } from 'react';\nimport { createArray, createKeyboardNavigation, zipCharactersAndTiles } from 'lib';\nimport { selectConfig, selectRack, selectResultCandidateTiles, useTypedSelector } from 'state';\nimport styles from './Rack.module.scss';\nimport RackTile from './RackTile';\n\nvar Rack = function Rack(_ref) {\n var className = _ref.className;\n var config = useTypedSelector(selectConfig);\n var rack = useTypedSelector(selectRack);\n var resultCandidateTiles = useTypedSelector(selectResultCandidateTiles);\n var tiles = useMemo(function () {\n return zipCharactersAndTiles(rack, resultCandidateTiles);\n }, [rack, resultCandidateTiles]);\n var tilesCount = tiles.length;\n var tilesRefs = useMemo(function () {\n return createArray(tilesCount).map(function () {\n return /*#__PURE__*/createRef();\n });\n }, [tilesCount]);\n var activeIndexRef = useRef();\n var changeActiveIndex = useCallback(function (offset) {\n var nextActiveIndex = Math.min(Math.max((activeIndexRef.current || 0) + offset, 0), tilesCount - 1);\n var tileRef = tilesRefs[nextActiveIndex].current;\n\n if (tileRef) {\n tileRef.focus();\n }\n\n activeIndexRef.current = nextActiveIndex;\n }, [activeIndexRef, tilesCount, tilesRefs]);\n var onKeyDown = useMemo(function () {\n return createKeyboardNavigation({\n onArrowLeft: function onArrowLeft(event) {\n event.preventDefault();\n changeActiveIndex(-1);\n },\n onArrowRight: function onArrowRight(event) {\n event.preventDefault();\n changeActiveIndex(1);\n },\n onBackspace: function onBackspace() {\n changeActiveIndex(-1);\n },\n onKeyDown: function onKeyDown(event) {\n var character = event.key.toLowerCase();\n\n if (config.hasCharacter(character) || character === BLANK) {\n changeActiveIndex(1);\n }\n }\n });\n }, [changeActiveIndex, config]);\n return /*#__PURE__*/_jsx(\"div\", {\n className: classNames(styles.rack, className),\n children: tiles.map(function (_ref2, index) {\n var character = _ref2.character,\n tile = _ref2.tile;\n return /*#__PURE__*/_jsx(RackTile, {\n activeIndexRef: activeIndexRef,\n character: character,\n index: index,\n inputRef: tilesRefs[index],\n tile: tile,\n onKeyDown: onKeyDown\n }, index);\n })\n });\n};\n\nexport default Rack;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport styles from './Radio.module.scss';\n\nvar Radio = function Radio(_ref) {\n var checked = _ref.checked,\n children = _ref.children,\n className = _ref.className,\n disabled = _ref.disabled,\n id = _ref.id,\n name = _ref.name,\n title = _ref.title,\n value = _ref.value,\n onChange = _ref.onChange;\n return /*#__PURE__*/_jsxs(\"label\", {\n className: classNames(styles.radio, className, _defineProperty({}, styles.checked, checked)),\n htmlFor: id,\n title: title,\n children: [/*#__PURE__*/_jsx(\"input\", {\n checked: checked,\n className: styles.input,\n disabled: disabled,\n id: id,\n name: name,\n type: \"radio\",\n value: value,\n onChange: onChange\n }), /*#__PURE__*/_jsx(\"div\", {\n className: styles.icon\n }), /*#__PURE__*/_jsx(\"div\", {\n className: styles.content,\n children: children\n })]\n });\n};\n\nexport default Radio;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { BLANK } from '@scrabble-solver/constants';\nimport classNames from 'classnames';\nimport React from 'react';\nimport { REMAINING_TILES_TILE_SIZE } from 'parameters';\nimport { selectCharacterPoints, useTypedSelector } from 'state';\nimport Tile from '../Tile';\nimport styles from './Character.module.scss';\n\nvar Character = function Character(_ref) {\n var _classNames;\n\n var tile = _ref.tile;\n var character = tile.character,\n count = tile.count,\n usedCount = tile.usedCount;\n var remainingCount = count - usedCount;\n var points = useTypedSelector(function (state) {\n return selectCharacterPoints(state, character);\n });\n return /*#__PURE__*/_jsxs(\"div\", {\n className: classNames(styles.character, (_classNames = {}, _defineProperty(_classNames, styles.finished, remainingCount <= 0), _defineProperty(_classNames, styles.overused, remainingCount < 0), _classNames)),\n children: [/*#__PURE__*/_jsx(Tile, {\n character: character,\n className: styles.tile,\n disabled: true,\n isBlank: character === BLANK,\n points: points,\n raised: true,\n size: REMAINING_TILES_TILE_SIZE\n }), /*#__PURE__*/_jsxs(\"div\", {\n className: styles.count,\n children: [remainingCount, \" / \", count]\n })]\n }, character);\n};\n\nexport default Character;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from 'react';\nimport { selectRemainingTilesGroups, useTranslate, useTypedSelector } from 'state';\nimport Sidebar from '../Sidebar';\nimport Character from './Character';\nimport styles from './RemainingTiles.module.scss';\n\nvar RemainingTiles = function RemainingTiles(_ref) {\n var className = _ref.className,\n isOpen = _ref.isOpen,\n onClose = _ref.onClose;\n var translate = useTranslate();\n var groups = useTypedSelector(selectRemainingTilesGroups);\n return /*#__PURE__*/_jsx(Sidebar, {\n className: className,\n isOpen: isOpen,\n title: translate('remaining-tiles'),\n onClose: onClose,\n children: groups.map(function (_ref2) {\n var remainingCount = _ref2.remainingCount,\n tiles = _ref2.tiles,\n translationKey = _ref2.translationKey,\n totalCount = _ref2.totalCount;\n return /*#__PURE__*/_jsxs(\"div\", {\n className: styles.group,\n children: [/*#__PURE__*/_jsx(\"h2\", {\n className: styles.title,\n children: \"\".concat(translate(translationKey), \" (\").concat(remainingCount, \" / \").concat(totalCount, \")\")\n }), /*#__PURE__*/_jsx(\"div\", {\n className: styles.content,\n children: tiles.map(function (tile) {\n return /*#__PURE__*/_jsx(Character, {\n tile: tile\n }, tile.character);\n })\n })]\n }, translationKey);\n })\n });\n};\n\nexport default RemainingTiles;","export default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}","function areInputsEqual(newInputs, lastInputs) {\n if (newInputs.length !== lastInputs.length) {\n return false;\n }\n for (var i = 0; i < newInputs.length; i++) {\n if (newInputs[i] !== lastInputs[i]) {\n return false;\n }\n }\n return true;\n}\n\nfunction memoizeOne(resultFn, isEqual) {\n if (isEqual === void 0) { isEqual = areInputsEqual; }\n var lastThis;\n var lastArgs = [];\n var lastResult;\n var calledOnce = false;\n function memoized() {\n var newArgs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n newArgs[_i] = arguments[_i];\n }\n if (calledOnce && lastThis === this && isEqual(newArgs, lastArgs)) {\n return lastResult;\n }\n lastResult = resultFn.apply(this, newArgs);\n calledOnce = true;\n lastThis = this;\n lastArgs = newArgs;\n return lastResult;\n }\n return memoized;\n}\n\nexport default memoizeOne;\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport memoizeOne from 'memoize-one';\nimport { createElement, PureComponent } from 'react';\nimport _objectWithoutPropertiesLoose from '@babel/runtime/helpers/esm/objectWithoutPropertiesLoose';\n\n// Animation frame based implementation of setTimeout.\n// Inspired by Joe Lambert, https://gist.github.com/joelambert/1002116#file-requesttimeout-js\nvar hasNativePerformanceNow = typeof performance === 'object' && typeof performance.now === 'function';\nvar now = hasNativePerformanceNow ? function () {\n return performance.now();\n} : function () {\n return Date.now();\n};\nfunction cancelTimeout(timeoutID) {\n cancelAnimationFrame(timeoutID.id);\n}\nfunction requestTimeout(callback, delay) {\n var start = now();\n\n function tick() {\n if (now() - start >= delay) {\n callback.call(null);\n } else {\n timeoutID.id = requestAnimationFrame(tick);\n }\n }\n\n var timeoutID = {\n id: requestAnimationFrame(tick)\n };\n return timeoutID;\n}\n\nvar size = -1; // This utility copied from \"dom-helpers\" package.\n\nfunction getScrollbarSize(recalculate) {\n if (recalculate === void 0) {\n recalculate = false;\n }\n\n if (size === -1 || recalculate) {\n var div = document.createElement('div');\n var style = div.style;\n style.width = '50px';\n style.height = '50px';\n style.overflow = 'scroll';\n document.body.appendChild(div);\n size = div.offsetWidth - div.clientWidth;\n document.body.removeChild(div);\n }\n\n return size;\n}\nvar cachedRTLResult = null; // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.\n// Chrome does not seem to adhere; its scrollLeft values are positive (measured relative to the left).\n// Safari's elastic bounce makes detecting this even more complicated wrt potential false positives.\n// The safest way to check this is to intentionally set a negative offset,\n// and then verify that the subsequent \"scroll\" event matches the negative offset.\n// If it does not match, then we can assume a non-standard RTL scroll implementation.\n\nfunction getRTLOffsetType(recalculate) {\n if (recalculate === void 0) {\n recalculate = false;\n }\n\n if (cachedRTLResult === null || recalculate) {\n var outerDiv = document.createElement('div');\n var outerStyle = outerDiv.style;\n outerStyle.width = '50px';\n outerStyle.height = '50px';\n outerStyle.overflow = 'scroll';\n outerStyle.direction = 'rtl';\n var innerDiv = document.createElement('div');\n var innerStyle = innerDiv.style;\n innerStyle.width = '100px';\n innerStyle.height = '100px';\n outerDiv.appendChild(innerDiv);\n document.body.appendChild(outerDiv);\n\n if (outerDiv.scrollLeft > 0) {\n cachedRTLResult = 'positive-descending';\n } else {\n outerDiv.scrollLeft = 1;\n\n if (outerDiv.scrollLeft === 0) {\n cachedRTLResult = 'negative';\n } else {\n cachedRTLResult = 'positive-ascending';\n }\n }\n\n document.body.removeChild(outerDiv);\n return cachedRTLResult;\n }\n\n return cachedRTLResult;\n}\n\nvar IS_SCROLLING_DEBOUNCE_INTERVAL = 150;\n\nvar defaultItemKey = function defaultItemKey(_ref) {\n var columnIndex = _ref.columnIndex,\n data = _ref.data,\n rowIndex = _ref.rowIndex;\n return rowIndex + \":\" + columnIndex;\n}; // In DEV mode, this Set helps us only log a warning once per component instance.\n// This avoids spamming the console every time a render happens.\n\n\nvar devWarningsOverscanCount = null;\nvar devWarningsOverscanRowsColumnsCount = null;\nvar devWarningsTagName = null;\n\nif (process.env.NODE_ENV !== 'production') {\n if (typeof window !== 'undefined' && typeof window.WeakSet !== 'undefined') {\n devWarningsOverscanCount =\n /*#__PURE__*/\n new WeakSet();\n devWarningsOverscanRowsColumnsCount =\n /*#__PURE__*/\n new WeakSet();\n devWarningsTagName =\n /*#__PURE__*/\n new WeakSet();\n }\n}\n\nfunction createGridComponent(_ref2) {\n var _class, _temp;\n\n var getColumnOffset = _ref2.getColumnOffset,\n getColumnStartIndexForOffset = _ref2.getColumnStartIndexForOffset,\n getColumnStopIndexForStartIndex = _ref2.getColumnStopIndexForStartIndex,\n getColumnWidth = _ref2.getColumnWidth,\n getEstimatedTotalHeight = _ref2.getEstimatedTotalHeight,\n getEstimatedTotalWidth = _ref2.getEstimatedTotalWidth,\n getOffsetForColumnAndAlignment = _ref2.getOffsetForColumnAndAlignment,\n getOffsetForRowAndAlignment = _ref2.getOffsetForRowAndAlignment,\n getRowHeight = _ref2.getRowHeight,\n getRowOffset = _ref2.getRowOffset,\n getRowStartIndexForOffset = _ref2.getRowStartIndexForOffset,\n getRowStopIndexForStartIndex = _ref2.getRowStopIndexForStartIndex,\n initInstanceProps = _ref2.initInstanceProps,\n shouldResetStyleCacheOnItemSizeChange = _ref2.shouldResetStyleCacheOnItemSizeChange,\n validateProps = _ref2.validateProps;\n return _temp = _class =\n /*#__PURE__*/\n function (_PureComponent) {\n _inheritsLoose(Grid, _PureComponent);\n\n // Always use explicit constructor for React components.\n // It produces less code after transpilation. (#26)\n // eslint-disable-next-line no-useless-constructor\n function Grid(props) {\n var _this;\n\n _this = _PureComponent.call(this, props) || this;\n _this._instanceProps = initInstanceProps(_this.props, _assertThisInitialized(_assertThisInitialized(_this)));\n _this._resetIsScrollingTimeoutId = null;\n _this._outerRef = void 0;\n _this.state = {\n instance: _assertThisInitialized(_assertThisInitialized(_this)),\n isScrolling: false,\n horizontalScrollDirection: 'forward',\n scrollLeft: typeof _this.props.initialScrollLeft === 'number' ? _this.props.initialScrollLeft : 0,\n scrollTop: typeof _this.props.initialScrollTop === 'number' ? _this.props.initialScrollTop : 0,\n scrollUpdateWasRequested: false,\n verticalScrollDirection: 'forward'\n };\n _this._callOnItemsRendered = void 0;\n _this._callOnItemsRendered = memoizeOne(function (overscanColumnStartIndex, overscanColumnStopIndex, overscanRowStartIndex, overscanRowStopIndex, visibleColumnStartIndex, visibleColumnStopIndex, visibleRowStartIndex, visibleRowStopIndex) {\n return _this.props.onItemsRendered({\n overscanColumnStartIndex: overscanColumnStartIndex,\n overscanColumnStopIndex: overscanColumnStopIndex,\n overscanRowStartIndex: overscanRowStartIndex,\n overscanRowStopIndex: overscanRowStopIndex,\n visibleColumnStartIndex: visibleColumnStartIndex,\n visibleColumnStopIndex: visibleColumnStopIndex,\n visibleRowStartIndex: visibleRowStartIndex,\n visibleRowStopIndex: visibleRowStopIndex\n });\n });\n _this._callOnScroll = void 0;\n _this._callOnScroll = memoizeOne(function (scrollLeft, scrollTop, horizontalScrollDirection, verticalScrollDirection, scrollUpdateWasRequested) {\n return _this.props.onScroll({\n horizontalScrollDirection: horizontalScrollDirection,\n scrollLeft: scrollLeft,\n scrollTop: scrollTop,\n verticalScrollDirection: verticalScrollDirection,\n scrollUpdateWasRequested: scrollUpdateWasRequested\n });\n });\n _this._getItemStyle = void 0;\n\n _this._getItemStyle = function (rowIndex, columnIndex) {\n var _this$props = _this.props,\n columnWidth = _this$props.columnWidth,\n direction = _this$props.direction,\n rowHeight = _this$props.rowHeight;\n\n var itemStyleCache = _this._getItemStyleCache(shouldResetStyleCacheOnItemSizeChange && columnWidth, shouldResetStyleCacheOnItemSizeChange && direction, shouldResetStyleCacheOnItemSizeChange && rowHeight);\n\n var key = rowIndex + \":\" + columnIndex;\n var style;\n\n if (itemStyleCache.hasOwnProperty(key)) {\n style = itemStyleCache[key];\n } else {\n var _offset = getColumnOffset(_this.props, columnIndex, _this._instanceProps);\n\n var isRtl = direction === 'rtl';\n itemStyleCache[key] = style = {\n position: 'absolute',\n left: isRtl ? undefined : _offset,\n right: isRtl ? _offset : undefined,\n top: getRowOffset(_this.props, rowIndex, _this._instanceProps),\n height: getRowHeight(_this.props, rowIndex, _this._instanceProps),\n width: getColumnWidth(_this.props, columnIndex, _this._instanceProps)\n };\n }\n\n return style;\n };\n\n _this._getItemStyleCache = void 0;\n _this._getItemStyleCache = memoizeOne(function (_, __, ___) {\n return {};\n });\n\n _this._onScroll = function (event) {\n var _event$currentTarget = event.currentTarget,\n clientHeight = _event$currentTarget.clientHeight,\n clientWidth = _event$currentTarget.clientWidth,\n scrollLeft = _event$currentTarget.scrollLeft,\n scrollTop = _event$currentTarget.scrollTop,\n scrollHeight = _event$currentTarget.scrollHeight,\n scrollWidth = _event$currentTarget.scrollWidth;\n\n _this.setState(function (prevState) {\n if (prevState.scrollLeft === scrollLeft && prevState.scrollTop === scrollTop) {\n // Scroll position may have been updated by cDM/cDU,\n // In which case we don't need to trigger another render,\n // And we don't want to update state.isScrolling.\n return null;\n }\n\n var direction = _this.props.direction; // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.\n // This is not the case for all browsers though (e.g. Chrome reports values as positive, measured relative to the left).\n // It's also easier for this component if we convert offsets to the same format as they would be in for ltr.\n // So the simplest solution is to determine which browser behavior we're dealing with, and convert based on it.\n\n var calculatedScrollLeft = scrollLeft;\n\n if (direction === 'rtl') {\n switch (getRTLOffsetType()) {\n case 'negative':\n calculatedScrollLeft = -scrollLeft;\n break;\n\n case 'positive-descending':\n calculatedScrollLeft = scrollWidth - clientWidth - scrollLeft;\n break;\n }\n } // Prevent Safari's elastic scrolling from causing visual shaking when scrolling past bounds.\n\n\n calculatedScrollLeft = Math.max(0, Math.min(calculatedScrollLeft, scrollWidth - clientWidth));\n var calculatedScrollTop = Math.max(0, Math.min(scrollTop, scrollHeight - clientHeight));\n return {\n isScrolling: true,\n horizontalScrollDirection: prevState.scrollLeft < scrollLeft ? 'forward' : 'backward',\n scrollLeft: calculatedScrollLeft,\n scrollTop: calculatedScrollTop,\n verticalScrollDirection: prevState.scrollTop < scrollTop ? 'forward' : 'backward',\n scrollUpdateWasRequested: false\n };\n }, _this._resetIsScrollingDebounced);\n };\n\n _this._outerRefSetter = function (ref) {\n var outerRef = _this.props.outerRef;\n _this._outerRef = ref;\n\n if (typeof outerRef === 'function') {\n outerRef(ref);\n } else if (outerRef != null && typeof outerRef === 'object' && outerRef.hasOwnProperty('current')) {\n outerRef.current = ref;\n }\n };\n\n _this._resetIsScrollingDebounced = function () {\n if (_this._resetIsScrollingTimeoutId !== null) {\n cancelTimeout(_this._resetIsScrollingTimeoutId);\n }\n\n _this._resetIsScrollingTimeoutId = requestTimeout(_this._resetIsScrolling, IS_SCROLLING_DEBOUNCE_INTERVAL);\n };\n\n _this._resetIsScrolling = function () {\n _this._resetIsScrollingTimeoutId = null;\n\n _this.setState({\n isScrolling: false\n }, function () {\n // Clear style cache after state update has been committed.\n // This way we don't break pure sCU for items that don't use isScrolling param.\n _this._getItemStyleCache(-1);\n });\n };\n\n return _this;\n }\n\n Grid.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {\n validateSharedProps(nextProps, prevState);\n validateProps(nextProps);\n return null;\n };\n\n var _proto = Grid.prototype;\n\n _proto.scrollTo = function scrollTo(_ref3) {\n var scrollLeft = _ref3.scrollLeft,\n scrollTop = _ref3.scrollTop;\n\n if (scrollLeft !== undefined) {\n scrollLeft = Math.max(0, scrollLeft);\n }\n\n if (scrollTop !== undefined) {\n scrollTop = Math.max(0, scrollTop);\n }\n\n this.setState(function (prevState) {\n if (scrollLeft === undefined) {\n scrollLeft = prevState.scrollLeft;\n }\n\n if (scrollTop === undefined) {\n scrollTop = prevState.scrollTop;\n }\n\n if (prevState.scrollLeft === scrollLeft && prevState.scrollTop === scrollTop) {\n return null;\n }\n\n return {\n horizontalScrollDirection: prevState.scrollLeft < scrollLeft ? 'forward' : 'backward',\n scrollLeft: scrollLeft,\n scrollTop: scrollTop,\n scrollUpdateWasRequested: true,\n verticalScrollDirection: prevState.scrollTop < scrollTop ? 'forward' : 'backward'\n };\n }, this._resetIsScrollingDebounced);\n };\n\n _proto.scrollToItem = function scrollToItem(_ref4) {\n var _ref4$align = _ref4.align,\n align = _ref4$align === void 0 ? 'auto' : _ref4$align,\n columnIndex = _ref4.columnIndex,\n rowIndex = _ref4.rowIndex;\n var _this$props2 = this.props,\n columnCount = _this$props2.columnCount,\n height = _this$props2.height,\n rowCount = _this$props2.rowCount,\n width = _this$props2.width;\n var _this$state = this.state,\n scrollLeft = _this$state.scrollLeft,\n scrollTop = _this$state.scrollTop;\n var scrollbarSize = getScrollbarSize();\n\n if (columnIndex !== undefined) {\n columnIndex = Math.max(0, Math.min(columnIndex, columnCount - 1));\n }\n\n if (rowIndex !== undefined) {\n rowIndex = Math.max(0, Math.min(rowIndex, rowCount - 1));\n }\n\n var estimatedTotalHeight = getEstimatedTotalHeight(this.props, this._instanceProps);\n var estimatedTotalWidth = getEstimatedTotalWidth(this.props, this._instanceProps); // The scrollbar size should be considered when scrolling an item into view,\n // to ensure it's fully visible.\n // But we only need to account for its size when it's actually visible.\n\n var horizontalScrollbarSize = estimatedTotalWidth > width ? scrollbarSize : 0;\n var verticalScrollbarSize = estimatedTotalHeight > height ? scrollbarSize : 0;\n this.scrollTo({\n scrollLeft: columnIndex !== undefined ? getOffsetForColumnAndAlignment(this.props, columnIndex, align, scrollLeft, this._instanceProps, verticalScrollbarSize) : scrollLeft,\n scrollTop: rowIndex !== undefined ? getOffsetForRowAndAlignment(this.props, rowIndex, align, scrollTop, this._instanceProps, horizontalScrollbarSize) : scrollTop\n });\n };\n\n _proto.componentDidMount = function componentDidMount() {\n var _this$props3 = this.props,\n initialScrollLeft = _this$props3.initialScrollLeft,\n initialScrollTop = _this$props3.initialScrollTop;\n\n if (this._outerRef != null) {\n var outerRef = this._outerRef;\n\n if (typeof initialScrollLeft === 'number') {\n outerRef.scrollLeft = initialScrollLeft;\n }\n\n if (typeof initialScrollTop === 'number') {\n outerRef.scrollTop = initialScrollTop;\n }\n }\n\n this._callPropsCallbacks();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n var direction = this.props.direction;\n var _this$state2 = this.state,\n scrollLeft = _this$state2.scrollLeft,\n scrollTop = _this$state2.scrollTop,\n scrollUpdateWasRequested = _this$state2.scrollUpdateWasRequested;\n\n if (scrollUpdateWasRequested && this._outerRef != null) {\n // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.\n // This is not the case for all browsers though (e.g. Chrome reports values as positive, measured relative to the left).\n // So we need to determine which browser behavior we're dealing with, and mimic it.\n var outerRef = this._outerRef;\n\n if (direction === 'rtl') {\n switch (getRTLOffsetType()) {\n case 'negative':\n outerRef.scrollLeft = -scrollLeft;\n break;\n\n case 'positive-ascending':\n outerRef.scrollLeft = scrollLeft;\n break;\n\n default:\n var clientWidth = outerRef.clientWidth,\n scrollWidth = outerRef.scrollWidth;\n outerRef.scrollLeft = scrollWidth - clientWidth - scrollLeft;\n break;\n }\n } else {\n outerRef.scrollLeft = Math.max(0, scrollLeft);\n }\n\n outerRef.scrollTop = Math.max(0, scrollTop);\n }\n\n this._callPropsCallbacks();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (this._resetIsScrollingTimeoutId !== null) {\n cancelTimeout(this._resetIsScrollingTimeoutId);\n }\n };\n\n _proto.render = function render() {\n var _this$props4 = this.props,\n children = _this$props4.children,\n className = _this$props4.className,\n columnCount = _this$props4.columnCount,\n direction = _this$props4.direction,\n height = _this$props4.height,\n innerRef = _this$props4.innerRef,\n innerElementType = _this$props4.innerElementType,\n innerTagName = _this$props4.innerTagName,\n itemData = _this$props4.itemData,\n _this$props4$itemKey = _this$props4.itemKey,\n itemKey = _this$props4$itemKey === void 0 ? defaultItemKey : _this$props4$itemKey,\n outerElementType = _this$props4.outerElementType,\n outerTagName = _this$props4.outerTagName,\n rowCount = _this$props4.rowCount,\n style = _this$props4.style,\n useIsScrolling = _this$props4.useIsScrolling,\n width = _this$props4.width;\n var isScrolling = this.state.isScrolling;\n\n var _this$_getHorizontalR = this._getHorizontalRangeToRender(),\n columnStartIndex = _this$_getHorizontalR[0],\n columnStopIndex = _this$_getHorizontalR[1];\n\n var _this$_getVerticalRan = this._getVerticalRangeToRender(),\n rowStartIndex = _this$_getVerticalRan[0],\n rowStopIndex = _this$_getVerticalRan[1];\n\n var items = [];\n\n if (columnCount > 0 && rowCount) {\n for (var _rowIndex = rowStartIndex; _rowIndex <= rowStopIndex; _rowIndex++) {\n for (var _columnIndex = columnStartIndex; _columnIndex <= columnStopIndex; _columnIndex++) {\n items.push(createElement(children, {\n columnIndex: _columnIndex,\n data: itemData,\n isScrolling: useIsScrolling ? isScrolling : undefined,\n key: itemKey({\n columnIndex: _columnIndex,\n data: itemData,\n rowIndex: _rowIndex\n }),\n rowIndex: _rowIndex,\n style: this._getItemStyle(_rowIndex, _columnIndex)\n }));\n }\n }\n } // Read this value AFTER items have been created,\n // So their actual sizes (if variable) are taken into consideration.\n\n\n var estimatedTotalHeight = getEstimatedTotalHeight(this.props, this._instanceProps);\n var estimatedTotalWidth = getEstimatedTotalWidth(this.props, this._instanceProps);\n return createElement(outerElementType || outerTagName || 'div', {\n className: className,\n onScroll: this._onScroll,\n ref: this._outerRefSetter,\n style: _extends({\n position: 'relative',\n height: height,\n width: width,\n overflow: 'auto',\n WebkitOverflowScrolling: 'touch',\n willChange: 'transform',\n direction: direction\n }, style)\n }, createElement(innerElementType || innerTagName || 'div', {\n children: items,\n ref: innerRef,\n style: {\n height: estimatedTotalHeight,\n pointerEvents: isScrolling ? 'none' : undefined,\n width: estimatedTotalWidth\n }\n }));\n };\n\n _proto._callPropsCallbacks = function _callPropsCallbacks() {\n var _this$props5 = this.props,\n columnCount = _this$props5.columnCount,\n onItemsRendered = _this$props5.onItemsRendered,\n onScroll = _this$props5.onScroll,\n rowCount = _this$props5.rowCount;\n\n if (typeof onItemsRendered === 'function') {\n if (columnCount > 0 && rowCount > 0) {\n var _this$_getHorizontalR2 = this._getHorizontalRangeToRender(),\n _overscanColumnStartIndex = _this$_getHorizontalR2[0],\n _overscanColumnStopIndex = _this$_getHorizontalR2[1],\n _visibleColumnStartIndex = _this$_getHorizontalR2[2],\n _visibleColumnStopIndex = _this$_getHorizontalR2[3];\n\n var _this$_getVerticalRan2 = this._getVerticalRangeToRender(),\n _overscanRowStartIndex = _this$_getVerticalRan2[0],\n _overscanRowStopIndex = _this$_getVerticalRan2[1],\n _visibleRowStartIndex = _this$_getVerticalRan2[2],\n _visibleRowStopIndex = _this$_getVerticalRan2[3];\n\n this._callOnItemsRendered(_overscanColumnStartIndex, _overscanColumnStopIndex, _overscanRowStartIndex, _overscanRowStopIndex, _visibleColumnStartIndex, _visibleColumnStopIndex, _visibleRowStartIndex, _visibleRowStopIndex);\n }\n }\n\n if (typeof onScroll === 'function') {\n var _this$state3 = this.state,\n _horizontalScrollDirection = _this$state3.horizontalScrollDirection,\n _scrollLeft = _this$state3.scrollLeft,\n _scrollTop = _this$state3.scrollTop,\n _scrollUpdateWasRequested = _this$state3.scrollUpdateWasRequested,\n _verticalScrollDirection = _this$state3.verticalScrollDirection;\n\n this._callOnScroll(_scrollLeft, _scrollTop, _horizontalScrollDirection, _verticalScrollDirection, _scrollUpdateWasRequested);\n }\n }; // Lazily create and cache item styles while scrolling,\n // So that pure component sCU will prevent re-renders.\n // We maintain this cache, and pass a style prop rather than index,\n // So that List can clear cached styles and force item re-render if necessary.\n\n\n _proto._getHorizontalRangeToRender = function _getHorizontalRangeToRender() {\n var _this$props6 = this.props,\n columnCount = _this$props6.columnCount,\n overscanColumnCount = _this$props6.overscanColumnCount,\n overscanColumnsCount = _this$props6.overscanColumnsCount,\n overscanCount = _this$props6.overscanCount,\n rowCount = _this$props6.rowCount;\n var _this$state4 = this.state,\n horizontalScrollDirection = _this$state4.horizontalScrollDirection,\n isScrolling = _this$state4.isScrolling,\n scrollLeft = _this$state4.scrollLeft;\n var overscanCountResolved = overscanColumnCount || overscanColumnsCount || overscanCount || 1;\n\n if (columnCount === 0 || rowCount === 0) {\n return [0, 0, 0, 0];\n }\n\n var startIndex = getColumnStartIndexForOffset(this.props, scrollLeft, this._instanceProps);\n var stopIndex = getColumnStopIndexForStartIndex(this.props, startIndex, scrollLeft, this._instanceProps); // Overscan by one item in each direction so that tab/focus works.\n // If there isn't at least one extra item, tab loops back around.\n\n var overscanBackward = !isScrolling || horizontalScrollDirection === 'backward' ? Math.max(1, overscanCountResolved) : 1;\n var overscanForward = !isScrolling || horizontalScrollDirection === 'forward' ? Math.max(1, overscanCountResolved) : 1;\n return [Math.max(0, startIndex - overscanBackward), Math.max(0, Math.min(columnCount - 1, stopIndex + overscanForward)), startIndex, stopIndex];\n };\n\n _proto._getVerticalRangeToRender = function _getVerticalRangeToRender() {\n var _this$props7 = this.props,\n columnCount = _this$props7.columnCount,\n overscanCount = _this$props7.overscanCount,\n overscanRowCount = _this$props7.overscanRowCount,\n overscanRowsCount = _this$props7.overscanRowsCount,\n rowCount = _this$props7.rowCount;\n var _this$state5 = this.state,\n isScrolling = _this$state5.isScrolling,\n verticalScrollDirection = _this$state5.verticalScrollDirection,\n scrollTop = _this$state5.scrollTop;\n var overscanCountResolved = overscanRowCount || overscanRowsCount || overscanCount || 1;\n\n if (columnCount === 0 || rowCount === 0) {\n return [0, 0, 0, 0];\n }\n\n var startIndex = getRowStartIndexForOffset(this.props, scrollTop, this._instanceProps);\n var stopIndex = getRowStopIndexForStartIndex(this.props, startIndex, scrollTop, this._instanceProps); // Overscan by one item in each direction so that tab/focus works.\n // If there isn't at least one extra item, tab loops back around.\n\n var overscanBackward = !isScrolling || verticalScrollDirection === 'backward' ? Math.max(1, overscanCountResolved) : 1;\n var overscanForward = !isScrolling || verticalScrollDirection === 'forward' ? Math.max(1, overscanCountResolved) : 1;\n return [Math.max(0, startIndex - overscanBackward), Math.max(0, Math.min(rowCount - 1, stopIndex + overscanForward)), startIndex, stopIndex];\n };\n\n return Grid;\n }(PureComponent), _class.defaultProps = {\n direction: 'ltr',\n itemData: undefined,\n useIsScrolling: false\n }, _temp;\n}\n\nvar validateSharedProps = function validateSharedProps(_ref5, _ref6) {\n var children = _ref5.children,\n direction = _ref5.direction,\n height = _ref5.height,\n innerTagName = _ref5.innerTagName,\n outerTagName = _ref5.outerTagName,\n overscanColumnsCount = _ref5.overscanColumnsCount,\n overscanCount = _ref5.overscanCount,\n overscanRowsCount = _ref5.overscanRowsCount,\n width = _ref5.width;\n var instance = _ref6.instance;\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof overscanCount === 'number') {\n if (devWarningsOverscanCount && !devWarningsOverscanCount.has(instance)) {\n devWarningsOverscanCount.add(instance);\n console.warn('The overscanCount prop has been deprecated. ' + 'Please use the overscanColumnCount and overscanRowCount props instead.');\n }\n }\n\n if (typeof overscanColumnsCount === 'number' || typeof overscanRowsCount === 'number') {\n if (devWarningsOverscanRowsColumnsCount && !devWarningsOverscanRowsColumnsCount.has(instance)) {\n devWarningsOverscanRowsColumnsCount.add(instance);\n console.warn('The overscanColumnsCount and overscanRowsCount props have been deprecated. ' + 'Please use the overscanColumnCount and overscanRowCount props instead.');\n }\n }\n\n if (innerTagName != null || outerTagName != null) {\n if (devWarningsTagName && !devWarningsTagName.has(instance)) {\n devWarningsTagName.add(instance);\n console.warn('The innerTagName and outerTagName props have been deprecated. ' + 'Please use the innerElementType and outerElementType props instead.');\n }\n }\n\n if (children == null) {\n throw Error('An invalid \"children\" prop has been specified. ' + 'Value should be a React component. ' + (\"\\\"\" + (children === null ? 'null' : typeof children) + \"\\\" was specified.\"));\n }\n\n switch (direction) {\n case 'ltr':\n case 'rtl':\n // Valid values\n break;\n\n default:\n throw Error('An invalid \"direction\" prop has been specified. ' + 'Value should be either \"ltr\" or \"rtl\". ' + (\"\\\"\" + direction + \"\\\" was specified.\"));\n }\n\n if (typeof width !== 'number') {\n throw Error('An invalid \"width\" prop has been specified. ' + 'Grids must specify a number for width. ' + (\"\\\"\" + (width === null ? 'null' : typeof width) + \"\\\" was specified.\"));\n }\n\n if (typeof height !== 'number') {\n throw Error('An invalid \"height\" prop has been specified. ' + 'Grids must specify a number for height. ' + (\"\\\"\" + (height === null ? 'null' : typeof height) + \"\\\" was specified.\"));\n }\n }\n};\n\nvar DEFAULT_ESTIMATED_ITEM_SIZE = 50;\n\nvar getEstimatedTotalHeight = function getEstimatedTotalHeight(_ref, _ref2) {\n var rowCount = _ref.rowCount;\n var rowMetadataMap = _ref2.rowMetadataMap,\n estimatedRowHeight = _ref2.estimatedRowHeight,\n lastMeasuredRowIndex = _ref2.lastMeasuredRowIndex;\n var totalSizeOfMeasuredRows = 0; // Edge case check for when the number of items decreases while a scroll is in progress.\n // https://github.com/bvaughn/react-window/pull/138\n\n if (lastMeasuredRowIndex >= rowCount) {\n lastMeasuredRowIndex = rowCount - 1;\n }\n\n if (lastMeasuredRowIndex >= 0) {\n var itemMetadata = rowMetadataMap[lastMeasuredRowIndex];\n totalSizeOfMeasuredRows = itemMetadata.offset + itemMetadata.size;\n }\n\n var numUnmeasuredItems = rowCount - lastMeasuredRowIndex - 1;\n var totalSizeOfUnmeasuredItems = numUnmeasuredItems * estimatedRowHeight;\n return totalSizeOfMeasuredRows + totalSizeOfUnmeasuredItems;\n};\n\nvar getEstimatedTotalWidth = function getEstimatedTotalWidth(_ref3, _ref4) {\n var columnCount = _ref3.columnCount;\n var columnMetadataMap = _ref4.columnMetadataMap,\n estimatedColumnWidth = _ref4.estimatedColumnWidth,\n lastMeasuredColumnIndex = _ref4.lastMeasuredColumnIndex;\n var totalSizeOfMeasuredRows = 0; // Edge case check for when the number of items decreases while a scroll is in progress.\n // https://github.com/bvaughn/react-window/pull/138\n\n if (lastMeasuredColumnIndex >= columnCount) {\n lastMeasuredColumnIndex = columnCount - 1;\n }\n\n if (lastMeasuredColumnIndex >= 0) {\n var itemMetadata = columnMetadataMap[lastMeasuredColumnIndex];\n totalSizeOfMeasuredRows = itemMetadata.offset + itemMetadata.size;\n }\n\n var numUnmeasuredItems = columnCount - lastMeasuredColumnIndex - 1;\n var totalSizeOfUnmeasuredItems = numUnmeasuredItems * estimatedColumnWidth;\n return totalSizeOfMeasuredRows + totalSizeOfUnmeasuredItems;\n};\n\nvar getItemMetadata = function getItemMetadata(itemType, props, index, instanceProps) {\n var itemMetadataMap, itemSize, lastMeasuredIndex;\n\n if (itemType === 'column') {\n itemMetadataMap = instanceProps.columnMetadataMap;\n itemSize = props.columnWidth;\n lastMeasuredIndex = instanceProps.lastMeasuredColumnIndex;\n } else {\n itemMetadataMap = instanceProps.rowMetadataMap;\n itemSize = props.rowHeight;\n lastMeasuredIndex = instanceProps.lastMeasuredRowIndex;\n }\n\n if (index > lastMeasuredIndex) {\n var offset = 0;\n\n if (lastMeasuredIndex >= 0) {\n var itemMetadata = itemMetadataMap[lastMeasuredIndex];\n offset = itemMetadata.offset + itemMetadata.size;\n }\n\n for (var i = lastMeasuredIndex + 1; i <= index; i++) {\n var size = itemSize(i);\n itemMetadataMap[i] = {\n offset: offset,\n size: size\n };\n offset += size;\n }\n\n if (itemType === 'column') {\n instanceProps.lastMeasuredColumnIndex = index;\n } else {\n instanceProps.lastMeasuredRowIndex = index;\n }\n }\n\n return itemMetadataMap[index];\n};\n\nvar findNearestItem = function findNearestItem(itemType, props, instanceProps, offset) {\n var itemMetadataMap, lastMeasuredIndex;\n\n if (itemType === 'column') {\n itemMetadataMap = instanceProps.columnMetadataMap;\n lastMeasuredIndex = instanceProps.lastMeasuredColumnIndex;\n } else {\n itemMetadataMap = instanceProps.rowMetadataMap;\n lastMeasuredIndex = instanceProps.lastMeasuredRowIndex;\n }\n\n var lastMeasuredItemOffset = lastMeasuredIndex > 0 ? itemMetadataMap[lastMeasuredIndex].offset : 0;\n\n if (lastMeasuredItemOffset >= offset) {\n // If we've already measured items within this range just use a binary search as it's faster.\n return findNearestItemBinarySearch(itemType, props, instanceProps, lastMeasuredIndex, 0, offset);\n } else {\n // If we haven't yet measured this high, fallback to an exponential search with an inner binary search.\n // The exponential search avoids pre-computing sizes for the full set of items as a binary search would.\n // The overall complexity for this approach is O(log n).\n return findNearestItemExponentialSearch(itemType, props, instanceProps, Math.max(0, lastMeasuredIndex), offset);\n }\n};\n\nvar findNearestItemBinarySearch = function findNearestItemBinarySearch(itemType, props, instanceProps, high, low, offset) {\n while (low <= high) {\n var middle = low + Math.floor((high - low) / 2);\n var currentOffset = getItemMetadata(itemType, props, middle, instanceProps).offset;\n\n if (currentOffset === offset) {\n return middle;\n } else if (currentOffset < offset) {\n low = middle + 1;\n } else if (currentOffset > offset) {\n high = middle - 1;\n }\n }\n\n if (low > 0) {\n return low - 1;\n } else {\n return 0;\n }\n};\n\nvar findNearestItemExponentialSearch = function findNearestItemExponentialSearch(itemType, props, instanceProps, index, offset) {\n var itemCount = itemType === 'column' ? props.columnCount : props.rowCount;\n var interval = 1;\n\n while (index < itemCount && getItemMetadata(itemType, props, index, instanceProps).offset < offset) {\n index += interval;\n interval *= 2;\n }\n\n return findNearestItemBinarySearch(itemType, props, instanceProps, Math.min(index, itemCount - 1), Math.floor(index / 2), offset);\n};\n\nvar getOffsetForIndexAndAlignment = function getOffsetForIndexAndAlignment(itemType, props, index, align, scrollOffset, instanceProps, scrollbarSize) {\n var size = itemType === 'column' ? props.width : props.height;\n var itemMetadata = getItemMetadata(itemType, props, index, instanceProps); // Get estimated total size after ItemMetadata is computed,\n // To ensure it reflects actual measurements instead of just estimates.\n\n var estimatedTotalSize = itemType === 'column' ? getEstimatedTotalWidth(props, instanceProps) : getEstimatedTotalHeight(props, instanceProps);\n var maxOffset = Math.max(0, Math.min(estimatedTotalSize - size, itemMetadata.offset));\n var minOffset = Math.max(0, itemMetadata.offset - size + scrollbarSize + itemMetadata.size);\n\n if (align === 'smart') {\n if (scrollOffset >= minOffset - size && scrollOffset <= maxOffset + size) {\n align = 'auto';\n } else {\n align = 'center';\n }\n }\n\n switch (align) {\n case 'start':\n return maxOffset;\n\n case 'end':\n return minOffset;\n\n case 'center':\n return Math.round(minOffset + (maxOffset - minOffset) / 2);\n\n case 'auto':\n default:\n if (scrollOffset >= minOffset && scrollOffset <= maxOffset) {\n return scrollOffset;\n } else if (minOffset > maxOffset) {\n // Because we only take into account the scrollbar size when calculating minOffset\n // this value can be larger than maxOffset when at the end of the list\n return minOffset;\n } else if (scrollOffset < minOffset) {\n return minOffset;\n } else {\n return maxOffset;\n }\n\n }\n};\n\nvar VariableSizeGrid =\n/*#__PURE__*/\ncreateGridComponent({\n getColumnOffset: function getColumnOffset(props, index, instanceProps) {\n return getItemMetadata('column', props, index, instanceProps).offset;\n },\n getColumnStartIndexForOffset: function getColumnStartIndexForOffset(props, scrollLeft, instanceProps) {\n return findNearestItem('column', props, instanceProps, scrollLeft);\n },\n getColumnStopIndexForStartIndex: function getColumnStopIndexForStartIndex(props, startIndex, scrollLeft, instanceProps) {\n var columnCount = props.columnCount,\n width = props.width;\n var itemMetadata = getItemMetadata('column', props, startIndex, instanceProps);\n var maxOffset = scrollLeft + width;\n var offset = itemMetadata.offset + itemMetadata.size;\n var stopIndex = startIndex;\n\n while (stopIndex < columnCount - 1 && offset < maxOffset) {\n stopIndex++;\n offset += getItemMetadata('column', props, stopIndex, instanceProps).size;\n }\n\n return stopIndex;\n },\n getColumnWidth: function getColumnWidth(props, index, instanceProps) {\n return instanceProps.columnMetadataMap[index].size;\n },\n getEstimatedTotalHeight: getEstimatedTotalHeight,\n getEstimatedTotalWidth: getEstimatedTotalWidth,\n getOffsetForColumnAndAlignment: function getOffsetForColumnAndAlignment(props, index, align, scrollOffset, instanceProps, scrollbarSize) {\n return getOffsetForIndexAndAlignment('column', props, index, align, scrollOffset, instanceProps, scrollbarSize);\n },\n getOffsetForRowAndAlignment: function getOffsetForRowAndAlignment(props, index, align, scrollOffset, instanceProps, scrollbarSize) {\n return getOffsetForIndexAndAlignment('row', props, index, align, scrollOffset, instanceProps, scrollbarSize);\n },\n getRowOffset: function getRowOffset(props, index, instanceProps) {\n return getItemMetadata('row', props, index, instanceProps).offset;\n },\n getRowHeight: function getRowHeight(props, index, instanceProps) {\n return instanceProps.rowMetadataMap[index].size;\n },\n getRowStartIndexForOffset: function getRowStartIndexForOffset(props, scrollTop, instanceProps) {\n return findNearestItem('row', props, instanceProps, scrollTop);\n },\n getRowStopIndexForStartIndex: function getRowStopIndexForStartIndex(props, startIndex, scrollTop, instanceProps) {\n var rowCount = props.rowCount,\n height = props.height;\n var itemMetadata = getItemMetadata('row', props, startIndex, instanceProps);\n var maxOffset = scrollTop + height;\n var offset = itemMetadata.offset + itemMetadata.size;\n var stopIndex = startIndex;\n\n while (stopIndex < rowCount - 1 && offset < maxOffset) {\n stopIndex++;\n offset += getItemMetadata('row', props, stopIndex, instanceProps).size;\n }\n\n return stopIndex;\n },\n initInstanceProps: function initInstanceProps(props, instance) {\n var _ref5 = props,\n estimatedColumnWidth = _ref5.estimatedColumnWidth,\n estimatedRowHeight = _ref5.estimatedRowHeight;\n var instanceProps = {\n columnMetadataMap: {},\n estimatedColumnWidth: estimatedColumnWidth || DEFAULT_ESTIMATED_ITEM_SIZE,\n estimatedRowHeight: estimatedRowHeight || DEFAULT_ESTIMATED_ITEM_SIZE,\n lastMeasuredColumnIndex: -1,\n lastMeasuredRowIndex: -1,\n rowMetadataMap: {}\n };\n\n instance.resetAfterColumnIndex = function (columnIndex, shouldForceUpdate) {\n if (shouldForceUpdate === void 0) {\n shouldForceUpdate = true;\n }\n\n instance.resetAfterIndices({\n columnIndex: columnIndex,\n shouldForceUpdate: shouldForceUpdate\n });\n };\n\n instance.resetAfterRowIndex = function (rowIndex, shouldForceUpdate) {\n if (shouldForceUpdate === void 0) {\n shouldForceUpdate = true;\n }\n\n instance.resetAfterIndices({\n rowIndex: rowIndex,\n shouldForceUpdate: shouldForceUpdate\n });\n };\n\n instance.resetAfterIndices = function (_ref6) {\n var columnIndex = _ref6.columnIndex,\n rowIndex = _ref6.rowIndex,\n _ref6$shouldForceUpda = _ref6.shouldForceUpdate,\n shouldForceUpdate = _ref6$shouldForceUpda === void 0 ? true : _ref6$shouldForceUpda;\n\n if (typeof columnIndex === 'number') {\n instanceProps.lastMeasuredColumnIndex = Math.min(instanceProps.lastMeasuredColumnIndex, columnIndex - 1);\n }\n\n if (typeof rowIndex === 'number') {\n instanceProps.lastMeasuredRowIndex = Math.min(instanceProps.lastMeasuredRowIndex, rowIndex - 1);\n } // We could potentially optimize further by only evicting styles after this index,\n // But since styles are only cached while scrolling is in progress-\n // It seems an unnecessary optimization.\n // It's unlikely that resetAfterIndex() will be called while a user is scrolling.\n\n\n instance._getItemStyleCache(-1);\n\n if (shouldForceUpdate) {\n instance.forceUpdate();\n }\n };\n\n return instanceProps;\n },\n shouldResetStyleCacheOnItemSizeChange: false,\n validateProps: function validateProps(_ref7) {\n var columnWidth = _ref7.columnWidth,\n rowHeight = _ref7.rowHeight;\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof columnWidth !== 'function') {\n throw Error('An invalid \"columnWidth\" prop has been specified. ' + 'Value should be a function. ' + (\"\\\"\" + (columnWidth === null ? 'null' : typeof columnWidth) + \"\\\" was specified.\"));\n } else if (typeof rowHeight !== 'function') {\n throw Error('An invalid \"rowHeight\" prop has been specified. ' + 'Value should be a function. ' + (\"\\\"\" + (rowHeight === null ? 'null' : typeof rowHeight) + \"\\\" was specified.\"));\n }\n }\n }\n});\n\nvar IS_SCROLLING_DEBOUNCE_INTERVAL$1 = 150;\n\nvar defaultItemKey$1 = function defaultItemKey(index, data) {\n return index;\n}; // In DEV mode, this Set helps us only log a warning once per component instance.\n// This avoids spamming the console every time a render happens.\n\n\nvar devWarningsDirection = null;\nvar devWarningsTagName$1 = null;\n\nif (process.env.NODE_ENV !== 'production') {\n if (typeof window !== 'undefined' && typeof window.WeakSet !== 'undefined') {\n devWarningsDirection =\n /*#__PURE__*/\n new WeakSet();\n devWarningsTagName$1 =\n /*#__PURE__*/\n new WeakSet();\n }\n}\n\nfunction createListComponent(_ref) {\n var _class, _temp;\n\n var getItemOffset = _ref.getItemOffset,\n getEstimatedTotalSize = _ref.getEstimatedTotalSize,\n getItemSize = _ref.getItemSize,\n getOffsetForIndexAndAlignment = _ref.getOffsetForIndexAndAlignment,\n getStartIndexForOffset = _ref.getStartIndexForOffset,\n getStopIndexForStartIndex = _ref.getStopIndexForStartIndex,\n initInstanceProps = _ref.initInstanceProps,\n shouldResetStyleCacheOnItemSizeChange = _ref.shouldResetStyleCacheOnItemSizeChange,\n validateProps = _ref.validateProps;\n return _temp = _class =\n /*#__PURE__*/\n function (_PureComponent) {\n _inheritsLoose(List, _PureComponent);\n\n // Always use explicit constructor for React components.\n // It produces less code after transpilation. (#26)\n // eslint-disable-next-line no-useless-constructor\n function List(props) {\n var _this;\n\n _this = _PureComponent.call(this, props) || this;\n _this._instanceProps = initInstanceProps(_this.props, _assertThisInitialized(_assertThisInitialized(_this)));\n _this._outerRef = void 0;\n _this._resetIsScrollingTimeoutId = null;\n _this.state = {\n instance: _assertThisInitialized(_assertThisInitialized(_this)),\n isScrolling: false,\n scrollDirection: 'forward',\n scrollOffset: typeof _this.props.initialScrollOffset === 'number' ? _this.props.initialScrollOffset : 0,\n scrollUpdateWasRequested: false\n };\n _this._callOnItemsRendered = void 0;\n _this._callOnItemsRendered = memoizeOne(function (overscanStartIndex, overscanStopIndex, visibleStartIndex, visibleStopIndex) {\n return _this.props.onItemsRendered({\n overscanStartIndex: overscanStartIndex,\n overscanStopIndex: overscanStopIndex,\n visibleStartIndex: visibleStartIndex,\n visibleStopIndex: visibleStopIndex\n });\n });\n _this._callOnScroll = void 0;\n _this._callOnScroll = memoizeOne(function (scrollDirection, scrollOffset, scrollUpdateWasRequested) {\n return _this.props.onScroll({\n scrollDirection: scrollDirection,\n scrollOffset: scrollOffset,\n scrollUpdateWasRequested: scrollUpdateWasRequested\n });\n });\n _this._getItemStyle = void 0;\n\n _this._getItemStyle = function (index) {\n var _this$props = _this.props,\n direction = _this$props.direction,\n itemSize = _this$props.itemSize,\n layout = _this$props.layout;\n\n var itemStyleCache = _this._getItemStyleCache(shouldResetStyleCacheOnItemSizeChange && itemSize, shouldResetStyleCacheOnItemSizeChange && layout, shouldResetStyleCacheOnItemSizeChange && direction);\n\n var style;\n\n if (itemStyleCache.hasOwnProperty(index)) {\n style = itemStyleCache[index];\n } else {\n var _offset = getItemOffset(_this.props, index, _this._instanceProps);\n\n var size = getItemSize(_this.props, index, _this._instanceProps); // TODO Deprecate direction \"horizontal\"\n\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n var isRtl = direction === 'rtl';\n var offsetHorizontal = isHorizontal ? _offset : 0;\n itemStyleCache[index] = style = {\n position: 'absolute',\n left: isRtl ? undefined : offsetHorizontal,\n right: isRtl ? offsetHorizontal : undefined,\n top: !isHorizontal ? _offset : 0,\n height: !isHorizontal ? size : '100%',\n width: isHorizontal ? size : '100%'\n };\n }\n\n return style;\n };\n\n _this._getItemStyleCache = void 0;\n _this._getItemStyleCache = memoizeOne(function (_, __, ___) {\n return {};\n });\n\n _this._onScrollHorizontal = function (event) {\n var _event$currentTarget = event.currentTarget,\n clientWidth = _event$currentTarget.clientWidth,\n scrollLeft = _event$currentTarget.scrollLeft,\n scrollWidth = _event$currentTarget.scrollWidth;\n\n _this.setState(function (prevState) {\n if (prevState.scrollOffset === scrollLeft) {\n // Scroll position may have been updated by cDM/cDU,\n // In which case we don't need to trigger another render,\n // And we don't want to update state.isScrolling.\n return null;\n }\n\n var direction = _this.props.direction;\n var scrollOffset = scrollLeft;\n\n if (direction === 'rtl') {\n // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.\n // This is not the case for all browsers though (e.g. Chrome reports values as positive, measured relative to the left).\n // It's also easier for this component if we convert offsets to the same format as they would be in for ltr.\n // So the simplest solution is to determine which browser behavior we're dealing with, and convert based on it.\n switch (getRTLOffsetType()) {\n case 'negative':\n scrollOffset = -scrollLeft;\n break;\n\n case 'positive-descending':\n scrollOffset = scrollWidth - clientWidth - scrollLeft;\n break;\n }\n } // Prevent Safari's elastic scrolling from causing visual shaking when scrolling past bounds.\n\n\n scrollOffset = Math.max(0, Math.min(scrollOffset, scrollWidth - clientWidth));\n return {\n isScrolling: true,\n scrollDirection: prevState.scrollOffset < scrollLeft ? 'forward' : 'backward',\n scrollOffset: scrollOffset,\n scrollUpdateWasRequested: false\n };\n }, _this._resetIsScrollingDebounced);\n };\n\n _this._onScrollVertical = function (event) {\n var _event$currentTarget2 = event.currentTarget,\n clientHeight = _event$currentTarget2.clientHeight,\n scrollHeight = _event$currentTarget2.scrollHeight,\n scrollTop = _event$currentTarget2.scrollTop;\n\n _this.setState(function (prevState) {\n if (prevState.scrollOffset === scrollTop) {\n // Scroll position may have been updated by cDM/cDU,\n // In which case we don't need to trigger another render,\n // And we don't want to update state.isScrolling.\n return null;\n } // Prevent Safari's elastic scrolling from causing visual shaking when scrolling past bounds.\n\n\n var scrollOffset = Math.max(0, Math.min(scrollTop, scrollHeight - clientHeight));\n return {\n isScrolling: true,\n scrollDirection: prevState.scrollOffset < scrollOffset ? 'forward' : 'backward',\n scrollOffset: scrollOffset,\n scrollUpdateWasRequested: false\n };\n }, _this._resetIsScrollingDebounced);\n };\n\n _this._outerRefSetter = function (ref) {\n var outerRef = _this.props.outerRef;\n _this._outerRef = ref;\n\n if (typeof outerRef === 'function') {\n outerRef(ref);\n } else if (outerRef != null && typeof outerRef === 'object' && outerRef.hasOwnProperty('current')) {\n outerRef.current = ref;\n }\n };\n\n _this._resetIsScrollingDebounced = function () {\n if (_this._resetIsScrollingTimeoutId !== null) {\n cancelTimeout(_this._resetIsScrollingTimeoutId);\n }\n\n _this._resetIsScrollingTimeoutId = requestTimeout(_this._resetIsScrolling, IS_SCROLLING_DEBOUNCE_INTERVAL$1);\n };\n\n _this._resetIsScrolling = function () {\n _this._resetIsScrollingTimeoutId = null;\n\n _this.setState({\n isScrolling: false\n }, function () {\n // Clear style cache after state update has been committed.\n // This way we don't break pure sCU for items that don't use isScrolling param.\n _this._getItemStyleCache(-1, null);\n });\n };\n\n return _this;\n }\n\n List.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {\n validateSharedProps$1(nextProps, prevState);\n validateProps(nextProps);\n return null;\n };\n\n var _proto = List.prototype;\n\n _proto.scrollTo = function scrollTo(scrollOffset) {\n scrollOffset = Math.max(0, scrollOffset);\n this.setState(function (prevState) {\n if (prevState.scrollOffset === scrollOffset) {\n return null;\n }\n\n return {\n scrollDirection: prevState.scrollOffset < scrollOffset ? 'forward' : 'backward',\n scrollOffset: scrollOffset,\n scrollUpdateWasRequested: true\n };\n }, this._resetIsScrollingDebounced);\n };\n\n _proto.scrollToItem = function scrollToItem(index, align) {\n if (align === void 0) {\n align = 'auto';\n }\n\n var itemCount = this.props.itemCount;\n var scrollOffset = this.state.scrollOffset;\n index = Math.max(0, Math.min(index, itemCount - 1));\n this.scrollTo(getOffsetForIndexAndAlignment(this.props, index, align, scrollOffset, this._instanceProps));\n };\n\n _proto.componentDidMount = function componentDidMount() {\n var _this$props2 = this.props,\n direction = _this$props2.direction,\n initialScrollOffset = _this$props2.initialScrollOffset,\n layout = _this$props2.layout;\n\n if (typeof initialScrollOffset === 'number' && this._outerRef != null) {\n var outerRef = this._outerRef; // TODO Deprecate direction \"horizontal\"\n\n if (direction === 'horizontal' || layout === 'horizontal') {\n outerRef.scrollLeft = initialScrollOffset;\n } else {\n outerRef.scrollTop = initialScrollOffset;\n }\n }\n\n this._callPropsCallbacks();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n var _this$props3 = this.props,\n direction = _this$props3.direction,\n layout = _this$props3.layout;\n var _this$state = this.state,\n scrollOffset = _this$state.scrollOffset,\n scrollUpdateWasRequested = _this$state.scrollUpdateWasRequested;\n\n if (scrollUpdateWasRequested && this._outerRef != null) {\n var outerRef = this._outerRef; // TODO Deprecate direction \"horizontal\"\n\n if (direction === 'horizontal' || layout === 'horizontal') {\n if (direction === 'rtl') {\n // TRICKY According to the spec, scrollLeft should be negative for RTL aligned elements.\n // This is not the case for all browsers though (e.g. Chrome reports values as positive, measured relative to the left).\n // So we need to determine which browser behavior we're dealing with, and mimic it.\n switch (getRTLOffsetType()) {\n case 'negative':\n outerRef.scrollLeft = -scrollOffset;\n break;\n\n case 'positive-ascending':\n outerRef.scrollLeft = scrollOffset;\n break;\n\n default:\n var clientWidth = outerRef.clientWidth,\n scrollWidth = outerRef.scrollWidth;\n outerRef.scrollLeft = scrollWidth - clientWidth - scrollOffset;\n break;\n }\n } else {\n outerRef.scrollLeft = scrollOffset;\n }\n } else {\n outerRef.scrollTop = scrollOffset;\n }\n }\n\n this._callPropsCallbacks();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (this._resetIsScrollingTimeoutId !== null) {\n cancelTimeout(this._resetIsScrollingTimeoutId);\n }\n };\n\n _proto.render = function render() {\n var _this$props4 = this.props,\n children = _this$props4.children,\n className = _this$props4.className,\n direction = _this$props4.direction,\n height = _this$props4.height,\n innerRef = _this$props4.innerRef,\n innerElementType = _this$props4.innerElementType,\n innerTagName = _this$props4.innerTagName,\n itemCount = _this$props4.itemCount,\n itemData = _this$props4.itemData,\n _this$props4$itemKey = _this$props4.itemKey,\n itemKey = _this$props4$itemKey === void 0 ? defaultItemKey$1 : _this$props4$itemKey,\n layout = _this$props4.layout,\n outerElementType = _this$props4.outerElementType,\n outerTagName = _this$props4.outerTagName,\n style = _this$props4.style,\n useIsScrolling = _this$props4.useIsScrolling,\n width = _this$props4.width;\n var isScrolling = this.state.isScrolling; // TODO Deprecate direction \"horizontal\"\n\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n var onScroll = isHorizontal ? this._onScrollHorizontal : this._onScrollVertical;\n\n var _this$_getRangeToRend = this._getRangeToRender(),\n startIndex = _this$_getRangeToRend[0],\n stopIndex = _this$_getRangeToRend[1];\n\n var items = [];\n\n if (itemCount > 0) {\n for (var _index = startIndex; _index <= stopIndex; _index++) {\n items.push(createElement(children, {\n data: itemData,\n key: itemKey(_index, itemData),\n index: _index,\n isScrolling: useIsScrolling ? isScrolling : undefined,\n style: this._getItemStyle(_index)\n }));\n }\n } // Read this value AFTER items have been created,\n // So their actual sizes (if variable) are taken into consideration.\n\n\n var estimatedTotalSize = getEstimatedTotalSize(this.props, this._instanceProps);\n return createElement(outerElementType || outerTagName || 'div', {\n className: className,\n onScroll: onScroll,\n ref: this._outerRefSetter,\n style: _extends({\n position: 'relative',\n height: height,\n width: width,\n overflow: 'auto',\n WebkitOverflowScrolling: 'touch',\n willChange: 'transform',\n direction: direction\n }, style)\n }, createElement(innerElementType || innerTagName || 'div', {\n children: items,\n ref: innerRef,\n style: {\n height: isHorizontal ? '100%' : estimatedTotalSize,\n pointerEvents: isScrolling ? 'none' : undefined,\n width: isHorizontal ? estimatedTotalSize : '100%'\n }\n }));\n };\n\n _proto._callPropsCallbacks = function _callPropsCallbacks() {\n if (typeof this.props.onItemsRendered === 'function') {\n var itemCount = this.props.itemCount;\n\n if (itemCount > 0) {\n var _this$_getRangeToRend2 = this._getRangeToRender(),\n _overscanStartIndex = _this$_getRangeToRend2[0],\n _overscanStopIndex = _this$_getRangeToRend2[1],\n _visibleStartIndex = _this$_getRangeToRend2[2],\n _visibleStopIndex = _this$_getRangeToRend2[3];\n\n this._callOnItemsRendered(_overscanStartIndex, _overscanStopIndex, _visibleStartIndex, _visibleStopIndex);\n }\n }\n\n if (typeof this.props.onScroll === 'function') {\n var _this$state2 = this.state,\n _scrollDirection = _this$state2.scrollDirection,\n _scrollOffset = _this$state2.scrollOffset,\n _scrollUpdateWasRequested = _this$state2.scrollUpdateWasRequested;\n\n this._callOnScroll(_scrollDirection, _scrollOffset, _scrollUpdateWasRequested);\n }\n }; // Lazily create and cache item styles while scrolling,\n // So that pure component sCU will prevent re-renders.\n // We maintain this cache, and pass a style prop rather than index,\n // So that List can clear cached styles and force item re-render if necessary.\n\n\n _proto._getRangeToRender = function _getRangeToRender() {\n var _this$props5 = this.props,\n itemCount = _this$props5.itemCount,\n overscanCount = _this$props5.overscanCount;\n var _this$state3 = this.state,\n isScrolling = _this$state3.isScrolling,\n scrollDirection = _this$state3.scrollDirection,\n scrollOffset = _this$state3.scrollOffset;\n\n if (itemCount === 0) {\n return [0, 0, 0, 0];\n }\n\n var startIndex = getStartIndexForOffset(this.props, scrollOffset, this._instanceProps);\n var stopIndex = getStopIndexForStartIndex(this.props, startIndex, scrollOffset, this._instanceProps); // Overscan by one item in each direction so that tab/focus works.\n // If there isn't at least one extra item, tab loops back around.\n\n var overscanBackward = !isScrolling || scrollDirection === 'backward' ? Math.max(1, overscanCount) : 1;\n var overscanForward = !isScrolling || scrollDirection === 'forward' ? Math.max(1, overscanCount) : 1;\n return [Math.max(0, startIndex - overscanBackward), Math.max(0, Math.min(itemCount - 1, stopIndex + overscanForward)), startIndex, stopIndex];\n };\n\n return List;\n }(PureComponent), _class.defaultProps = {\n direction: 'ltr',\n itemData: undefined,\n layout: 'vertical',\n overscanCount: 2,\n useIsScrolling: false\n }, _temp;\n} // NOTE: I considered further wrapping individual items with a pure ListItem component.\n// This would avoid ever calling the render function for the same index more than once,\n// But it would also add the overhead of a lot of components/fibers.\n// I assume people already do this (render function returning a class component),\n// So my doing it would just unnecessarily double the wrappers.\n\nvar validateSharedProps$1 = function validateSharedProps(_ref2, _ref3) {\n var children = _ref2.children,\n direction = _ref2.direction,\n height = _ref2.height,\n layout = _ref2.layout,\n innerTagName = _ref2.innerTagName,\n outerTagName = _ref2.outerTagName,\n width = _ref2.width;\n var instance = _ref3.instance;\n\n if (process.env.NODE_ENV !== 'production') {\n if (innerTagName != null || outerTagName != null) {\n if (devWarningsTagName$1 && !devWarningsTagName$1.has(instance)) {\n devWarningsTagName$1.add(instance);\n console.warn('The innerTagName and outerTagName props have been deprecated. ' + 'Please use the innerElementType and outerElementType props instead.');\n }\n } // TODO Deprecate direction \"horizontal\"\n\n\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n\n switch (direction) {\n case 'horizontal':\n case 'vertical':\n if (devWarningsDirection && !devWarningsDirection.has(instance)) {\n devWarningsDirection.add(instance);\n console.warn('The direction prop should be either \"ltr\" (default) or \"rtl\". ' + 'Please use the layout prop to specify \"vertical\" (default) or \"horizontal\" orientation.');\n }\n\n break;\n\n case 'ltr':\n case 'rtl':\n // Valid values\n break;\n\n default:\n throw Error('An invalid \"direction\" prop has been specified. ' + 'Value should be either \"ltr\" or \"rtl\". ' + (\"\\\"\" + direction + \"\\\" was specified.\"));\n }\n\n switch (layout) {\n case 'horizontal':\n case 'vertical':\n // Valid values\n break;\n\n default:\n throw Error('An invalid \"layout\" prop has been specified. ' + 'Value should be either \"horizontal\" or \"vertical\". ' + (\"\\\"\" + layout + \"\\\" was specified.\"));\n }\n\n if (children == null) {\n throw Error('An invalid \"children\" prop has been specified. ' + 'Value should be a React component. ' + (\"\\\"\" + (children === null ? 'null' : typeof children) + \"\\\" was specified.\"));\n }\n\n if (isHorizontal && typeof width !== 'number') {\n throw Error('An invalid \"width\" prop has been specified. ' + 'Horizontal lists must specify a number for width. ' + (\"\\\"\" + (width === null ? 'null' : typeof width) + \"\\\" was specified.\"));\n } else if (!isHorizontal && typeof height !== 'number') {\n throw Error('An invalid \"height\" prop has been specified. ' + 'Vertical lists must specify a number for height. ' + (\"\\\"\" + (height === null ? 'null' : typeof height) + \"\\\" was specified.\"));\n }\n }\n};\n\nvar DEFAULT_ESTIMATED_ITEM_SIZE$1 = 50;\n\nvar getItemMetadata$1 = function getItemMetadata(props, index, instanceProps) {\n var _ref = props,\n itemSize = _ref.itemSize;\n var itemMetadataMap = instanceProps.itemMetadataMap,\n lastMeasuredIndex = instanceProps.lastMeasuredIndex;\n\n if (index > lastMeasuredIndex) {\n var offset = 0;\n\n if (lastMeasuredIndex >= 0) {\n var itemMetadata = itemMetadataMap[lastMeasuredIndex];\n offset = itemMetadata.offset + itemMetadata.size;\n }\n\n for (var i = lastMeasuredIndex + 1; i <= index; i++) {\n var size = itemSize(i);\n itemMetadataMap[i] = {\n offset: offset,\n size: size\n };\n offset += size;\n }\n\n instanceProps.lastMeasuredIndex = index;\n }\n\n return itemMetadataMap[index];\n};\n\nvar findNearestItem$1 = function findNearestItem(props, instanceProps, offset) {\n var itemMetadataMap = instanceProps.itemMetadataMap,\n lastMeasuredIndex = instanceProps.lastMeasuredIndex;\n var lastMeasuredItemOffset = lastMeasuredIndex > 0 ? itemMetadataMap[lastMeasuredIndex].offset : 0;\n\n if (lastMeasuredItemOffset >= offset) {\n // If we've already measured items within this range just use a binary search as it's faster.\n return findNearestItemBinarySearch$1(props, instanceProps, lastMeasuredIndex, 0, offset);\n } else {\n // If we haven't yet measured this high, fallback to an exponential search with an inner binary search.\n // The exponential search avoids pre-computing sizes for the full set of items as a binary search would.\n // The overall complexity for this approach is O(log n).\n return findNearestItemExponentialSearch$1(props, instanceProps, Math.max(0, lastMeasuredIndex), offset);\n }\n};\n\nvar findNearestItemBinarySearch$1 = function findNearestItemBinarySearch(props, instanceProps, high, low, offset) {\n while (low <= high) {\n var middle = low + Math.floor((high - low) / 2);\n var currentOffset = getItemMetadata$1(props, middle, instanceProps).offset;\n\n if (currentOffset === offset) {\n return middle;\n } else if (currentOffset < offset) {\n low = middle + 1;\n } else if (currentOffset > offset) {\n high = middle - 1;\n }\n }\n\n if (low > 0) {\n return low - 1;\n } else {\n return 0;\n }\n};\n\nvar findNearestItemExponentialSearch$1 = function findNearestItemExponentialSearch(props, instanceProps, index, offset) {\n var itemCount = props.itemCount;\n var interval = 1;\n\n while (index < itemCount && getItemMetadata$1(props, index, instanceProps).offset < offset) {\n index += interval;\n interval *= 2;\n }\n\n return findNearestItemBinarySearch$1(props, instanceProps, Math.min(index, itemCount - 1), Math.floor(index / 2), offset);\n};\n\nvar getEstimatedTotalSize = function getEstimatedTotalSize(_ref2, _ref3) {\n var itemCount = _ref2.itemCount;\n var itemMetadataMap = _ref3.itemMetadataMap,\n estimatedItemSize = _ref3.estimatedItemSize,\n lastMeasuredIndex = _ref3.lastMeasuredIndex;\n var totalSizeOfMeasuredItems = 0; // Edge case check for when the number of items decreases while a scroll is in progress.\n // https://github.com/bvaughn/react-window/pull/138\n\n if (lastMeasuredIndex >= itemCount) {\n lastMeasuredIndex = itemCount - 1;\n }\n\n if (lastMeasuredIndex >= 0) {\n var itemMetadata = itemMetadataMap[lastMeasuredIndex];\n totalSizeOfMeasuredItems = itemMetadata.offset + itemMetadata.size;\n }\n\n var numUnmeasuredItems = itemCount - lastMeasuredIndex - 1;\n var totalSizeOfUnmeasuredItems = numUnmeasuredItems * estimatedItemSize;\n return totalSizeOfMeasuredItems + totalSizeOfUnmeasuredItems;\n};\n\nvar VariableSizeList =\n/*#__PURE__*/\ncreateListComponent({\n getItemOffset: function getItemOffset(props, index, instanceProps) {\n return getItemMetadata$1(props, index, instanceProps).offset;\n },\n getItemSize: function getItemSize(props, index, instanceProps) {\n return instanceProps.itemMetadataMap[index].size;\n },\n getEstimatedTotalSize: getEstimatedTotalSize,\n getOffsetForIndexAndAlignment: function getOffsetForIndexAndAlignment(props, index, align, scrollOffset, instanceProps) {\n var direction = props.direction,\n height = props.height,\n layout = props.layout,\n width = props.width; // TODO Deprecate direction \"horizontal\"\n\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n var size = isHorizontal ? width : height;\n var itemMetadata = getItemMetadata$1(props, index, instanceProps); // Get estimated total size after ItemMetadata is computed,\n // To ensure it reflects actual measurements instead of just estimates.\n\n var estimatedTotalSize = getEstimatedTotalSize(props, instanceProps);\n var maxOffset = Math.max(0, Math.min(estimatedTotalSize - size, itemMetadata.offset));\n var minOffset = Math.max(0, itemMetadata.offset - size + itemMetadata.size);\n\n if (align === 'smart') {\n if (scrollOffset >= minOffset - size && scrollOffset <= maxOffset + size) {\n align = 'auto';\n } else {\n align = 'center';\n }\n }\n\n switch (align) {\n case 'start':\n return maxOffset;\n\n case 'end':\n return minOffset;\n\n case 'center':\n return Math.round(minOffset + (maxOffset - minOffset) / 2);\n\n case 'auto':\n default:\n if (scrollOffset >= minOffset && scrollOffset <= maxOffset) {\n return scrollOffset;\n } else if (scrollOffset < minOffset) {\n return minOffset;\n } else {\n return maxOffset;\n }\n\n }\n },\n getStartIndexForOffset: function getStartIndexForOffset(props, offset, instanceProps) {\n return findNearestItem$1(props, instanceProps, offset);\n },\n getStopIndexForStartIndex: function getStopIndexForStartIndex(props, startIndex, scrollOffset, instanceProps) {\n var direction = props.direction,\n height = props.height,\n itemCount = props.itemCount,\n layout = props.layout,\n width = props.width; // TODO Deprecate direction \"horizontal\"\n\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n var size = isHorizontal ? width : height;\n var itemMetadata = getItemMetadata$1(props, startIndex, instanceProps);\n var maxOffset = scrollOffset + size;\n var offset = itemMetadata.offset + itemMetadata.size;\n var stopIndex = startIndex;\n\n while (stopIndex < itemCount - 1 && offset < maxOffset) {\n stopIndex++;\n offset += getItemMetadata$1(props, stopIndex, instanceProps).size;\n }\n\n return stopIndex;\n },\n initInstanceProps: function initInstanceProps(props, instance) {\n var _ref4 = props,\n estimatedItemSize = _ref4.estimatedItemSize;\n var instanceProps = {\n itemMetadataMap: {},\n estimatedItemSize: estimatedItemSize || DEFAULT_ESTIMATED_ITEM_SIZE$1,\n lastMeasuredIndex: -1\n };\n\n instance.resetAfterIndex = function (index, shouldForceUpdate) {\n if (shouldForceUpdate === void 0) {\n shouldForceUpdate = true;\n }\n\n instanceProps.lastMeasuredIndex = Math.min(instanceProps.lastMeasuredIndex, index - 1); // We could potentially optimize further by only evicting styles after this index,\n // But since styles are only cached while scrolling is in progress-\n // It seems an unnecessary optimization.\n // It's unlikely that resetAfterIndex() will be called while a user is scrolling.\n\n instance._getItemStyleCache(-1);\n\n if (shouldForceUpdate) {\n instance.forceUpdate();\n }\n };\n\n return instanceProps;\n },\n shouldResetStyleCacheOnItemSizeChange: false,\n validateProps: function validateProps(_ref5) {\n var itemSize = _ref5.itemSize;\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof itemSize !== 'function') {\n throw Error('An invalid \"itemSize\" prop has been specified. ' + 'Value should be a function. ' + (\"\\\"\" + (itemSize === null ? 'null' : typeof itemSize) + \"\\\" was specified.\"));\n }\n }\n }\n});\n\nvar FixedSizeGrid =\n/*#__PURE__*/\ncreateGridComponent({\n getColumnOffset: function getColumnOffset(_ref, index) {\n var columnWidth = _ref.columnWidth;\n return index * columnWidth;\n },\n getColumnWidth: function getColumnWidth(_ref2, index) {\n var columnWidth = _ref2.columnWidth;\n return columnWidth;\n },\n getRowOffset: function getRowOffset(_ref3, index) {\n var rowHeight = _ref3.rowHeight;\n return index * rowHeight;\n },\n getRowHeight: function getRowHeight(_ref4, index) {\n var rowHeight = _ref4.rowHeight;\n return rowHeight;\n },\n getEstimatedTotalHeight: function getEstimatedTotalHeight(_ref5) {\n var rowCount = _ref5.rowCount,\n rowHeight = _ref5.rowHeight;\n return rowHeight * rowCount;\n },\n getEstimatedTotalWidth: function getEstimatedTotalWidth(_ref6) {\n var columnCount = _ref6.columnCount,\n columnWidth = _ref6.columnWidth;\n return columnWidth * columnCount;\n },\n getOffsetForColumnAndAlignment: function getOffsetForColumnAndAlignment(_ref7, columnIndex, align, scrollLeft, instanceProps, scrollbarSize) {\n var columnCount = _ref7.columnCount,\n columnWidth = _ref7.columnWidth,\n width = _ref7.width;\n var lastColumnOffset = Math.max(0, columnCount * columnWidth - width);\n var maxOffset = Math.min(lastColumnOffset, columnIndex * columnWidth);\n var minOffset = Math.max(0, columnIndex * columnWidth - width + scrollbarSize + columnWidth);\n\n if (align === 'smart') {\n if (scrollLeft >= minOffset - width && scrollLeft <= maxOffset + width) {\n align = 'auto';\n } else {\n align = 'center';\n }\n }\n\n switch (align) {\n case 'start':\n return maxOffset;\n\n case 'end':\n return minOffset;\n\n case 'center':\n // \"Centered\" offset is usually the average of the min and max.\n // But near the edges of the list, this doesn't hold true.\n var middleOffset = Math.round(minOffset + (maxOffset - minOffset) / 2);\n\n if (middleOffset < Math.ceil(width / 2)) {\n return 0; // near the beginning\n } else if (middleOffset > lastColumnOffset + Math.floor(width / 2)) {\n return lastColumnOffset; // near the end\n } else {\n return middleOffset;\n }\n\n case 'auto':\n default:\n if (scrollLeft >= minOffset && scrollLeft <= maxOffset) {\n return scrollLeft;\n } else if (minOffset > maxOffset) {\n // Because we only take into account the scrollbar size when calculating minOffset\n // this value can be larger than maxOffset when at the end of the list\n return minOffset;\n } else if (scrollLeft < minOffset) {\n return minOffset;\n } else {\n return maxOffset;\n }\n\n }\n },\n getOffsetForRowAndAlignment: function getOffsetForRowAndAlignment(_ref8, rowIndex, align, scrollTop, instanceProps, scrollbarSize) {\n var rowHeight = _ref8.rowHeight,\n height = _ref8.height,\n rowCount = _ref8.rowCount;\n var lastRowOffset = Math.max(0, rowCount * rowHeight - height);\n var maxOffset = Math.min(lastRowOffset, rowIndex * rowHeight);\n var minOffset = Math.max(0, rowIndex * rowHeight - height + scrollbarSize + rowHeight);\n\n if (align === 'smart') {\n if (scrollTop >= minOffset - height && scrollTop <= maxOffset + height) {\n align = 'auto';\n } else {\n align = 'center';\n }\n }\n\n switch (align) {\n case 'start':\n return maxOffset;\n\n case 'end':\n return minOffset;\n\n case 'center':\n // \"Centered\" offset is usually the average of the min and max.\n // But near the edges of the list, this doesn't hold true.\n var middleOffset = Math.round(minOffset + (maxOffset - minOffset) / 2);\n\n if (middleOffset < Math.ceil(height / 2)) {\n return 0; // near the beginning\n } else if (middleOffset > lastRowOffset + Math.floor(height / 2)) {\n return lastRowOffset; // near the end\n } else {\n return middleOffset;\n }\n\n case 'auto':\n default:\n if (scrollTop >= minOffset && scrollTop <= maxOffset) {\n return scrollTop;\n } else if (minOffset > maxOffset) {\n // Because we only take into account the scrollbar size when calculating minOffset\n // this value can be larger than maxOffset when at the end of the list\n return minOffset;\n } else if (scrollTop < minOffset) {\n return minOffset;\n } else {\n return maxOffset;\n }\n\n }\n },\n getColumnStartIndexForOffset: function getColumnStartIndexForOffset(_ref9, scrollLeft) {\n var columnWidth = _ref9.columnWidth,\n columnCount = _ref9.columnCount;\n return Math.max(0, Math.min(columnCount - 1, Math.floor(scrollLeft / columnWidth)));\n },\n getColumnStopIndexForStartIndex: function getColumnStopIndexForStartIndex(_ref10, startIndex, scrollLeft) {\n var columnWidth = _ref10.columnWidth,\n columnCount = _ref10.columnCount,\n width = _ref10.width;\n var left = startIndex * columnWidth;\n var numVisibleColumns = Math.ceil((width + scrollLeft - left) / columnWidth);\n return Math.max(0, Math.min(columnCount - 1, startIndex + numVisibleColumns - 1 // -1 is because stop index is inclusive\n ));\n },\n getRowStartIndexForOffset: function getRowStartIndexForOffset(_ref11, scrollTop) {\n var rowHeight = _ref11.rowHeight,\n rowCount = _ref11.rowCount;\n return Math.max(0, Math.min(rowCount - 1, Math.floor(scrollTop / rowHeight)));\n },\n getRowStopIndexForStartIndex: function getRowStopIndexForStartIndex(_ref12, startIndex, scrollTop) {\n var rowHeight = _ref12.rowHeight,\n rowCount = _ref12.rowCount,\n height = _ref12.height;\n var top = startIndex * rowHeight;\n var numVisibleRows = Math.ceil((height + scrollTop - top) / rowHeight);\n return Math.max(0, Math.min(rowCount - 1, startIndex + numVisibleRows - 1 // -1 is because stop index is inclusive\n ));\n },\n initInstanceProps: function initInstanceProps(props) {// Noop\n },\n shouldResetStyleCacheOnItemSizeChange: true,\n validateProps: function validateProps(_ref13) {\n var columnWidth = _ref13.columnWidth,\n rowHeight = _ref13.rowHeight;\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof columnWidth !== 'number') {\n throw Error('An invalid \"columnWidth\" prop has been specified. ' + 'Value should be a number. ' + (\"\\\"\" + (columnWidth === null ? 'null' : typeof columnWidth) + \"\\\" was specified.\"));\n }\n\n if (typeof rowHeight !== 'number') {\n throw Error('An invalid \"rowHeight\" prop has been specified. ' + 'Value should be a number. ' + (\"\\\"\" + (rowHeight === null ? 'null' : typeof rowHeight) + \"\\\" was specified.\"));\n }\n }\n }\n});\n\nvar FixedSizeList =\n/*#__PURE__*/\ncreateListComponent({\n getItemOffset: function getItemOffset(_ref, index) {\n var itemSize = _ref.itemSize;\n return index * itemSize;\n },\n getItemSize: function getItemSize(_ref2, index) {\n var itemSize = _ref2.itemSize;\n return itemSize;\n },\n getEstimatedTotalSize: function getEstimatedTotalSize(_ref3) {\n var itemCount = _ref3.itemCount,\n itemSize = _ref3.itemSize;\n return itemSize * itemCount;\n },\n getOffsetForIndexAndAlignment: function getOffsetForIndexAndAlignment(_ref4, index, align, scrollOffset) {\n var direction = _ref4.direction,\n height = _ref4.height,\n itemCount = _ref4.itemCount,\n itemSize = _ref4.itemSize,\n layout = _ref4.layout,\n width = _ref4.width;\n // TODO Deprecate direction \"horizontal\"\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n var size = isHorizontal ? width : height;\n var lastItemOffset = Math.max(0, itemCount * itemSize - size);\n var maxOffset = Math.min(lastItemOffset, index * itemSize);\n var minOffset = Math.max(0, index * itemSize - size + itemSize);\n\n if (align === 'smart') {\n if (scrollOffset >= minOffset - size && scrollOffset <= maxOffset + size) {\n align = 'auto';\n } else {\n align = 'center';\n }\n }\n\n switch (align) {\n case 'start':\n return maxOffset;\n\n case 'end':\n return minOffset;\n\n case 'center':\n {\n // \"Centered\" offset is usually the average of the min and max.\n // But near the edges of the list, this doesn't hold true.\n var middleOffset = Math.round(minOffset + (maxOffset - minOffset) / 2);\n\n if (middleOffset < Math.ceil(size / 2)) {\n return 0; // near the beginning\n } else if (middleOffset > lastItemOffset + Math.floor(size / 2)) {\n return lastItemOffset; // near the end\n } else {\n return middleOffset;\n }\n }\n\n case 'auto':\n default:\n if (scrollOffset >= minOffset && scrollOffset <= maxOffset) {\n return scrollOffset;\n } else if (scrollOffset < minOffset) {\n return minOffset;\n } else {\n return maxOffset;\n }\n\n }\n },\n getStartIndexForOffset: function getStartIndexForOffset(_ref5, offset) {\n var itemCount = _ref5.itemCount,\n itemSize = _ref5.itemSize;\n return Math.max(0, Math.min(itemCount - 1, Math.floor(offset / itemSize)));\n },\n getStopIndexForStartIndex: function getStopIndexForStartIndex(_ref6, startIndex, scrollOffset) {\n var direction = _ref6.direction,\n height = _ref6.height,\n itemCount = _ref6.itemCount,\n itemSize = _ref6.itemSize,\n layout = _ref6.layout,\n width = _ref6.width;\n // TODO Deprecate direction \"horizontal\"\n var isHorizontal = direction === 'horizontal' || layout === 'horizontal';\n var offset = startIndex * itemSize;\n var size = isHorizontal ? width : height;\n var numVisibleItems = Math.ceil((size + scrollOffset - offset) / itemSize);\n return Math.max(0, Math.min(itemCount - 1, startIndex + numVisibleItems - 1 // -1 is because stop index is inclusive\n ));\n },\n initInstanceProps: function initInstanceProps(props) {// Noop\n },\n shouldResetStyleCacheOnItemSizeChange: true,\n validateProps: function validateProps(_ref7) {\n var itemSize = _ref7.itemSize;\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof itemSize !== 'number') {\n throw Error('An invalid \"itemSize\" prop has been specified. ' + 'Value should be a number. ' + (\"\\\"\" + (itemSize === null ? 'null' : typeof itemSize) + \"\\\" was specified.\"));\n }\n }\n }\n});\n\n// Pulled from react-compat\n// https://github.com/developit/preact-compat/blob/7c5de00e7c85e2ffd011bf3af02899b63f699d3a/src/index.js#L349\nfunction shallowDiffers(prev, next) {\n for (var attribute in prev) {\n if (!(attribute in next)) {\n return true;\n }\n }\n\n for (var _attribute in next) {\n if (prev[_attribute] !== next[_attribute]) {\n return true;\n }\n }\n\n return false;\n}\n\n// It knows to compare individual style props and ignore the wrapper object.\n// See https://reactjs.org/docs/react-api.html#reactmemo\n\nfunction areEqual(prevProps, nextProps) {\n var prevStyle = prevProps.style,\n prevRest = _objectWithoutPropertiesLoose(prevProps, [\"style\"]);\n\n var nextStyle = nextProps.style,\n nextRest = _objectWithoutPropertiesLoose(nextProps, [\"style\"]);\n\n return !shallowDiffers(prevStyle, nextStyle) && !shallowDiffers(prevRest, nextRest);\n}\n\n// It knows to compare individual style props and ignore the wrapper object.\n// See https://reactjs.org/docs/react-component.html#shouldcomponentupdate\n\nfunction shouldComponentUpdate(nextProps, nextState) {\n return !areEqual(this.props, nextProps) || shallowDiffers(this.state, nextState);\n}\n\nexport { VariableSizeGrid, VariableSizeList, FixedSizeGrid, FixedSizeList, areEqual, shouldComponentUpdate };\n//# sourceMappingURL=index.esm.js.map\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { useDispatch } from 'react-redux';\nimport { resultsSlice, selectResultsQuery, useTranslate, useTypedSelector } from 'state';\nimport styles from './ResultsInput.module.scss';\n\nvar ResultsInput = function ResultsInput(_ref) {\n var className = _ref.className;\n var dispatch = useDispatch();\n var translate = useTranslate();\n var value = useTypedSelector(selectResultsQuery);\n\n var handleChange = function handleChange(event) {\n dispatch(resultsSlice.actions.changeQuery(event.target.value));\n };\n\n return /*#__PURE__*/_jsx(\"form\", {\n className: classNames(styles.resultsInput, className),\n children: /*#__PURE__*/_jsx(\"input\", {\n className: styles.input,\n placeholder: translate('results.input.placeholder'),\n type: \"text\",\n value: value,\n onChange: handleChange\n })\n });\n};\n\nexport default ResultsInput;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { useDispatch } from 'react-redux';\nimport { sortDown, sortUp } from 'icons';\nimport { resultsSlice, selectResultsSortColumn, selectResultsSortDirection, useTranslate, useTypedSelector } from 'state';\nimport { ResultColumn, SortDirection } from 'types';\nimport SvgIcon from '../SvgIcon';\nimport styles from './Results.module.scss';\nvar columns = [{\n className: styles.word,\n id: ResultColumn.Word,\n translationKey: 'common.word'\n}, {\n className: styles.stat,\n id: ResultColumn.TilesCount,\n translationKey: 'common.tiles'\n}, {\n className: styles.stat,\n id: ResultColumn.ConsonantsCount,\n translationKey: 'common.consonants'\n}, {\n className: styles.stat,\n id: ResultColumn.VowelsCount,\n translationKey: 'common.vowels'\n}, {\n className: styles.stat,\n id: ResultColumn.BlanksCount,\n translationKey: 'common.blanks'\n}, {\n className: styles.stat,\n id: ResultColumn.WordsCount,\n translationKey: 'common.words'\n}, {\n className: styles.points,\n id: ResultColumn.Points,\n translationKey: 'common.points'\n}];\n\nvar Header = function Header() {\n var dispatch = useDispatch();\n var translate = useTranslate();\n var sortColumn = useTypedSelector(selectResultsSortColumn);\n var sortDirection = useTypedSelector(selectResultsSortDirection);\n\n var handleOrderChange = function handleOrderChange(columnId) {\n dispatch(resultsSlice.actions.sort(columnId));\n };\n\n return /*#__PURE__*/_jsx(\"div\", {\n className: styles.header,\n children: columns.map(function (column) {\n return /*#__PURE__*/_jsx(\"button\", {\n className: classNames(styles.headerButton, column.className),\n title: translate(column.translationKey),\n type: \"button\",\n onClick: function onClick() {\n return handleOrderChange(column.id);\n },\n children: /*#__PURE__*/_jsxs(\"span\", {\n className: styles.cell,\n children: [/*#__PURE__*/_jsx(\"span\", {\n className: styles.headerButtonLabel,\n children: translate(column.translationKey)\n }), sortColumn === column.id && /*#__PURE__*/_jsx(SvgIcon, {\n className: styles.sortIcon,\n icon: sortDirection === SortDirection.Ascending ? sortUp : sortDown\n })]\n })\n }, column.id);\n })\n });\n};\n\nexport default Header;","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { useTranslate } from 'state';\nimport styles from './Results.module.scss';\n\nvar Cell = function Cell(_ref) {\n var className = _ref.className,\n translationKey = _ref.translationKey,\n value = _ref.value;\n var translate = useTranslate();\n return /*#__PURE__*/_jsx(\"span\", {\n className: classNames(styles.cell, className),\n title: \"\".concat(translate(translationKey), \": \").concat(value),\n children: value\n });\n};\n\nexport default Cell;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from 'react';\nimport { useDispatch } from 'react-redux';\nimport { resultsSlice, selectSortedFilteredResults, useTypedSelector } from 'state';\nimport Cell from './Cell';\nimport styles from './Results.module.scss';\n\nvar Result = function Result(_ref) {\n var index = _ref.index,\n style = _ref.style;\n var dispatch = useDispatch(); // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n\n var results = useTypedSelector(selectSortedFilteredResults);\n var result = results[index];\n\n var handleClick = function handleClick() {\n dispatch(resultsSlice.actions.applyResult(result));\n };\n\n var handleMouseEnter = function handleMouseEnter() {\n dispatch(resultsSlice.actions.changeResultCandidate(result));\n };\n\n var handleMouseLeave = function handleMouseLeave() {\n dispatch(resultsSlice.actions.changeResultCandidate(null));\n };\n\n var handleFocus = function handleFocus() {\n dispatch(resultsSlice.actions.changeResultCandidate(result));\n };\n\n var handleBlur = function handleBlur() {\n dispatch(resultsSlice.actions.changeResultCandidate(null));\n };\n\n return /*#__PURE__*/_jsx(\"button\", {\n className: styles.result,\n style: style,\n type: \"button\",\n onBlur: handleBlur,\n onClick: handleClick,\n onFocus: handleFocus,\n onMouseEnter: handleMouseEnter,\n onMouseLeave: handleMouseLeave,\n children: /*#__PURE__*/_jsxs(\"span\", {\n className: styles.resultContent,\n children: [/*#__PURE__*/_jsx(Cell, {\n className: styles.word,\n translationKey: \"common.word\",\n value: result.word\n }), /*#__PURE__*/_jsx(Cell, {\n className: styles.stat,\n translationKey: \"common.tiles\",\n value: result.numberOfTiles\n }), /*#__PURE__*/_jsx(Cell, {\n className: styles.stat,\n translationKey: \"common.consonants\",\n value: result.numberOfConsonants\n }), /*#__PURE__*/_jsx(Cell, {\n className: styles.stat,\n translationKey: \"common.vowels\",\n value: result.numberOfVowels\n }), /*#__PURE__*/_jsx(Cell, {\n className: styles.stat,\n translationKey: \"common.blanks\",\n value: result.numberOfBlanks\n }), /*#__PURE__*/_jsx(Cell, {\n className: styles.stat,\n translationKey: \"common.words\",\n value: result.numberOfWords\n }), /*#__PURE__*/_jsx(Cell, {\n className: styles.points,\n translationKey: \"common.points\",\n value: result.points\n })]\n })\n });\n};\n\nexport default Result;","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from 'react';\nimport { useDispatch } from 'react-redux';\nimport { play } from 'icons';\nimport { selectAreResultsOutdated, selectIsLoading, selectRack, solveSlice, useTranslate, useTypedSelector } from 'state';\nimport Button from '../Button';\nimport styles from './Results.module.scss';\n\nvar SolveButton = function SolveButton() {\n var dispatch = useDispatch();\n var translate = useTranslate();\n var isLoading = useTypedSelector(selectIsLoading);\n var rack = useTypedSelector(selectRack);\n var isOutdated = useTypedSelector(selectAreResultsOutdated);\n var hasTiles = rack.some(function (tile) {\n return tile !== null;\n });\n\n var handleRefresh = function handleRefresh() {\n dispatch(solveSlice.actions.submit());\n };\n\n return /*#__PURE__*/_jsx(Button, {\n className: styles.outdatedButton,\n disabled: isLoading || !isOutdated || !hasTiles,\n icon: play,\n title: translate('results.solve'),\n type: \"submit\",\n onClick: handleRefresh,\n children: translate('results.solve')\n });\n};\n\nexport default SolveButton;","import { Fragment as _Fragment } from \"react/jsx-runtime\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { FixedSizeList } from 'react-window';\nimport { RESULTS_HEADER_HEIGHT, RESULTS_INPUT_HEIGHT, RESULTS_ITEM_HEIGHT } from 'parameters';\nimport { selectAreResultsOutdated, selectIsLoading, selectSortedFilteredResults, selectSortedResults, useTranslate, useTypedSelector } from 'state';\nimport EmptyState from '../EmptyState';\nimport Loading from '../Loading';\nimport ResultsInput from '../ResultsInput';\nimport Header from './Header';\nimport Result from './Result';\nimport styles from './Results.module.scss';\nimport SolveButton from './SolveButton';\n\nvar Results = function Results(_ref) {\n var height = _ref.height,\n width = _ref.width;\n var translate = useTranslate();\n var allResults = useTypedSelector(selectSortedResults);\n var results = useTypedSelector(selectSortedFilteredResults);\n var isLoading = useTypedSelector(selectIsLoading);\n var isOutdated = useTypedSelector(selectAreResultsOutdated);\n return /*#__PURE__*/_jsxs(\"div\", {\n className: styles.results,\n children: [/*#__PURE__*/_jsx(Header, {}), typeof results === 'undefined' && /*#__PURE__*/_jsxs(EmptyState, {\n className: styles.emptyState,\n type: \"info\",\n children: [translate('results.empty-state.uninitialized'), /*#__PURE__*/_jsx(SolveButton, {})]\n }), typeof results !== 'undefined' && typeof allResults !== 'undefined' && /*#__PURE__*/_jsxs(_Fragment, {\n children: [isOutdated && /*#__PURE__*/_jsxs(EmptyState, {\n className: styles.emptyState,\n type: \"info\",\n children: [translate('results.empty-state.outdated'), /*#__PURE__*/_jsx(SolveButton, {})]\n }), !isOutdated && /*#__PURE__*/_jsxs(_Fragment, {\n children: [allResults.length === 0 && /*#__PURE__*/_jsx(EmptyState, {\n className: styles.emptyState,\n type: \"warning\",\n children: translate('results.empty-state.no-results')\n }), allResults.length > 0 && results.length === 0 && /*#__PURE__*/_jsx(EmptyState, {\n className: styles.emptyState,\n type: \"info\",\n children: translate('results.empty-state.no-filtered-results')\n }), allResults.length > 0 && results.length > 0 && /*#__PURE__*/_jsx(FixedSizeList, {\n className: classNames(styles.list, _defineProperty({}, styles.outdated, isOutdated)),\n height: height - RESULTS_HEADER_HEIGHT - RESULTS_INPUT_HEIGHT,\n itemCount: results.length,\n itemSize: RESULTS_ITEM_HEIGHT,\n width: width,\n children: Result\n }), allResults.length > 0 && /*#__PURE__*/_jsx(ResultsInput, {\n className: styles.input\n })]\n })]\n }), isLoading && /*#__PURE__*/_jsx(Loading, {})]\n });\n};\n\nexport default Results;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { cross } from 'icons';\nimport { useTranslate } from 'state';\nimport Button from '../Button';\nimport styles from './Screen.module.scss';\n\nvar Screen = function Screen(_ref) {\n var children = _ref.children,\n className = _ref.className,\n contentClassName = _ref.contentClassName,\n onAnimationEnd = _ref.onAnimationEnd,\n onClose = _ref.onClose;\n var translate = useTranslate();\n return /*#__PURE__*/_jsxs(\"div\", {\n className: classNames(styles.screen, className),\n onAnimationEnd: onAnimationEnd,\n children: [onClose && /*#__PURE__*/_jsx(Button, {\n className: styles.closeButton,\n icon: cross,\n title: translate('common.close'),\n onClick: onClose,\n children: translate('common.close')\n }), /*#__PURE__*/_jsx(\"div\", {\n className: classNames(styles.content, contentClassName),\n children: children\n })]\n });\n};\n\nexport default Screen;","export var NULL_VALUE = 'null';","import { NULL_VALUE } from './constants';\nexport var parseValue = function parseValue(value) {\n if (value === 'left' || value === 'right') {\n return value;\n }\n\n if (value === NULL_VALUE) {\n return null;\n }\n\n throw new Error(\"\\\"\".concat(value, \"\\\" is not valid. Should be \\\"left\\\", \\\"right\\\", or \\\"\").concat(NULL_VALUE, \"\\\"\"));\n};","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from 'react';\nimport { useDispatch } from 'react-redux';\nimport { selectAutoGroupTiles, settingsSlice, useTranslate, useTypedSelector } from 'state';\nimport Radio from '../../../Radio';\nimport styles from './AutoGroupTilesSetting.module.scss';\nimport { NULL_VALUE } from './constants';\nimport { parseValue } from './lib';\n\nvar AutoGroupTilesSetting = function AutoGroupTilesSetting(_ref) {\n var className = _ref.className,\n disabled = _ref.disabled;\n var dispatch = useDispatch();\n var translate = useTranslate();\n var configId = useTypedSelector(selectAutoGroupTiles);\n var options = [{\n label: translate('settings.autoGroupTiles.left'),\n value: 'left'\n }, {\n label: translate('settings.autoGroupTiles.right'),\n value: 'right'\n }, {\n label: translate('settings.autoGroupTiles.null'),\n value: NULL_VALUE\n }];\n\n var handleChange = function handleChange(event) {\n var autoGroupTiles = parseValue(event.target.value);\n dispatch(settingsSlice.actions.changeAutoGroupTiles(autoGroupTiles));\n };\n\n return /*#__PURE__*/_jsx(\"div\", {\n className: className,\n children: options.map(function (option) {\n return /*#__PURE__*/_jsx(Radio, {\n checked: configId === parseValue(option.value),\n className: styles.option,\n disabled: disabled,\n id: \"autoGroupTiles\",\n name: \"autoGroupTiles\",\n title: option.label,\n value: option.value,\n onChange: handleChange,\n children: /*#__PURE__*/_jsx(\"div\", {\n className: styles.label,\n children: option.label\n })\n }, option.value);\n })\n });\n};\n\nexport default AutoGroupTilesSetting;","import { literaki, scrabble } from '@scrabble-solver/configs';\nvar options = [{\n label: scrabble.name,\n value: scrabble.id\n}, {\n label: literaki.name,\n value: literaki.id\n}];\nexport default options;","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from 'react';\nimport { useDispatch } from 'react-redux';\nimport { selectConfigId, settingsSlice, useTypedSelector } from 'state';\nimport Radio from '../../../Radio';\nimport styles from './ConfigSetting.module.scss';\nimport options from './options';\n\nvar ConfigSetting = function ConfigSetting(_ref) {\n var className = _ref.className,\n disabled = _ref.disabled;\n var dispatch = useDispatch();\n var configId = useTypedSelector(selectConfigId);\n\n var handleChange = function handleChange(event) {\n dispatch(settingsSlice.actions.changeConfigId(event.target.value));\n };\n\n return /*#__PURE__*/_jsx(\"div\", {\n className: className,\n children: options.map(function (option) {\n return /*#__PURE__*/_jsx(Radio, {\n checked: configId === option.value,\n className: styles.option,\n disabled: disabled,\n id: \"configId\",\n name: \"configId\",\n title: option.label,\n value: option.value,\n onChange: handleChange,\n children: /*#__PURE__*/_jsx(\"div\", {\n className: styles.label,\n children: option.label\n })\n }, option.value);\n })\n });\n};\n\nexport default ConfigSetting;","import { Locale } from '@scrabble-solver/types';\nimport { flagEs, flagFr, flagGb, flagPl, flagUs } from 'icons';\nimport styles from './LocaleSetting.module.scss';\nvar options = [{\n className: styles.gb,\n icon: flagGb,\n label: 'English (GB)',\n value: Locale.EN_GB\n}, {\n className: styles.us,\n icon: flagUs,\n label: 'English (US)',\n value: Locale.EN_US\n}, {\n className: styles.fr,\n icon: flagFr,\n label: 'Français',\n value: Locale.FR_FR\n}, {\n className: styles.pl,\n icon: flagPl,\n label: 'Polski',\n value: Locale.PL_PL\n}, {\n className: styles.es,\n icon: flagEs,\n label: 'Español',\n value: Locale.ES_ES\n}];\nexport default options;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { useDispatch } from 'react-redux';\nimport { selectLocale, settingsSlice, useTypedSelector } from 'state';\nimport Radio from '../../../Radio';\nimport SvgIcon from '../../../SvgIcon';\nimport styles from './LocaleSetting.module.scss';\nimport options from './options';\n\nvar LocaleSetting = function LocaleSetting(_ref) {\n var className = _ref.className,\n disabled = _ref.disabled;\n var dispatch = useDispatch();\n var locale = useTypedSelector(selectLocale);\n\n var handleChange = function handleChange(event) {\n var newLocale = event.target.value;\n dispatch(settingsSlice.actions.changeLocale(newLocale));\n };\n\n return /*#__PURE__*/_jsx(\"div\", {\n className: className,\n children: options.map(function (option) {\n return /*#__PURE__*/_jsx(Radio, {\n checked: locale === option.value,\n className: classNames(styles.option, className, _defineProperty({}, styles.checked, locale === option.value)),\n disabled: disabled,\n id: \"locale\",\n name: \"locale\",\n title: \"\".concat(option.label, \" (\").concat(option.value, \")\"),\n value: option.value,\n onChange: handleChange,\n children: /*#__PURE__*/_jsxs(\"span\", {\n className: styles.label,\n children: [/*#__PURE__*/_jsx(SvgIcon, {\n className: classNames(styles.flag, option.className),\n icon: option.icon\n }), /*#__PURE__*/_jsx(\"span\", {\n children: option.label\n })]\n })\n }, option.value);\n })\n });\n};\n\nexport default LocaleSetting;","export { default as AutoGroupTilesSetting } from './AutoGroupTilesSetting';\nexport { default as ConfigSetting } from './ConfigSetting';\nexport { default as LocaleSetting } from './LocaleSetting';","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from 'react';\nimport { useTranslate } from 'state';\nimport Sidebar from '../Sidebar';\nimport { AutoGroupTilesSetting, ConfigSetting, LocaleSetting } from './components';\n\nvar Settings = function Settings(_ref) {\n var className = _ref.className,\n isOpen = _ref.isOpen,\n onClose = _ref.onClose;\n var translate = useTranslate();\n return /*#__PURE__*/_jsxs(Sidebar, {\n className: className,\n isOpen: isOpen,\n title: translate('settings'),\n onClose: onClose,\n children: [/*#__PURE__*/_jsx(Sidebar.Section, {\n title: translate('settings.game'),\n children: /*#__PURE__*/_jsx(ConfigSetting, {\n disabled: !isOpen\n })\n }), /*#__PURE__*/_jsx(Sidebar.Section, {\n title: translate('settings.language'),\n children: /*#__PURE__*/_jsx(LocaleSetting, {\n disabled: !isOpen\n })\n }), /*#__PURE__*/_jsx(Sidebar.Section, {\n title: translate('settings.autoGroupTiles'),\n children: /*#__PURE__*/_jsx(AutoGroupTilesSetting, {\n disabled: !isOpen\n })\n })]\n });\n};\n\nexport default Settings;","import { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport Logo from '../Logo';\nimport Screen from '../Screen';\nimport styles from './Splash.module.scss';\n\nvar Splash = function Splash(_ref) {\n var className = _ref.className,\n forceShow = _ref.forceShow,\n onAnimationEnd = _ref.onAnimationEnd;\n return /*#__PURE__*/_jsxs(Screen, {\n className: classNames(styles.splash, className, _defineProperty({}, styles.animated, !forceShow)),\n onAnimationEnd: onAnimationEnd,\n children: [/*#__PURE__*/_jsxs(\"div\", {\n className: styles.logos,\n children: [/*#__PURE__*/_jsx(Logo, {\n className: styles.logoGrayscale\n }), /*#__PURE__*/_jsx(Logo, {\n className: styles.logoColor\n })]\n }), /*#__PURE__*/_jsx(\"h1\", {\n className: styles.author,\n children: \"by Kamil Mielnik\"\n })]\n });\n};\n\nexport default Splash;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\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 classNames from 'classnames';\nimport React, { forwardRef } from 'react';\nimport styles from './Well.module.scss';\nvar Well = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var children = _ref.children,\n className = _ref.className,\n props = _objectWithoutProperties(_ref, [\"children\", \"className\"]);\n\n return /*#__PURE__*/_jsx(\"div\", _objectSpread(_objectSpread({\n className: classNames(styles.well, className),\n ref: ref\n }, props), {}, {\n children: children\n }));\n});\nexport default Well;","export { default as Board } from './Board';\nexport { default as Button } from './Button';\nexport { default as Checkbox } from './Checkbox';\nexport { default as Dictionary } from './Dictionary';\nexport { default as DictionaryInput } from './DictionaryInput';\nexport { default as EmptyState } from './EmptyState';\nexport { default as Key } from './Key';\nexport { default as KeyMap } from './KeyMap';\nexport { default as Loading } from './Loading';\nexport { default as Logo } from './Logo';\nexport { default as NavButtons } from './NavButtons';\nexport { default as NotFound } from './NotFound';\nexport { default as PlainTiles } from './PlainTiles';\nexport { default as Rack } from './Rack';\nexport { default as Radio } from './Radio';\nexport { default as RemainingTiles } from './RemainingTiles';\nexport { default as Results } from './Results';\nexport { default as ResultsInput } from './ResultsInput';\nexport { default as Screen } from './Screen';\nexport { default as Settings } from './Settings';\nexport { default as Sidebar } from './Sidebar';\nexport { default as Splash } from './Splash';\nexport { default as SquareButton } from './SquareButton';\nexport { default as SvgIcon } from './SvgIcon';\nexport { default as Tile } from './Tile';\nexport { default as Well } from './Well';","// extracted by mini-css-extract-plugin\nmodule.exports = {\"option\":\"AutoGroupTilesSetting_option__iqYF_\",\"label\":\"AutoGroupTilesSetting_label__6_UJu\"};","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"@babel/runtime/helpers/esm/arrayWithHoles\";\nimport iterableToArrayLimit from \"@babel/runtime/helpers/esm/iterableToArrayLimit\";\nimport unsupportedIterableToArray from \"@babel/runtime/helpers/esm/unsupportedIterableToArray\";\nimport nonIterableRest from \"@babel/runtime/helpers/esm/nonIterableRest\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _focusManager = require(\"../helpers/focusManager\");\n\nvar focusManager = _interopRequireWildcard(_focusManager);\n\nvar _scopeTab = require(\"../helpers/scopeTab\");\n\nvar _scopeTab2 = _interopRequireDefault(_scopeTab);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _classList = require(\"../helpers/classList\");\n\nvar classList = _interopRequireWildcard(_classList);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _portalOpenInstances = require(\"../helpers/portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nrequire(\"../helpers/bodyTrap\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n// so that our CSS is statically analyzable\nvar CLASS_NAMES = {\n overlay: \"ReactModal__Overlay\",\n content: \"ReactModal__Content\"\n};\n\nvar TAB_KEY = 9;\nvar ESC_KEY = 27;\n\nvar ariaHiddenInstances = 0;\n\nvar ModalPortal = function (_Component) {\n _inherits(ModalPortal, _Component);\n\n function ModalPortal(props) {\n _classCallCheck(this, ModalPortal);\n\n var _this = _possibleConstructorReturn(this, (ModalPortal.__proto__ || Object.getPrototypeOf(ModalPortal)).call(this, props));\n\n _this.setOverlayRef = function (overlay) {\n _this.overlay = overlay;\n _this.props.overlayRef && _this.props.overlayRef(overlay);\n };\n\n _this.setContentRef = function (content) {\n _this.content = content;\n _this.props.contentRef && _this.props.contentRef(content);\n };\n\n _this.afterClose = function () {\n var _this$props = _this.props,\n appElement = _this$props.appElement,\n ariaHideApp = _this$props.ariaHideApp,\n htmlOpenClassName = _this$props.htmlOpenClassName,\n bodyOpenClassName = _this$props.bodyOpenClassName;\n\n // Remove classes.\n\n bodyOpenClassName && classList.remove(document.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.remove(document.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n // Reset aria-hidden attribute if all modals have been removed\n if (ariaHideApp && ariaHiddenInstances > 0) {\n ariaHiddenInstances -= 1;\n\n if (ariaHiddenInstances === 0) {\n ariaAppHider.show(appElement);\n }\n }\n\n if (_this.props.shouldFocusAfterRender) {\n if (_this.props.shouldReturnFocusAfterClose) {\n focusManager.returnFocus(_this.props.preventScroll);\n focusManager.teardownScopedFocus();\n } else {\n focusManager.popWithoutFocus();\n }\n }\n\n if (_this.props.onAfterClose) {\n _this.props.onAfterClose();\n }\n\n _portalOpenInstances2.default.deregister(_this);\n };\n\n _this.open = function () {\n _this.beforeOpen();\n if (_this.state.afterOpen && _this.state.beforeClose) {\n clearTimeout(_this.closeTimer);\n _this.setState({ beforeClose: false });\n } else {\n if (_this.props.shouldFocusAfterRender) {\n focusManager.setupScopedFocus(_this.node);\n focusManager.markForFocusLater();\n }\n\n _this.setState({ isOpen: true }, function () {\n _this.setState({ afterOpen: true });\n\n if (_this.props.isOpen && _this.props.onAfterOpen) {\n _this.props.onAfterOpen({\n overlayEl: _this.overlay,\n contentEl: _this.content\n });\n }\n });\n }\n };\n\n _this.close = function () {\n if (_this.props.closeTimeoutMS > 0) {\n _this.closeWithTimeout();\n } else {\n _this.closeWithoutTimeout();\n }\n };\n\n _this.focusContent = function () {\n return _this.content && !_this.contentHasFocus() && _this.content.focus({ preventScroll: true });\n };\n\n _this.closeWithTimeout = function () {\n var closesAt = Date.now() + _this.props.closeTimeoutMS;\n _this.setState({ beforeClose: true, closesAt: closesAt }, function () {\n _this.closeTimer = setTimeout(_this.closeWithoutTimeout, _this.state.closesAt - Date.now());\n });\n };\n\n _this.closeWithoutTimeout = function () {\n _this.setState({\n beforeClose: false,\n isOpen: false,\n afterOpen: false,\n closesAt: null\n }, _this.afterClose);\n };\n\n _this.handleKeyDown = function (event) {\n if (event.keyCode === TAB_KEY) {\n (0, _scopeTab2.default)(_this.content, event);\n }\n\n if (_this.props.shouldCloseOnEsc && event.keyCode === ESC_KEY) {\n event.stopPropagation();\n _this.requestClose(event);\n }\n };\n\n _this.handleOverlayOnClick = function (event) {\n if (_this.shouldClose === null) {\n _this.shouldClose = true;\n }\n\n if (_this.shouldClose && _this.props.shouldCloseOnOverlayClick) {\n if (_this.ownerHandlesClose()) {\n _this.requestClose(event);\n } else {\n _this.focusContent();\n }\n }\n _this.shouldClose = null;\n };\n\n _this.handleContentOnMouseUp = function () {\n _this.shouldClose = false;\n };\n\n _this.handleOverlayOnMouseDown = function (event) {\n if (!_this.props.shouldCloseOnOverlayClick && event.target == _this.overlay) {\n event.preventDefault();\n }\n };\n\n _this.handleContentOnClick = function () {\n _this.shouldClose = false;\n };\n\n _this.handleContentOnMouseDown = function () {\n _this.shouldClose = false;\n };\n\n _this.requestClose = function (event) {\n return _this.ownerHandlesClose() && _this.props.onRequestClose(event);\n };\n\n _this.ownerHandlesClose = function () {\n return _this.props.onRequestClose;\n };\n\n _this.shouldBeClosed = function () {\n return !_this.state.isOpen && !_this.state.beforeClose;\n };\n\n _this.contentHasFocus = function () {\n return document.activeElement === _this.content || _this.content.contains(document.activeElement);\n };\n\n _this.buildClassName = function (which, additional) {\n var classNames = (typeof additional === \"undefined\" ? \"undefined\" : _typeof(additional)) === \"object\" ? additional : {\n base: CLASS_NAMES[which],\n afterOpen: CLASS_NAMES[which] + \"--after-open\",\n beforeClose: CLASS_NAMES[which] + \"--before-close\"\n };\n var className = classNames.base;\n if (_this.state.afterOpen) {\n className = className + \" \" + classNames.afterOpen;\n }\n if (_this.state.beforeClose) {\n className = className + \" \" + classNames.beforeClose;\n }\n return typeof additional === \"string\" && additional ? className + \" \" + additional : className;\n };\n\n _this.attributesFromObject = function (prefix, items) {\n return Object.keys(items).reduce(function (acc, name) {\n acc[prefix + \"-\" + name] = items[name];\n return acc;\n }, {});\n };\n\n _this.state = {\n afterOpen: false,\n beforeClose: false\n };\n\n _this.shouldClose = null;\n _this.moveFromContentToOverlay = null;\n return _this;\n }\n\n _createClass(ModalPortal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this.props.isOpen) {\n this.open();\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, prevState) {\n if (process.env.NODE_ENV !== \"production\") {\n if (prevProps.bodyOpenClassName !== this.props.bodyOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"bodyOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n if (prevProps.htmlOpenClassName !== this.props.htmlOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"htmlOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n }\n\n if (this.props.isOpen && !prevProps.isOpen) {\n this.open();\n } else if (!this.props.isOpen && prevProps.isOpen) {\n this.close();\n }\n\n // Focus only needs to be set once when the modal is being opened\n if (this.props.shouldFocusAfterRender && this.state.isOpen && !prevState.isOpen) {\n this.focusContent();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.state.isOpen) {\n this.afterClose();\n }\n clearTimeout(this.closeTimer);\n }\n }, {\n key: \"beforeOpen\",\n value: function beforeOpen() {\n var _props = this.props,\n appElement = _props.appElement,\n ariaHideApp = _props.ariaHideApp,\n htmlOpenClassName = _props.htmlOpenClassName,\n bodyOpenClassName = _props.bodyOpenClassName;\n\n // Add classes.\n\n bodyOpenClassName && classList.add(document.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.add(document.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n if (ariaHideApp) {\n ariaHiddenInstances += 1;\n ariaAppHider.hide(appElement);\n }\n\n _portalOpenInstances2.default.register(this);\n }\n\n // Don't steal focus from inner elements\n\n }, {\n key: \"render\",\n value: function render() {\n var _props2 = this.props,\n id = _props2.id,\n className = _props2.className,\n overlayClassName = _props2.overlayClassName,\n defaultStyles = _props2.defaultStyles,\n children = _props2.children;\n\n var contentStyles = className ? {} : defaultStyles.content;\n var overlayStyles = overlayClassName ? {} : defaultStyles.overlay;\n\n if (this.shouldBeClosed()) {\n return null;\n }\n\n var overlayProps = {\n ref: this.setOverlayRef,\n className: this.buildClassName(\"overlay\", overlayClassName),\n style: _extends({}, overlayStyles, this.props.style.overlay),\n onClick: this.handleOverlayOnClick,\n onMouseDown: this.handleOverlayOnMouseDown\n };\n\n var contentProps = _extends({\n id: id,\n ref: this.setContentRef,\n style: _extends({}, contentStyles, this.props.style.content),\n className: this.buildClassName(\"content\", className),\n tabIndex: \"-1\",\n onKeyDown: this.handleKeyDown,\n onMouseDown: this.handleContentOnMouseDown,\n onMouseUp: this.handleContentOnMouseUp,\n onClick: this.handleContentOnClick,\n role: this.props.role,\n \"aria-label\": this.props.contentLabel\n }, this.attributesFromObject(\"aria\", _extends({ modal: true }, this.props.aria)), this.attributesFromObject(\"data\", this.props.data || {}), {\n \"data-testid\": this.props.testId\n });\n\n var contentElement = this.props.contentElement(contentProps, children);\n return this.props.overlayElement(overlayProps, contentElement);\n }\n }]);\n\n return ModalPortal;\n}(_react.Component);\n\nModalPortal.defaultProps = {\n style: {\n overlay: {},\n content: {}\n },\n defaultStyles: {}\n};\nModalPortal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n defaultStyles: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n ariaHideApp: _propTypes2.default.bool,\n appElement: _propTypes2.default.instanceOf(_safeHTMLElement2.default),\n onAfterOpen: _propTypes2.default.func,\n onAfterClose: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n children: _propTypes2.default.node,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func,\n testId: _propTypes2.default.string\n};\nexports.default = ModalPortal;\nmodule.exports = exports[\"default\"];","// extracted by mini-css-extract-plugin\nmodule.exports = {\"rack\":\"Rack_rack__19pRD\",\"tile\":\"Rack_tile__3eMqz\"};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = scopeTab;\n\nvar _tabbable = require(\"./tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction scopeTab(node, event) {\n var tabbable = (0, _tabbable2.default)(node);\n\n if (!tabbable.length) {\n // Do nothing, since there are no elements that can receive focus.\n event.preventDefault();\n return;\n }\n\n var target = void 0;\n\n var shiftKey = event.shiftKey;\n var head = tabbable[0];\n var tail = tabbable[tabbable.length - 1];\n\n // proceed with default browser behavior on tab.\n // Focus on last element on shift + tab.\n if (node === document.activeElement) {\n if (!shiftKey) return;\n target = tail;\n }\n\n if (tail === document.activeElement && !shiftKey) {\n target = head;\n }\n\n if (head === document.activeElement && shiftKey) {\n target = tail;\n }\n\n if (target) {\n event.preventDefault();\n target.focus();\n return;\n }\n\n // Safari radio issue.\n //\n // Safari does not move the focus to the radio button,\n // so we need to force it to really walk through all elements.\n //\n // This is very error prone, since we are trying to guess\n // if it is a safari browser from the first occurence between\n // chrome or safari.\n //\n // The chrome user agent contains the first ocurrence\n // as the 'chrome/version' and later the 'safari/version'.\n var checkSafari = /(\\bChrome\\b|\\bSafari\\b)\\//.exec(navigator.userAgent);\n var isSafariDesktop = checkSafari != null && checkSafari[1] != \"Chrome\" && /\\biPod\\b|\\biPad\\b/g.exec(navigator.userAgent) == null;\n\n // If we are not in safari desktop, let the browser control\n // the focus\n if (!isSafariDesktop) return;\n\n var x = tabbable.indexOf(document.activeElement);\n\n if (x > -1) {\n x += shiftKey ? -1 : 1;\n }\n\n target = tabbable[x];\n\n // If the tabbable element does not exist,\n // focus head/tail based on shiftKey\n if (typeof target === \"undefined\") {\n event.preventDefault();\n target = shiftKey ? tail : head;\n target.focus();\n return;\n }\n\n event.preventDefault();\n\n target.focus();\n}\nmodule.exports = exports[\"default\"];","// extracted by mini-css-extract-plugin\nmodule.exports = {\"screen\":\"Screen_screen__1JVwd\",\"closeButton\":\"Screen_closeButton__2eAGy\",\"content\":\"Screen_content__3Bn9G\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"modal\":\"Sidebar_modal__AVVNt\",\"afterOpen\":\"Sidebar_afterOpen__3qtCP\",\"sidebar\":\"Sidebar_sidebar__1BmXf\",\"beforeClose\":\"Sidebar_beforeClose__vU4tB\",\"overlay\":\"Sidebar_overlay__1Ccrb\",\"header\":\"Sidebar_header__VjKGT\",\"title\":\"Sidebar_title__2nqWj\",\"closeButton\":\"Sidebar_closeButton__2Yro_\",\"content\":\"Sidebar_content__1ezIJ\"};","/*!\n Copyright (c) 2017 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg) && arg.length) {\n\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\tif (inner) {\n\t\t\t\t\tclasses.push(inner);\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"board\":\"Board_board__ASOu2\",\"row\":\"Board_row__WXJ7Q\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"resultsInput\":\"ResultsInput_resultsInput__1xGkX\",\"input\":\"ResultsInput_input__soybt\"};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// Tracks portals that are open and emits events to subscribers\n\nvar PortalOpenInstances = function PortalOpenInstances() {\n var _this = this;\n\n _classCallCheck(this, PortalOpenInstances);\n\n this.register = function (openInstance) {\n if (_this.openInstances.indexOf(openInstance) !== -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Cannot register modal instance that's already open\");\n }\n return;\n }\n _this.openInstances.push(openInstance);\n _this.emit(\"register\");\n };\n\n this.deregister = function (openInstance) {\n var index = _this.openInstances.indexOf(openInstance);\n if (index === -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Unable to deregister \" + openInstance + \" as \" + \"it was never registered\");\n }\n return;\n }\n _this.openInstances.splice(index, 1);\n _this.emit(\"deregister\");\n };\n\n this.subscribe = function (callback) {\n _this.subscribers.push(callback);\n };\n\n this.emit = function (eventType) {\n _this.subscribers.forEach(function (subscriber) {\n return subscriber(eventType,\n // shallow copy to avoid accidental mutation\n _this.openInstances.slice());\n });\n };\n\n this.openInstances = [];\n this.subscribers = [];\n};\n\nvar portalOpenInstances = new PortalOpenInstances();\n\nexports.default = portalOpenInstances;\nmodule.exports = exports[\"default\"];","/**\n * Copyright (c) 2013-present, Facebook, Inc.\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\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.handleBlur = handleBlur;\nexports.handleFocus = handleFocus;\nexports.markForFocusLater = markForFocusLater;\nexports.returnFocus = returnFocus;\nexports.popWithoutFocus = popWithoutFocus;\nexports.setupScopedFocus = setupScopedFocus;\nexports.teardownScopedFocus = teardownScopedFocus;\n\nvar _tabbable = require(\"../helpers/tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar focusLaterElements = [];\nvar modalElement = null;\nvar needToFocus = false;\n\nfunction handleBlur() {\n needToFocus = true;\n}\n\nfunction handleFocus() {\n if (needToFocus) {\n needToFocus = false;\n if (!modalElement) {\n return;\n }\n // need to see how jQuery shims document.on('focusin') so we don't need the\n // setTimeout, firefox doesn't support focusin, if it did, we could focus\n // the element outside of a setTimeout. Side-effect of this implementation\n // is that the document.body gets focus, and then we focus our element right\n // after, seems fine.\n setTimeout(function () {\n if (modalElement.contains(document.activeElement)) {\n return;\n }\n var el = (0, _tabbable2.default)(modalElement)[0] || modalElement;\n el.focus();\n }, 0);\n }\n}\n\nfunction markForFocusLater() {\n focusLaterElements.push(document.activeElement);\n}\n\n/* eslint-disable no-console */\nfunction returnFocus() {\n var preventScroll = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n var toFocus = null;\n try {\n if (focusLaterElements.length !== 0) {\n toFocus = focusLaterElements.pop();\n toFocus.focus({ preventScroll: preventScroll });\n }\n return;\n } catch (e) {\n console.warn([\"You tried to return focus to\", toFocus, \"but it is not in the DOM anymore\"].join(\" \"));\n }\n}\n/* eslint-enable no-console */\n\nfunction popWithoutFocus() {\n focusLaterElements.length > 0 && focusLaterElements.pop();\n}\n\nfunction setupScopedFocus(element) {\n modalElement = element;\n\n if (window.addEventListener) {\n window.addEventListener(\"blur\", handleBlur, false);\n document.addEventListener(\"focus\", handleFocus, true);\n } else {\n window.attachEvent(\"onBlur\", handleBlur);\n document.attachEvent(\"onFocus\", handleFocus);\n }\n}\n\nfunction teardownScopedFocus() {\n modalElement = null;\n\n if (window.addEventListener) {\n window.removeEventListener(\"blur\", handleBlur);\n document.removeEventListener(\"focus\", handleFocus);\n } else {\n window.detachEvent(\"onBlur\", handleBlur);\n document.detachEvent(\"onFocus\", handleFocus);\n }\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"wave\":\"PlainTiles_wave__RkrSN\",\"tile\":\"PlainTiles_tile__3-ZhZ\",\"dropShadow\":\"PlainTiles_dropShadow__3ARSR\",\"hide\":\"PlainTiles_hide__17cvO\",\"progress\":\"PlainTiles_progress__3cL21\",\"pulse\":\"PlainTiles_pulse__3r1EF\"};","\"use strict\";\n\nvar _portalOpenInstances = require(\"./portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// Body focus trap see Issue #742\n\nvar before = void 0,\n after = void 0,\n instances = [];\n\nfunction focusContent() {\n if (instances.length === 0) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Open instances > 0 expected\");\n }\n return;\n }\n instances[instances.length - 1].focusContent();\n}\n\nfunction bodyTrap(eventType, openInstances) {\n if (!before || !after) {\n before = document.createElement(\"div\");\n before.setAttribute(\"data-react-modal-body-trap\", \"\");\n before.style.position = \"absolute\";\n before.style.opacity = \"0\";\n before.setAttribute(\"tabindex\", \"0\");\n before.addEventListener(\"focus\", focusContent);\n after = before.cloneNode();\n after.addEventListener(\"focus\", focusContent);\n }\n\n instances = openInstances;\n\n if (instances.length > 0) {\n // Add focus trap\n if (document.body.firstChild !== before) {\n document.body.insertBefore(before, document.body.firstChild);\n }\n if (document.body.lastChild !== after) {\n document.body.appendChild(after);\n }\n } else {\n // Remove focus trap\n if (before.parentElement) {\n before.parentElement.removeChild(before);\n }\n if (after.parentElement) {\n after.parentElement.removeChild(after);\n }\n }\n}\n\n_portalOpenInstances2.default.subscribe(bodyTrap);","// extracted by mini-css-extract-plugin\nmodule.exports = {\"well\":\"Well_well__2rvZn\"};","module.exports = require('./dist/client/link')\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.assertNodeList = assertNodeList;\nexports.setElement = setElement;\nexports.validateElement = validateElement;\nexports.hide = hide;\nexports.show = show;\nexports.documentNotReadyOrSSRTesting = documentNotReadyOrSSRTesting;\nexports.resetForTesting = resetForTesting;\n\nvar _warning = require(\"warning\");\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _safeHTMLElement = require(\"./safeHTMLElement\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar globalElement = null;\n\nfunction assertNodeList(nodeList, selector) {\n if (!nodeList || !nodeList.length) {\n throw new Error(\"react-modal: No elements were found for selector \" + selector + \".\");\n }\n}\n\nfunction setElement(element) {\n var useElement = element;\n if (typeof useElement === \"string\" && _safeHTMLElement.canUseDOM) {\n var el = document.querySelectorAll(useElement);\n assertNodeList(el, useElement);\n useElement = \"length\" in el ? el[0] : el;\n }\n globalElement = useElement || globalElement;\n return globalElement;\n}\n\nfunction validateElement(appElement) {\n if (!appElement && !globalElement) {\n (0, _warning2.default)(false, [\"react-modal: App element is not defined.\", \"Please use `Modal.setAppElement(el)` or set `appElement={el}`.\", \"This is needed so screen readers don't see main content\", \"when modal is opened. It is not recommended, but you can opt-out\", \"by setting `ariaHideApp={false}`.\"].join(\" \"));\n\n return false;\n }\n\n return true;\n}\n\nfunction hide(appElement) {\n if (validateElement(appElement)) {\n (appElement || globalElement).setAttribute(\"aria-hidden\", \"true\");\n }\n}\n\nfunction show(appElement) {\n if (validateElement(appElement)) {\n (appElement || globalElement).removeAttribute(\"aria-hidden\");\n }\n}\n\nfunction documentNotReadyOrSSRTesting() {\n globalElement = null;\n}\n\nfunction resetForTesting() {\n globalElement = null;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = findTabbableDescendants;\n/*!\n * Adapted from jQuery UI core\n *\n * http://jqueryui.com\n *\n * Copyright 2014 jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/category/ui-core/\n */\n\nvar tabbableNode = /input|select|textarea|button|object/;\n\nfunction hidesContents(element) {\n var zeroSize = element.offsetWidth <= 0 && element.offsetHeight <= 0;\n\n // If the node is empty, this is good enough\n if (zeroSize && !element.innerHTML) return true;\n\n // Otherwise we need to check some styles\n var style = window.getComputedStyle(element);\n return zeroSize ? style.getPropertyValue(\"overflow\") !== \"visible\" ||\n // if 'overflow: visible' set, check if there is actually any overflow\n element.scrollWidth <= 0 && element.scrollHeight <= 0 : style.getPropertyValue(\"display\") == \"none\";\n}\n\nfunction visible(element) {\n var parentElement = element;\n while (parentElement) {\n if (parentElement === document.body) break;\n if (hidesContents(parentElement)) return false;\n parentElement = parentElement.parentNode;\n }\n return true;\n}\n\nfunction focusable(element, isTabIndexNotNaN) {\n var nodeName = element.nodeName.toLowerCase();\n var res = tabbableNode.test(nodeName) && !element.disabled || (nodeName === \"a\" ? element.href || isTabIndexNotNaN : isTabIndexNotNaN);\n return res && visible(element);\n}\n\nfunction tabbable(element) {\n var tabIndex = element.getAttribute(\"tabindex\");\n if (tabIndex === null) tabIndex = undefined;\n var isTabIndexNaN = isNaN(tabIndex);\n return (isTabIndexNaN || tabIndex >= 0) && focusable(element, !isTabIndexNaN);\n}\n\nfunction findTabbableDescendants(element) {\n return [].slice.call(element.querySelectorAll(\"*\"), 0).filter(tabbable);\n}\nmodule.exports = exports[\"default\"];","// extracted by mini-css-extract-plugin\nmodule.exports = {\"group\":\"RemainingTiles_group__2AWTh\",\"title\":\"RemainingTiles_title__1zi0v\",\"content\":\"RemainingTiles_content__3xzgX\"};","\"use strict\";\n\nvar _slicedToArray = require(\"@babel/runtime/helpers/slicedToArray\");\n\nvar _interopRequireWildcard = require(\"@babel/runtime/helpers/interopRequireWildcard\");\n\nexports.__esModule = true;\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _router = require(\"../next-server/lib/router/router\");\n\nvar _router2 = require(\"./router\");\n\nvar _useIntersection = require(\"./use-intersection\");\n\nvar prefetched = {};\n\nfunction prefetch(router, href, as, options) {\n if (false || !router) return;\n if (!(0, _router.isLocalURL)(href)) return; // Prefetch the JSON page if asked (only in the client)\n // We need to handle a prefetch error here since we may be\n // loading with priority which can reject but we don't\n // want to force navigation since this is only a prefetch\n\n router.prefetch(href, as, options)[\"catch\"](function (err) {\n if (false) {\n // rethrow to show invalid URL errors\n throw err;\n }\n });\n var curLocale = options && typeof options.locale !== 'undefined' ? options.locale : router && router.locale; // Join on an invalid URI character\n\n prefetched[href + '%' + as + (curLocale ? '%' + curLocale : '')] = true;\n}\n\nfunction isModifiedEvent(event) {\n var target = event.currentTarget.target;\n return target && target !== '_self' || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey || // triggers resource download\n event.nativeEvent && event.nativeEvent.which === 2;\n}\n\nfunction linkClicked(e, router, href, as, replace, shallow, scroll, locale) {\n var nodeName = e.currentTarget.nodeName;\n\n if (nodeName === 'A' && (isModifiedEvent(e) || !(0, _router.isLocalURL)(href))) {\n // ignore click for browser’s default behavior\n return;\n }\n\n e.preventDefault(); // avoid scroll for urls with anchor refs\n\n if (scroll == null) {\n scroll = as.indexOf('#') < 0;\n } // replace state instead of push if prop is present\n\n\n router[replace ? 'replace' : 'push'](href, as, {\n shallow: shallow,\n locale: locale,\n scroll: scroll\n }).then(function (success) {\n if (!success) return;\n\n if (scroll) {\n // FIXME: proper route announcing at Router level, not Link:\n document.body.focus();\n }\n });\n}\n\nfunction Link(props) {\n if (false) {\n var createPropError = function createPropError(args) {\n return new Error(\"Failed prop type: The prop `\".concat(args.key, \"` expects a \").concat(args.expected, \" in `<Link>`, but got `\").concat(args.actual, \"` instead.\") + (true ? \"\\nOpen your browser's console to view the Component stack trace.\" : ''));\n }; // TypeScript trick for type-guarding:\n\n\n var requiredPropsGuard = {\n href: true\n };\n var requiredProps = Object.keys(requiredPropsGuard);\n requiredProps.forEach(function (key) {\n if (key === 'href') {\n if (props[key] == null || typeof props[key] !== 'string' && typeof props[key] !== 'object') {\n throw createPropError({\n key: key,\n expected: '`string` or `object`',\n actual: props[key] === null ? 'null' : typeof props[key]\n });\n }\n } else {\n // TypeScript trick for type-guarding:\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var _ = key;\n }\n }); // TypeScript trick for type-guarding:\n\n var optionalPropsGuard = {\n as: true,\n replace: true,\n scroll: true,\n shallow: true,\n passHref: true,\n prefetch: true,\n locale: true\n };\n var optionalProps = Object.keys(optionalPropsGuard);\n optionalProps.forEach(function (key) {\n var valType = typeof props[key];\n\n if (key === 'as') {\n if (props[key] && valType !== 'string' && valType !== 'object') {\n throw createPropError({\n key: key,\n expected: '`string` or `object`',\n actual: valType\n });\n }\n } else if (key === 'locale') {\n if (props[key] && valType !== 'string') {\n throw createPropError({\n key: key,\n expected: '`string`',\n actual: valType\n });\n }\n } else if (key === 'replace' || key === 'scroll' || key === 'shallow' || key === 'passHref' || key === 'prefetch') {\n if (props[key] != null && valType !== 'boolean') {\n throw createPropError({\n key: key,\n expected: '`boolean`',\n actual: valType\n });\n }\n } else {\n // TypeScript trick for type-guarding:\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var _ = key;\n }\n }); // This hook is in a conditional but that is ok because `process.env.NODE_ENV` never changes\n // eslint-disable-next-line react-hooks/rules-of-hooks\n\n var hasWarned = _react[\"default\"].useRef(false);\n\n if (props.prefetch && !hasWarned.current) {\n hasWarned.current = true;\n console.warn('Next.js auto-prefetches automatically based on viewport. The prefetch attribute is no longer needed. More: https://err.sh/vercel/next.js/prefetch-true-deprecated');\n }\n }\n\n var p = props.prefetch !== false;\n var router = (0, _router2.useRouter)();\n var pathname = router && router.pathname || '/';\n\n var _react$default$useMem = _react[\"default\"].useMemo(function () {\n var _ref = (0, _router.resolveHref)(pathname, props.href, true),\n _ref2 = _slicedToArray(_ref, 2),\n resolvedHref = _ref2[0],\n resolvedAs = _ref2[1];\n\n return {\n href: resolvedHref,\n as: props.as ? (0, _router.resolveHref)(pathname, props.as) : resolvedAs || resolvedHref\n };\n }, [pathname, props.href, props.as]),\n href = _react$default$useMem.href,\n as = _react$default$useMem.as;\n\n var children = props.children,\n replace = props.replace,\n shallow = props.shallow,\n scroll = props.scroll,\n locale = props.locale; // Deprecated. Warning shown by propType check. If the children provided is a string (<Link>example</Link>) we wrap it in an <a> tag\n\n if (typeof children === 'string') {\n children = /*#__PURE__*/_react[\"default\"].createElement(\"a\", null, children);\n } // This will return the first child, if multiple are provided it will throw an error\n\n\n var child = _react.Children.only(children);\n\n var childRef = child && typeof child === 'object' && child.ref;\n\n var _ref3 = (0, _useIntersection.useIntersection)({\n rootMargin: '200px'\n }),\n _ref4 = _slicedToArray(_ref3, 2),\n setIntersectionRef = _ref4[0],\n isVisible = _ref4[1];\n\n var setRef = _react[\"default\"].useCallback(function (el) {\n setIntersectionRef(el);\n\n if (childRef) {\n if (typeof childRef === 'function') childRef(el);else if (typeof childRef === 'object') {\n childRef.current = el;\n }\n }\n }, [childRef, setIntersectionRef]);\n\n (0, _react.useEffect)(function () {\n var shouldPrefetch = isVisible && p && (0, _router.isLocalURL)(href);\n var curLocale = typeof locale !== 'undefined' ? locale : router && router.locale;\n var isPrefetched = prefetched[href + '%' + as + (curLocale ? '%' + curLocale : '')];\n\n if (shouldPrefetch && !isPrefetched) {\n prefetch(router, href, as, {\n locale: curLocale\n });\n }\n }, [as, href, isVisible, locale, p, router]);\n var childProps = {\n ref: setRef,\n onClick: function onClick(e) {\n if (child.props && typeof child.props.onClick === 'function') {\n child.props.onClick(e);\n }\n\n if (!e.defaultPrevented) {\n linkClicked(e, router, href, as, replace, shallow, scroll, locale);\n }\n }\n };\n\n childProps.onMouseEnter = function (e) {\n if (!(0, _router.isLocalURL)(href)) return;\n\n if (child.props && typeof child.props.onMouseEnter === 'function') {\n child.props.onMouseEnter(e);\n }\n\n prefetch(router, href, as, {\n priority: true\n });\n }; // If child is an <a> tag and doesn't have a href attribute, or if the 'passHref' property is\n // defined, we specify the current 'href', so that repetition is not needed by the user\n\n\n if (props.passHref || child.type === 'a' && !('href' in child.props)) {\n var curLocale = typeof locale !== 'undefined' ? locale : router && router.locale;\n var localeDomain = (0, _router.getDomainLocale)(as, curLocale, router && router.locales, router && router.domainLocales);\n childProps.href = localeDomain || (0, _router.addBasePath)((0, _router.addLocale)(as, curLocale, router && router.defaultLocale));\n }\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(child, childProps);\n}\n\nvar _default = Link;\nexports[\"default\"] = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.dumpClassLists = dumpClassLists;\nvar htmlClassList = {};\nvar docBodyClassList = {};\n\nfunction dumpClassLists() {\n if (process.env.NODE_ENV !== \"production\") {\n var classes = document.getElementsByTagName(\"html\")[0].className;\n var buffer = \"Show tracked classes:\\n\\n\";\n\n buffer += \"<html /> (\" + classes + \"):\\n\";\n for (var x in htmlClassList) {\n buffer += \" \" + x + \" \" + htmlClassList[x] + \"\\n\";\n }\n\n classes = document.body.className;\n\n // eslint-disable-next-line max-len\n buffer += \"\\n\\ndoc.body (\" + classes + \"):\\n\";\n for (var _x in docBodyClassList) {\n buffer += \" \" + _x + \" \" + docBodyClassList[_x] + \"\\n\";\n }\n\n buffer += \"\\n\";\n\n // eslint-disable-next-line no-console\n console.log(buffer);\n }\n}\n\n/**\n * Track the number of reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar incrementReference = function incrementReference(poll, className) {\n if (!poll[className]) {\n poll[className] = 0;\n }\n poll[className] += 1;\n return className;\n};\n\n/**\n * Drop the reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar decrementReference = function decrementReference(poll, className) {\n if (poll[className]) {\n poll[className] -= 1;\n }\n return className;\n};\n\n/**\n * Track a class and add to the given class list.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be tracked.\n */\nvar trackClass = function trackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n incrementReference(poll, className);\n classListRef.add(className);\n });\n};\n\n/**\n * Untrack a class and remove from the given class list if the reference\n * reaches 0.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be untracked.\n */\nvar untrackClass = function untrackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n decrementReference(poll, className);\n poll[className] === 0 && classListRef.remove(className);\n });\n};\n\n/**\n * Public inferface to add classes to the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar add = exports.add = function add(element, classString) {\n return trackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};\n\n/**\n * Public inferface to remove classes from the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar remove = exports.remove = function remove(element, classString) {\n return untrackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"checkbox\":\"Checkbox_checkbox__TMzB8\",\"icon\":\"Checkbox_icon__1x7ag\",\"checked\":\"Checkbox_checked__2Le1z\",\"input\":\"Checkbox_input__3o21M\",\"content\":\"Checkbox_content__1VcXS\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"navButtons\":\"NavButtons_navButtons__1og2w\",\"button\":\"NavButtons_button__2YUcq\",\"separator\":\"NavButtons_separator__3dZKW\",\"error\":\"NavButtons_error___bS0g\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"notFound\":\"NotFound_notFound__3lall\",\"link\":\"NotFound_link__23_eH\",\"icon\":\"NotFound_icon__2qUrU\",\"tiles\":\"NotFound_tiles__1Qnr3\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dictionary\":\"Dictionary_dictionary__2LVIo\",\"content\":\"Dictionary_content__35SFT\",\"word\":\"Dictionary_word__yTxK-\",\"isAllowed\":\"Dictionary_isAllowed__1pY0l\",\"isNotAllowed\":\"Dictionary_isNotAllowed__sGDpa\",\"definitions\":\"Dictionary_definitions__1B_VQ\",\"definition\":\"Dictionary_definition__1tU6g\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"splash\":\"Splash_splash__1fgIO\",\"animated\":\"Splash_animated__3KuaO\",\"hide\":\"Splash_hide__xGaFV\",\"logos\":\"Splash_logos__XgKlA\",\"pulse\":\"Splash_pulse__2k_vY\",\"logoColor\":\"Splash_logoColor__1R-9s\",\"progress\":\"Splash_progress__1OiT4\",\"logoGrayscale\":\"Splash_logoGrayscale__1Q8n_\",\"author\":\"Splash_author__10OKS\",\"wave\":\"Splash_wave__1o-S9\"};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.bodyOpenClassName = exports.portalClassName = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require(\"react-dom\");\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ModalPortal = require(\"./ModalPortal\");\n\nvar _ModalPortal2 = _interopRequireDefault(_ModalPortal);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _reactLifecyclesCompat = require(\"react-lifecycles-compat\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar portalClassName = exports.portalClassName = \"ReactModalPortal\";\nvar bodyOpenClassName = exports.bodyOpenClassName = \"ReactModal__Body--open\";\n\nvar isReact16 = _safeHTMLElement.canUseDOM && _reactDom2.default.createPortal !== undefined;\n\nvar getCreatePortal = function getCreatePortal() {\n return isReact16 ? _reactDom2.default.createPortal : _reactDom2.default.unstable_renderSubtreeIntoContainer;\n};\n\nfunction getParentElement(parentSelector) {\n return parentSelector();\n}\n\nvar Modal = function (_Component) {\n _inherits(Modal, _Component);\n\n function Modal() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Modal);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Modal.__proto__ || Object.getPrototypeOf(Modal)).call.apply(_ref, [this].concat(args))), _this), _this.removePortal = function () {\n !isReact16 && _reactDom2.default.unmountComponentAtNode(_this.node);\n var parent = getParentElement(_this.props.parentSelector);\n if (parent && parent.contains(_this.node)) {\n parent.removeChild(_this.node);\n } else {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"parentSelector\" prop did not returned any DOM ' + \"element. Make sure that the parent element is unmounted to \" + \"avoid any memory leaks.\");\n }\n }, _this.portalRef = function (ref) {\n _this.portal = ref;\n }, _this.renderPortal = function (props) {\n var createPortal = getCreatePortal();\n var portal = createPortal(_this, _react2.default.createElement(_ModalPortal2.default, _extends({ defaultStyles: Modal.defaultStyles }, props)), _this.node);\n _this.portalRef(portal);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Modal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!_safeHTMLElement.canUseDOM) return;\n\n if (!isReact16) {\n this.node = document.createElement(\"div\");\n }\n this.node.className = this.props.portalClassName;\n\n var parent = getParentElement(this.props.parentSelector);\n parent.appendChild(this.node);\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"getSnapshotBeforeUpdate\",\n value: function getSnapshotBeforeUpdate(prevProps) {\n var prevParent = getParentElement(prevProps.parentSelector);\n var nextParent = getParentElement(this.props.parentSelector);\n return { prevParent: prevParent, nextParent: nextParent };\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, _, snapshot) {\n if (!_safeHTMLElement.canUseDOM) return;\n var _props = this.props,\n isOpen = _props.isOpen,\n portalClassName = _props.portalClassName;\n\n\n if (prevProps.portalClassName !== portalClassName) {\n this.node.className = portalClassName;\n }\n\n var prevParent = snapshot.prevParent,\n nextParent = snapshot.nextParent;\n\n if (nextParent !== prevParent) {\n prevParent.removeChild(this.node);\n nextParent.appendChild(this.node);\n }\n\n // Stop unnecessary renders if modal is remaining closed\n if (!prevProps.isOpen && !isOpen) return;\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (!_safeHTMLElement.canUseDOM || !this.node || !this.portal) return;\n\n var state = this.portal.state;\n var now = Date.now();\n var closesAt = state.isOpen && this.props.closeTimeoutMS && (state.closesAt || now + this.props.closeTimeoutMS);\n\n if (closesAt) {\n if (!state.beforeClose) {\n this.portal.closeWithTimeout();\n }\n\n setTimeout(this.removePortal, closesAt - now);\n } else {\n this.removePortal();\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n if (!_safeHTMLElement.canUseDOM || !isReact16) {\n return null;\n }\n\n if (!this.node && isReact16) {\n this.node = document.createElement(\"div\");\n }\n\n var createPortal = getCreatePortal();\n return createPortal(_react2.default.createElement(_ModalPortal2.default, _extends({\n ref: this.portalRef,\n defaultStyles: Modal.defaultStyles\n }, this.props)), this.node);\n }\n }], [{\n key: \"setAppElement\",\n value: function setAppElement(element) {\n ariaAppHider.setElement(element);\n }\n\n /* eslint-disable react/no-unused-prop-types */\n\n /* eslint-enable react/no-unused-prop-types */\n\n }]);\n\n return Modal;\n}(_react.Component);\n\nModal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n portalClassName: _propTypes2.default.string,\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n appElement: _propTypes2.default.instanceOf(_safeHTMLElement2.default),\n onAfterOpen: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n ariaHideApp: _propTypes2.default.bool,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n parentSelector: _propTypes2.default.func,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func\n};\nModal.defaultProps = {\n isOpen: false,\n portalClassName: portalClassName,\n bodyOpenClassName: bodyOpenClassName,\n role: \"dialog\",\n ariaHideApp: true,\n closeTimeoutMS: 0,\n shouldFocusAfterRender: true,\n shouldCloseOnEsc: true,\n shouldCloseOnOverlayClick: true,\n shouldReturnFocusAfterClose: true,\n preventScroll: false,\n parentSelector: function parentSelector() {\n return document.body;\n },\n overlayElement: function overlayElement(props, contentEl) {\n return _react2.default.createElement(\n \"div\",\n props,\n contentEl\n );\n },\n contentElement: function contentElement(props, children) {\n return _react2.default.createElement(\n \"div\",\n props,\n children\n );\n }\n};\nModal.defaultStyles = {\n overlay: {\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: \"rgba(255, 255, 255, 0.75)\"\n },\n content: {\n position: \"absolute\",\n top: \"40px\",\n left: \"40px\",\n right: \"40px\",\n bottom: \"40px\",\n border: \"1px solid #ccc\",\n background: \"#fff\",\n overflow: \"auto\",\n WebkitOverflowScrolling: \"touch\",\n borderRadius: \"4px\",\n outline: \"none\",\n padding: \"20px\"\n }\n};\n\n\n(0, _reactLifecyclesCompat.polyfill)(Modal);\n\nexports.default = Modal;","// extracted by mini-css-extract-plugin\nmodule.exports = {\"tile\":\"Tile_tile__2zdlK\",\"raised\":\"Tile_raised__3bruO\",\"points1\":\"Tile_points1__3kQ_0\",\"points2\":\"Tile_points2__1TZdg\",\"points3\":\"Tile_points3__28-Zh\",\"points4\":\"Tile_points4__1HVw7\",\"points5\":\"Tile_points5___-zw4\",\"blank\":\"Tile_blank__MbmGr\",\"character\":\"Tile_character__3dEBi\",\"highlighted\":\"Tile_highlighted__1L53H\",\"points\":\"Tile_points__-wyIb\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"loading\":\"Loading_loading__1dXNE\",\"dim\":\"Loading_dim__2ewDS\",\"logo\":\"Loading_logo__2nlr3\",\"tiles\":\"Loading_tiles__gEhWd\"};","\"use strict\";\n\nvar _slicedToArray = require(\"@babel/runtime/helpers/slicedToArray\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.useIntersection = useIntersection;\n\nvar _react = require(\"react\");\n\nvar _requestIdleCallback = _interopRequireDefault(require(\"./request-idle-callback\"));\n\nvar hasIntersectionObserver = typeof IntersectionObserver !== 'undefined';\n\nfunction useIntersection(_ref) {\n var rootMargin = _ref.rootMargin,\n disabled = _ref.disabled;\n var isDisabled = disabled || !hasIntersectionObserver;\n var unobserve = (0, _react.useRef)();\n\n var _ref2 = (0, _react.useState)(false),\n _ref3 = _slicedToArray(_ref2, 2),\n visible = _ref3[0],\n setVisible = _ref3[1];\n\n var setRef = (0, _react.useCallback)(function (el) {\n if (unobserve.current) {\n unobserve.current();\n unobserve.current = undefined;\n }\n\n if (isDisabled || visible) return;\n\n if (el && el.tagName) {\n unobserve.current = observe(el, function (isVisible) {\n return isVisible && setVisible(isVisible);\n }, {\n rootMargin: rootMargin\n });\n }\n }, [isDisabled, rootMargin, visible]);\n (0, _react.useEffect)(function () {\n if (!hasIntersectionObserver) {\n if (!visible) (0, _requestIdleCallback[\"default\"])(function () {\n return setVisible(true);\n });\n }\n }, [visible]);\n return [setRef, visible];\n}\n\nfunction observe(element, callback, options) {\n var _createObserver = createObserver(options),\n id = _createObserver.id,\n observer = _createObserver.observer,\n elements = _createObserver.elements;\n\n elements.set(element, callback);\n observer.observe(element);\n return function unobserve() {\n elements[\"delete\"](element);\n observer.unobserve(element); // Destroy observer when there's nothing left to watch:\n\n if (elements.size === 0) {\n observer.disconnect();\n observers[\"delete\"](id);\n }\n };\n}\n\nvar observers = new Map();\n\nfunction createObserver(options) {\n var id = options.rootMargin || '';\n var instance = observers.get(id);\n\n if (instance) {\n return instance;\n }\n\n var elements = new Map();\n var observer = new IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n var callback = elements.get(entry.target);\n var isVisible = entry.isIntersecting || entry.intersectionRatio > 0;\n\n if (callback && isVisible) {\n callback(isVisible);\n }\n });\n }, options);\n observers.set(id, instance = {\n id: id,\n observer: observer,\n elements: elements\n });\n return instance;\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"section\":\"Section_section__o4HeJ\",\"heading\":\"Section_heading__2mcEO\"};"]}}