cubing 0.25.13 → 0.26.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 (415) hide show
  1. package/dist/esm/.DS_Store +0 -0
  2. package/dist/esm/{2x2x2.kpuzzle.json-BHTFIME6.js → 2x2x2.kpuzzle.json-RJHNQ246.js} +1 -1
  3. package/dist/esm/{2x2x2.kpuzzle.json-BHTFIME6.js.map → 2x2x2.kpuzzle.json-RJHNQ246.js.map} +1 -1
  4. package/dist/esm/{2x2x2.sgs.json-NLV7NA3B.js → 2x2x2.sgs.json-OIAKZDZZ.js} +5 -5
  5. package/dist/esm/{2x2x2.sgs.json-NLV7NA3B.js.map → 2x2x2.sgs.json-OIAKZDZZ.js.map} +1 -1
  6. package/dist/esm/{3d-dynamic-ZXCKVS2R.js → 3d-dynamic-OTQHIOVR.js} +5 -5
  7. package/dist/esm/{3d-dynamic-ZXCKVS2R.js.map → 3d-dynamic-OTQHIOVR.js.map} +1 -1
  8. package/dist/esm/{3x3x3-min2phase-UBW46KDU.js → 3x3x3-min2phase-GFNNX26U.js} +1 -1
  9. package/dist/esm/{3x3x3-min2phase-UBW46KDU.js.map → 3x3x3-min2phase-GFNNX26U.js.map} +1 -1
  10. package/dist/esm/{444-solver-XVU6Q26C.js → 444-solver-2ECPETB3.js} +6 -6
  11. package/dist/esm/{444-solver-XVU6Q26C.js.map → 444-solver-2ECPETB3.js.map} +1 -1
  12. package/dist/esm/alg/index.js +1 -1
  13. package/dist/esm/bluetooth/index.js +6 -8
  14. package/dist/esm/bluetooth/index.js.map +1 -1
  15. package/dist/esm/{chunk-FB7SFELN.js → chunk-3CEMUTUD.js} +2 -2
  16. package/dist/esm/{chunk-FB7SFELN.js.map → chunk-3CEMUTUD.js.map} +1 -1
  17. package/dist/esm/{chunk-NSLR2SC4.js → chunk-5Q4SJSNY.js} +2 -2
  18. package/dist/esm/{chunk-NSLR2SC4.js.map → chunk-5Q4SJSNY.js.map} +1 -1
  19. package/dist/esm/{chunk-ZPAGJE7S.js → chunk-AD6PFNOU.js} +2 -2
  20. package/dist/esm/{chunk-ZPAGJE7S.js.map → chunk-AD6PFNOU.js.map} +1 -1
  21. package/dist/esm/{chunk-GBMX6FHY.js → chunk-ALBEW4DJ.js} +1 -1
  22. package/dist/esm/{chunk-GBMX6FHY.js.map → chunk-ALBEW4DJ.js.map} +1 -1
  23. package/dist/esm/{chunk-KWHGWTPB.js → chunk-CRU5TVHA.js} +4 -4
  24. package/dist/esm/{chunk-KWHGWTPB.js.map → chunk-CRU5TVHA.js.map} +1 -1
  25. package/dist/esm/{chunk-AT7N3AOZ.js → chunk-CYG3DDTX.js} +3 -2
  26. package/dist/esm/chunk-CYG3DDTX.js.map +7 -0
  27. package/dist/esm/{chunk-YAOUFM4D.js → chunk-HUCMGBEC.js} +295 -2
  28. package/dist/esm/chunk-HUCMGBEC.js.map +7 -0
  29. package/dist/esm/{chunk-RPPJMADS.js → chunk-J7OB2GEM.js} +6 -6
  30. package/dist/esm/{chunk-RPPJMADS.js.map → chunk-J7OB2GEM.js.map} +1 -1
  31. package/dist/esm/{chunk-FIUPFE4L.js → chunk-JIBAUV55.js} +7 -7
  32. package/dist/esm/{chunk-FIUPFE4L.js.map → chunk-JIBAUV55.js.map} +1 -1
  33. package/dist/esm/{chunk-ASJ4L4HQ.js → chunk-MC2D6L32.js} +3 -3
  34. package/dist/esm/{chunk-ASJ4L4HQ.js.map → chunk-MC2D6L32.js.map} +1 -1
  35. package/dist/esm/{chunk-RN5JA7BB.js → chunk-PDVAUAMY.js} +2 -2
  36. package/dist/esm/{chunk-RN5JA7BB.js.map → chunk-PDVAUAMY.js.map} +1 -1
  37. package/dist/esm/{chunk-AMOANNTB.js → chunk-PMKVGKT4.js} +4 -4
  38. package/dist/esm/{chunk-AMOANNTB.js.map → chunk-PMKVGKT4.js.map} +1 -1
  39. package/dist/esm/{chunk-DO7GZAW4.js → chunk-QZOJPCN5.js} +1 -1
  40. package/dist/esm/{chunk-DO7GZAW4.js.map → chunk-QZOJPCN5.js.map} +1 -1
  41. package/dist/esm/{chunk-BEXHMXCT.js → chunk-RHC3DIN3.js} +1 -1
  42. package/dist/esm/{chunk-BEXHMXCT.js.map → chunk-RHC3DIN3.js.map} +1 -1
  43. package/dist/esm/{chunk-43SBQEWR.js → chunk-V55YSWJY.js} +3 -3
  44. package/dist/esm/chunk-V55YSWJY.js.map +7 -0
  45. package/dist/esm/{chunk-YRNGJPFS.js → chunk-XQKTAWAA.js} +6 -6
  46. package/dist/esm/{chunk-YRNGJPFS.js.map → chunk-XQKTAWAA.js.map} +1 -1
  47. package/dist/esm/{clock.kpuzzle.json-PYHONPBY.js → clock.kpuzzle.json-3Q7KDODZ.js} +1 -1
  48. package/dist/esm/clock.kpuzzle.json-3Q7KDODZ.js.map +7 -0
  49. package/dist/esm/{fto-solver-TOOJNOZB.js → fto-solver-5EQEC77M.js} +2 -2
  50. package/dist/esm/{fto-solver-TOOJNOZB.js.map → fto-solver-5EQEC77M.js.map} +1 -1
  51. package/dist/esm/{fto.dynamic-ZIN22CCJ.js → fto.dynamic-ISSUUAOX.js} +6 -6
  52. package/dist/esm/{fto.dynamic-ZIN22CCJ.js.map → fto.dynamic-ISSUUAOX.js.map} +1 -1
  53. package/dist/esm/{kilosolver-A3MNW2DJ.js → kilosolver-RP3POREU.js} +3 -3
  54. package/dist/esm/{kilosolver-A3MNW2DJ.js.map → kilosolver-RP3POREU.js.map} +1 -1
  55. package/dist/esm/kpuzzle/index.js +2 -2
  56. package/dist/esm/{master_tetraminx-solver-QSJNGET5.js → master_tetraminx-solver-RFBUNQMC.js} +2 -2
  57. package/dist/esm/{master_tetraminx-solver-QSJNGET5.js.map → master_tetraminx-solver-RFBUNQMC.js.map} +1 -1
  58. package/dist/esm/{megaminx.sgs.json-4RFNTV3K.js → megaminx.sgs.json-NUXKWG2L.js} +6 -6
  59. package/dist/esm/{megaminx.sgs.json-4RFNTV3K.js.map → megaminx.sgs.json-NUXKWG2L.js.map} +0 -0
  60. package/dist/esm/notation/index.js +2 -2
  61. package/dist/esm/protocol/index.js +2 -3
  62. package/dist/esm/puzzle-geometry/index.js +2 -2
  63. package/dist/esm/puzzles/index.js +3 -3
  64. package/dist/esm/pyraminx.sgs.json-2BVIFZAF.js +14 -0
  65. package/dist/esm/{pyraminx.sgs.json-XWDFTFGD.js.map → pyraminx.sgs.json-2BVIFZAF.js.map} +0 -0
  66. package/dist/esm/{redi_cube-FYRLEZZH.js → redi_cube-5B6YHJGL.js} +3 -3
  67. package/dist/esm/{redi_cube-FYRLEZZH.js.map → redi_cube-5B6YHJGL.js.map} +1 -1
  68. package/dist/esm/{redi_cube.kpuzzle.json-43CP47Z6.js → redi_cube.kpuzzle.json-VGO74GBL.js} +1 -1
  69. package/dist/esm/{redi_cube.kpuzzle.json-43CP47Z6.js.map → redi_cube.kpuzzle.json-VGO74GBL.js.map} +1 -1
  70. package/dist/esm/scramble/index.js +8 -8
  71. package/dist/esm/search/index.js +8 -8
  72. package/dist/esm/{search-worker-js-entry-MQ5EKNR4.js → search-worker-js-entry-CZHIWNVF.js} +24 -24
  73. package/dist/esm/{search-worker-js-entry-MQ5EKNR4.js.map → search-worker-js-entry-CZHIWNVF.js.map} +1 -1
  74. package/dist/esm/{search-worker-ts-entry-AEZHCL75.js → search-worker-ts-entry-4WJDKASM.js} +5 -5
  75. package/dist/esm/{search-worker-ts-entry-AEZHCL75.js.map → search-worker-ts-entry-4WJDKASM.js.map} +1 -1
  76. package/dist/esm/skewb.sgs.json-IMR7QJQC.js +16 -0
  77. package/dist/esm/{skewb.sgs.json-ENZWYZTX.js.map → skewb.sgs.json-IMR7QJQC.js.map} +0 -0
  78. package/dist/esm/{sq1-hyperorbit.kpuzzle.json-AMXAFQCM.js → sq1-hyperorbit.kpuzzle.json-NHAYS6MD.js} +1 -1
  79. package/dist/esm/sq1-hyperorbit.kpuzzle.json-NHAYS6MD.js.map +7 -0
  80. package/dist/esm/{sq1-solver-KMN2GSOU.js → sq1-solver-G73T6FTJ.js} +2 -2
  81. package/dist/esm/{sq1-solver-KMN2GSOU.js.map → sq1-solver-G73T6FTJ.js.map} +1 -1
  82. package/dist/esm/stream/index.js +1 -1
  83. package/dist/esm/stream/index.js.map +1 -1
  84. package/dist/esm/twisty/index.js +73 -52
  85. package/dist/esm/twisty/index.js.map +2 -2
  86. package/dist/esm/{worker-inside-generated-string-HCFERKXI.js → worker-inside-generated-string-4FDHMKDI.js} +27 -27
  87. package/dist/esm/worker-inside-generated-string-4FDHMKDI.js.map +7 -0
  88. package/dist/types/Alg-6f3dc52c.d.ts +278 -0
  89. package/dist/types/KPuzzleDefinition-8531b592.d.ts +349 -0
  90. package/dist/types/KState-ba36d9a3.d.ts +70 -0
  91. package/dist/types/PuzzleLoader-a7faf593.d.ts +172 -0
  92. package/dist/types/alg/index.d.ts +49 -13
  93. package/dist/types/bluetooth/index.d.ts +147 -11
  94. package/dist/types/{bluetooth/smart-puzzle/bluetooth-puzzle.d.ts → bluetooth-puzzle-bc1a5264.d.ts} +14 -8
  95. package/dist/types/kpuzzle/index.d.ts +8 -6
  96. package/dist/types/notation/index.d.ts +8 -2
  97. package/dist/types/outside-d6602f71.d.ts +22 -0
  98. package/dist/types/parse-6d363160.d.ts +9 -0
  99. package/dist/types/protocol/index.d.ts +26 -4
  100. package/dist/types/puzzle-geometry/index.d.ts +7 -6
  101. package/dist/types/puzzles/index.d.ts +29 -12
  102. package/dist/types/scramble/index.d.ts +4 -1
  103. package/dist/types/search/index.d.ts +8 -2
  104. package/dist/types/stream/index.d.ts +57 -3
  105. package/dist/types/twisty/index.d.ts +1027 -16
  106. package/package.json +4 -2
  107. package/dist/esm/chunk-43SBQEWR.js.map +0 -7
  108. package/dist/esm/chunk-6BUCXDZU.js +0 -274
  109. package/dist/esm/chunk-6BUCXDZU.js.map +0 -7
  110. package/dist/esm/chunk-AT7N3AOZ.js.map +0 -7
  111. package/dist/esm/chunk-YAOUFM4D.js.map +0 -7
  112. package/dist/esm/clock.kpuzzle.json-PYHONPBY.js.map +0 -7
  113. package/dist/esm/pyraminx.sgs.json-XWDFTFGD.js +0 -14
  114. package/dist/esm/skewb.sgs.json-ENZWYZTX.js +0 -16
  115. package/dist/esm/sq1-hyperorbit.kpuzzle.json-AMXAFQCM.js.map +0 -7
  116. package/dist/esm/worker-inside-generated-string-HCFERKXI.js.map +0 -7
  117. package/dist/types/alg/Alg.d.ts +0 -118
  118. package/dist/types/alg/Alg.spec.d.ts +0 -1
  119. package/dist/types/alg/AlgBuilder.d.ts +0 -11
  120. package/dist/types/alg/Serializable.d.ts +0 -0
  121. package/dist/types/alg/common.d.ts +0 -19
  122. package/dist/types/alg/debug.d.ts +0 -4
  123. package/dist/types/alg/example.d.ts +0 -14
  124. package/dist/types/alg/is.d.ts +0 -4
  125. package/dist/types/alg/iteration.d.ts +0 -9
  126. package/dist/types/alg/keyboard.d.ts +0 -2
  127. package/dist/types/alg/limits.d.ts +0 -4
  128. package/dist/types/alg/operation.d.ts +0 -6
  129. package/dist/types/alg/operation.spec.d.ts +0 -1
  130. package/dist/types/alg/parse.d.ts +0 -12
  131. package/dist/types/alg/parse.spec.d.ts +0 -1
  132. package/dist/types/alg/test/alg-comparison.d.ts +0 -10
  133. package/dist/types/alg/test/alg.spec.d.ts +0 -1
  134. package/dist/types/alg/traversal.d.ts +0 -39
  135. package/dist/types/alg/units/QuantumWithAmount.d.ts +0 -11
  136. package/dist/types/alg/units/Unit.d.ts +0 -9
  137. package/dist/types/alg/units/containers/Commutator.d.ts +0 -14
  138. package/dist/types/alg/units/containers/Conjugate.d.ts +0 -14
  139. package/dist/types/alg/units/containers/Grouping.d.ts +0 -19
  140. package/dist/types/alg/units/index.d.ts +0 -8
  141. package/dist/types/alg/units/leaves/LineComment.d.ts +0 -12
  142. package/dist/types/alg/units/leaves/LineComment.spec.d.ts +0 -1
  143. package/dist/types/alg/units/leaves/Move.d.ts +0 -50
  144. package/dist/types/alg/units/leaves/Move.spec.d.ts +0 -1
  145. package/dist/types/alg/units/leaves/Newline.d.ts +0 -9
  146. package/dist/types/alg/units/leaves/Pause.d.ts +0 -9
  147. package/dist/types/alg/url.d.ts +0 -11
  148. package/dist/types/alg/url.spec.d.ts +0 -1
  149. package/dist/types/alg/validation.d.ts +0 -19
  150. package/dist/types/alg/warnOnce.d.ts +0 -1
  151. package/dist/types/bluetooth/connect/index.d.ts +0 -6
  152. package/dist/types/bluetooth/debug.d.ts +0 -2
  153. package/dist/types/bluetooth/keyboard.d.ts +0 -14
  154. package/dist/types/bluetooth/smart-puzzle/Heykube.d.ts +0 -17
  155. package/dist/types/bluetooth/smart-puzzle/connect.d.ts +0 -3
  156. package/dist/types/bluetooth/smart-puzzle/endianness.d.ts +0 -1
  157. package/dist/types/bluetooth/smart-puzzle/gan.d.ts +0 -34
  158. package/dist/types/bluetooth/smart-puzzle/giiker.d.ts +0 -21
  159. package/dist/types/bluetooth/smart-puzzle/giiker.spec.d.ts +0 -4
  160. package/dist/types/bluetooth/smart-puzzle/gocube.d.ts +0 -22
  161. package/dist/types/bluetooth/smart-robot/GanRobot.d.ts +0 -35
  162. package/dist/types/bluetooth/smart-robot/index.d.ts +0 -4
  163. package/dist/types/bluetooth/smart-timer/GanTimer.d.ts +0 -19
  164. package/dist/types/bluetooth/smart-timer/index.d.ts +0 -4
  165. package/dist/types/bluetooth/transformer.d.ts +0 -9
  166. package/dist/types/cubing.bundle-global.d.ts +0 -1
  167. package/dist/types/cubing.bundle-global.exports.d.ts +0 -24
  168. package/dist/types/kpuzzle/3x3x3/3x3x3.kpuzzle.json.d.ts +0 -2
  169. package/dist/types/kpuzzle/3x3x3/3x3x3.kpuzzle.json.spec.d.ts +0 -1
  170. package/dist/types/kpuzzle/3x3x3/puzzle-orientation.d.ts +0 -4
  171. package/dist/types/kpuzzle/KPuzzle.d.ts +0 -30
  172. package/dist/types/kpuzzle/KPuzzleDefinition.d.ts +0 -21
  173. package/dist/types/kpuzzle/KState.d.ts +0 -19
  174. package/dist/types/kpuzzle/KTransformation.d.ts +0 -24
  175. package/dist/types/kpuzzle/calculate.d.ts +0 -16
  176. package/dist/types/kpuzzle/combine.d.ts +0 -3
  177. package/dist/types/kpuzzle/construct.d.ts +0 -5
  178. package/dist/types/notation/CountAnimatedLeaves.d.ts +0 -2
  179. package/dist/types/notation/CountMoves.d.ts +0 -3
  180. package/dist/types/protocol/binary/binary3x3x3.d.ts +0 -19
  181. package/dist/types/protocol/binary/binary3x3x3.spec.d.ts +0 -1
  182. package/dist/types/protocol/binary/hex.d.ts +0 -2
  183. package/dist/types/protocol/binary/hex.spec.d.ts +0 -1
  184. package/dist/types/protocol/binary/orbit-indexing.d.ts +0 -5
  185. package/dist/types/protocol/binary/orbit-indexing.spec.d.ts +0 -1
  186. package/dist/types/protocol/binary/puzzle-orientation.d.ts +0 -4
  187. package/dist/types/puzzle-geometry/FaceNameSwizzler.d.ts +0 -12
  188. package/dist/types/puzzle-geometry/Options.d.ts +0 -45
  189. package/dist/types/puzzle-geometry/PGPuzzles.d.ts +0 -5
  190. package/dist/types/puzzle-geometry/PGPuzzles.spec.d.ts +0 -4
  191. package/dist/types/puzzle-geometry/Perm.d.ts +0 -18
  192. package/dist/types/puzzle-geometry/PermOriSet.d.ts +0 -71
  193. package/dist/types/puzzle-geometry/PlatonicGenerator.d.ts +0 -10
  194. package/dist/types/puzzle-geometry/PuzzleGeometry.d.ts +0 -176
  195. package/dist/types/puzzle-geometry/Quat.d.ts +0 -43
  196. package/dist/types/puzzle-geometry/Quat.spec.d.ts +0 -1
  197. package/dist/types/puzzle-geometry/SchreierSims.d.ts +0 -2
  198. package/dist/types/puzzle-geometry/notation-mapping/FTONotationMapper.d.ts +0 -10
  199. package/dist/types/puzzle-geometry/notation-mapping/FaceRenamingMapper.d.ts +0 -12
  200. package/dist/types/puzzle-geometry/notation-mapping/MegaminxScramblingNotationMapper.d.ts +0 -8
  201. package/dist/types/puzzle-geometry/notation-mapping/NotationMapper.d.ts +0 -7
  202. package/dist/types/puzzle-geometry/notation-mapping/NullMapper.d.ts +0 -6
  203. package/dist/types/puzzle-geometry/notation-mapping/NxNxNCubeMapper.d.ts +0 -8
  204. package/dist/types/puzzle-geometry/notation-mapping/PyraminxNotationMapper.d.ts +0 -15
  205. package/dist/types/puzzle-geometry/notation-mapping/SkewbNotationMapper.d.ts +0 -9
  206. package/dist/types/puzzle-geometry/notation-mapping/index.d.ts +0 -8
  207. package/dist/types/puzzle-geometry/orientcenters.spec.d.ts +0 -1
  208. package/dist/types/puzzles/PuzzleLoader.d.ts +0 -18
  209. package/dist/types/puzzles/async/async-pg3d.d.ts +0 -33
  210. package/dist/types/puzzles/async/lazy-cached.d.ts +0 -1
  211. package/dist/types/puzzles/customPGPuzzleLoader.d.ts +0 -11
  212. package/dist/types/puzzles/events.d.ts +0 -8
  213. package/dist/types/puzzles/implementations/2x2x2/2x2x2.kpuzzle.json.d.ts +0 -2
  214. package/dist/types/puzzles/implementations/2x2x2/2x2x2.kpuzzle.svg.d.ts +0 -2
  215. package/dist/types/puzzles/implementations/2x2x2/index.d.ts +0 -2
  216. package/dist/types/puzzles/implementations/3x3x3/3x3x3-ll.kpuzzle.svg.d.ts +0 -2
  217. package/dist/types/puzzles/implementations/3x3x3/3x3x3.kpuzzle.svg.d.ts +0 -2
  218. package/dist/types/puzzles/implementations/3x3x3/index.d.ts +0 -2
  219. package/dist/types/puzzles/implementations/clock/clock.kpuzzle.json.d.ts +0 -2
  220. package/dist/types/puzzles/implementations/clock/clock.kpuzzle.svg.d.ts +0 -2
  221. package/dist/types/puzzles/implementations/clock/index.d.ts +0 -2
  222. package/dist/types/puzzles/implementations/fto/fto.kpuzzle.svg.d.ts +0 -1
  223. package/dist/types/puzzles/implementations/fto/index.d.ts +0 -12
  224. package/dist/types/puzzles/implementations/kilominx/index.d.ts +0 -2
  225. package/dist/types/puzzles/implementations/kilominx/kilominx.kpuzzle.svg.d.ts +0 -1
  226. package/dist/types/puzzles/implementations/megaminx/index.d.ts +0 -11
  227. package/dist/types/puzzles/implementations/pyraminx/index.d.ts +0 -7
  228. package/dist/types/puzzles/implementations/pyraminx/pyraminx.kpuzzle.json.d.ts +0 -2
  229. package/dist/types/puzzles/implementations/pyraminx/pyraminx.kpuzzle.svg.d.ts +0 -2
  230. package/dist/types/puzzles/implementations/redi-cube/index.d.ts +0 -2
  231. package/dist/types/puzzles/implementations/redi-cube/redi_cube.kpuzzle.json.d.ts +0 -2
  232. package/dist/types/puzzles/implementations/redi-cube/redi_cube.kpuzzle.svg.d.ts +0 -1
  233. package/dist/types/puzzles/implementations/square1/index.d.ts +0 -2
  234. package/dist/types/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.json.d.ts +0 -2
  235. package/dist/types/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.svg.d.ts +0 -2
  236. package/dist/types/puzzles/stickerings/appearance.d.ts +0 -50
  237. package/dist/types/puzzles/stickerings/cube-stickerings.d.ts +0 -5
  238. package/dist/types/puzzles/stickerings/fto-stickerings.d.ts +0 -5
  239. package/dist/types/puzzles/stickerings/global-custom-stickering-hack.d.ts +0 -2
  240. package/dist/types/puzzles/stickerings/megaminx-stickerings.d.ts +0 -5
  241. package/dist/types/search/inside/api.d.ts +0 -21
  242. package/dist/types/search/inside/api.spec.d.ts +0 -1
  243. package/dist/types/search/inside/inside-worker.d.ts +0 -2
  244. package/dist/types/search/inside/search-worker-js-entry.d.ts +0 -1
  245. package/dist/types/search/inside/search-worker-ts-entry-path-getter.d.ts +0 -1
  246. package/dist/types/search/inside/search-worker-ts-entry.d.ts +0 -1
  247. package/dist/types/search/inside/solve/addOrientationSuffix.d.ts +0 -2
  248. package/dist/types/search/inside/solve/parseSGS.d.ts +0 -18
  249. package/dist/types/search/inside/solve/puzzles/2x2x2.d.ts +0 -6
  250. package/dist/types/search/inside/solve/puzzles/2x2x2.sgs.json.d.ts +0 -3
  251. package/dist/types/search/inside/solve/puzzles/3x3x3/convert.d.ts +0 -2
  252. package/dist/types/search/inside/solve/puzzles/3x3x3/filter.d.ts +0 -4
  253. package/dist/types/search/inside/solve/puzzles/3x3x3/index.d.ts +0 -8
  254. package/dist/types/search/inside/solve/puzzles/3x3x3/legacy-sgs.d.ts +0 -1
  255. package/dist/types/search/inside/solve/puzzles/3x3x3-inefficient.sgs.json.d.ts +0 -3
  256. package/dist/types/search/inside/solve/puzzles/4x4x4.d.ts +0 -4
  257. package/dist/types/search/inside/solve/puzzles/5x5x5.d.ts +0 -2
  258. package/dist/types/search/inside/solve/puzzles/big-cubes.d.ts +0 -2
  259. package/dist/types/search/inside/solve/puzzles/clock.d.ts +0 -1
  260. package/dist/types/search/inside/solve/puzzles/fto.d.ts +0 -5
  261. package/dist/types/search/inside/solve/puzzles/fto.dynamic.d.ts +0 -3
  262. package/dist/types/search/inside/solve/puzzles/kilominx.d.ts +0 -2
  263. package/dist/types/search/inside/solve/puzzles/master_tetraminx.d.ts +0 -2
  264. package/dist/types/search/inside/solve/puzzles/megaminx.d.ts +0 -4
  265. package/dist/types/search/inside/solve/puzzles/megaminx.sgs.json.d.ts +0 -5
  266. package/dist/types/search/inside/solve/puzzles/pyraminx.d.ts +0 -6
  267. package/dist/types/search/inside/solve/puzzles/pyraminx.sgs.json.d.ts +0 -3
  268. package/dist/types/search/inside/solve/puzzles/redi_cube.d.ts +0 -2
  269. package/dist/types/search/inside/solve/puzzles/sgs-defs.spec.d.ts +0 -1
  270. package/dist/types/search/inside/solve/puzzles/skewb.d.ts +0 -6
  271. package/dist/types/search/inside/solve/puzzles/skewb.sgs.json.d.ts +0 -5
  272. package/dist/types/search/inside/solve/puzzles/sq1.d.ts +0 -2
  273. package/dist/types/search/inside/solve/puzzles/wca-minx.d.ts +0 -1
  274. package/dist/types/search/inside/solve/tremble.d.ts +0 -13
  275. package/dist/types/search/inside/worker-guard.d.ts +0 -3
  276. package/dist/types/search/instantiator.d.ts +0 -4
  277. package/dist/types/search/outside.d.ts +0 -17
  278. package/dist/types/search/worker-inside-generated-string.d.ts +0 -1
  279. package/dist/types/stream/process/ReorientedStream.d.ts +0 -20
  280. package/dist/types/stream/proxy-event.d.ts +0 -13
  281. package/dist/types/stream/twizzle/TwizzleStream.d.ts +0 -18
  282. package/dist/types/stream/twizzle/stream-types.d.ts +0 -32
  283. package/dist/types/stream/websocket-proxy.d.ts +0 -21
  284. package/dist/types/twisty/controllers/AnimationTypes.d.ts +0 -32
  285. package/dist/types/twisty/controllers/RenderScheduler.d.ts +0 -12
  286. package/dist/types/twisty/controllers/TwistyAnimationController.d.ts +0 -36
  287. package/dist/types/twisty/controllers/TwistyPlayerController.d.ts +0 -15
  288. package/dist/types/twisty/controllers/easing.d.ts +0 -1
  289. package/dist/types/twisty/controllers/indexer/AlgDuration.d.ts +0 -17
  290. package/dist/types/twisty/controllers/indexer/AlgIndexer.d.ts +0 -36
  291. package/dist/types/twisty/controllers/indexer/SimpleAlgIndexer.d.ts +0 -19
  292. package/dist/types/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexer.d.ts +0 -22
  293. package/dist/types/twisty/controllers/indexer/simultaneous-moves/simul-moves.d.ts +0 -25
  294. package/dist/types/twisty/controllers/indexer/tree/AlgWalker.d.ts +0 -63
  295. package/dist/types/twisty/controllers/indexer/tree/TreeAlgIndexer.d.ts +0 -20
  296. package/dist/types/twisty/controllers/indexer/tree/chunkAlgs.d.ts +0 -2
  297. package/dist/types/twisty/controllers/stream/timeline-move-calculation-draft.d.ts +0 -15
  298. package/dist/types/twisty/heavy-code-imports/3d.d.ts +0 -2
  299. package/dist/types/twisty/heavy-code-imports/dynamic-entries/3d-dynamic.d.ts +0 -10
  300. package/dist/types/twisty/model/PromiseFreshener.d.ts +0 -13
  301. package/dist/types/twisty/model/TwistyPlayerModel.d.ts +0 -85
  302. package/dist/types/twisty/model/TwistySceneModel.d.ts +0 -27
  303. package/dist/types/twisty/model/UserVisibleErrorTracker.d.ts +0 -10
  304. package/dist/types/twisty/model/helpers.d.ts +0 -4
  305. package/dist/types/twisty/model/props/TwistyProp.d.ts +0 -59
  306. package/dist/types/twisty/model/props/TwistyProp.spec.d.ts +0 -4
  307. package/dist/types/twisty/model/props/TwistyPropDebugger.d.ts +0 -26
  308. package/dist/types/twisty/model/props/general/ArbitraryStringProp.d.ts +0 -4
  309. package/dist/types/twisty/model/props/general/URLProp.d.ts +0 -5
  310. package/dist/types/twisty/model/props/puzzle/display/FoundationDisplayProp.d.ts +0 -5
  311. package/dist/types/twisty/model/props/puzzle/display/HintFaceletProp.d.ts +0 -10
  312. package/dist/types/twisty/model/props/puzzle/display/SpriteProp.d.ts +0 -9
  313. package/dist/types/twisty/model/props/puzzle/display/StickeringProp.d.ts +0 -50
  314. package/dist/types/twisty/model/props/puzzle/state/AlgProp.d.ts +0 -26
  315. package/dist/types/twisty/model/props/puzzle/state/AlgTransformationProp.d.ts +0 -11
  316. package/dist/types/twisty/model/props/puzzle/state/AnchorTransformationProp.d.ts +0 -14
  317. package/dist/types/twisty/model/props/puzzle/state/CatchUpMoveProp.d.ts +0 -10
  318. package/dist/types/twisty/model/props/puzzle/state/CurrentLeavesSimplified.d.ts +0 -16
  319. package/dist/types/twisty/model/props/puzzle/state/CurrentMoveInfoProp.d.ts +0 -13
  320. package/dist/types/twisty/model/props/puzzle/state/CurrentStateProp.d.ts +0 -14
  321. package/dist/types/twisty/model/props/puzzle/state/IndexerConstructorProp.d.ts +0 -19
  322. package/dist/types/twisty/model/props/puzzle/state/IndexerConstructorRequestProp.d.ts +0 -11
  323. package/dist/types/twisty/model/props/puzzle/state/IndexerProp.d.ts +0 -14
  324. package/dist/types/twisty/model/props/puzzle/state/LegacyPositionProp.d.ts +0 -11
  325. package/dist/types/twisty/model/props/puzzle/state/MovePressInputProp.d.ts +0 -10
  326. package/dist/types/twisty/model/props/puzzle/state/NaiveMoveCountProp.d.ts +0 -9
  327. package/dist/types/twisty/model/props/puzzle/state/PuzzleAlgProp.d.ts +0 -13
  328. package/dist/types/twisty/model/props/puzzle/state/SetupAnchorProp.d.ts +0 -9
  329. package/dist/types/twisty/model/props/puzzle/state/SetupTransformationProp.d.ts +0 -5
  330. package/dist/types/twisty/model/props/puzzle/structure/KPuzzleProp.d.ts +0 -10
  331. package/dist/types/twisty/model/props/puzzle/structure/PuzzleDescriptionProp.d.ts +0 -5
  332. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDProp.d.ts +0 -10
  333. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDRequestProp.d.ts +0 -25
  334. package/dist/types/twisty/model/props/puzzle/structure/PuzzleLoaderProp.d.ts +0 -12
  335. package/dist/types/twisty/model/props/timeline/CoarseTimelineInfoProp.d.ts +0 -24
  336. package/dist/types/twisty/model/props/timeline/DetailedTimelineInfoProp.d.ts +0 -21
  337. package/dist/types/twisty/model/props/timeline/PlayingInfoProp.d.ts +0 -14
  338. package/dist/types/twisty/model/props/timeline/TempoScaleProp.d.ts +0 -5
  339. package/dist/types/twisty/model/props/timeline/TimestampRequestProp.d.ts +0 -15
  340. package/dist/types/twisty/model/props/viewer/BackViewProp.d.ts +0 -11
  341. package/dist/types/twisty/model/props/viewer/BackgroundProp.d.ts +0 -10
  342. package/dist/types/twisty/model/props/viewer/ButtonAppearanceProp.d.ts +0 -21
  343. package/dist/types/twisty/model/props/viewer/ControlPanelProp.d.ts +0 -10
  344. package/dist/types/twisty/model/props/viewer/LatitudeLimit.d.ts +0 -5
  345. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesProp.d.ts +0 -28
  346. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesRequestProp.d.ts +0 -14
  347. package/dist/types/twisty/model/props/viewer/TimeRangeProp.d.ts +0 -10
  348. package/dist/types/twisty/model/props/viewer/ViewerLinkProp.d.ts +0 -11
  349. package/dist/types/twisty/model/props/viewer/VisualizationProp.d.ts +0 -12
  350. package/dist/types/twisty/model/props/viewer/VisualizationStrategyProp.d.ts +0 -12
  351. package/dist/types/twisty/views/2D/KPuzzleSVGWrapper.d.ts +0 -17
  352. package/dist/types/twisty/views/2D/Twisty2DPuzzle.css.d.ts +0 -2
  353. package/dist/types/twisty/views/2D/Twisty2DPuzzle.d.ts +0 -27
  354. package/dist/types/twisty/views/2D/Twisty2DPuzzleWrapper.d.ts +0 -15
  355. package/dist/types/twisty/views/2D/Twisty2DSceneWrapper.d.ts +0 -19
  356. package/dist/types/twisty/views/3D/DragTracker.d.ts +0 -27
  357. package/dist/types/twisty/views/3D/RendererPool.d.ts +0 -3
  358. package/dist/types/twisty/views/3D/TAU.d.ts +0 -2
  359. package/dist/types/twisty/views/3D/Twisty3DPuzzleWrapper.d.ts +0 -21
  360. package/dist/types/twisty/views/3D/Twisty3DRenderTarget.d.ts +0 -3
  361. package/dist/types/twisty/views/3D/Twisty3DScene.d.ts +0 -14
  362. package/dist/types/twisty/views/3D/Twisty3DSceneWrapper.d.ts +0 -33
  363. package/dist/types/twisty/views/3D/Twisty3DVantage.css.d.ts +0 -2
  364. package/dist/types/twisty/views/3D/Twisty3DVantage.d.ts +0 -36
  365. package/dist/types/twisty/views/3D/TwistyOrbitControls.d.ts +0 -23
  366. package/dist/types/twisty/views/3D/TwistyOrbitControls.spec.d.ts +0 -4
  367. package/dist/types/twisty/views/3D/puzzles/Cube3D.d.ts +0 -58
  368. package/dist/types/twisty/views/3D/puzzles/PG3D.d.ts +0 -64
  369. package/dist/types/twisty/views/3D/puzzles/Twisty3DPuzzle.d.ts +0 -5
  370. package/dist/types/twisty/views/ClassListManager.d.ts +0 -10
  371. package/dist/types/twisty/views/ManagedCustomElement.d.ts +0 -19
  372. package/dist/types/twisty/views/TwistyAlgEditor/LeafTokens.d.ts +0 -17
  373. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.css.d.ts +0 -2
  374. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.d.ts +0 -40
  375. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.spec.d.ts +0 -4
  376. package/dist/types/twisty/views/TwistyAlgEditor/model.d.ts +0 -60
  377. package/dist/types/twisty/views/TwistyAlgViewer.css.d.ts +0 -2
  378. package/dist/types/twisty/views/TwistyAlgViewer.d.ts +0 -51
  379. package/dist/types/twisty/views/TwistyPlayer.css.d.ts +0 -2
  380. package/dist/types/twisty/views/TwistyPlayer.d.ts +0 -112
  381. package/dist/types/twisty/views/TwistyPlayerSettable.d.ts +0 -79
  382. package/dist/types/twisty/views/TwistyViewerWrapper.css.d.ts +0 -2
  383. package/dist/types/twisty/views/canvas.d.ts +0 -2
  384. package/dist/types/twisty/views/control-panel/TwistyButtons.css.d.ts +0 -3
  385. package/dist/types/twisty/views/control-panel/TwistyButtons.d.ts +0 -32
  386. package/dist/types/twisty/views/control-panel/TwistyScrubber.css.d.ts +0 -2
  387. package/dist/types/twisty/views/control-panel/TwistyScrubber.d.ts +0 -13
  388. package/dist/types/twisty/views/control-panel/webkit-fullscreen.d.ts +0 -14
  389. package/dist/types/twisty/views/document.d.ts +0 -1
  390. package/dist/types/twisty/views/node-custom-element-shims.d.ts +0 -4
  391. package/dist/types/twisty/views/screenshot.d.ts +0 -11
  392. package/dist/types/twisty/views/stream/TwistyStreamSource.css.d.ts +0 -2
  393. package/dist/types/twisty/views/stream/TwistyStreamSource.d.ts +0 -12
  394. package/dist/types/twisty/views/twizzle/TwizzleLink.css.d.ts +0 -2
  395. package/dist/types/twisty/views/twizzle/TwizzleLink.d.ts +0 -11
  396. package/dist/types/twisty/views/twizzle/url-params.d.ts +0 -18
  397. package/dist/types/vendor/comlink-everywhere/inside/index.d.ts +0 -4
  398. package/dist/types/vendor/comlink-everywhere/node-adapter.d.ts +0 -6
  399. package/dist/types/vendor/comlink-everywhere/outside/index.d.ts +0 -5
  400. package/dist/types/vendor/cstimer/src/js/lib/mathlib.d.ts +0 -4
  401. package/dist/types/vendor/cstimer/src/js/scramble/444-solver.d.ts +0 -3
  402. package/dist/types/vendor/min2phase/3x3x3-min2phase.d.ts +0 -2
  403. package/dist/types/vendor/p-lazy/p-lazy.d.ts +0 -9
  404. package/dist/types/vendor/random-uint-below/get-random-values.d.ts +0 -2
  405. package/dist/types/vendor/random-uint-below/index.d.ts +0 -3
  406. package/dist/types/vendor/random-uint-below/random-choice.d.ts +0 -1
  407. package/dist/types/vendor/random-uint-below/random53BitValue.d.ts +0 -1
  408. package/dist/types/vendor/sq12phase/sq1-solver.d.ts +0 -1
  409. package/dist/types/vendor/three/examples/jsm/libs/stats.modified.module.d.ts +0 -32
  410. package/dist/types/vendor/unsafe-raw-aes/unsafe-raw-aes.d.ts +0 -3
  411. package/dist/types/vendor/xyzzy/fto-solver-original.d.ts +0 -148
  412. package/dist/types/vendor/xyzzy/fto-solver.d.ts +0 -1
  413. package/dist/types/vendor/xyzzy/kilosolver.d.ts +0 -2
  414. package/dist/types/vendor/xyzzy/master_tetraminx-solver.d.ts +0 -1
  415. package/dist/types/vendor/xyzzy/redi_cube.d.ts +0 -2
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/cubing/search/worker-inside-generated-string.js"],
4
+ "sourcesContent": ["export const workerSource = \"var qc=Object.defineProperty;var U=(e,t)=>()=>(e&&(t=e(e=0)),t);var me=(e,t)=>{for(var r in t)qc(e,r,{get:t[r],enumerable:!0})};var F0=(e,t,r)=>{if(!t.has(e))throw TypeError(\\\"Cannot \\\"+r)};var d=(e,t,r)=>(F0(e,t,\\\"read from private field\\\"),r?r.call(e):t.get(e)),re=(e,t,r)=>{if(t.has(e))throw TypeError(\\\"Cannot add the same private member more than once\\\");t instanceof WeakSet?t.add(e):t.set(e,r)},j=(e,t,r,n)=>(F0(e,t,\\\"write to private field\\\"),n?n.call(e,r):t.set(e,r),r),D0=(e,t,r,n)=>({set _(o){j(e,t,o,r)},get _(){return d(e,t,n)}}),e2=(e,t,r)=>(F0(e,t,\\\"access private method\\\"),r);var sm,Ul,Ie,jt=U(()=>{sm=!1,Ul=class{is(t){return this instanceof t}as(t){return this instanceof t?this:null}},Ie=class extends Ul{constructor(){super();sm&&Object.defineProperty(this,\\\"_debugStr\\\",{get:()=>this.toString()})}get log(){return console.log.bind(console,this,this.toString())}}});function f2(e,t=!0){if(!t)return e;switch(e){case 1:return-1;case-1:return 1}}function b0(e,t){return t===-1?Array.from(e).reverse():e}function u2(e){return Array.from(e).reverse()}var Dt=U(()=>{});var dn,x0=U(()=>{dn=\\\"2^31 - 1\\\"});var Tr,ct,S0=U(()=>{qt();ct=class{constructor(){re(this,Tr,[])}push(t){d(this,Tr).push(t)}experimentalPushAlg(t){for(let r of t.units())this.push(r)}experimentalNumUnits(){return d(this,Tr).length}toAlg(){return new k(d(this,Tr))}reset(){j(this,Tr,[])}};Tr=new WeakMap});var Gr,Or,bl,We,Ao=U(()=>{qt();jt();Dt();bl=class extends Ie{constructor(t,r){super();re(this,Gr,void 0);re(this,Or,void 0);j(this,Gr,sr(t)),j(this,Or,sr(r))}get A(){return d(this,Gr)}get B(){return d(this,Or)}isIdentical(t){let r=t.as(bl);return!!(r?.A.isIdentical(this.A)&&r?.B.isIdentical(this.B))}invert(){return new bl(d(this,Or),d(this,Gr))}*experimentalExpand(t=1,r){r??(r=1/0),r===0?yield t===1?this:this.invert():t===1?(yield*this.A.experimentalExpand(1,r-1),yield*this.B.experimentalExpand(1,r-1),yield*this.A.experimentalExpand(-1,r-1),yield*this.B.experimentalExpand(-1,r-1)):(yield*this.B.experimentalExpand(1,r-1),yield*this.A.experimentalExpand(1,r-1),yield*this.B.experimentalExpand(-1,r-1),yield*this.A.experimentalExpand(-1,r-1))}toString(){return`[${d(this,Gr).toString()}, ${d(this,Or).toString()}]`}},We=bl;Gr=new WeakMap,Or=new WeakMap});var hn,Fn,xl,Ke,yo=U(()=>{qt();jt();Dt();xl=class extends Ie{constructor(t,r){super();re(this,hn,void 0);re(this,Fn,void 0);j(this,hn,sr(t)),j(this,Fn,sr(r))}get A(){return d(this,hn)}get B(){return d(this,Fn)}isIdentical(t){let r=t.as(xl);return!!(r?.A.isIdentical(this.A)&&r?.B.isIdentical(this.B))}invert(){return new xl(d(this,hn),d(this,Fn).invert())}*experimentalExpand(t,r){r??(r=1/0),r===0?yield t===1?this:this.invert():(yield*this.A.experimentalExpand(1,r-1),yield*this.B.experimentalExpand(t,r-1),yield*this.A.experimentalExpand(-1,r-1))}toString(){return`[${this.A}: ${this.B}]`}},Ke=xl;hn=new WeakMap,Fn=new WeakMap});var ur,w0,At,Uo=U(()=>{jt();Dt();w0=class extends Ie{constructor(t){super();re(this,ur,void 0);if(t.includes(`\\n`)||t.includes(\\\"\\\\r\\\"))throw new Error(\\\"LineComment cannot contain newline\\\");j(this,ur,t)}get text(){return d(this,ur)}isIdentical(t){let r=t;return t.is(w0)&&d(this,ur)===d(r,ur)}invert(){return this}*experimentalExpand(t=1,r=1/0){yield this}toString(){return`//${d(this,ur)}`}},At=w0;ur=new WeakMap});var Ze,bo=U(()=>{jt();Dt();Ze=class extends Ie{toString(){return`\\n`}isIdentical(t){return t.is(Ze)}invert(){return this}*experimentalExpand(t=1,r=1/0){yield this}}});var Xe,xo=U(()=>{jt();Dt();Xe=class extends Ie{toString(){return\\\".\\\"}isIdentical(t){return t.is(Xe)}invert(){return this}*experimentalExpand(t=1,r=1/0){yield this}}});function Sl(e,t){return e?parseInt(e):t}function v0(e){return new wl().parseAlg(e)}function p2(e){return new wl().parseMove(e)}function c2(e){return new wl().parseQuantumMove(e)}function $e(e,t,r){let n=e;return n.startCharIndex=t,n.endCharIndex=r,n}function m2(e,t){return\\\"startCharIndex\\\"in e&&(t.startCharIndex=e.startCharIndex),\\\"endCharIndex\\\"in e&&(t.endCharIndex=e.endCharIndex),t}var g2,fm,um,gm,pm,cm,ot,G,wl,E0=U(()=>{qt();S0();Ao();yo();vl();Uo();Vt();bo();xo();g2=/^(\\\\d+)?('?)/,fm=/^[_\\\\dA-Za-z]/,um=/^((([1-9]\\\\d*)-)?([1-9]\\\\d*))?([_A-Za-z]+)?/,gm=/^[^\\\\n]*/,pm=/^(-?\\\\d+), ?/,cm=/^(-?\\\\d+)\\\\)/;wl=class{constructor(){re(this,ot,\\\"\\\");re(this,G,0)}parseAlg(t){j(this,ot,t),j(this,G,0);let r=this.parseAlgWithStopping([]);return this.mustBeAtEndOfInput(),r}parseMove(t){j(this,ot,t),j(this,G,0);let r=this.parseMoveImpl();return this.mustBeAtEndOfInput(),r}parseQuantumMove(t){j(this,ot,t),j(this,G,0);let r=this.parseQuantumMoveImpl();return this.mustBeAtEndOfInput(),r}mustBeAtEndOfInput(){if(d(this,G)!==d(this,ot).length)throw new Error(\\\"parsing unexpectedly ended early\\\")}parseAlgWithStopping(t){let r=d(this,G),n=d(this,G),o=new ct,l=!1,i=a=>{if(l)throw new Error(`Unexpected character at index ${a}. Are you missing a space?`)};e:for(;d(this,G)<d(this,ot).length;){let a=d(this,G);if(t.includes(d(this,ot)[d(this,G)]))return $e(o.toAlg(),r,n);if(this.tryConsumeNext(\\\" \\\")){l=!1,o.experimentalNumUnits()===0&&(r=d(this,G));continue e}else if(fm.test(d(this,ot)[d(this,G)])){i(a);let s=this.parseMoveImpl();o.push(s),l=!0,n=d(this,G);continue e}else if(this.tryConsumeNext(\\\"(\\\")){i(a);let s=this.tryRegex(pm);if(s){let f=s[1],g=d(this,G),p=this.parseRegex(cm),u=$e(new B(new C(\\\"U_SQ_\\\"),parseInt(f)),a+1,a+1+f.length),c=$e(new B(new C(\\\"D_SQ_\\\"),parseInt(p[1])),g,d(this,G)-1),m=$e(new k([u,c]),a+1,d(this,G)-1);o.push($e(new gt(m),a,d(this,G))),l=!0,n=d(this,G);continue e}else{let f=this.parseAlgWithStopping([\\\")\\\"]);this.mustConsumeNext(\\\")\\\");let g=this.parseAmount();o.push($e(new gt(f,g),a,d(this,G))),l=!0,n=d(this,G);continue e}}else if(this.tryConsumeNext(\\\"[\\\")){i(a);let s=this.parseAlgWithStopping([\\\",\\\",\\\":\\\"]),f=this.popNext(),g=this.parseAlgWithStopping([\\\"]\\\"]);switch(this.mustConsumeNext(\\\"]\\\"),f){case\\\":\\\":o.push($e(new Ke(s,g),a,d(this,G))),l=!0,n=d(this,G);continue e;case\\\",\\\":o.push($e(new We(s,g),a,d(this,G))),l=!0,n=d(this,G);continue e;default:throw\\\"unexpected parsing error\\\"}}else if(this.tryConsumeNext(`\\n`)){o.push($e(new Ze,a,d(this,G))),l=!1,n=d(this,G);continue e}else if(this.tryConsumeNext(\\\"/\\\"))if(this.tryConsumeNext(\\\"/\\\")){i(a);let[s]=this.parseRegex(gm);o.push($e(new At(s),a,d(this,G))),l=!1,n=d(this,G);continue e}else{o.push($e(new B(\\\"_SLASH_\\\"),a,d(this,G))),l=!0,n=d(this,G);continue e}else if(this.tryConsumeNext(\\\".\\\")){i(a),o.push($e(new Xe,a,d(this,G))),l=!0,n=d(this,G);continue e}else throw new Error(`Unexpected character: ${this.popNext()}`)}if(d(this,G)!==d(this,ot).length)throw new Error(\\\"did not finish parsing?\\\");if(t.length>0)throw new Error(\\\"expected stopping\\\");return $e(o.toAlg(),r,n)}parseQuantumMoveImpl(){let[,,,t,r,n]=this.parseRegex(um);return new C(n,Sl(r,void 0),Sl(t,void 0))}parseMoveImpl(){let t=d(this,G);if(this.tryConsumeNext(\\\"/\\\"))return $e(new B(\\\"_SLASH_\\\"),t,d(this,G));let r=this.parseQuantumMoveImpl(),[n,o]=this.parseAmountAndTrackEmptyAbsAmount(),l=this.parseMoveSuffix();if(l){if(n<0)throw new Error(\\\"uh-oh\\\");if((l===\\\"++\\\"||l===\\\"--\\\")&&n!==1)throw new Error(\\\"Pochmann ++ or -- moves cannot have an amount other than 1.\\\");if((l===\\\"++\\\"||l===\\\"--\\\")&&!o)throw new Error(\\\"Pochmann ++ or -- moves cannot have an amount written as a number.\\\");if((l===\\\"+\\\"||l===\\\"-\\\")&&o)throw new Error(\\\"Clock dial moves must have an amount written as a natural number followed by + or -.\\\");l.startsWith(\\\"+\\\")&&(r=r.modified({family:`${r.family}_${l===\\\"+\\\"?\\\"PLUS\\\":\\\"PLUSPLUS\\\"}_`})),l.startsWith(\\\"-\\\")&&(r=r.modified({family:`${r.family}_${l===\\\"-\\\"?\\\"PLUS\\\":\\\"PLUSPLUS\\\"}_`}),n*=-1)}return $e(new B(r,n),t,d(this,G))}parseMoveSuffix(){return this.tryConsumeNext(\\\"+\\\")?this.tryConsumeNext(\\\"+\\\")?\\\"++\\\":\\\"+\\\":this.tryConsumeNext(\\\"-\\\")?this.tryConsumeNext(\\\"-\\\")?\\\"--\\\":\\\"-\\\":null}parseAmountAndTrackEmptyAbsAmount(){let t=d(this,G),[,r,n]=this.parseRegex(g2);if(r?.startsWith(\\\"0\\\")&&r!==\\\"0\\\")throw new Error(`Error at char index ${t}: An amount can only start with 0 if it's exactly the digit 0.`);return[Sl(r,1)*(n===\\\"'\\\"?-1:1),!r]}parseAmount(){let t=d(this,G),[,r,n]=this.parseRegex(g2);if(r?.startsWith(\\\"0\\\")&&r!==\\\"0\\\")throw new Error(`Error at char index ${t}: An amount number can only start with 0 if it's exactly the digit 0.`);return Sl(r,1)*(n===\\\"'\\\"?-1:1)}parseRegex(t){let r=t.exec(this.remaining());if(r===null)throw new Error(\\\"internal parsing error\\\");return j(this,G,d(this,G)+r[0].length),r}tryRegex(t){let r=t.exec(this.remaining());return r===null?null:(j(this,G,d(this,G)+r[0].length),r)}remaining(){return d(this,ot).slice(d(this,G))}popNext(){let t=d(this,ot)[d(this,G)];return D0(this,G)._++,t}tryConsumeNext(t){return d(this,ot)[d(this,G)]===t?(D0(this,G)._++,!0):!1}mustConsumeNext(t){let r=this.popNext();if(r!==t)throw new Error(`expected \\\\`${t}\\\\` while parsing, encountered ${r}`);return r}};ot=new WeakMap,G=new WeakMap});function El(e){L2.has(e)||(console.warn(e),L2.add(e))}var L2,k0=U(()=>{L2=new Set});var Dn,_0=U(()=>{Dt();x0();Dn=class{constructor(t,r=1){if(this.quantum=t,this.amount=r,!Number.isInteger(this.amount)||this.amount<-2147483648||this.amount>2147483647)throw new Error(`Unit amount absolute value must be a non-negative integer from ${dn} to ${dn}.`)}suffix(){let t=\\\"\\\",r=Math.abs(this.amount);return r!==1&&(t+=r),this.amount<0&&(t+=\\\"'\\\"),t}isIdentical(t){return this.quantum.isIdentical(t.quantum)&&this.amount===t.amount}*experimentalExpand(t,r){let n=Math.abs(this.amount),o=f2(t,this.amount<0);for(let l=0;l<n;l++)yield*this.quantum.experimentalExpand(o,r)}}});var Ht,Qe,je,_l,C,Me,An,B,Vt=U(()=>{jt();Dt();x0();E0();k0();_0();_l=class extends Ul{constructor(t,r,n){super();re(this,Ht,void 0);re(this,Qe,void 0);re(this,je,void 0);if(j(this,Ht,t),j(this,Qe,r??null),j(this,je,n??null),Object.freeze(this),d(this,Qe)!==null&&(!Number.isInteger(d(this,Qe))||d(this,Qe)<1||d(this,Qe)>2147483647))throw new Error(`QuantumMove inner layer must be a positive integer below ${dn}.`);if(d(this,je)!==null&&(!Number.isInteger(d(this,je))||d(this,je)<1||d(this,je)>2147483647))throw new Error(`QuantumMove outer layer must be a positive integer below ${dn}.`);if(d(this,je)!==null&&d(this,Qe)!==null&&d(this,Qe)<=d(this,je))throw new Error(\\\"QuantumMove outer layer must be smaller than inner layer.\\\");if(d(this,je)!==null&&d(this,Qe)===null)throw new Error(\\\"QuantumMove with an outer layer must have an inner layer\\\")}static fromString(t){return c2(t)}modified(t){return new _l(t.family??d(this,Ht),t.innerLayer??d(this,Qe),t.outerLayer??d(this,je))}isIdentical(t){let r=t;return t.is(_l)&&d(this,Ht)===d(r,Ht)&&d(this,Qe)===d(r,Qe)&&d(this,je)===d(r,je)}get family(){return d(this,Ht)}get outerLayer(){return d(this,je)}get innerLayer(){return d(this,Qe)}experimentalExpand(){throw new Error(\\\"experimentalExpand() cannot be called on a `QuantumMove` directly.\\\")}toString(){let t=d(this,Ht);return d(this,Qe)!==null&&(t=String(d(this,Qe))+t,d(this,je)!==null&&(t=String(d(this,je))+\\\"-\\\"+t)),t}},C=_l;Ht=new WeakMap,Qe=new WeakMap,je=new WeakMap;An=class extends Ie{constructor(...t){super();re(this,Me,void 0);if(typeof t[0]==\\\"string\\\")if(t[1]??null){j(this,Me,new Dn(C.fromString(t[0]),t[1]));return}else return An.fromString(t[0]);j(this,Me,new Dn(t[0],t[1]))}isIdentical(t){let r=t.as(An);return!!r&&d(this,Me).isIdentical(d(r,Me))}invert(){return m2(this,new An(d(this,Me).quantum,-this.amount))}*experimentalExpand(t=1){t===1?yield this:yield this.modified({amount:-this.amount})}get quantum(){return d(this,Me).quantum}modified(t){return new An(d(this,Me).quantum.modified(t),t.amount??this.amount)}static fromString(t){return p2(t)}get amount(){return d(this,Me).amount}get type(){return El(\\\"deprecated: type\\\"),\\\"blockMove\\\"}get family(){return d(this,Me).quantum.family??void 0}get outerLayer(){return d(this,Me).quantum.outerLayer??void 0}get innerLayer(){return d(this,Me).quantum.innerLayer??void 0}toString(){if(this.family===\\\"_SLASH_\\\")return\\\"/\\\";if(this.family.endsWith(\\\"_PLUS_\\\"))return d(this,Me).quantum.toString().slice(0,-6)+Math.abs(this.amount)+(this.amount<0?\\\"-\\\":\\\"+\\\");if(this.family.endsWith(\\\"_PLUSPLUS_\\\")){let t=Math.abs(this.amount);return d(this,Me).quantum.toString().slice(0,-10)+(t===1?\\\"\\\":t)+(this.amount<0?\\\"--\\\":\\\"++\\\")}return d(this,Me).quantum.toString()+d(this,Me).suffix()}},B=An;Me=new WeakMap});var R2,B2,lt,zl,gt,vl=U(()=>{qt();jt();Dt();Vt();_0();R2=class{constructor(){this.quantumU_SQ_=null;this.quantumD_SQ_=null}format(t){let r=this.tuple(t);return r?`(${r.map(n=>n.amount).join(\\\", \\\")})`:null}tuple(t){this.quantumU_SQ_||(this.quantumU_SQ_=new C(\\\"U_SQ_\\\")),this.quantumD_SQ_||(this.quantumD_SQ_=new C(\\\"D_SQ_\\\"));let r=t.alg;if(r.experimentalNumUnits()===2){let[n,o]=r.units();if(n.as(B)?.quantum.isIdentical(this.quantumU_SQ_)&&o.as(B)?.quantum.isIdentical(this.quantumD_SQ_)){if(t.amount!==1)throw new Error(\\\"Square-1 tuples cannot have an amount other than 1.\\\");return[n,o]}}return null}},B2=new R2,zl=class extends Ie{constructor(t,r){super();re(this,lt,void 0);let n=sr(t);j(this,lt,new Dn(n,r))}isIdentical(t){let r=t;return t.is(zl)&&d(this,lt).isIdentical(d(r,lt))}get alg(){return d(this,lt).quantum}get amount(){return d(this,lt).amount}get experimentalRepetitionSuffix(){return d(this,lt).suffix()}invert(){return new zl(d(this,lt).quantum,-d(this,lt).amount)}*experimentalExpand(t=1,r){r??(r=1/0),r===0?yield t===1?this:this.invert():yield*d(this,lt).experimentalExpand(t,r-1)}static fromString(){throw new Error(\\\"unimplemented\\\")}toString(){return B2.format(this)??`(${d(this,lt).quantum.toString()})${d(this,lt).suffix()}`}experimentalAsSquare1Tuple(){return B2.tuple(this)}},gt=zl;lt=new WeakMap});var Cl=U(()=>{vl();Uo();Ao();yo();Vt();bo();xo()});function yt(e,t){return e instanceof t}function d2(e){return yt(e,gt)||yt(e,At)||yt(e,We)||yt(e,Ke)||yt(e,B)||yt(e,Ze)||yt(e,Xe)}var z0=U(()=>{Cl()});function F2(e,t,r){if(t.is(gt))return e.traverseGrouping(t,r);if(t.is(B))return e.traverseMove(t,r);if(t.is(We))return e.traverseCommutator(t,r);if(t.is(Ke))return e.traverseConjugate(t,r);if(t.is(Xe))return e.traversePause(t,r);if(t.is(Ze))return e.traverseNewline(t,r);if(t.is(At))return e.traverseLineComment(t,r);throw new Error(\\\"unknown unit\\\")}function D2(e){if(e.is(gt)||e.is(B)||e.is(We)||e.is(Ke)||e.is(Xe)||e.is(Ze)||e.is(At))return e;throw\\\"internal error: expected unit\\\"}var yn,Un,Pl,Lm,P0,C0,h2,A2,M0=U(()=>{vl();Ao();Vt();bo();xo();yo();Uo();yn=class{traverseUnit(t,r){return F2(this,t,r)}traverseIntoUnit(t,r){return D2(this.traverseUnit(t,r))}},Un=class extends yn{traverseUnit(t){return F2(this,t,void 0)}traverseIntoUnit(t){return D2(this.traverseUnit(t))}},P0=class extends yn{*traverseAlg(t,r){if(r.depth===0){yield*t.units();return}let n=[],o=null,l=r?.collapseMoves??!0;function i(f,g){var c;let p=e2(c=P0,Pl,Lm).call(c,f,g,r);if(p===0)return!1;let u=new B(f.quantum,p);return n.push(u),o=u,!0}function a(f){l&&o?.is(B)&&f.is(B)&&o.quantum.isIdentical(f.quantum)?(n.pop(),i(o,f.amount)||(o=n.slice(-1)[0])):f.is(B)?i(f,0):(n.push(f),o=f)}let s={depth:r.depth?r.depth-1:null};for(let f of t.units())for(let g of this.traverseUnit(f,s))a(g);for(let f of n)yield f}*traverseGrouping(t,r){if(r.depth===0){yield t;return}let n={depth:r.depth?r.depth-1:null};yield new gt(this.traverseAlg(t.alg,n))}*traverseMove(t,r){yield t}*traverseCommutator(t,r){if(r.depth===0){yield t;return}let n={depth:r.depth?r.depth-1:null};yield new We(this.traverseAlg(t.A,n),this.traverseAlg(t.B,n))}*traverseConjugate(t,r){if(r.depth===0){yield t;return}let n={depth:r.depth?r.depth-1:null};yield new Ke(this.traverseAlg(t.A,n),this.traverseAlg(t.B,n))}*traversePause(t,r){yield t}*traverseNewline(t,r){yield t}*traverseLineComment(t,r){yield t}},C0=P0;Pl=new WeakSet,Lm=function(t,r,n){let o=t.amount+r;if(n?.quantumMoveOrder){let l=n.quantumMoveOrder(t.quantum),i=Math.floor(l/2)+1-l;o=(o%l+l-i)%l+i}return o},re(C0,Pl);h2=new C0,A2=h2.traverseAlg.bind(h2)});function y2(e){if(!e)return[];if(yt(e,k))return e.units();if(typeof e==\\\"string\\\")return v0(e).units();let t=e;if(typeof t[Symbol.iterator]==\\\"function\\\")return t;throw\\\"Invalid unit\\\"}function sr(e){return yt(e,k)?e:new k(e)}function Bm(e,t){return e.is(Ze)||t.is(Ze)?\\\"\\\":e.is(At)&&!t.is(Ze)?`\\n`:\\\" \\\"}var it,Ir,k,qt=U(()=>{jt();z0();Dt();E0();M0();Uo();Vt();bo();k0();Ir=class extends Ie{constructor(t){super();re(this,it,void 0);j(this,it,Array.from(y2(t)));for(let r of d(this,it))if(!d2(r))throw new Error(\\\"An alg can only contain units.\\\")}isIdentical(t){let r=t;if(!t.is(Ir))return!1;let n=Array.from(d(this,it)),o=Array.from(d(r,it));if(n.length!==o.length)return!1;for(let l=0;l<n.length;l++)if(!n[l].isIdentical(o[l]))return!1;return!0}invert(){return new Ir(u2(Array.from(d(this,it)).map(t=>t.invert())))}*experimentalExpand(t=1,r){r??(r=1/0);for(let n of b0(d(this,it),t))yield*n.experimentalExpand(t,r)}expand(t){return new Ir(this.experimentalExpand(1,t?.depth??1/0))}*experimentalLeafMoves(){for(let t of this.experimentalExpand())t.is(B)&&(yield t)}concat(t){return new Ir(Array.from(d(this,it)).concat(Array.from(y2(t))))}experimentalIsEmpty(){for(let t of d(this,it))return!1;return!0}static fromString(t){return v0(t)}*units(){for(let t of d(this,it))yield t}experimentalNumUnits(){return Array.from(d(this,it)).length}get type(){return El(\\\"deprecated: type\\\"),\\\"sequence\\\"}toString(){let t=\\\"\\\",r=null;for(let n of d(this,it))r&&(t+=Bm(r,n)),t+=n.toString(),r=n;return t}simplify(t){return new Ir(A2(this,t??{}))}},k=Ir;it=new WeakMap});var Rm,U2=U(()=>{qt();Cl();Ao();yo();Vt();xo();Rm={Sune:new k([new B(\\\"R\\\",1),new B(\\\"U\\\",1),new B(\\\"R\\\",-1),new B(\\\"U\\\",1),new B(\\\"R\\\",1),new B(\\\"U\\\",-2),new B(\\\"R\\\",-1)]),AntiSune:new k([new B(\\\"R\\\",1),new B(\\\"U\\\",2),new B(\\\"R\\\",-1),new B(\\\"U\\\",-1),new B(\\\"R\\\",1),new B(\\\"U\\\",-1),new B(\\\"R\\\",-1)]),SuneCommutator:new k([new We(new k([new B(\\\"R\\\",1),new B(\\\"U\\\",1),new B(\\\"R\\\",-2)]),new k([new Ke(new k([new B(\\\"R\\\",1)]),new k([new B(\\\"U\\\",1)]))]))]),Niklas:new k([new B(\\\"R\\\",1),new B(\\\"U\\\",-1),new B(\\\"L\\\",-1),new B(\\\"U\\\",1),new B(\\\"R\\\",-1),new B(\\\"U\\\",-1),new B(\\\"L\\\",1),new B(\\\"U\\\",1)]),EPerm:new k([new B(\\\"x\\\",-1),new We(new k([new Ke(new k([new B(\\\"R\\\",1)]),new k([new B(\\\"U\\\",-1)]))]),new k([new B(\\\"D\\\",1)])),new We(new k([new Ke(new k([new B(\\\"R\\\",1)]),new k([new B(\\\"U\\\",1)]))]),new k([new B(\\\"D\\\",1)])),new B(\\\"x\\\",1)]),FURURFCompact:new k([new Ke(new k([new B(\\\"F\\\",1)]),new k([new We(new k([new B(\\\"U\\\",1)]),new k([new B(\\\"R\\\",1)]))]))]),APermCompact:new k([new Ke(new k([new B(\\\"R\\\",2)]),new k([new We(new k([new B(\\\"F\\\",2)]),new k([new B(\\\"R\\\",-1),new B(\\\"B\\\",-1),new B(\\\"R\\\",1)]))]))]),FURURFMoves:new k([new B(\\\"F\\\",1),new B(\\\"U\\\",1),new B(\\\"R\\\",1),new B(\\\"U\\\",-1),new B(\\\"R\\\",-1),new B(\\\"F\\\",-1)]),TPerm:new k([new B(\\\"R\\\",1),new B(\\\"U\\\",1),new B(\\\"R\\\",-1),new B(\\\"U\\\",-1),new B(\\\"R\\\",-1),new B(\\\"F\\\",1),new B(\\\"R\\\",2),new B(\\\"U\\\",-1),new B(\\\"R\\\",-1),new B(\\\"U\\\",-1),new B(\\\"R\\\",1),new B(\\\"U\\\",1),new B(\\\"R\\\",-1),new B(\\\"F\\\",-1)]),HeadlightSwaps:new k([new Ke(new k([new B(\\\"F\\\",1)]),new k([new gt(new k([new We(new k([new B(\\\"R\\\",1)]),new k([new B(\\\"U\\\",1)]))]),3)]))]),TriplePause:new k([new Xe,new Xe,new Xe])}});var DA,b2=U(()=>{Vt();DA={73:new B(\\\"R\\\"),75:new B(\\\"R'\\\"),87:new B(\\\"B\\\"),79:new B(\\\"B'\\\"),83:new B(\\\"D\\\"),76:new B(\\\"D'\\\"),68:new B(\\\"L\\\"),69:new B(\\\"L'\\\"),74:new B(\\\"U\\\"),70:new B(\\\"U'\\\"),72:new B(\\\"F\\\"),71:new B(\\\"F'\\\"),78:new B(\\\"x'\\\"),67:new B(\\\"l\\\"),82:new B(\\\"l'\\\"),85:new B(\\\"r\\\"),77:new B(\\\"r'\\\"),88:new B(\\\"d\\\"),188:new B(\\\"d'\\\"),84:new B(\\\"x\\\"),89:new B(\\\"x\\\"),66:new B(\\\"x'\\\"),186:new B(\\\"y\\\"),59:new B(\\\"y\\\"),65:new B(\\\"y'\\\"),80:new B(\\\"z\\\"),81:new B(\\\"z'\\\"),90:new B(\\\"M'\\\"),190:new B(\\\"M'\\\")}});var x2=U(()=>{});var S2=U(()=>{qt()});var Le=U(()=>{qt();S0();M0();U2();b2();Cl();Vt();x2();S2();z0();Dt()});function wo(e,t,r){let n={};for(let o in e.orbits){let l=e.orbits[o],i=t[o],a=r[o];if(So(l.numOrientations,a))n[o]=i;else if(So(l.numOrientations,i))n[o]=a;else{let s=new Array(l.numPieces);if(l.numOrientations===1){for(let f=0;f<l.numPieces;f++)s[f]=i.permutation[a.permutation[f]];n[o]={permutation:s,orientation:i.orientation}}else{let f=new Array(l.numPieces);for(let g=0;g<l.numPieces;g++)f[g]=(i.orientation[a.permutation[g]]+a.orientation[g])%l.numOrientations,s[g]=i.permutation[a.permutation[g]];n[o]={permutation:s,orientation:f}}}}return n}function N0(e,t,r){let n={};for(let o in e.orbits){let l=e.orbits[o],i=t[o],a=r[o];if(So(l.numOrientations,a))n[o]=i;else{let s=new Array(l.numPieces);if(l.numOrientations===1){for(let f=0;f<l.numPieces;f++)s[f]=i.pieces[a.permutation[f]];n[o]={pieces:s,orientation:i.orientation}}else{let f=new Array(l.numPieces);for(let g=0;g<l.numPieces;g++)f[g]=(i.orientation[a.permutation[g]]+a.orientation[g])%l.numOrientations,s[g]=i.pieces[a.permutation[g]];n[o]={pieces:s,orientation:f}}}}return n}var Ml=U(()=>{vo()});function dm(e){let t=w2.get(e);if(t)return t;let r=new Array(e),n=new Array(e);for(let l=0;l<e;l++)r[l]=l,n[l]=0;let o={permutation:r,orientation:n};return v2&&(Object.freeze(r),Object.freeze(n),Object.freeze(o)),w2.set(e,o),o}function E2(e){let t={};for(let[r,n]of Object.entries(e.orbits))t[r]=dm(n.numPieces);return v2&&Object.freeze(t),t}function k2(e,t){let r=t.quantum.toString(),n=e.definition.moves[r];if(!n){let i=e.definition.experimentalDerivedMoves?.[r];i&&(n=e.algToTransformation(i).transformationData)}if(n)return gr(e,n,t.amount);let o=e.definition.moves[t.toString()];if(o)return o;let l=e.definition.moves[t.invert().toString()];if(l)return gr(e,l,-1);throw new Error(`Invalid move for KPuzzle (${e.name()}): ${t}`)}var v2,w2,T0=U(()=>{vo();v2=!1,w2=new Map});var _2=U(()=>{});function G0(e){let t=e.stateData.CENTERS.pieces[0],r=e.stateData.CENTERS.pieces[5],n=e.stateData.CENTERS.pieces[1],o=n;return t<n&&o--,r<n&&o--,[t,o]}function Fm(){if(!hm){let e=[\\\"\\\",\\\"z\\\",\\\"x\\\",\\\"z'\\\",\\\"x'\\\",\\\"x2\\\"].map(r=>k.fromString(r)),t=new k(\\\"y\\\");for(let r of e){let n=bn.algToTransformation(r);for(let o=0;o<4;o++){n=n.applyAlg(t);let[l,i]=G0(n.toKState());z2[l][i]=n.invert()}}}return z2}function Nl(e){let[t,r]=G0(e),n=Fm()[t][r];return e.applyTransformation(n)}var z2,hm,O0=U(()=>{Le();Ce();z2=new Array(6).fill(0).map(()=>new Array(6)),hm=!1});var I0=U(()=>{Ce();_2();O0()});var C2=U(()=>{});var P2=U(()=>{I0();C2();O0();I0()});function M2(e,t){return t.ignorePuzzleOrientation&&(e=Nl(e)),t.ignoreCenterOrientation&&(e=new fe(e.kpuzzle,{EDGES:e.stateData.EDGES,CORNERS:e.stateData.CORNERS,CENTERS:{pieces:e.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}})),!!e.experimentalToTransformation()?.isIdentityTransformation()}var N2=U(()=>{P2();Eo()});var fe,Eo=U(()=>{N2();Ml();ko();fe=class{constructor(t,r){this.kpuzzle=t;this.stateData=r}toJSON(){return{experimentalPuzzleName:this.kpuzzle.name(),stateData:this.stateData}}static fromTransformation(t){let r=N0(t.kpuzzle.definition,t.kpuzzle.definition.startStateData,t.transformationData);return new fe(t.kpuzzle,r)}apply(t){return this.applyTransformation(this.kpuzzle.toTransformation(t))}applyTransformation(t){if(t.isIdentityTransformation())return new fe(this.kpuzzle,this.stateData);let r=N0(this.kpuzzle.definition,this.stateData,t.transformationData);return new fe(this.kpuzzle,r)}applyMove(t){return this.applyTransformation(this.kpuzzle.moveToTransformation(t))}applyAlg(t){return this.applyTransformation(this.kpuzzle.algToTransformation(t))}experimentalToTransformation(){if(!this.kpuzzle.canConvertStateToUniqueTransformation())return null;let t={};for(let[r,n]of Object.entries(this.stateData)){let o={permutation:n.pieces,orientation:n.orientation};t[r]=o}return new Ut(this.kpuzzle,t)}experimentalIs3x3x3Solved(t){if(this.kpuzzle.name()!==\\\"3x3x3\\\")throw new Error(\\\"`KState.experimentalIs3x3x3Solved()` only supports 3x3x3 states.\\\");return M2(this,t)}}});var Wr,pr,Ut,ko=U(()=>{vo();Ml();T0();Eo();pr=class{constructor(t,r){this.kpuzzle=t;this.transformationData=r;re(this,Wr,void 0)}toJSON(){return{experimentalPuzzleName:this.kpuzzle.name(),transformationData:this.transformationData}}invert(){return new pr(this.kpuzzle,W0(this.kpuzzle,this.transformationData))}isIdentityTransformation(){return d(this,Wr)??j(this,Wr,this.isIdentical(this.kpuzzle.identityTransformation()))}static experimentalConstructIdentity(t){let r=new pr(t,E2(t.definition));return j(r,Wr,!0),r}isIdentical(t){return T2(this.kpuzzle,this.transformationData,t.transformationData)}apply(t){return this.applyTransformation(this.kpuzzle.toTransformation(t))}applyTransformation(t){if(this.kpuzzle!==t.kpuzzle)throw new Error(`Tried to apply a transformation for a KPuzzle (${t.kpuzzle.name()}) to a different KPuzzle (${this.kpuzzle.name()}).`);return d(this,Wr)?new pr(this.kpuzzle,t.transformationData):d(t,Wr)?new pr(this.kpuzzle,this.transformationData):new pr(this.kpuzzle,wo(this.kpuzzle.definition,this.transformationData,t.transformationData))}applyMove(t){return this.applyTransformation(this.kpuzzle.moveToTransformation(t))}applyAlg(t){return this.applyTransformation(this.kpuzzle.algToTransformation(t))}toKState(){return fe.fromTransformation(this)}repetitionOrder(){return G2(this.kpuzzle.definition,this)}selfMultiply(t){return new pr(this.kpuzzle,gr(this.kpuzzle,this.transformationData,t))}},Ut=pr;Wr=new WeakMap});function So(e,t){let{permutation:r}=t,n=r.length;for(let o=0;o<n;o++)if(r[o]!==o)return!1;if(e>1){let{orientation:o}=t;for(let l=0;l<n;l++)if(o[l]!==0)return!1}return!0}function Dm(e,t,r,n={}){for(let o=0;o<e.numPieces;o++)if(!n?.ignoreOrientation&&t.orientation[o]!==r.orientation[o]||!n?.ignorePermutation&&t.permutation[o]!==r.permutation[o])return!1;return!0}function T2(e,t,r){for(let[n,o]of Object.entries(e.definition.orbits))if(!Dm(o,t[n],r[n]))return!1;return!0}function W0(e,t){let r={};for(let n in e.definition.orbits){let o=e.definition.orbits[n],l=t[n];if(So(o.numOrientations,l))r[n]=l;else if(o.numOrientations===1){let i=new Array(o.numPieces);for(let a=0;a<o.numPieces;a++)i[l.permutation[a]]=a;r[n]={permutation:i,orientation:l.orientation}}else{let i=new Array(o.numPieces),a=new Array(o.numPieces);for(let s=0;s<o.numPieces;s++){let f=l.permutation[s];i[f]=s,a[f]=(o.numOrientations-l.orientation[s]+o.numOrientations)%o.numOrientations}r[n]={permutation:i,orientation:a}}}return r}function gr(e,t,r){if(r===1)return t;if(r<0)return gr(e,W0(e,t),-r);if(r===0){let{transformationData:l}=e.identityTransformation();return l}let n=t;r!==2&&(n=gr(e,t,Math.floor(r/2)));let o=wo(e.definition,n,n);return r%2===0?o:wo(e.definition,t,o)}function K0(e,t){return t?K0(t,e%t):e}function G2(e,t){let r=1;for(let n in e.orbits){let o=e.orbits[n],l=t.transformationData[n],i=new Array(o.numPieces);for(let a=0;a<o.numPieces;a++)if(!i[a]){let s=a,f=0,g=0;for(;i[s]=!0,f=f+l.orientation[s],g=g+1,s=l.permutation[s],s!==a;);f!==0&&(g=g*o.numOrientations/K0(o.numOrientations,f)),r=r*g/K0(r,g)}}return r}var I2,O2,W2,vo=U(()=>{Le();Ml();ko();I2=class extends yn{traverseAlg(t,r){let n=null;for(let o of t.units())n?n=n.applyTransformation(this.traverseUnit(o,r)):n=this.traverseUnit(o,r);return n??r.identityTransformation()}traverseGrouping(t,r){let n=this.traverseAlg(t.alg,r);return new Ut(r,gr(r,n.transformationData,t.amount))}traverseMove(t,r){return r.moveToTransformation(t)}traverseCommutator(t,r){let n=this.traverseAlg(t.A,r),o=this.traverseAlg(t.B,r);return n.applyTransformation(o).applyTransformation(n.invert()).applyTransformation(o.invert())}traverseConjugate(t,r){let n=this.traverseAlg(t.A,r),o=this.traverseAlg(t.B,r);return n.applyTransformation(o).applyTransformation(n.invert())}traversePause(t,r){return r.identityTransformation()}traverseNewline(t,r){return r.identityTransformation()}traverseLineComment(t,r){return r.identityTransformation()}},O2=new I2,W2=O2.traverseAlg.bind(O2)});var xn,Tl,be,Q0=U(()=>{Le();vo();T0();Eo();ko();be=class{constructor(t,r){this.definition=t;re(this,xn,new Map);re(this,Tl,void 0);this.experimentalPGNotation=r?.experimentalPGNotation}name(){return this.definition.name}identityTransformation(){return Ut.experimentalConstructIdentity(this)}moveToTransformation(t){typeof t==\\\"string\\\"&&(t=new B(t));let r=t.toString(),n=d(this,xn).get(r);if(n)return new Ut(this,n);if(this.experimentalPGNotation){let l=this.experimentalPGNotation.lookupMove(t);if(!l)throw new Error(`could not map to internal move: ${t}`);return d(this,xn).set(r,l),new Ut(this,l)}let o=k2(this,t);return d(this,xn).set(r,o),new Ut(this,o)}algToTransformation(t){return typeof t==\\\"string\\\"&&(t=new k(t)),W2(t,this)}toTransformation(t){return typeof t==\\\"string\\\"?this.algToTransformation(t):t?.is?.(k)?this.algToTransformation(t):t?.is?.(B)?this.moveToTransformation(t):t}startState(){return new fe(this,this.definition.startStateData)}canConvertStateToUniqueTransformation(){return d(this,Tl)??j(this,Tl,(()=>{for(let[t,r]of Object.entries(this.definition.orbits)){let n=new Array(r.numPieces).fill(!1);for(let o of this.definition.startStateData[t].pieces)n[o]=!0;for(let o of n)if(!o)return!1}return!0})())}get state(){throw new Error(\\\"KPuzzle is now a different (stateless) class.\\\")}reset(){throw new Error(\\\"KPuzzle is now a different (stateless) class.\\\")}applyMove(t){throw new Error(\\\"KPuzzle is now a different class. Try `.moveToTransformation()` to get the transformation for a move.\\\")}applyAlg(t){throw new Error(\\\"KPuzzle is now a different class. Try `.algToTransformation()` to get the transformation for an alg.\\\")}};xn=new WeakMap,Tl=new WeakMap});var Fe,K2=U(()=>{Fe={name:\\\"3x3x3\\\",orbits:{EDGES:{numPieces:12,numOrientations:2},CORNERS:{numPieces:8,numOrientations:3},CENTERS:{numPieces:6,numOrientations:4}},startStateData:{EDGES:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{pieces:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{pieces:[0,1,2,3,4,5],orientation:[0,0,0,0,0,0]}},moves:{U:{EDGES:{permutation:[1,2,3,0,4,5,6,7,8,9,10,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{permutation:[1,2,3,0,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[1,0,0,0,0,0]}},y:{EDGES:{permutation:[1,2,3,0,5,6,7,4,10,8,11,9],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[1,2,3,0,7,4,5,6],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,2,3,4,1,5],orientation:[1,0,0,0,0,3]}},x:{EDGES:{permutation:[4,8,0,9,6,10,2,11,5,7,1,3],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[4,0,3,5,7,6,2,1],orientation:[2,1,2,1,1,2,1,2]},CENTERS:{permutation:[2,1,5,3,0,4],orientation:[0,3,0,1,2,2]}},L:{EDGES:{permutation:[0,1,2,11,4,5,6,9,8,3,10,7],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{permutation:[0,1,6,2,4,3,5,7],orientation:[0,0,2,1,0,2,1,0]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,1,0,0,0,0]}},F:{EDGES:{permutation:[9,1,2,3,8,5,6,7,0,4,10,11],orientation:[1,0,0,0,1,0,0,0,1,1,0,0]},CORNERS:{permutation:[3,1,2,5,0,4,6,7],orientation:[1,0,0,2,2,1,0,0]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,0,1,0,0,0]}},R:{EDGES:{permutation:[0,8,2,3,4,10,6,7,5,9,1,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{permutation:[4,0,2,3,7,5,6,1],orientation:[2,1,0,0,1,0,0,2]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,0,0,1,0,0]}},B:{EDGES:{permutation:[0,1,10,3,4,5,11,7,8,9,6,2],orientation:[0,0,1,0,0,0,1,0,0,0,1,1]},CORNERS:{permutation:[0,7,1,3,4,5,2,6],orientation:[0,2,1,0,0,0,2,1]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,0,0,0,1,0]}},D:{EDGES:{permutation:[0,1,2,3,7,4,5,6,8,9,10,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{permutation:[0,1,2,3,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,1,2,3,4,5],orientation:[0,0,0,0,0,1]}},z:{EDGES:{permutation:[9,3,11,7,8,1,10,5,0,4,2,6],orientation:[1,1,1,1,1,1,1,1,1,1,1,1]},CORNERS:{permutation:[3,2,6,5,0,4,7,1],orientation:[1,2,1,2,2,1,2,1]},CENTERS:{permutation:[1,5,2,0,4,3],orientation:[1,1,1,1,3,1]}},M:{EDGES:{permutation:[2,1,6,3,0,5,4,7,8,9,10,11],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[4,1,0,3,5,2],orientation:[2,0,0,0,2,0]}},E:{EDGES:{permutation:[0,1,2,3,4,5,6,7,9,11,8,10],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,4,1,2,3,5],orientation:[0,0,0,0,0,0]}},S:{EDGES:{permutation:[0,3,2,7,4,1,6,5,8,9,10,11],orientation:[0,1,0,1,0,1,0,1,0,0,0,0]},CORNERS:{permutation:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[1,5,2,0,4,3],orientation:[1,1,0,1,0,1]}},u:{EDGES:{permutation:[1,2,3,0,4,5,6,7,10,8,11,9],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[1,2,3,0,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,2,3,4,1,5],orientation:[1,0,0,0,0,0]}},l:{EDGES:{permutation:[2,1,6,11,0,5,4,9,8,3,10,7],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[0,1,6,2,4,3,5,7],orientation:[0,0,2,1,0,2,1,0]},CENTERS:{permutation:[4,1,0,3,5,2],orientation:[2,1,0,0,2,0]}},f:{EDGES:{permutation:[9,3,2,7,8,1,6,5,0,4,10,11],orientation:[1,1,0,1,1,1,0,1,1,1,0,0]},CORNERS:{permutation:[3,1,2,5,0,4,6,7],orientation:[1,0,0,2,2,1,0,0]},CENTERS:{permutation:[1,5,2,0,4,3],orientation:[1,1,1,1,0,1]}},r:{EDGES:{permutation:[4,8,0,3,6,10,2,7,5,9,1,11],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[4,0,2,3,7,5,6,1],orientation:[2,1,0,0,1,0,0,2]},CENTERS:{permutation:[2,1,5,3,0,4],orientation:[0,0,0,1,2,2]}},b:{EDGES:{permutation:[0,5,10,1,4,7,11,3,8,9,6,2],orientation:[0,1,1,1,0,1,1,1,0,0,1,1]},CORNERS:{permutation:[0,7,1,3,4,5,2,6],orientation:[0,2,1,0,0,0,2,1]},CENTERS:{permutation:[3,0,2,5,4,1],orientation:[3,3,0,3,1,3]}},d:{EDGES:{permutation:[0,1,2,3,7,4,5,6,9,11,8,10],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[0,1,2,3,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,4,1,2,3,5],orientation:[0,0,0,0,0,1]}}}};Fe.moves.Uw=Fe.moves.u;Fe.moves.Lw=Fe.moves.l;Fe.moves.Fw=Fe.moves.f;Fe.moves.Rw=Fe.moves.r;Fe.moves.Bw=Fe.moves.b;Fe.moves.Dw=Fe.moves.d;Fe.moves.Rv=Fe.moves.x;Fe.moves.Uv=Fe.moves.y;Fe.moves.Fv=Fe.moves.z;Fe.moves.Lv={EDGES:{permutation:[2,10,6,11,0,8,4,9,1,3,5,7],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[1,7,6,2,0,3,5,4],orientation:[2,1,2,1,1,2,1,2]},CENTERS:{permutation:[4,1,0,3,5,2],orientation:[2,1,0,3,2,0]}};Fe.moves.Dv={EDGES:{permutation:[3,0,1,2,7,4,5,6,9,11,8,10],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[3,0,1,2,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]},CENTERS:{permutation:[0,4,1,2,3,5],orientation:[3,0,0,0,0,1]}};Fe.moves.Bv={EDGES:{permutation:[8,5,10,1,9,7,11,3,4,0,6,2],orientation:[1,1,1,1,1,1,1,1,1,1,1,1]},CORNERS:{permutation:[4,7,1,0,5,3,2,6],orientation:[1,2,1,2,2,1,2,1]},CENTERS:{permutation:[3,0,2,5,4,1],orientation:[3,3,3,3,1,3]}}});var bn,Ce=U(()=>{Q0();Eo();ko();K2();Q0();bn=new be(Fe)});var Q2=U(()=>{Ce()});var Am,i8,j2=U(()=>{Am={\\\"333\\\":{puzzleID:\\\"3x3x3\\\",eventName:\\\"3x3x3 Cube\\\"},\\\"222\\\":{puzzleID:\\\"2x2x2\\\",eventName:\\\"2x2x2 Cube\\\"},\\\"444\\\":{puzzleID:\\\"4x4x4\\\",eventName:\\\"4x4x4 Cube\\\"},\\\"555\\\":{puzzleID:\\\"5x5x5\\\",eventName:\\\"5x5x5 Cube\\\"},\\\"666\\\":{puzzleID:\\\"6x6x6\\\",eventName:\\\"6x6x6 Cube\\\"},\\\"777\\\":{puzzleID:\\\"7x7x7\\\",eventName:\\\"7x7x7 Cube\\\"},\\\"333bf\\\":{puzzleID:\\\"3x3x3\\\",eventName:\\\"3x3x3 Blindfolded\\\"},\\\"333fm\\\":{puzzleID:\\\"3x3x3\\\",eventName:\\\"3x3x3 Fewest Moves\\\"},\\\"333oh\\\":{puzzleID:\\\"3x3x3\\\",eventName:\\\"3x3x3 One-Handed\\\"},clock:{puzzleID:\\\"clock\\\",eventName:\\\"Clock\\\"},minx:{puzzleID:\\\"megaminx\\\",eventName:\\\"Megaminx\\\"},pyram:{puzzleID:\\\"pyraminx\\\",eventName:\\\"Pyraminx\\\"},skewb:{puzzleID:\\\"skewb\\\",eventName:\\\"Skewb\\\"},sq1:{puzzleID:\\\"square1\\\",eventName:\\\"Square-1\\\"},\\\"444bf\\\":{puzzleID:\\\"4x4x4\\\",eventName:\\\"4x4x4 Blindfolded\\\"},\\\"555bf\\\":{puzzleID:\\\"5x5x5\\\",eventName:\\\"5x5x5 Blindfolded\\\"},\\\"333mb\\\":{puzzleID:\\\"3x3x3\\\",eventName:\\\"3x3x3 Multi-Blind\\\"}},i8={...Am,fto:{puzzleID:\\\"fto\\\",eventName:\\\"Face-Turning Octahedron\\\"},master_tetraminx:{puzzleID:\\\"master_tetraminx\\\",eventName:\\\"Master Tetraminx\\\"},kilominx:{puzzleID:\\\"kilominx\\\",eventName:\\\"Kilominx\\\"},redi_cube:{puzzleID:\\\"redi_cube\\\",eventName:\\\"Redi Cube\\\"}}});function _m(e){switch(e){case\\\"Regular\\\":return ym;case\\\"Dim\\\":return vm;case\\\"Ignored\\\":return Um;case\\\"OrientationStickers\\\":return bm;case\\\"Invisible\\\":return xm;case\\\"IgnoreNonPrimary\\\":return Sm;case\\\"PermuteNonPrimary\\\":return wm;case\\\"Ignoriented\\\":return Em;case\\\"OrientationWithoutPermutation\\\":return km}}var _o,wn,Ct,qe,Sn,Gl,Kr,ym,Um,bm,xm,Sm,wm,vm,Em,km,zo,Co,Po=U(()=>{_o=(f=>(f.Regular=\\\"Regular\\\",f.Dim=\\\"Dim\\\",f.Ignored=\\\"Ignored\\\",f.OrientationStickers=\\\"OrientationStickers\\\",f.Invisible=\\\"Invisible\\\",f.Ignoriented=\\\"Ignoriented\\\",f.IgnoreNonPrimary=\\\"IgnoreNonPrimary\\\",f.PermuteNonPrimary=\\\"PermuteNonPrimary\\\",f.OrientationWithoutPermutation=\\\"OrientationWithoutPermutation\\\",f))(_o||{}),wn=class{constructor(t,r){this.stickerings=new Map;for(let[n,o]of Object.entries(t.definition.orbits))this.stickerings.set(n,new Array(o.numPieces).fill(r))}},Ct=\\\"regular\\\",qe=\\\"ignored\\\",Sn=\\\"oriented\\\",Gl=\\\"invisible\\\",Kr=\\\"dim\\\",ym={facelets:[Ct,Ct,Ct,Ct,Ct]},Um={facelets:[qe,qe,qe,qe,qe]},bm={facelets:[Sn,Sn,Sn,Sn,Sn]},xm={facelets:[Gl,Gl,Gl,Gl]},Sm={facelets:[Ct,qe,qe,qe,qe]},wm={facelets:[Kr,Ct,Ct,Ct,Ct]},vm={facelets:[Kr,Kr,Kr,Kr,Kr]},Em={facelets:[Kr,qe,qe,qe,qe]},km={facelets:[Sn,qe,qe,qe,qe]};zo=class extends wn{constructor(t){super(t,\\\"Regular\\\")}set(t,r){for(let[n,o]of this.stickerings.entries())for(let l=0;l<o.length;l++)t.stickerings.get(n)[l]&&(o[l]=r);return this}toAppearance(){let t={orbits:{}};for(let[r,n]of this.stickerings.entries()){let o=[],l={pieces:o};t.orbits[r]=l;for(let i of n)o.push(_m(i))}return t}},Co=class{constructor(t){this.kpuzzle=t}and(t){let r=new wn(this.kpuzzle,!1);for(let[n,o]of Object.entries(this.kpuzzle.definition.orbits)){e:for(let l=0;l<o.numPieces;l++){r.stickerings.get(n)[l]=!0;for(let i of t)if(!i.stickerings.get(n)[l]){r.stickerings.get(n)[l]=!1;continue e}}}return r}or(t){let r=new wn(this.kpuzzle,!1);for(let[n,o]of Object.entries(this.kpuzzle.definition.orbits)){e:for(let l=0;l<o.numPieces;l++){r.stickerings.get(n)[l]=!1;for(let i of t)if(i.stickerings.get(n)[l]){r.stickerings.get(n)[l]=!0;continue e}}}return r}not(t){let r=new wn(this.kpuzzle,!1);for(let[n,o]of Object.entries(this.kpuzzle.definition.orbits))for(let l=0;l<o.numPieces;l++)r.stickerings.get(n)[l]=!t.stickerings.get(n)[l];return r}all(){return this.and(this.moves([]))}move(t){let r=this.kpuzzle.moveToTransformation(t),n=new wn(this.kpuzzle,!1);for(let[o,l]of Object.entries(this.kpuzzle.definition.orbits))for(let i=0;i<l.numPieces;i++)(r.transformationData[o].permutation[i]!==i||r.transformationData[o].orientation[i]!==0)&&(n.stickerings.get(o)[i]=!0);return n}moves(t){return t.map(r=>this.move(r))}}});function zm(e){(async()=>{q2=e;let t=Array.from(document.body.querySelectorAll(\\\"twisty-player\\\"));console.log(`Setting the custom stickering for ${t.length} players!`);let r=[];for(let n of t)r.push((async()=>{let o=await n.experimentalModel.twistySceneModel.stickering.get();n.experimentalStickering=o===\\\"experimental-global-custom-1\\\"?\\\"experimental-global-custom-2\\\":\\\"experimental-global-custom-1\\\"})());await Promise.all(r),console.log(\\\"Success!\\\")})()}function V2(e,t){q2(e,t)}var q2,H2=U(()=>{Po();q2=()=>{};globalThis.location&&new URL(location.href).searchParams.get(\\\"global-custom-stickerer\\\")===\\\"true\\\"&&(window.setGlobalCustomStickerer=zm,window.PieceStickering=_o,console.log(\\\"Global custom stickerer enabled! (using: global-custom-stickerer=true)\\\"),console.log(\\\"Look here for inspiration:\\\",\\\"https://github.com/cubing/cubing.js/blob/81b5cab3e27d8defb39dd1e0a10bc9e8ba894d26/src/cubing/puzzles/stickerings/cube-stickerings.ts#L67\\\"))});async function Pt(e,t){let r=await e.kpuzzle(),n=new zo(r),o=new Co(r),l=()=>o.move(\\\"U\\\"),i=()=>o.or(o.moves([\\\"U\\\",\\\"D\\\"])),a=()=>o.not(i()),s=()=>o.or(o.moves([\\\"L\\\",\\\"R\\\"])),f=()=>o.not(s()),g=()=>o.or(o.moves([\\\"F\\\",\\\"B\\\"])),p=()=>o.not(g()),u=()=>o.not(l()),c=()=>o.and([l(),f(),p()]),m=()=>o.and([o.and(o.moves([\\\"F\\\",\\\"R\\\"])),o.not(i())]),L=()=>o.and(o.moves([\\\"D\\\",\\\"R\\\",\\\"F\\\"])),R=()=>o.or([L(),m()]),h=()=>o.or([o.and([f(),a()]),o.and([f(),p()]),o.and([a(),p()])]),y=()=>o.or([o.and([f(),i(),g()]),o.and([a(),s(),g()]),o.and([p(),i(),s()])]),A=()=>o.not(o.or([h(),y()])),E=()=>o.or([f(),o.and([l(),y()])]);function v(){n.set(u(),\\\"Dim\\\")}function K(){n.set(l(),\\\"PermuteNonPrimary\\\"),n.set(c(),\\\"Dim\\\")}function Z(){n.set(l(),\\\"IgnoreNonPrimary\\\"),n.set(c(),\\\"Regular\\\")}function M(){n.set(l(),\\\"Ignoriented\\\"),n.set(c(),\\\"Dim\\\")}switch(t){case\\\"full\\\":break;case\\\"PLL\\\":v(),K();break;case\\\"CLS\\\":v(),n.set(o.and(o.moves([\\\"D\\\",\\\"R\\\",\\\"F\\\"])),\\\"Regular\\\"),n.set(l(),\\\"Ignoriented\\\"),n.set(o.and([l(),f(),p()]),\\\"Dim\\\"),n.set(o.and([l(),A()]),\\\"IgnoreNonPrimary\\\");break;case\\\"OLL\\\":v(),Z();break;case\\\"COLL\\\":v(),K(),n.set(o.and([l(),A()]),\\\"Regular\\\");break;case\\\"OCLL\\\":v(),M(),n.set(o.and([l(),A()]),\\\"IgnoreNonPrimary\\\");break;case\\\"CLL\\\":v(),n.set(o.not(o.and([A(),l()])),\\\"Dim\\\");break;case\\\"ELL\\\":v(),n.set(l(),\\\"Dim\\\"),n.set(o.and([l(),y()]),\\\"Regular\\\");break;case\\\"ELS\\\":v(),Z(),n.set(o.and([l(),A()]),\\\"Ignored\\\"),n.set(m(),\\\"Regular\\\"),n.set(L(),\\\"Ignored\\\");break;case\\\"LL\\\":v();break;case\\\"F2L\\\":n.set(l(),\\\"Ignored\\\");break;case\\\"ZBLL\\\":v(),n.set(l(),\\\"PermuteNonPrimary\\\"),n.set(c(),\\\"Dim\\\"),n.set(o.and([l(),A()]),\\\"Regular\\\");break;case\\\"ZBLS\\\":v(),n.set(R(),\\\"Regular\\\"),Z(),n.set(o.and([l(),A()]),\\\"Ignored\\\");break;case\\\"WVLS\\\":case\\\"VLS\\\":v(),n.set(R(),\\\"Regular\\\"),Z();break;case\\\"LS\\\":v(),n.set(R(),\\\"Regular\\\"),n.set(l(),\\\"Ignored\\\"),n.set(c(),\\\"Dim\\\");break;case\\\"EO\\\":n.set(A(),\\\"Ignored\\\"),n.set(y(),\\\"OrientationWithoutPermutation\\\");break;case\\\"EOline\\\":n.set(A(),\\\"Ignored\\\"),n.set(y(),\\\"OrientationWithoutPermutation\\\"),n.set(o.and(o.moves([\\\"D\\\",\\\"M\\\"])),\\\"Regular\\\");break;case\\\"EOcross\\\":n.set(y(),\\\"OrientationWithoutPermutation\\\"),n.set(o.move(\\\"D\\\"),\\\"Regular\\\"),n.set(A(),\\\"Ignored\\\");break;case\\\"CMLL\\\":n.set(u(),\\\"Dim\\\"),n.set(E(),\\\"Ignored\\\"),n.set(o.and([l(),A()]),\\\"Regular\\\");break;case\\\"L6E\\\":n.set(o.not(E()),\\\"Dim\\\");break;case\\\"L6EO\\\":n.set(o.not(E()),\\\"Dim\\\"),n.set(E(),\\\"OrientationWithoutPermutation\\\"),n.set(o.and([h(),i()]),\\\"OrientationStickers\\\");break;case\\\"Daisy\\\":n.set(o.all(),\\\"Ignored\\\"),n.set(h(),\\\"Dim\\\"),n.set(o.and([o.move(\\\"D\\\"),h()]),\\\"Regular\\\"),n.set(o.and([o.move(\\\"U\\\"),y()]),\\\"IgnoreNonPrimary\\\");break;case\\\"Cross\\\":n.set(o.all(),\\\"Ignored\\\"),n.set(h(),\\\"Dim\\\"),n.set(o.and([o.move(\\\"D\\\"),h()]),\\\"Regular\\\"),n.set(o.and([o.move(\\\"D\\\"),y()]),\\\"Regular\\\");break;case\\\"2x2x2\\\":n.set(o.or(o.moves([\\\"U\\\",\\\"F\\\",\\\"R\\\"])),\\\"Ignored\\\"),n.set(o.and([o.or(o.moves([\\\"U\\\",\\\"F\\\",\\\"R\\\"])),h()]),\\\"Dim\\\");break;case\\\"2x2x3\\\":n.set(o.all(),\\\"Dim\\\"),n.set(o.or(o.moves([\\\"U\\\",\\\"F\\\",\\\"R\\\"])),\\\"Ignored\\\"),n.set(o.and([o.or(o.moves([\\\"U\\\",\\\"F\\\",\\\"R\\\"])),h()]),\\\"Dim\\\"),n.set(o.and([o.move(\\\"F\\\"),o.not(o.or(o.moves([\\\"U\\\",\\\"R\\\"])))]),\\\"Regular\\\");break;case\\\"Void Cube\\\":n.set(h(),\\\"Invisible\\\");break;case\\\"picture\\\":case\\\"invisible\\\":n.set(o.all(),\\\"Invisible\\\");break;case\\\"centers-only\\\":n.set(o.not(h()),\\\"Ignored\\\");break;case\\\"experimental-global-custom-1\\\":case\\\"experimental-global-custom-2\\\":V2(n,o);break;default:console.warn(`Unsupported stickering for ${e.id}: ${t}. Setting all pieces to dim.`),n.set(o.and(o.moves([])),\\\"Dim\\\")}return n.toAppearance()}async function vn(){return[\\\"full\\\",\\\"PLL\\\",\\\"CLS\\\",\\\"OLL\\\",\\\"COLL\\\",\\\"OCLL\\\",\\\"ELL\\\",\\\"ELS\\\",\\\"LL\\\",\\\"F2L\\\",\\\"ZBLL\\\",\\\"ZBLS\\\",\\\"WVLS\\\",\\\"VLS\\\",\\\"LS\\\",\\\"EO\\\",\\\"EOline\\\",\\\"EOcross\\\",\\\"CMLL\\\",\\\"L6E\\\",\\\"L6EO\\\",\\\"Daisy\\\",\\\"Cross\\\",\\\"2x2x2\\\",\\\"2x2x3\\\",\\\"Void Cube\\\",\\\"picture\\\",\\\"invisible\\\",\\\"centers-only\\\"]}var En=U(()=>{Po();H2()});function de(e){let t=null;return()=>t??(t=e())}var Mt=U(()=>{});var Mo,Y2=U(()=>{Mo=class{constructor(t,r){this.facenames=t;this.prefixFree=!0;this.gripnames=[];r&&(this.gripnames=r);for(let n=0;this.prefixFree&&n<t.length;n++)for(let o=0;this.prefixFree&&o<t.length;o++)n!==o&&t[n].startsWith(t[o])&&(this.prefixFree=!1)}setGripNames(t){this.gripnames=t}splitByFaceNames(t){let r=[],n=0;for(;n<t.length;){n>0&&n<t.length&&t[n]===\\\"_\\\"&&n++;let o=-1;for(let l=0;l<this.facenames.length;l++)t.substr(n).startsWith(this.facenames[l])&&(o<0||this.facenames[l].length>this.facenames[o].length)&&(o=l);if(o>=0)r.push(o),n+=this.facenames[o].length;else throw new Error(\\\"Could not split \\\"+t+\\\" into face names.\\\")}return r}joinByFaceIndices(t){let r=\\\"\\\",n=[];for(let o=0;o<t.length;o++)n.push(r),n.push(this.facenames[t[o]]),this.prefixFree||(r=\\\"_\\\");return n.join(\\\"\\\")}spinmatch(t,r){if(t===r)return!0;try{let n=this.splitByFaceNames(t),o=this.splitByFaceNames(r);if(n.length!==o.length&&n.length<3)return!1;for(let l=0;l<n.length;l++){for(let a=0;a<l;a++)if(n[l]===n[a])return!1;let i=!1;for(let a=0;a<o.length;a++)if(n[l]===o[a]){i=!0;break}if(!i)return!1}return!0}catch{return!1}}spinmatchv(t,r){return t.endsWith(\\\"v\\\")&&r.endsWith(\\\"v\\\")?this.spinmatch(t.slice(0,t.length-1),r.slice(0,r.length-1)):this.spinmatch(t,r)}unswizzle(t){(t.endsWith(\\\"v\\\")||t.endsWith(\\\"w\\\"))&&t[0]<=\\\"Z\\\"&&(t=t.slice(0,t.length-1));let r=t.toUpperCase();for(let n=0;n<this.gripnames.length;n++){let o=this.gripnames[n];if(this.spinmatch(r,o))return o}return t}}});var kn,J2=U(()=>{kn=class{notationToInternal(t){return t}notationToExternal(t){return t}}});var Ol,Z2=U(()=>{Le();Ol=class{constructor(t,r){this.child=t;this.sw=r}notationToInternal(t){return t.family===\\\"T\\\"&&t.innerLayer===void 0&&t.outerLayer===void 0?new B(new C(\\\"FLRv\\\",t.innerLayer,t.outerLayer),t.amount):this.child.notationToInternal(t)}notationToExternal(t){let r=t.family;return r.length>0&&r[r.length-1]===\\\"v\\\"&&(r=r.substring(0,r.length-1)),this.sw.spinmatch(r,\\\"FLUR\\\")?new B(new C(\\\"T\\\",t.innerLayer,t.outerLayer),t.amount):this.child.notationToExternal(t)}}});var No,X2=U(()=>{Le();No=class{constructor(t,r){this.internalNames=t;this.externalNames=r}convertString(t,r,n){let o=\\\"\\\";(t.endsWith(\\\"v\\\")||t.endsWith(\\\"v\\\"))&&t<=\\\"_\\\"&&(o=t.slice(t.length-1),t=t.slice(0,t.length-1));let l=t.toUpperCase(),i=!1;return t!==l&&(i=!0,t=l),t=n.joinByFaceIndices(r.splitByFaceNames(t)),i&&(t=t.toLowerCase()),t+o}convert(t,r,n){let o=t.family,l=this.convertString(o,r,n);return o===l?t:new B(new C(l,t.innerLayer,t.outerLayer),t.amount)}notationToInternal(t){return this.convert(t,this.externalNames,this.internalNames)}notationToExternal(t){return this.convert(t,this.internalNames,this.externalNames)}}});var Il,$2=U(()=>{Le();Il=class{constructor(t){this.child=t}notationToInternal(t){if(t.innerLayer===void 0&&t.outerLayer===void 0){if(Math.abs(t.amount)===1){if(t.family===\\\"R++\\\")return new B(new C(\\\"L\\\",3,2),-2*t.amount);if(t.family===\\\"R--\\\")return new B(new C(\\\"L\\\",3,2),2*t.amount);if(t.family===\\\"D++\\\")return new B(new C(\\\"U\\\",3,2),-2*t.amount);if(t.family===\\\"D--\\\")return new B(new C(\\\"U\\\",3,2),2*t.amount);if(t.family===\\\"R_PLUSPLUS_\\\")return new B(new C(\\\"L\\\",3,2),-2*t.amount);if(t.family===\\\"D_PLUSPLUS_\\\")return new B(new C(\\\"U\\\",3,2),-2*t.amount)}if(t.family===\\\"y\\\")return new B(\\\"Uv\\\",t.amount)}return this.child.notationToInternal(t)}notationToExternal(t){return t.family===\\\"Uv\\\"?new B(new C(\\\"y\\\",t.innerLayer,t.outerLayer),t.amount):t.family===\\\"Dv\\\"?new B(\\\"y\\\",-t.amount):this.child.notationToExternal(t)}}});var Wl,ef=U(()=>{Le();Wl=class{constructor(t){this.slices=t}notationToInternal(t){let r=t.family;return!t.innerLayer&&!t.outerLayer&&(r===\\\"x\\\"?t=new B(\\\"Rv\\\",t.amount):r===\\\"y\\\"?t=new B(\\\"Uv\\\",t.amount):r===\\\"z\\\"&&(t=new B(\\\"Fv\\\",t.amount)),(this.slices&1)===1&&(r===\\\"E\\\"?t=new B(new C(\\\"D\\\",(this.slices+1)/2),t.amount):r===\\\"M\\\"?t=new B(new C(\\\"L\\\",(this.slices+1)/2),t.amount):r===\\\"S\\\"&&(t=new B(new C(\\\"F\\\",(this.slices+1)/2),t.amount))),this.slices>2&&(r===\\\"e\\\"?t=new B(new C(\\\"D\\\",this.slices-1,2),t.amount):r===\\\"m\\\"?t=new B(new C(\\\"L\\\",this.slices-1,2),t.amount):r===\\\"s\\\"&&(t=new B(new C(\\\"F\\\",this.slices-1,2),t.amount)))),t}notationToExternal(t){let r=t.family;if(!t.innerLayer&&!t.outerLayer){if(r===\\\"Rv\\\")return new B(\\\"x\\\",t.amount);if(r===\\\"Uv\\\")return new B(\\\"y\\\",t.amount);if(r===\\\"Fv\\\")return new B(\\\"z\\\",t.amount);if(r===\\\"Lv\\\")return new B(\\\"x\\\",-t.amount);if(r===\\\"Dv\\\")return new B(\\\"y\\\",-t.amount);if(r===\\\"Bv\\\")return new B(\\\"z\\\",-t.amount)}return t}}});var Cm,Pm,tf,rf,nf,To,Kl,of=U(()=>{Le();Cm={U:\\\"frl\\\",L:\\\"fld\\\",R:\\\"fdr\\\",B:\\\"dlr\\\",u:\\\"FRL\\\",l:\\\"FLD\\\",r:\\\"FDR\\\",b:\\\"DLR\\\",Uv:\\\"FRLv\\\",Lv:\\\"FLDv\\\",Rv:\\\"FDRv\\\",Bv:\\\"DLRv\\\",D:\\\"D\\\",F:\\\"F\\\",BL:\\\"L\\\",BR:\\\"R\\\"},Pm={U:\\\"FRL\\\",L:\\\"FLD\\\",R:\\\"FDR\\\",B:\\\"DLR\\\",u:\\\"frl\\\",l:\\\"fld\\\",r:\\\"fdr\\\",b:\\\"dlr\\\",Uv:\\\"FRLv\\\",Lv:\\\"FLDv\\\",Rv:\\\"FDRv\\\",Bv:\\\"DLRv\\\",D:\\\"D\\\",F:\\\"F\\\",BL:\\\"L\\\",BR:\\\"R\\\",d:\\\"d\\\",f:\\\"f\\\",bl:\\\"l\\\",br:\\\"r\\\"},tf={U:\\\"FRL\\\",L:\\\"FLD\\\",R:\\\"FDR\\\",B:\\\"DLR\\\"},rf=new C(\\\"y\\\"),nf=new C(\\\"Dv\\\"),To=class{constructor(t){this.child=t;this.wcaHack=!1;this.map=Cm}notationToInternal(t){if(this.wcaHack&&t.innerLayer===2&&t.outerLayer===null){let n=tf[t.family];if(n)return new B(new C(n,t.innerLayer,t.outerLayer),t.amount)}let r=this.map[t.family];return r?new B(new C(r,t.innerLayer,t.outerLayer),t.amount):rf.isIdentical(t.quantum)?new B(nf,-t.amount):null}notationToExternal(t){if(this.wcaHack&&t.innerLayer===2&&t.outerLayer===null){for(let[r,n]of Object.entries(tf))if(this.child.spinmatch(t.family,n))return new B(new C(r,t.innerLayer,t.outerLayer),t.amount)}for(let[r,n]of Object.entries(this.map))if(this.child.spinmatch(t.family,n))return new B(new C(r,t.innerLayer,t.outerLayer),t.amount);return nf.isIdentical(t.quantum)?new B(rf,-t.amount):null}},Kl=class extends To{constructor(t){super(t);this.wcaHack=!0;this.map=Pm}}});var lf,j0,af,Mm,q0,sf,Nm,V0,ff,Tm,Ql,uf=U(()=>{Le();lf={U:\\\"UBL\\\",UL:\\\"ULF\\\",F:\\\"UFR\\\",UR:\\\"URB\\\",B:\\\"DBL\\\",D:\\\"DFR\\\",L:\\\"DLF\\\",R:\\\"DRB\\\",Uv:\\\"UBLv\\\",ULv:\\\"ULFv\\\",Fv:\\\"UFRv\\\",URv:\\\"URBv\\\",Bv:\\\"DBLv\\\",Dv:\\\"DFRv\\\",Lv:\\\"DLFv\\\",Rv:\\\"DRBv\\\"},j0=new C(\\\"x\\\"),af=new C(\\\"Rv\\\"),Mm=new C(\\\"Lv\\\"),q0=new C(\\\"y\\\"),sf=new C(\\\"Uv\\\"),Nm=new C(\\\"Dv\\\"),V0=new C(\\\"z\\\"),ff=new C(\\\"Fv\\\"),Tm=new C(\\\"Bv\\\"),Ql=class{constructor(t){this.child=t}notationToInternal(t){if(t.innerLayer||t.outerLayer)return null;let r=lf[t.family];return r?new B(new C(r,t.outerLayer,t.innerLayer),t.amount):j0.isIdentical(t.quantum)?new B(af,t.amount):q0.isIdentical(t.quantum)?new B(sf,t.amount):V0.isIdentical(t.quantum)?new B(ff,t.amount):null}notationToExternal(t){for(let[r,n]of Object.entries(lf))if(this.child.spinmatchv(t.family,n))return new B(new C(r,t.innerLayer,t.outerLayer),t.amount);return af.isIdentical(t.quantum)?new B(j0,t.amount):Mm.isIdentical(t.quantum)?new B(j0,-t.amount):sf.isIdentical(t.quantum)?new B(q0,t.amount):Nm.isIdentical(t.quantum)?new B(q0,-t.amount):ff.isIdentical(t.quantum)?new B(V0,t.amount):Tm.isIdentical(t.quantum)?new B(V0,-t.amount):null}}});var H0=U(()=>{J2();Z2();X2();$2();ef();of();uf()});function gf(e){let t=0,r={};for(;t<e.length&&e[t][0]===\\\"-\\\";){let o=e[t++];if(o===\\\"--rotations\\\")r.addRotations=!0;else if(o===\\\"--allmoves\\\")r.allMoves=!0;else if(o===\\\"--outerblockmoves\\\")r.outerBlockMoves=!0;else if(o===\\\"--vertexmoves\\\")r.vertexMoves=!0;else if(o===\\\"--nocorners\\\")r.includeCornerOrbits=!1;else if(o===\\\"--noedges\\\")r.includeEdgeOrbits=!1;else if(o===\\\"--noorientation\\\")r.fixedOrientation=!0;else if(o===\\\"--nocenters\\\")r.includeCenterOrbits=!1;else if(o===\\\"--omit\\\")r.excludeOrbits=e[t].split(\\\",\\\"),t++;else if(o===\\\"--moves\\\")r.moveList=e[t].split(\\\",\\\"),t++;else if(o===\\\"--optimize\\\")r.optimizeOrbits=!0;else if(o===\\\"--scramble\\\")r.scrambleAmount=100;else if(o===\\\"--fixcorner\\\")r.fixedPieceType=\\\"v\\\";else if(o===\\\"--fixedge\\\")r.fixedPieceType=\\\"e\\\";else if(o===\\\"--fixcenter\\\")r.fixedPieceType=\\\"f\\\";else if(o===\\\"--orientcenters\\\")r.orientCenters=!0;else if(o===\\\"--puzzleorientation\\\")r.puzzleOrientation=JSON.parse(e[t]),t++;else throw new Error(\\\"Bad option: \\\"+o)}return{puzzleDescription:Go(e.slice(t).join(\\\" \\\")),options:r}}var Y0,J0=U(()=>{jl();Y0=class{constructor(t={}){this.verbosity=0;this.allMoves=!1;this.vertexMoves=!1;this.addRotations=!1;this.moveList=null;this.fixedOrientation=!1;this.fixedPieceType=null;this.orientCenters=!1;this.includeCornerOrbits=!0;this.includeCenterOrbits=!0;this.includeEdgeOrbits=!0;this.excludeOrbits=[];this.optimizeOrbits=!1;this.grayCorners=!1;this.grayCenters=!1;this.grayEdges=!1;this.puzzleOrientation=null;this.puzzleOrientations=null;this.scrambleAmount=0;Object.assign(this,t)}}});function cr(e){if(!Z0[e]){let t=Array(e);for(let r=0;r<e;r++)t[r]=0;Z0[e]=t}return Z0[e]}function Nt(e){if(!X0[e]){let t=Array(e);for(let r=0;r<e;r++)t[r]=r;X0[e]=t}return X0[e]}function pf(e){return new mt(Nt(e))}function cf(e){let t=1;for(;e>1;)t*=e,e--;return t}function Gm(e,t){if(e>t){let r=e;e=t,t=r}for(;e>0;){let r=t%e;t=e,e=r}return t}function $0(e,t){return e/Gm(e,t)*t}var Z0,X0,mt,ql=U(()=>{Z0=[],X0=[];mt=class{constructor(t){this.n=t.length,this.p=t}toString(){return\\\"Perm[\\\"+this.p.join(\\\" \\\")+\\\"]\\\"}mul(t){let r=Array(this.n);for(let n=0;n<this.n;n++)r[n]=t.p[this.p[n]];return new mt(r)}rmul(t){let r=Array(this.n);for(let n=0;n<this.n;n++)r[n]=this.p[t.p[n]];return new mt(r)}inv(){let t=Array(this.n);for(let r=0;r<this.n;r++)t[this.p[r]]=r;return new mt(t)}compareTo(t){for(let r=0;r<this.n;r++)if(this.p[r]!==t.p[r])return this.p[r]-t.p[r];return 0}toGap(){let t=new Array,r=new Array(this.n);for(let n=0;n<this.p.length;n++){if(r[n]||this.p[n]===n)continue;let o=new Array;for(let l=n;!r[l];l=this.p[l])o.push(1+l),r[l]=!0;t.push(\\\"(\\\"+o.join(\\\",\\\")+\\\")\\\")}return t.join(\\\"\\\")}order(){let t=1,r=new Array(this.n);for(let n=0;n<this.p.length;n++){if(r[n]||this.p[n]===n)continue;let o=0;for(let l=n;!r[l];l=this.p[l])o++,r[l]=!0;t=$0(t,o)}return t}}});function ta(e,t){let r=B.fromString(t),n=e.notationToExternal(r);return n===null||r===n?t:n.toString()}function mf(e,t){let r=e.moveops.length;if(r>30)throw new Error(\\\"Canon info too big for bitmask\\\");let n=[],o=[];for(let i=0;i<r;i++){let a=e.moveops[i];n.push(a.order());let s=0;for(let f=0;f<r;f++){if(f===i)continue;let g=e.moveops[f];a.mul(g).equal(g.mul(a))&&(s|=1<<f)}o.push(s)}let l={};l[0]=1;for(let i=0;i<100;i++){let a=0,s={},f=0;for(let g in l){let p=+g,u=l[p];a+=u,f++;for(let c=0;c<n.length;c++)if((p>>c&1)===0&&(p&o[c]&(1<<c)-1)===0){let m=p&o[c]|1<<c;s[m]===void 0&&(s[m]=0),s[m]+=(n[c]-1)*u}}t(`${i}: canonseq ${a} states ${f}`),l=s}}var Oo,Om,_n,bt,Yt,ra,mr,zn,ea,Lf=U(()=>{Le();H0();ql();Oo=class{constructor(t,r){this.size=t;this.mod=r}reassemblySize(){return cf(this.size)*Math.pow(this.mod,this.size)}},Om=0;_n=class{constructor(t,r,n,o,l){this.orbitnames=t;this.orbitdefs=r;this.solved=n;this.movenames=o;this.moveops=l}transformToKTransformationData(t){let r={};for(let n=0;n<this.orbitnames.length;n++)r[this.orbitnames[n]]=t.orbits[n].toKPuzzle();return r}static transformToKTransformationData(t,r){let n={};for(let o=0;o<t.length;o++)n[t[o]]=r.orbits[o].toKPuzzle();return n}toKsolve(t,r=new kn){let n=[];n.push(\\\"Name \\\"+t),n.push(\\\"\\\");for(let o=0;o<this.orbitnames.length;o++)n.push(`Set ${this.orbitnames[o]} ${this.orbitdefs[o].size} ${this.orbitdefs[o].mod}`);n.push(\\\"\\\"),n.push(\\\"Solved\\\");for(let o=0;o<this.orbitnames.length;o++)this.solved.orbits[o].appendDefinition(n,this.orbitnames[o],!1,!1);n.push(\\\"End\\\");for(let o=0;o<this.movenames.length;o++){n.push(\\\"\\\");let l=ta(r,this.movenames[o]),i=!1;l[l.length-1]===\\\"'\\\"&&(i=!0,l=l.substring(0,l.length-1)),n.push(\\\"Move \\\"+l);for(let a=0;a<this.orbitnames.length;a++)i?this.moveops[o].orbits[a].inv().appendDefinition(n,this.orbitnames[a],!0):this.moveops[o].orbits[a].appendDefinition(n,this.orbitnames[a],!0);n.push(\\\"End\\\")}return n}toKPuzzleDefinition(t){let r={},n={};for(let l=0;l<this.orbitnames.length;l++){r[this.orbitnames[l]]={numPieces:this.orbitdefs[l].size,numOrientations:this.orbitdefs[l].mod};let i=this.solved.orbits[l].toKPuzzle();n[this.orbitnames[l]]={pieces:i.permutation,orientation:i.orientation}}let o={};if(t)for(let l=0;l<this.movenames.length;l++)o[this.movenames[l]]=this.transformToKTransformationData(this.moveops[l]);return{name:`PG3D #${++Om}`,orbits:r,startStateData:n,moves:o}}optimize(){let t=[],r=[],n=[],o=[];for(let l=0;l<this.moveops.length;l++)o.push([]);for(let l=0;l<this.orbitdefs.length;l++){let i=this.orbitdefs[l].mod,a=this.orbitdefs[l].size,s=new ea(a),f=new Array(this.orbitdefs[l].size);for(let c=0;c<a;c++)f[c]=!1;for(let c=0;c<this.moveops.length;c++)for(let m=0;m<a;m++)(this.moveops[c].orbits[l].perm[m]!==m||this.moveops[c].orbits[l].ori[m]!==0)&&(f[m]=!0,s.union(m,this.moveops[c].orbits[l].perm[m]));let g=!0;if(i>1){g=!1;let c=new ea(this.orbitdefs[l].size*i);for(let m=0;m<this.moveops.length;m++)for(let L=0;L<a;L++)if(this.moveops[m].orbits[l].perm[L]!==L||this.moveops[m].orbits[l].ori[L]!==0)for(let R=0;R<i;R++)c.union(L*i+R,this.moveops[m].orbits[l].perm[L]*i+(R+this.moveops[m].orbits[l].ori[L])%i);for(let m=0;!g&&m<a;m++)for(let L=1;L<i;L++)c.find(m*i)===c.find(m*i+L)&&(g=!0);for(let m=0;!g&&m<a;m++)for(let L=0;L<m;L++)this.solved.orbits[l].perm[m]===this.solved.orbits[l].perm[L]&&(g=!0)}let p=-1,u=!1;for(let c=0;c<this.orbitdefs[l].size;c++)if(f[c]){let m=s.find(c);p<0?p=m:p!==m&&(u=!0)}for(let c=0;c<this.orbitdefs[l].size;c++){if(!f[c]||s.find(c)!==c)continue;let L=[],R=[],h=0;for(let y=0;y<this.orbitdefs[l].size;y++)s.find(y)===c&&(L[h]=y,R[y]=h,h++);if(u?t.push(`${this.orbitnames[l]}_p${c}`):t.push(this.orbitnames[l]),g){r.push(new Oo(h,this.orbitdefs[l].mod)),n.push(this.solved.orbits[l].remapVS(L,h));for(let y=0;y<this.moveops.length;y++)o[y].push(this.moveops[y].orbits[l].remap(L,R,h))}else{r.push(new Oo(h,1)),n.push(this.solved.orbits[l].remapVS(L,h).killOri());for(let y=0;y<this.moveops.length;y++)o[y].push(this.moveops[y].orbits[l].remap(L,R,h).killOri())}}}return new _n(t,r,new zn(n),this.movenames,o.map(l=>new mr(l)))}scramble(t){this.solved=this.solved.mul(this.getScrambleTransformation(t))}getScrambleTransformation(t){t<100&&(t=100);let r=[];for(let o=0;o<this.moveops.length;o++)r[o]=this.moveops[o];for(let o=0;o<r.length;o++){let l=Math.floor(Math.random()*r.length),i=r[o];r[o]=r[l],r[l]=i}t<r.length&&(t=r.length);for(let o=0;o<t;o++){let l=Math.floor(Math.random()*r.length),i=Math.floor(Math.random()*r.length),a=Math.floor(Math.random()*this.moveops.length);r[l]=r[l].mul(r[i]).mul(this.moveops[a]),Math.random()<.1&&(r[l]=r[l].mul(this.moveops[a]))}let n=r[0];for(let o=1;o<r.length;o++)n=n.mul(r[o]);return n}reassemblySize(){let t=1;for(let r=0;r<this.orbitdefs.length;r++)t*=this.orbitdefs[r].reassemblySize();return t}},bt=class{constructor(t,r,n){this.perm=t;this.ori=r;this.orimod=n}static e(t,r){return new bt(Nt(t),cr(t),r)}mul(t){let r=this.perm.length,n=new Array(r);if(this.orimod===1){for(let o=0;o<r;o++)n[o]=this.perm[t.perm[o]];return new bt(n,this.ori,this.orimod)}else{let o=new Array(r);for(let l=0;l<r;l++)n[l]=this.perm[t.perm[l]],o[l]=(this.ori[t.perm[l]]+t.ori[l])%this.orimod;return new bt(n,o,this.orimod)}}inv(){let t=this.perm.length,r=new Array(t),n=new Array(t);for(let o=0;o<t;o++)r[this.perm[o]]=o,n[this.perm[o]]=(this.orimod-this.ori[o])%this.orimod;return new bt(r,n,this.orimod)}equal(t){let r=this.perm.length;for(let n=0;n<r;n++)if(this.perm[n]!==t.perm[n]||this.ori[n]!==t.ori[n])return!1;return!0}killOri(){let t=this.perm.length;for(let r=0;r<t;r++)this.ori[r]=0;return this.orimod=1,this}toPerm(){let t=this.orimod;if(t===1)return new mt(this.perm);let r=this.perm.length,n=new Array(r*t);for(let o=0;o<r;o++)for(let l=0;l<t;l++)n[o*t+l]=t*this.perm[o]+(this.ori[o]+l)%t;return new mt(n)}identicalPieces(){let t=[],r=this.perm.length,n=[];for(let o=0;o<r;o++){let l=this.perm[o];if(t[l]===void 0){let i=[o];t[l]=!0;for(let a=o+1;a<r;a++)this.perm[a]===l&&i.push(a);n.push(i)}}return n}order(){return this.toPerm().order()}isIdentity(){let t=this.perm.length;if(this.perm===Nt(t)&&this.ori===cr(t))return!0;for(let r=0;r<t;r++)if(this.perm[r]!==r||this.ori[r]!==0)return!1;return!0}zeroOris(){let t=this.perm.length;if(this.ori===cr(t))return!0;for(let r=0;r<t;r++)if(this.ori[r]!==0)return!1;return!0}remap(t,r,n){let o=new Array(n),l=new Array(n);for(let i=0;i<n;i++)o[i]=r[this.perm[t[i]]],l[i]=this.ori[t[i]];return new bt(o,l,this.orimod)}remapVS(t,r){let n=new Array(r),o=new Array(r),l=0,i=[];for(let a=0;a<r;a++){let s=this.perm[t[a]];i[s]===void 0&&(i[s]=l++),n[a]=i[s],o[a]=this.ori[t[a]]}return new bt(n,o,this.orimod)}appendDefinition(t,r,n,o=!0){if(!(o&&this.isIdentity())&&(t.push(r),t.push(this.perm.map(l=>l+1).join(\\\" \\\")),!this.zeroOris()))if(n){let l=new Array(this.ori.length);for(let i=0;i<l.length;i++)l[this.perm[i]]=this.ori[i];t.push(l.join(\\\" \\\"))}else t.push(this.ori.join(\\\" \\\"))}toKPuzzle(){let t=this.perm.length;return this.isIdentity()?(bt.kcache[t]||(bt.kcache[t]={permutation:Nt(t),orientation:cr(t)}),bt.kcache[t]):{permutation:this.perm,orientation:this.ori}}},Yt=bt;Yt.kcache=[];ra=class{constructor(t){this.orbits=t}internalMul(t){let r=[];for(let n=0;n<this.orbits.length;n++)r.push(this.orbits[n].mul(t.orbits[n]));return r}internalInv(){let t=[];for(let r of this.orbits)t.push(r.inv());return t}equal(t){for(let r=0;r<this.orbits.length;r++)if(!this.orbits[r].equal(t.orbits[r]))return!1;return!0}killOri(){for(let t of this.orbits)t.killOri();return this}toPerm(){let t=new Array,r=0;for(let o of this.orbits){let l=o.toPerm();t.push(l),r+=l.n}let n=new Array(r);r=0;for(let o of t){for(let l=0;l<o.n;l++)n[r+l]=r+o.p[l];r+=o.n}return new mt(n)}identicalPieces(){let t=[],r=0;for(let n of this.orbits){let o=n.orimod,l=n.identicalPieces();for(let i=0;i<l.length;i++)t.push(l[i].map(a=>a*o+r));r+=o*n.perm.length}return t}order(){let t=1;for(let r of this.orbits)t=$0(t,r.order());return t}},mr=class extends ra{constructor(t){super(t)}mul(t){return new mr(this.internalMul(t))}mulScalar(t){if(t===0)return this.e();let r=this;for(t<0&&(r=r.inv(),t=-t);(t&1)===0;)r=r.mul(r),t>>=1;if(t===1)return r;let n=r,o=this.e();for(;t>0;)t&1&&(o=o.mul(n)),t>1&&(n=n.mul(n)),t>>=1;return o}inv(){return new mr(this.internalInv())}e(){return new mr(this.orbits.map(t=>Yt.e(t.perm.length,t.orimod)))}},zn=class extends ra{constructor(t){super(t)}mul(t){return new zn(this.internalMul(t))}},ea=class{constructor(t){this.n=t;this.heads=new Array(t);for(let r=0;r<t;r++)this.heads[r]=r}find(t){let r=this.heads[t];return this.heads[r]===r||(r=this.find(this.heads[r]),this.heads[t]=r),r}union(t,r){let n=this.find(t),o=this.find(r);n<o?this.heads[o]=n:n>o&&(this.heads[n]=o)}}});var Vl,Bf=U(()=>{Vl={\\\"2x2x2\\\":\\\"c f 0\\\",\\\"3x3x3\\\":\\\"c f 0.333333333333333\\\",\\\"4x4x4\\\":\\\"c f 0.5 f 0\\\",\\\"5x5x5\\\":\\\"c f 0.6 f 0.2\\\",\\\"6x6x6\\\":\\\"c f 0.666666666666667 f 0.333333333333333 f 0\\\",\\\"7x7x7\\\":\\\"c f 0.714285714285714 f 0.428571428571429 f 0.142857142857143\\\",\\\"8x8x8\\\":\\\"c f 0.75 f 0.5 f 0.25 f 0\\\",\\\"9x9x9\\\":\\\"c f 0.777777777777778 f 0.555555555555556 f 0.333333333333333 f 0.111111111111111\\\",\\\"10x10x10\\\":\\\"c f 0.8 f 0.6 f 0.4 f 0.2 f 0\\\",\\\"11x11x11\\\":\\\"c f 0.818181818181818 f 0.636363636363636 f 0.454545454545455 f 0.272727272727273 f 0.0909090909090909\\\",\\\"12x12x12\\\":\\\"c f 0.833333333333333 f 0.666666666666667 f 0.5 f 0.333333333333333 f 0.166666666666667 f 0\\\",\\\"13x13x13\\\":\\\"c f 0.846153846153846 f 0.692307692307692 f 0.538461538461538 f 0.384615384615385 f 0.230769230769231 f 0.0769230769230769\\\",\\\"20x20x20\\\":\\\"c f 0 f .1 f .2 f .3 f .4 f .5 f .6 f .7 f .8 f .9\\\",\\\"30x30x30\\\":\\\"c f 0 f .066667 f .133333 f .2 f .266667 f .333333 f .4 f .466667 f .533333 f .6 f .666667 f .733333 f .8 f .866667 f .933333\\\",\\\"40x40x40\\\":\\\"c f 0 f .05 f .1 f .15 f .2 f .25 f .3 f .35 f .4 f .45 f .5 f .55 f .6 f .65 f .7 f .75 f .8 f .85 f .9 f .95\\\",skewb:\\\"c v 0\\\",\\\"master skewb\\\":\\\"c v 0.275\\\",\\\"professor skewb\\\":\\\"c v 0 v 0.38\\\",\\\"compy cube\\\":\\\"c v 0.915641442663986\\\",helicopter:\\\"c e 0.707106781186547\\\",\\\"curvy copter\\\":\\\"c e 0.83\\\",dino:\\\"c v 0.577350269189626\\\",\\\"little chop\\\":\\\"c e 0\\\",pyramorphix:\\\"t e 0\\\",mastermorphix:\\\"t e 0.346184634065199\\\",pyraminx:\\\"t v 0.333333333333333 v 1.66666666666667\\\",tetraminx:\\\"t v 0.333333333333333\\\",\\\"master pyraminx\\\":\\\"t v 0 v 1 v 2\\\",\\\"master tetraminx\\\":\\\"t v 0 v 1\\\",\\\"professor pyraminx\\\":\\\"t v -0.2 v 0.6 v 1.4 v 2.2\\\",\\\"professor tetraminx\\\":\\\"t v -0.2 v 0.6 v 1.4\\\",\\\"Jing pyraminx\\\":\\\"t f 0\\\",\\\"master pyramorphix\\\":\\\"t e 0.866025403784437\\\",megaminx:\\\"d f 0.7\\\",gigaminx:\\\"d f 0.64 f 0.82\\\",teraminx:\\\"d f 0.64 f 0.76 f 0.88\\\",petaminx:\\\"d f 0.64 f 0.73 f 0.82 f 0.91\\\",examinx:\\\"d f 0.64 f 0.712 f 0.784 f 0.856 f 0.928\\\",zetaminx:\\\"d f 0.64 f 0.7 f 0.76 f 0.82 f 0.88 f 0.94\\\",yottaminx:\\\"d f 0.64 f 0.6914 f 0.7429 f 0.7943 f 0.8457 f 0.8971 f 0.9486\\\",pentultimate:\\\"d f 0\\\",\\\"master pentultimate\\\":\\\"d f 0.1\\\",\\\"elite pentultimate\\\":\\\"d f 0 f 0.145905\\\",starminx:\\\"d v 0.937962370425399\\\",\\\"starminx 2\\\":\\\"d f 0.23606797749979\\\",\\\"pyraminx crystal\\\":\\\"d f 0.447213595499989\\\",chopasaurus:\\\"d v 0\\\",\\\"big chop\\\":\\\"d e 0\\\",\\\"skewb diamond\\\":\\\"o f 0\\\",FTO:\\\"o f 0.333333333333333\\\",\\\"master FTO\\\":\\\"o f 0.5 f 0\\\",\\\"Christopher's jewel\\\":\\\"o v 0.577350269189626\\\",octastar:\\\"o e 0\\\",\\\"Trajber's octahedron\\\":\\\"o v 0.433012701892219\\\",\\\"radio chop\\\":\\\"i f 0\\\",icosamate:\\\"i v 0\\\",\\\"icosahedron 2\\\":\\\"i v 0.18759247376021\\\",\\\"icosahedron 3\\\":\\\"i v 0.18759247376021 e 0\\\",\\\"icosahedron static faces\\\":\\\"i v 0.84\\\",\\\"icosahedron moving faces\\\":\\\"i v 0.73\\\",\\\"Eitan's star\\\":\\\"i f 0.61803398874989\\\",\\\"2x2x2 + dino\\\":\\\"c f 0 v 0.577350269189626\\\",\\\"2x2x2 + little chop\\\":\\\"c f 0 e 0\\\",\\\"dino + little chop\\\":\\\"c v 0.577350269189626 e 0\\\",\\\"2x2x2 + dino + little chop\\\":\\\"c f 0 v 0.577350269189626 e 0\\\",\\\"megaminx + chopasaurus\\\":\\\"d f 0.61803398875 v 0\\\",\\\"starminx combo\\\":\\\"d f 0.23606797749979 v 0.937962370425399\\\"}});function Hl(e){let t=new O(0,0,0,0);for(let r=0;r<e.length;r++)t=t.sum(e[r]);return t.smul(1/e.length)}function Rf(e,t,r,n){let o=n[e].intersect3(n[t],n[r]);if(!o)return o;for(let l=0;l<n.length;l++)if(l!==e&&l!==t&&l!==r){let i=n[l].b*o.b+n[l].c*o.c+n[l].d*o.d;if(n[l].a>0&&i>n[l].a||n[l].a<0&&i<n[l].a)return!1}return o}var O,Yl=U(()=>{O=class{constructor(t,r,n,o){this.a=t;this.b=r;this.c=n;this.d=o}mul(t){return new O(this.a*t.a-this.b*t.b-this.c*t.c-this.d*t.d,this.a*t.b+this.b*t.a+this.c*t.d-this.d*t.c,this.a*t.c-this.b*t.d+this.c*t.a+this.d*t.b,this.a*t.d+this.b*t.c-this.c*t.b+this.d*t.a)}toString(){return`Q[${this.a},${this.b},${this.c},${this.d}]`}dist(t){return Math.hypot(this.a-t.a,this.b-t.b,this.c-t.c,this.d-t.d)}len(){return Math.hypot(this.a,this.b,this.c,this.d)}cross(t){return new O(0,this.c*t.d-this.d*t.c,this.d*t.b-this.b*t.d,this.b*t.c-this.c*t.b)}dot(t){return this.b*t.b+this.c*t.c+this.d*t.d}normalize(){let t=Math.sqrt(this.dot(this));return new O(this.a/t,this.b/t,this.c/t,this.d/t)}makenormal(){return new O(0,this.b,this.c,this.d).normalize()}normalizeplane(){let t=Math.hypot(this.b,this.c,this.d);return new O(this.a/t,this.b/t,this.c/t,this.d/t)}smul(t){return new O(this.a*t,this.b*t,this.c*t,this.d*t)}sum(t){return new O(this.a+t.a,this.b+t.b,this.c+t.c,this.d+t.d)}sub(t){return new O(this.a-t.a,this.b-t.b,this.c-t.c,this.d-t.d)}angle(){return 2*Math.acos(this.a)}invrot(){return new O(this.a,-this.b,-this.c,-this.d)}det3x3(t,r,n,o,l,i,a,s,f){return t*(l*f-i*s)+r*(i*a-o*f)+n*(o*s-l*a)}rotateplane(t){let r=t.mul(new O(0,this.b,this.c,this.d)).mul(t.invrot());return r.a=this.a,r}orthogonal(){let t=Math.abs(this.b),r=Math.abs(this.c),n=Math.abs(this.d);return t<r&&t<n?this.cross(new O(0,1,0,0)).normalize():r<t&&r<n?this.cross(new O(0,0,1,0)).normalize():this.cross(new O(0,0,0,1)).normalize()}pointrotation(t){let r=this.normalize();if(t=t.normalize(),r.sub(t).len()<1e-9)return new O(1,0,0,0);let n=r.sum(t);n.len()<1e-9?n=n.orthogonal():n=n.normalize();let o=r.cross(n);return o.a=r.dot(n),o}unproject(t){return this.sum(t.smul(-this.dot(t)/(this.len()*t.len())))}rotatepoint(t){return t.mul(this).mul(t.invrot())}rotateface(t){return t.map(r=>r.rotatepoint(this))}intersect3(t,r){let n=this.det3x3(this.b,this.c,this.d,t.b,t.c,t.d,r.b,r.c,r.d);return Math.abs(n)<1e-9?!1:new O(0,this.det3x3(this.a,this.c,this.d,t.a,t.c,t.d,r.a,r.c,r.d)/n,this.det3x3(this.b,this.a,this.d,t.b,t.a,t.d,r.b,r.a,r.d)/n,this.det3x3(this.b,this.c,this.a,t.b,t.c,t.a,r.b,r.c,r.a)/n)}side(t){return t>1e-9?1:t<-1e-9?-1:0}cutface(t){let r=this.a,n=0,o=null;for(let l=0;l<t.length;l++)n|=1<<this.side(t[l].dot(this)-r)+1;if((n&5)===5){o=[];let l=t.map(i=>this.side(i.dot(this)-r));for(let i=-1;i<=1;i+=2){let a=[];for(let s=0;s<t.length;s++){(l[s]===i||l[s]===0)&&a.push(t[s]);let f=(s+1)%t.length;if(l[s]+l[f]===0&&l[s]!==0){let g=t[s].dot(this)-r,p=t[f].dot(this)-r,u=g/(g-p),c=t[s].smul(1-u).sum(t[f].smul(u));a.push(c)}}o.push(a)}}return o}cutfaces(t){let r=[];for(let n=0;n<t.length;n++){let o=t[n],l=this.cutface(o);l?(r.push(l[0]),r.push(l[1])):r.push(o)}return r}faceside(t){let r=this.a;for(let n=0;n<t.length;n++){let o=this.side(t[n].dot(this)-r);if(o!==0)return o}throw new Error(\\\"Could not determine side of plane in faceside\\\")}sameplane(t){let r=this.normalize(),n=t.normalize();return r.dist(n)<1e-9||r.dist(n.smul(-1))<1e-9}makecut(t){return new O(t,this.b,this.c,this.d)}}});function df(){let e=Math.sqrt(.5);return[new O(e,e,0,0),new O(e,0,e,0)]}function hf(){return[new O(.5,.5,.5,.5),new O(.5,.5,.5,-.5)]}function Ff(){let e=2*Math.PI/10,t=.5+.3*Math.sqrt(5),r=.5+.1*Math.sqrt(5),n=Math.sqrt(t*t+r*r);return t/=n,r/=n,[new O(Math.cos(e),t*Math.sin(e),r*Math.sin(e),0),new O(.5,.5,.5,.5)]}function Df(){let e=.16666666666666666+Math.sqrt(5)/6,t=2/3+Math.sqrt(5)/3,r=Math.sqrt(e*e+t*t);e/=r,t/=r;let n=2*Math.PI/6;return[new O(Math.cos(n),e*Math.sin(n),t*Math.sin(n),0),new O(Math.cos(n),-e*Math.sin(n),t*Math.sin(n),0)]}function Af(){let e=Math.sqrt(.5);return[new O(.5,.5,.5,.5),new O(e,0,0,e)]}function yf(e){let t=[new O(1,0,0,0)];for(let r=0;r<t.length;r++)for(let n=0;n<e.length;n++){let o=e[n].mul(t[r]),l=o.smul(-1),i=!1;for(let a=0;a<t.length;a++)if(o.dist(t[a])<Jl||l.dist(t[a])<Jl){i=!0;break}i||t.push(o)}return t}function na(e,t){let r=[],n=[];for(let o=0;o<t.length;o++){let l=e.rotateplane(t[o]),i=!1;for(let a=0;a<r.length;a++)if(l.dist(r[a])<Jl){i=!0;break}i||(r.push(l),n.push(t[o]))}return n}function oa(e){let t=[];for(let r=1;r<e.length;r++)for(let n=r+1;n<e.length;n++){let o=Rf(0,r,n,e);if(o){let l=!1;for(let i=0;i<t.length;i++)if(o.dist(t[i])<Jl){l=!0;break}l||t.push(o)}}for(;;){let r=!1;for(let n=0;n<t.length;n++){let o=(n+1)%t.length;if(e[0].dot(t[n].cross(t[o]))<0){let l=t[n];t[n]=t[o],t[o]=l,r=!0}}if(!r)break}return t}var Jl,Uf=U(()=>{Yl();Jl=1e-9});function Zl(e,t){let r=e[0].p.length,n=pf(r),o=[],l=[],i=[],a=[],s=[];function f(c){for(let m=c.p.length-1;m>=0;m--){let L=c.p[m];if(L!==m){if(!o[m][L])return!1;c=c.mul(l[m][L])}}return!0}function g(c,m,L){a[c].push(m),s[c].push(L);for(let R=0;R<o[c].length;R++)o[c][R]&&p(c,o[c][R].mul(m),L+i[c][R])}function p(c,m,L){let R=m.p[c];if(!o[c][R]){o[c][R]=m,l[c][R]=m.inv(),i[c][R]=L;for(let y=0;y<a[c].length;y++)p(c,m.mul(a[c][y]),L+s[c][y]);return}let h=m.mul(l[c][R]);f(h)||g(c-1,h,L+i[c][R])}function u(){o=[],l=[],a=[],i=[],s=[];for(let L=0;L<r;L++)o.push([]),l.push([]),i.push([]),a.push([]),s.push([]),o[L][L]=n,l[L][L]=n,i[L][L]=0;let c=0,m=1;for(let L=0;L<e.length;L++){g(r-1,e[L],1),m=1;let R=0,h=0,y=[],A=new bf;for(let E=0;E<r;E++){let v=0,K=0;for(let M=0;M<r;M++)o[E][M]&&(v++,K+=i[E][M],E!==M&&c++);R+=a[E].length,m*=v,v>1&&A.multiply(v);let Z=K/v;y.push(Z),h+=Z}t(`${L}: sz ${m} T ${R} sol ${h} none ${c} mults ${A.toString()}`)}return m}return u()}var bf,la=U(()=>{ql();bf=class{constructor(){this.mult=[]}multiply(t){for(let r=2;r*r<=t;r++)for(;t%r===0;)this.mult[r]!==void 0?this.mult[r]++:this.mult[r]=1,t/=r;t>1&&(this.mult[t]!==void 0?this.mult[t]++:this.mult[t]=1)}toString(){let t=\\\"\\\";for(let r=0;r<this.mult.length;r++)this.mult[r]!==void 0&&(t!==\\\"\\\"&&(t+=\\\"*\\\"),t+=r,this.mult[r]>1&&(t+=`^${this.mult[r]}`));return t}}});function Im(e,t){let r=[];for(let n of e)for(let o of t)r.push(o.rotate(n));return r}function Qm(){return{4:[[\\\"F\\\",\\\"D\\\",\\\"L\\\",\\\"R\\\"]],6:[[\\\"F\\\",\\\"D\\\",\\\"L\\\",\\\"U\\\",\\\"R\\\"],[\\\"R\\\",\\\"F\\\",\\\"\\\",\\\"B\\\",\\\"\\\"]],8:[[\\\"F\\\",\\\"D\\\",\\\"L\\\",\\\"R\\\"],[\\\"D\\\",\\\"F\\\",\\\"BR\\\",\\\"\\\"],[\\\"BR\\\",\\\"D\\\",\\\"\\\",\\\"BB\\\"],[\\\"BB\\\",\\\"BR\\\",\\\"U\\\",\\\"BL\\\"]],12:[[\\\"U\\\",\\\"F\\\",\\\"\\\",\\\"\\\",\\\"\\\",\\\"\\\"],[\\\"F\\\",\\\"U\\\",\\\"R\\\",\\\"C\\\",\\\"A\\\",\\\"L\\\"],[\\\"R\\\",\\\"F\\\",\\\"\\\",\\\"\\\",\\\"E\\\",\\\"\\\"],[\\\"E\\\",\\\"R\\\",\\\"\\\",\\\"BF\\\",\\\"\\\",\\\"\\\"],[\\\"BF\\\",\\\"E\\\",\\\"BR\\\",\\\"BL\\\",\\\"I\\\",\\\"D\\\"]],20:[[\\\"R\\\",\\\"C\\\",\\\"F\\\",\\\"E\\\"],[\\\"F\\\",\\\"R\\\",\\\"L\\\",\\\"U\\\"],[\\\"L\\\",\\\"F\\\",\\\"A\\\",\\\"\\\"],[\\\"E\\\",\\\"R\\\",\\\"G\\\",\\\"I\\\"],[\\\"I\\\",\\\"E\\\",\\\"S\\\",\\\"H\\\"],[\\\"S\\\",\\\"I\\\",\\\"J\\\",\\\"B\\\"],[\\\"B\\\",\\\"S\\\",\\\"K\\\",\\\"D\\\"],[\\\"K\\\",\\\"B\\\",\\\"M\\\",\\\"O\\\"],[\\\"O\\\",\\\"K\\\",\\\"P\\\",\\\"N\\\"],[\\\"P\\\",\\\"O\\\",\\\"Q\\\",\\\"\\\"]]}}function jm(){return{4:{F:\\\"#00ff00\\\",D:\\\"#ffff00\\\",L:\\\"#ff0000\\\",R:\\\"#0000ff\\\"},6:{U:\\\"#ffffff\\\",F:\\\"#00ff00\\\",R:\\\"#ff0000\\\",D:\\\"#ffff00\\\",B:\\\"#0000ff\\\",L:\\\"#ff8000\\\"},8:{U:\\\"#ffffff\\\",F:\\\"#ff0000\\\",R:\\\"#00bb00\\\",D:\\\"#ffff00\\\",BB:\\\"#1122ff\\\",L:\\\"#9524c5\\\",BL:\\\"#ff8800\\\",BR:\\\"#aaaaaa\\\"},12:{U:\\\"#ffffff\\\",F:\\\"#006633\\\",R:\\\"#ff0000\\\",C:\\\"#ffffd0\\\",A:\\\"#3399ff\\\",L:\\\"#660099\\\",E:\\\"#ff66cc\\\",BF:\\\"#99ff00\\\",BR:\\\"#0000ff\\\",BL:\\\"#ffff00\\\",I:\\\"#ff6633\\\",D:\\\"#999999\\\"},20:{R:\\\"#db69f0\\\",C:\\\"#178fde\\\",F:\\\"#23238b\\\",E:\\\"#9cc726\\\",L:\\\"#2c212d\\\",U:\\\"#177fa7\\\",A:\\\"#e0de7f\\\",G:\\\"#2b57c0\\\",I:\\\"#41126b\\\",S:\\\"#4b8c28\\\",H:\\\"#7c098d\\\",J:\\\"#7fe7b4\\\",B:\\\"#85fb74\\\",K:\\\"#3f4bc3\\\",D:\\\"#0ff555\\\",M:\\\"#f1c2c8\\\",O:\\\"#58d340\\\",P:\\\"#c514f2\\\",N:\\\"#14494e\\\",Q:\\\"#8b1be1\\\"}}}function qm(){return{4:[\\\"F\\\",\\\"D\\\",\\\"L\\\",\\\"R\\\"],6:[\\\"U\\\",\\\"D\\\",\\\"F\\\",\\\"B\\\",\\\"L\\\",\\\"R\\\"],8:[\\\"F\\\",\\\"BB\\\",\\\"D\\\",\\\"U\\\",\\\"BR\\\",\\\"L\\\",\\\"R\\\",\\\"BL\\\"],12:[\\\"L\\\",\\\"E\\\",\\\"F\\\",\\\"BF\\\",\\\"R\\\",\\\"I\\\",\\\"U\\\",\\\"D\\\",\\\"BR\\\",\\\"A\\\",\\\"BL\\\",\\\"C\\\"],20:[\\\"L\\\",\\\"S\\\",\\\"E\\\",\\\"O\\\",\\\"F\\\",\\\"B\\\",\\\"I\\\",\\\"P\\\",\\\"R\\\",\\\"K\\\",\\\"U\\\",\\\"D\\\",\\\"J\\\",\\\"A\\\",\\\"Q\\\",\\\"H\\\",\\\"G\\\",\\\"N\\\",\\\"M\\\",\\\"C\\\"]}}function Vm(){return{4:[[\\\"FLR\\\",[0,1,0]],[\\\"F\\\",[0,0,1]]],6:[[\\\"U\\\",[0,1,0]],[\\\"F\\\",[0,0,1]]],8:[[\\\"U\\\",[0,1,0]],[\\\"F\\\",[0,0,1]]],12:[[\\\"U\\\",[0,1,0]],[\\\"F\\\",[0,0,1]]],20:[[\\\"GUQMJ\\\",[0,1,0]],[\\\"F\\\",[0,0,1]]]}}function Xl(e,t){for(let r=0;r<e.length;r++)if(e[r][0].dist(t)<Ee)return r;throw new Error(\\\"Element not found\\\")}function xf(){return Vl}function Sf(e){return Vl[e]}function Go(e){let t=e.split(/ /).filter(Boolean);if(t.length%2===0)return null;let r=t[0];if(r!==\\\"o\\\"&&r!==\\\"c\\\"&&r!==\\\"i\\\"&&r!==\\\"d\\\"&&r!==\\\"t\\\")return null;let n=[];for(let o=1;o<t.length;o+=2){if(t[o]!==\\\"f\\\"&&t[o]!==\\\"v\\\"&&t[o]!==\\\"e\\\")return null;n.push({cutType:t[o],distance:parseFloat(t[o+1])})}return{shape:r,cuts:n}}function aa(e,t={}){let r=Go(e);if(r===null)throw new Error(\\\"Could not parse the puzzle description\\\");let n=new ei(r,Object.assign({},{allMoves:!0},t));return n.allstickers(),n.genperms(),n}function Pn(e,t){return aa(Vl[e],t)}function Hm(e,t,r){let n=!1;r-t[1]<t[0]&&(e=[e[2],e[3],e[0],e[1]],t=[r-t[1],r-t[0]],n=!0);let o=e[0],l=\\\"\\\";if(t[0]===0&&t[1]===r)o=o+\\\"v\\\";else if(t[0]===t[1])t[1]>0&&(l=String(t[1]+1));else if(t[0]===0)o=o.toLowerCase(),t[1]>1&&(l=String(t[1]+1));else throw`We only support slice and outer block moves right now. ${t}`;return[l+o,n]}function Ym(e,t){let r=[],n=0;for(;n<e.length;){n>0&&n<e.length&&e[n]===\\\"_\\\"&&n++;let o=\\\"\\\";for(let l of t)e.substr(n).startsWith(l[1])&&l[1].length>o.length&&(o=l[1]);if(o!==\\\"\\\")r.push(o),n+=o.length;else throw new Error(\\\"Could not split \\\"+e+\\\" into face names.\\\")}return r}function $l(e,t){return[e.b/t,-e.c/t,e.d/t]}function ia(e,t){let r=[],n=e.length;for(let o=0;o<n;o++){let l=$l(e.get(n-o-1),t);r[3*o]=l[0],r[3*o+1]=l[1],r[3*o+2]=l[2]}return r}var Cn,Io,Ee,Wm,Km,ei,Qr,jl=U(()=>{Le();Y2();H0();J0();ql();Lf();Bf();Uf();Yl();la();Cn=class{constructor(t){this.coords=new Array(t.length*3);for(let r=0;r<t.length;r++)this.coords[3*r]=t[r].b,this.coords[3*r+1]=t[r].c,this.coords[3*r+2]=t[r].d;this.length=t.length}get(t){return new O(0,this.coords[3*t],this.coords[3*t+1],this.coords[3*t+2])}centermass(){let t=0,r=0,n=0;for(let o=0;o<this.length;o++)t+=this.coords[3*o],r+=this.coords[3*o+1],n+=this.coords[3*o+2];return new O(0,t/this.length,r/this.length,n/this.length)}rotate(t){let r=[];for(let n=0;n<this.length;n++)r.push(this.get(n).rotatepoint(t));return new Cn(r)}rotateforward(){let t=[];for(let r=1;r<this.length;r++)t.push(this.get(r));return t.push(this.get(0)),new Cn(t)}},Io=class{constructor(t,r,n){this.face=t;this.left=r;this.right=n}split(t){let r=t.cutface(this.face);return r!==null&&(this.left===void 0?(this.left=new Io(r[0]),this.right=new Io(r[1])):(this.left=this.left?.split(t),this.right=this.right?.split(t))),this}collect(t,r){return this.left===void 0?t.push(new Cn(this.face)):r?(this.left?.collect(t,!1),this.right?.collect(t,!0)):(this.right?.collect(t,!1),this.left?.collect(t,!0)),t}};Ee=1e-9,Wm=\\\"PuzzleGeometry 0.1 Copyright 2018 Tomas Rokicki.\\\",Km=!1;ei=class{constructor(t,r){this.puzzleDescription=t;this.cmovesbyslice=[];this.duplicatedFaces=[];this.duplicatedCubies=[];this.fixedCubie=-1;this.net=[];this.colors=[];this.faceorder=[];this.faceprecedence=[];this.notationMapper=new kn;this.addNotationMapper=\\\"\\\";this.setReidOrder=!1;let n=\\\"genperms\\\";this.options=new Y0(r),this.options.verbosity>0&&console.log(this.header(\\\"# \\\")),this.create(t)}create(t){let{shape:r,cuts:n}=t;this.moveplanes=[],this.moveplanes2=[],this.faces=[],this.cubies=[];let o=null;switch(r){case\\\"c\\\":o=df();break;case\\\"o\\\":o=Af();break;case\\\"i\\\":o=Df();break;case\\\"t\\\":o=hf();break;case\\\"d\\\":o=Ff();break;default:throw new Error(\\\"Bad shape argument: \\\"+r)}this.rotations=yf(o),this.options.verbosity&&console.log(\\\"# Rotations: \\\"+this.rotations.length);let l=o[0];this.baseplanerot=na(l,this.rotations);let i=this.baseplanerot.map(D=>l.rotateplane(D));this.baseplanes=i,this.baseFaceCount=i.length;let a=Qm()[i.length];this.net=a,this.colors=jm()[i.length],this.faceorder=qm()[i.length],this.options.verbosity>0&&console.log(\\\"# Base planes: \\\"+i.length);let s=oa(i),f=new O(0,0,0,0);this.options.verbosity>0&&console.log(\\\"# Face vertices: \\\"+s.length);let g=i[0].makenormal(),p=s[0].sum(s[1]).makenormal(),u=s[0].makenormal(),c=new O(1,g.b,g.c,g.d);this.options.verbosity>0&&console.log(\\\"# Boundary is \\\"+c);let L=na(c,this.rotations).map(D=>c.rotateplane(D)),R=oa(L);this.edgedistance=R[0].sum(R[1]).smul(.5).dist(f),this.vertexdistance=R[0].dist(f);let h=[],y=[],A=!1,E=!1,v=!1;for(let D of n){let w=null,T=0;switch(D.cutType){case\\\"f\\\":w=g,T=1,A=!0;break;case\\\"v\\\":w=u,T=this.vertexdistance,v=!0;break;case\\\"e\\\":w=p,T=this.edgedistance,E=!0;break;default:throw new Error(\\\"Bad cut argument: \\\"+D.cutType)}h.push(w.makecut(D.distance)),y.push(D.distance<T)}this.options.addRotations&&(A||h.push(g.makecut(10)),v||h.push(u.makecut(10)),E||h.push(p.makecut(10))),this.basefaces=[];for(let D of this.baseplanerot){let w=D.rotateface(R);this.basefaces.push(new Cn(w))}let K=[],Z=[],M=[],ne=[],b=R.length;function _(D,w,T){for(let W of D)if(W[0].dist(w)<Ee){W.push(T);return}D.push([w,T])}for(let D=0;D<this.baseplanerot.length;D++){let w=this.baseplanerot[D].rotateface(R);for(let T=0;T<w.length;T++){let W=(T+1)%w.length,oe=w[T].sum(w[W]).smul(.5);_(ne,oe,D)}}let P=[];for(let D=0;D<this.baseplanerot.length;D++){let w=this.baseplanerot[D].rotateface(R),T=[];for(let W=0;W<w.length;W++){let oe=(W+1)%w.length,He=w[W].sum(w[oe]).smul(.5),ut=ne[Xl(ne,He)];if(D===ut[1])T.push(ut[2]);else if(D===ut[2])T.push(ut[1]);else throw new Error(\\\"Could not find edge\\\")}P.push(T)}let x={},S=[];S.push(a[0][0]),x[a[0][0]]=0,S[P[0][0]]=a[0][1],x[a[0][1]]=P[0][0];for(let D of a){let w=D[0],T=x[w];if(T===void 0)throw new Error(\\\"Bad edge description; first edge not connected\\\");let W=-1;for(let oe=0;oe<P[T].length;oe++){let He=S[P[T][oe]];if(He!==void 0&&He===D[1]){W=oe;break}}if(W<0)throw new Error(\\\"First element of a net not known\\\");for(let oe=2;oe<D.length;oe++){if(D[oe]===\\\"\\\")continue;let He=P[T][(oe+W-1)%b],ut=S[He];if(ut!==void 0&&ut!==D[oe])throw new Error(\\\"Face mismatch in net\\\");S[He]=D[oe],x[D[oe]]=He}}for(let D=0;D<S.length;D++){let w=!1;for(let T=0;T<this.faceorder.length;T++)if(S[D]===this.faceorder[T]){this.faceprecedence[D]=T,w=!0;break}if(!w)throw new Error(\\\"Could not find face \\\"+S[D]+\\\" in face order list \\\"+this.faceorder)}for(let D=0;D<this.baseplanerot.length;D++){let w=this.baseplanerot[D].rotateface(R),T=c.rotateplane(this.baseplanerot[D]),W=S[D];K.push([w,W]),Z.push([T,W])}for(let D=0;D<this.baseplanerot.length;D++){let w=this.baseplanerot[D].rotateface(R),T=S[D];for(let W=0;W<w.length;W++){let oe=(W+1)%w.length,He=w[W].sum(w[oe]).smul(.5),ut=(W+2)%w.length,Kc=w[oe].sum(w[ut]).smul(.5),Qc=Xl(ne,He),jc=Xl(ne,Kc);_(M,w[oe],[T,jc,Qc])}}this.swizzler=new Mo(K.map(D=>D[1]));let z=this.swizzler.prefixFree?\\\"\\\":\\\"_\\\";for(let D=0;D<ne.length;D++){if(ne[D].length!==3)throw new Error(\\\"Bad length in edge names \\\"+ne[D]);let w=S[ne[D][1]],T=S[ne[D][2]];this.faceprecedence[ne[D][1]]<this.faceprecedence[ne[D][2]]?w=w+z+T:w=T+z+w,ne[D]=[ne[D][0],w]}for(let D=0;D<M.length;D++){if(M[D].length<4)throw new Error(\\\"Bad length in vertex names\\\");let w=1;for(let W=2;W<M[D].length;W++)this.faceprecedence[x[M[D][W][0]]]<this.faceprecedence[x[M[D][w][0]]]&&(w=W);let T=\\\"\\\";for(let W=1;W<M[D].length;W++){W===1?T=M[D][w][0]:T=T+z+M[D][w][0];for(let oe=1;oe<M[D].length;oe++)if(M[D][w][1]===M[D][oe][2]){w=oe;break}}M[D]=[M[D][0],T]}this.options.verbosity>1&&(console.log(\\\"# Face precedence list: \\\"+this.faceorder.join(\\\" \\\")),console.log(\\\"# Face names: \\\"+K.map(D=>D[1]).join(\\\" \\\")),console.log(\\\"# Edge names: \\\"+ne.map(D=>D[1]).join(\\\" \\\")),console.log(\\\"# Vertex names: \\\"+M.map(D=>D[1]).join(\\\" \\\")));let Q=[];for(let D of Z)Q.push([D[0].makenormal(),D[1],\\\"f\\\"]);for(let D of ne)Q.push([D[0].makenormal(),D[1],\\\"e\\\"]);for(let D of M)Q.push([D[0].makenormal(),D[1],\\\"v\\\"]);this.facenames=K,this.faceplanes=Z,this.edgenames=ne,this.vertexnames=M,this.geonormals=Q;let H=Q.map(D=>D[1]);this.swizzler.setGripNames(H),this.options.verbosity>0&&console.log(\\\"# Distances: face \\\"+1+\\\" edge \\\"+this.edgedistance+\\\" vertex \\\"+this.vertexdistance);for(let D=0;D<h.length;D++)for(let w of this.rotations){let T=h[D].rotateplane(w),W=!1;for(let oe of this.moveplanes)if(T.sameplane(oe)){W=!0;break}W||(this.moveplanes.push(T),y[D]&&this.moveplanes2.push(T))}let ce=new Io(R),Re=this.moveplanes2.slice(),Ue=31;for(let D=0;D<Re.length;D++){let w=D+Math.floor((Re.length-D)*(Ue/65536));ce=ce.split(Re[w]),Re[w]=Re[D],Ue=(Ue*1657+101)%65536}let ve=ce.collect([],!0);this.faces=ve,this.options.verbosity>0&&console.log(\\\"# Faces is now \\\"+ve.length),this.stickersperface=ve.length;let zt=[],Oe=Hl(R);for(let D of this.rotations){let w=D.rotateface(R);Oe.dist(Hl(w))<Ee&&zt.push(D)}let nt=new Array(ve.length),ze=[];for(let D=0;D<ve.length;D++){let w=ve[D].centermass();ze.push([Oe.dist(w),w,D])}ze.sort((D,w)=>D[0]-w[0]);for(let D=0;D<ve.length;D++){let w=ze[D][2];if(!nt[w]){nt[w]=!0;for(let T of zt){let W=ve[w].rotate(T),oe=W.centermass();for(let He=D+1;He<ve.length&&!(ze[He][0]-ze[D][0]>Ee);He++){let ut=ze[He][2];if(!nt[ut]&&oe.dist(ze[He][1])<Ee){nt[ut]=!0,ve[ut]=W;break}}}}}this.shortedge=1e99;for(let D of ve)for(let w=0;w<D.length;w++){let T=(w+1)%D.length,W=D.get(w).dist(D.get(T));W<this.shortedge&&(this.shortedge=W)}this.options.verbosity>0&&console.log(\\\"# Short edge is \\\"+this.shortedge),r===\\\"c\\\"&&A&&!E&&!v&&(this.addNotationMapper=\\\"NxNxNCubeMapper\\\",this.setReidOrder=!0),r===\\\"c\\\"&&v&&!A&&!E&&(this.addNotationMapper=\\\"SkewbMapper\\\"),r===\\\"t\\\"&&(v||A)&&!E&&(this.addNotationMapper=\\\"PyraminxOrTetraminxMapper\\\"),r===\\\"o\\\"&&A&&(this.notationMapper=new No(this.swizzler,new Mo([\\\"F\\\",\\\"D\\\",\\\"L\\\",\\\"BL\\\",\\\"R\\\",\\\"U\\\",\\\"BR\\\",\\\"B\\\"])),!E&&!v&&(this.addNotationMapper=\\\"FTOMapper\\\")),r===\\\"d\\\"&&A&&(this.addNotationMapper=\\\"MegaminxMapper\\\",this.notationMapper=new No(this.swizzler,new Mo([\\\"U\\\",\\\"F\\\",\\\"L\\\",\\\"BL\\\",\\\"BR\\\",\\\"R\\\",\\\"FR\\\",\\\"FL\\\",\\\"DL\\\",\\\"B\\\",\\\"DR\\\",\\\"D\\\"])))}keyface(t){return this.keyface2(t.centermass())}keyface2(t){let r=\\\"\\\",n=String.fromCharCode;for(let o of this.moveplanesets)if(o.length>0){let l=t.dot(o[0]),i=0,a=1;for(;a*2<=o.length;)a*=2;for(;a>0;a>>=1)i+a<=o.length&&l>o[i+a-1].a&&(i+=a);if(i<47)r=r+n(33+i);else if(i<47+47*47)r=r+n(33+47+Math.floor(i/47)-1)+n(33+i%47);else if(i<47+47*47+47*47*47)r=r+n(33+47+Math.floor((i-47)/(47*47)-1))+n(33+47+Math.floor((i-47)/47)%47)+n(33+i%47);else throw Error(\\\"Too many slices for cubie encoding\\\")}return r}keyface3(t){let r=t.centermass(),n=[];for(let o of this.moveplanesets)if(o.length>0){let l=r.dot(o[0]),i=0,a=1;for(;a*2<=o.length;)a*=2;for(;a>0;a>>=1)i+a<=o.length&&l>o[i+a-1].a&&(i+=a);n.push(i)}return n}findface(t){let r=this.keyface2(t),n=this.facelisthash.get(r);if(n.length===1)return n[0];for(let o=0;o+1<n.length;o++){let l=this.facelisthash.get(r)[o];if(Math.abs(t.dist(this.facecentermass[l]))<Ee)return l}return n[n.length-1]}project2d(t,r,n){let o=this.facenames[t][0],l=(r+1)%o.length,i=this.baseplanes[t],a=o[l].sub(o[r]),s=a.len();a=a.normalize();let f=a.cross(i).normalize(),g=n[1].sub(n[0]),p=g.len()/s;g=g.normalize();let u=g.b,c=g.c,m=a.smul(u).sub(f.smul(c)).smul(p),L=f.smul(u).sum(a.smul(c)).smul(p),R=new O(0,n[0].b-m.dot(o[r]),n[0].c-L.dot(o[r]),0);return[m,L,R]}allstickers(){let t=\\\"allstickers\\\";this.faces=Im(this.baseplanerot,this.faces),this.options.verbosity>0&&console.log(\\\"# Total stickers is now \\\"+this.faces.length),this.facecentermass=new Array(this.faces.length);for(let b=0;b<this.faces.length;b++)this.facecentermass[b]=this.faces[b].centermass();let r=[],n=[];for(let b of this.moveplanes){let _=b.makenormal(),P=!1;for(let x of n)_.sameplane(x.makenormal())&&(P=!0);P||(n.push(_),r.push([]))}for(let b of this.moveplanes2){let _=b.makenormal();for(let P=0;P<n.length;P++)if(_.sameplane(n[P])){r[P].push(b);break}}for(let b=0;b<r.length;b++){let _=r[b].map(x=>x.normalizeplane()),P=n[b];for(let x=0;x<_.length;x++)_[x].makenormal().dist(P)>Ee&&(_[x]=_[x].smul(-1));_.sort((x,S)=>x.a-S.a),r[b]=_}this.moveplanesets=r,this.moveplanenormals=n;let o=r.map(b=>b.length);this.options.verbosity>0&&console.log(\\\"# Move plane sets: \\\"+o);let l=[];for(let b=0;b<r.length;b++)l.push([]);for(let b of this.rotations){if(Math.abs(Math.abs(b.a)-1)<Ee)continue;let _=b.makenormal();for(let P=0;P<r.length;P++)if(_.sameplane(n[P])){l[P].push(b);break}}this.moverotations=l;for(let b=0;b<l.length;b++){let _=l[b],P=_[0].makenormal();for(let x=0;x<_.length;x++)P.dist(_[x].makenormal())>Ee&&(_[x]=_[x].smul(-1));_.sort((x,S)=>x.angle()-S.angle()),l[b][0].dot(n[b])<0&&_.reverse()}let i=l.map(b=>1+b.length);this.movesetorders=i;let a=[],s=\\\"?\\\";for(let b=0;b<r.length;b++){let _=n[b],P=null,x=null;for(let S of this.geonormals){let z=_.dot(S[0]);Math.abs(z-1)<Ee?(x=[S[1],S[2]],s=S[2]):Math.abs(z+1)<Ee&&(P=[S[1],S[2]],s=S[2])}if(x===null||P===null)throw new Error(\\\"Saw positive or negative sides as null\\\");a.push([x[0],x[1],P[0],P[1],1+r[b].length]),this.addNotationMapper===\\\"NxNxNCubeMapper\\\"&&s===\\\"f\\\"&&(this.notationMapper=new Wl(1+r[b].length),this.addNotationMapper=\\\"\\\"),this.addNotationMapper===\\\"SkewbMapper\\\"&&r[0].length===1&&(this.notationMapper=new Ql(this.swizzler),this.addNotationMapper=\\\"\\\"),this.addNotationMapper===\\\"PyraminxOrTetraminxMapper\\\"&&(r[0].length===2&&r[0][0].a===.333333333333333&&r[0][1].a===1.66666666666667?(this.notationMapper=new To(this.swizzler),this.addNotationMapper=\\\"\\\"):(this.notationMapper=new Kl(this.swizzler),this.addNotationMapper=\\\"\\\")),this.addNotationMapper===\\\"MegaminxMapper\\\"&&s===\\\"f\\\"&&(1+r[b].length===3&&(this.notationMapper=new Il(this.notationMapper)),this.addNotationMapper=\\\"\\\"),this.addNotationMapper===\\\"FTOMapper\\\"&&s===\\\"f\\\"&&(1+r[b].length===3&&(this.notationMapper=new Ol(this.notationMapper,this.swizzler)),this.addNotationMapper=\\\"\\\")}this.movesetgeos=a;let f=new Map,g=this.faces;for(let b=0;b<g.length;b++){let _=g[b],P=this.keyface(_);if(!f.get(P))f.set(P,[b]);else{let x=f.get(P);if(x.push(b),x.length===this.baseFaceCount){this.options.verbosity>0&&console.log(\\\"# Splitting core.\\\");for(let S=0;S<x.length;S++){let z=P+\\\" \\\"+S;f.set(z,[x[S]])}}}}this.facelisthash=f,this.options.verbosity>0&&console.log(\\\"# Cubies: \\\"+f.size);let p=[],u=[],c=[];for(let b of f.values())if(b.length!==this.baseFaceCount){if(b.length>1){let _=b.map(z=>g[z].centermass()),P=Hl(_);for(let z=0;b.length>2;z++){let Q=!1;for(let H=0;H<b.length;H++){let ce=(H+1)%b.length;if(P.dot(_[H].cross(_[ce]))<0){let Re=_[H];_[H]=_[ce],_[ce]=Re;let Ue=b[H];b[H]=b[ce],b[ce]=Ue,Q=!0}}if(!Q)break;if(z>1e3)throw new Error(\\\"Bad epsilon math; too close to border\\\")}let x=0,S=b[x];for(let z=1;z<b.length;z++){let Q=b[z];this.faceprecedence[this.getfaceindex(Q)]<this.faceprecedence[this.getfaceindex(S)]&&(x=z,S=Q)}if(x!==0){let z=b.slice();for(let Q=0;Q<b.length;Q++)b[Q]=z[(x+Q)%b.length]}}for(let _=0;_<b.length;_++){let P=b[_];u[P]=p.length,c[P]=_}p.push(b)}this.cubies=p,this.facetocubie=u,this.facetoord=c;let m=[\\\"?\\\",\\\"CENTERS\\\",\\\"EDGES\\\",\\\"CORNERS\\\",\\\"C4RNER\\\",\\\"C5RNER\\\"],L=[],R=[0,0,0,0,0,0],h=[],y=[],A=0,E=[],v=[],K=[],Z=[],M=b=>p[b].map(_=>this.getfaceindex(_)).join(\\\" \\\"),ne=[];for(let b=0;b<p.length;b++){if(y[b])continue;let _=p[b];if(_.length===0)continue;let P={},x=0;K.push(0),ne.push([]);let S=_.length,z=R[S]++,Q=m[S];(Q===void 0||S===this.baseFaceCount)&&(Q=\\\"CORE\\\"),Q=Q+(z===0?\\\"\\\":z+1),L[A]=Q,h[A]=S;let H=[b],ce=0;for(y[b]=!0;ce<H.length;){let Re=H[ce++],Ue=M(Re);if((_.length>1||P[Ue]===void 0)&&(P[Ue]=x++),Z[Re]=P[Ue],E[Re]=A,ne[A].push(Re),v[Re]=K[A]++,H.length<this.rotations.length){let ve=this.facecentermass[p[Re][0]];for(let zt of l){let Oe=this.facetocubie[this.findface(ve.rotatepoint(zt[0]))];y[Oe]||(H.push(Oe),y[Oe]=!0)}}}A++}if(this.setReidOrder&&4<=this.stickersperface&&this.stickersperface<=9){let b=[[\\\"UF\\\",\\\"UR\\\",\\\"UB\\\",\\\"UL\\\",\\\"DF\\\",\\\"DR\\\",\\\"DB\\\",\\\"DL\\\",\\\"FR\\\",\\\"FL\\\",\\\"BR\\\",\\\"BL\\\"],[\\\"UFR\\\",\\\"URB\\\",\\\"UBL\\\",\\\"ULF\\\",\\\"DRF\\\",\\\"DFL\\\",\\\"DLB\\\",\\\"DBR\\\"],[\\\"U\\\",\\\"L\\\",\\\"F\\\",\\\"R\\\",\\\"B\\\",\\\"D\\\"]],_={};for(let P of b)for(let x=0;x<P.length;x++){let S=0;for(let z=0;z<P[x].length;z++)S|=1<<P[x].charCodeAt(z)-65;_[S]=x}for(let P of ne)for(let x of P){let S=0;for(let z of p[x])S|=1<<this.facenames[this.getfaceindex(z)][1].charCodeAt(0)-65;v[x]=_[S]}}if(this.cubiesetnums=E,this.cubieordnums=v,this.cubiesetnames=L,this.cubieords=K,this.orbitoris=h,this.cubievaluemap=Z,this.cubiesetcubies=ne,this.options.fixedPieceType!==null){for(let b=0;b<p.length;b++)if(this.options.fixedPieceType===\\\"v\\\"&&p[b].length>2||this.options.fixedPieceType===\\\"e\\\"&&p[b].length===2||this.options.fixedPieceType===\\\"f\\\"&&p[b].length===1){this.fixedCubie=b;break}if(this.fixedCubie<0)throw new Error(\\\"Could not find a cubie of type \\\"+this.options.fixedPieceType+\\\" to fix.\\\")}this.options.verbosity>0&&console.log(\\\"# Cubie orbit sizes \\\"+K)}unswizzle(t){let r=this.notationMapper.notationToInternal(t);return r===null?null:r.modified({family:this.swizzler.unswizzle(r.family)})}stringToBlockMove(t){let r=RegExp(\\\"^(([0-9]+)-)?([0-9]+)?([^0-9]+)([0-9]+'?)?$\\\"),n=t.match(r);if(n===null)throw new Error(\\\"Bad move passed \\\"+t);let o=n[4],l,i;if(n[2]!==void 0){if(n[3]===void 0)throw new Error(\\\"Missing second number in range\\\");l=parseInt(n[2],10)}n[3]!==void 0&&(i=parseInt(n[3],10));let a=\\\"1\\\",s=1;return n[5]!==void 0&&(a=n[5],a[0]===\\\"'\\\"&&(a=\\\"-\\\"+a.substring(1)),s=parseInt(a,10)),new B(new C(o,i,l),s)}parseMove(t){let r=this.notationMapper.notationToInternal(t);if(r===null)throw new Error(\\\"Bad move \\\"+t.family);t=r;let n=t.family,o=!1;if(n.endsWith(\\\"v\\\")&&n[0]<=\\\"Z\\\"){if(t.innerLayer!==void 0||t.outerLayer!==void 0)throw new Error(\\\"Cannot use a prefix with full cube rotations\\\");n=n.slice(0,-1),o=!0}n.endsWith(\\\"w\\\")&&n[0]<=\\\"Z\\\"&&(n=n.slice(0,-1).toLowerCase());let l,i=-1,a=this.swizzler.unswizzle(n),s=!1;for(let p=0;p<this.movesetgeos.length;p++){let u=this.movesetgeos[p];a===u[0]&&(s=!0,l=u,i=p),a===u[2]&&(s=!1,l=u,i=p)}let f=1,g=1;if(n.toUpperCase()!==n&&(g=2),l===void 0)throw new Error(\\\"Bad grip in move \\\"+t.family);if(t.outerLayer!==void 0&&(f=t.outerLayer),t.innerLayer!==void 0&&(t.outerLayer===void 0?(g=t.innerLayer,n<=\\\"Z\\\"?f=g:f=1):g=t.innerLayer),f--,g--,o&&(f=0,g=this.moveplanesets[i].length),f<0||f>this.moveplanesets[i].length||g<0||g>this.moveplanesets[i].length)throw new Error(\\\"Bad slice spec \\\"+f+\\\" \\\"+g+\\\" vs \\\"+this.moveplanesets[i].length);if(!Km&&f===0&&g===this.moveplanesets[i].length&&!o)throw new Error(\\\"! full puzzle rotations must be specified with v suffix.\\\");return[void 0,i,f,g,s,t.amount]}parsemove(t){let r=this.parseMove(this.stringToBlockMove(t));return r[0]=t,r}genperms(){let t=\\\"genperms\\\";if(this.cmovesbyslice.length>0)return;let r=[];if(this.options.orientCenters){for(let n=0;n<this.cubies.length;n++)if(this.cubies[n].length===1){let o=this.cubies[n][0],l=this.getfaceindex(o);if(this.basefaces[l].centermass().dist(this.facecentermass[o])<Ee){let i=this.basefaces[l].length;for(let a=1;a<i;a++)this.cubies[n].push(this.cubies[n][a-1]);this.duplicatedFaces[o]=i,this.duplicatedCubies[n]=i,this.orbitoris[this.cubiesetnums[n]]=i}}}for(let n=0;n<this.moveplanesets.length;n++){let o=this.moveplanesets[n],l=[],i=[o.length+1,0],a=1;for(;a*2<=o.length;)a*=2;for(let g=0;g<this.faces.length;g++){let p=0;if(o.length>0){let u=this.facecentermass[g].dot(o[0]);for(let c=a;c>0;c>>=1)p+c<=o.length&&u>o[p+c-1].a&&(p+=c);p=o.length-p}for(l.push(p);i.length<=p;)i.push(0);i[p]++}let s=new Array(i.length);for(let g=0;g<i.length;g++)s[g]=[];let f=[];for(let g=0;g<this.faces.length;g++){if(l[g]<0)continue;let p=[this.facetocubie[g],this.facetoord[g]],u=this.facecentermass[g],c=u,m=g,L=l[m];for(;;){l[m]=-1;let R=u.rotatepoint(this.moverotations[n][0]);if(R.dist(c)<Ee)break;m=this.findface(R),p.push(this.facetocubie[m],this.facetoord[m]),u=R}if(p.length>2&&this.options.orientCenters&&(this.cubies[p[0]].length===1||this.duplicatedCubies[p[0]]>1)&&this.facecentermass[g].dist(this.basefaces[this.getfaceindex(g)].centermass())<Ee){let R=this.faces[this.cubies[p[0]][0]];for(let h=0;h<p.length;h+=2){let y=this.faces[this.cubies[p[h]][0]],A=-1;for(let E=0;E<R.length;E++)if(y.get(E).dist(R.get(0))<Ee){A=E;break}if(A<0)throw new Error(\\\"Couldn't find rotation of center faces; ignoring for now.\\\");p[h+1]=A,R=R.rotate(this.moverotations[n][0])}}if(p.length===2&&this.options.orientCenters)for(let R=1;R<this.movesetorders[n];R++)L===0?p.push(p[0],R):p.push(p[0],(this.movesetorders[n]-R)%this.movesetorders[n]);if(p.length>2&&!f[p[0]]){if(p.length!==2*this.movesetorders[n])throw new Error(\\\"Bad length in perm gen\\\");for(let R of p)s[L].push(R)}for(let R=0;R<p.length;R+=2)f[p[R]]=!0}for(let g=0;g<s.length;g++)s[g]=s[g].slice();r.push(s)}if(this.cmovesbyslice=r,this.options.moveList){let n=[];for(let o of this.options.moveList)n.push(this.parsemove(o));this.parsedmovelist=n}this.facelisthash.clear(),this.facecentermass=[]}getboundarygeometry(){return{baseplanes:this.baseplanes,facenames:this.facenames,faceplanes:this.faceplanes,vertexnames:this.vertexnames,edgenames:this.edgenames,geonormals:this.geonormals}}getmovesets(t){let r=this.moveplanesets[t].length,n=[];if(this.parsedmovelist!==void 0)for(let o of this.parsedmovelist)o[1]===t&&(o[4]?n.push([o[2],o[3]]):n.push([r-o[3],r-o[2]]),n.push(o[5]));else if(this.options.vertexMoves&&!this.options.allMoves){let o=this.movesetgeos[t];if(o[1]!==o[3])for(let l=0;l<r;l++)o[1]!==\\\"v\\\"?(this.options.outerBlockMoves?n.push([l+1,r]):n.push([l+1]),n.push(1)):(this.options.outerBlockMoves?n.push([0,l]):n.push([l,l]),n.push(1))}else for(let o=0;o<=r;o++)!this.options.allMoves&&o+o===r||(this.options.outerBlockMoves?o+o>r?n.push([o,r]):n.push([0,o]):n.push([o,o]),n.push(1));if(this.fixedCubie>=0){let o=this.keyface3(this.faces[this.cubies[this.fixedCubie][0]])[t],l=[];for(let i=0;i<n.length;i+=2){let a=n[i];if(o>=a[0]&&o<=a[1])if(a[0]===0)a=[a[1]+1,r];else if(r===a[1])a=[0,a[0]-1];else throw Error(\\\"fixed cubie option would disconnect move\\\");let s=!1;for(let f=0;f<l.length;f+=2)if(l[f][0]===a[0]&&l[f][1]===a[1]&&l[f+1]===n[i+1]){s=!0;break}s||(l.push(a),l.push(n[i+1]))}n=l}return n}graybyori(t){let r=this.cubies[t].length;return this.duplicatedCubies[t]&&(r=1),r===1&&(this.options.grayCenters||!this.options.includeCenterOrbits)||r===2&&(this.options.grayEdges||!this.options.includeEdgeOrbits)||r>2&&(this.options.grayCorners||!this.options.includeCornerOrbits)}skipbyori(t){let r=this.cubies[t].length;return this.duplicatedCubies[t]&&(r=1),r===1&&!this.options.includeCenterOrbits||r===2&&!this.options.includeEdgeOrbits||r>2&&!this.options.includeCornerOrbits}skipcubie(t){return this.skipbyori(t)}header(t){return t+Wm+`\\n`+t+`\\n`}writegap(){let t=this.getOrbitsDef(!1),r=[],n=[];for(let l=0;l<t.moveops.length;l++){let i=\\\"M_\\\"+ta(this.notationMapper,t.movenames[l]),a=!1;i[i.length-1]===\\\"'\\\"&&(i=i.substring(0,i.length-1),a=!0),n.push(i),a?r.push(i+\\\":=\\\"+t.moveops[l].toPerm().inv().toGap()+\\\";\\\"):r.push(i+\\\":=\\\"+t.moveops[l].toPerm().toGap()+\\\";\\\")}r.push(\\\"Gen:=[\\\"),r.push(n.join(\\\",\\\")),r.push(\\\"];\\\");let o=t.solved.identicalPieces();return r.push(\\\"ip:=[\\\"+o.map(l=>\\\"[\\\"+l.map(i=>i+1).join(\\\",\\\")+\\\"]\\\").join(\\\",\\\")+\\\"];\\\"),r.push(\\\"# Size(Group(Gen));\\\"),r.push(\\\"# Size(Stabilizer(Group(Gen), ip, OnTuplesSets));\\\"),r.push(\\\"\\\"),this.header(\\\"# \\\")+r.join(`\\n`)}writeksolve(t=\\\"PuzzleGeometryPuzzle\\\"){let r=this.getOrbitsDef(!1);return this.header(\\\"# \\\")+r.toKsolve(t,this.notationMapper).join(`\\n`)}getKPuzzleDefinition(t=!0,r=!0){let o=this.getOrbitsDef(t,r).toKPuzzleDefinition(r);if(o.experimentalPuzzleDescription=this.puzzleDescription,!o)throw new Error(\\\"Missing definition!\\\");return o}getMoveFromBits(t,r,n,o,l,i){let a=[],s=[],f=[];for(let u of this.cubieords)s.push(Nt(u)),f.push(cr(u));for(let u=t[0];u<=t[1];u++){let c=o[u];for(let m=0;m<c.length;m+=2*i){let L=c.slice(m,m+2*i),R=this.cubiesetnums[L[0]];for(let A=0;A<L.length;A+=2)L[A]=this.cubieordnums[L[A]];let h=2,y=3;n&&(h=L.length-2,y=L.length-1),s[R]===Nt(this.cubieords[R])&&(s[R]=s[R].slice(),this.orbitoris[R]>1&&!this.options.fixedOrientation&&(f[R]=f[R].slice()));for(let A=0;A<L.length;A+=2)s[R][L[(A+h)%L.length]]=L[A],this.orbitoris[R]>1&&!this.options.fixedOrientation&&(f[R][L[A]]=(L[(A+y)%L.length]-L[(A+1)%L.length]+2*this.orbitoris[R])%this.orbitoris[R])}}let g=new Yt(Nt(24),cr(24),1);for(let u=0;u<this.cubiesetnames.length;u++)if(!(l&&!l[u]))if(this.orbitoris[u]===1||this.options.fixedOrientation)s[u]===Nt(g.perm.length)?(s[u]!==g.perm&&(g=new Yt(s[u],f[u],1)),a.push(g)):a.push(new Yt(s[u],f[u],1));else{let c=new Array(f[u].length);for(let m=0;m<s[u].length;m++)c[m]=f[u][s[u][m]];a.push(new Yt(s[u],c,this.orbitoris[u]))}let p=new mr(a);return r!==1&&(p=p.mulScalar(r)),p}omitSet(t){for(let r of this.options.excludeOrbits)if(r===t)return!0;return!1}diffmvsets(t,r,n,o){for(let l=0;l<t.length;l+=2){let i=!1;for(let a=0;!i&&a<r.length;a+=2)o?t[l][0]+r[a][1]===n&&t[l][1]+r[a][0]===n&&t[l+1]===r[a+1]&&(i=!0):t[l][0]===r[a][0]&&t[l][1]===r[a][1]&&t[l+1]===r[a+1]&&(i=!0);if(!i)return!0}return!1}getOrbitsDef(t,r=!0){let n=[];if(t)for(let u=0;u<this.cubiesetnames.length;u++)n.push(1);let o=[],l=[],i=[],a=[];for(let u=0;u<this.moveplanesets.length;u++){let c=this.getmovesets(u);i.push(c),this.options.addRotations?a.push(1):a.push(0)}if(this.options.moveList&&this.options.addRotations){for(let u=0;u<this.moverotations.length;u++)a[u]=0;for(let u=0;u<this.moveplanesets.length;u++)for(let c=0;c<this.moverotations.length;c++){let m=this.moveplanenormals[u];for(let L=1;L*2<=this.movesetorders[c];L++){if(m=m.rotatepoint(this.moverotations[c][0]),a[c]&L)continue;let R=-1,h=!1;for(let A=0;A<this.moveplanenormals.length;A++)if(m.dist(this.moveplanenormals[A])<Ee){R=A;break}else if(m.dist(this.moveplanenormals[A].smul(-1))<Ee){R=A,h=!0;break}if(R<0)throw new Error(\\\"Could not find rotation\\\");let y=i[R];(y.length!==i[u].length||this.moveplanesets[u].length!==this.moveplanesets[R].length||this.diffmvsets(y,i[u],this.moveplanesets[R].length,h))&&(a[c]|=L)}}for(let u=0;u<this.moverotations.length;u++)if(a[u]===0)a[u]=1;else if(a[u]===1)this.movesetorders[u]>3?a[u]=2:a[u]=0;else if(a[u]===3)a[u]=0;else throw new Error(\\\"Impossible addrot val\\\")}for(let u=0;u<this.moveplanesets.length;u++)a[u]!==0&&(i[u].push([0,this.moveplanesets[u].length]),i[u].push(a[u]));for(let u=0;u<this.moveplanesets.length;u++){let c=i[u],m=this.movesetorders[u];for(let h=0;h<c.length;h+=2)for(let y=0;y<h;y+=2)if(c[h]===c[y]&&c[h+1]===c[y+1])throw new Error(\\\"Redundant moves in moveset.\\\");let L=[];for(let h=0;h<c.length;h+=2)for(let y=c[h][0];y<=c[h][1];y++)L[y]=1;let R=this.cmovesbyslice[u];for(let h=0;h<R.length;h++){if(L[h]!==1)continue;let y=R[h];for(let A=0;A<y.length;A+=2*m){if(this.skipcubie(y[A]))continue;let E=this.cubiesetnums[y[A]];n[E]=1}}}for(let u=0;u<this.cubiesetnames.length;u++)if(!!n[u]){if(this.omitSet(this.cubiesetnames[u])){n[u]=0;continue}o.push(this.cubiesetnames[u]),l.push(new Oo(this.cubieords[u],this.options.fixedOrientation?1:this.orbitoris[u]))}let s=[];for(let u=0;u<this.cubiesetnames.length;u++){if(!n[u]||this.omitSet(this.cubiesetnames[u]))continue;let c=[],m=[];for(let L=0;L<this.cubieords[u];L++){if(t)c.push(L);else{let R=this.cubiesetcubies[u][L];c.push(this.cubievaluemap[R])}m.push(0)}s.push(new Yt(c,m,this.options.fixedOrientation?1:this.orbitoris[u]))}let f=[],g=[];if(r)for(let u=0;u<this.moveplanesets.length;u++){let m=this.moveplanesets[u].length,L=i[u],R=this.movesetgeos[u];for(let h=0;h<L.length;h+=2){let y=L[h],A=Hm(R,y,m),E=A[0],v=A[1];L[h+1]===1?f.push(E):f.push(E+L[h+1]);let K=this.getMoveFromBits(y,L[h+1],v,this.cmovesbyslice[u],n,this.movesetorders[u]);g.push(K)}}let p=new _n(o,l,new zn(s),f,g);return this.options.optimizeOrbits&&(p=p.optimize()),this.options.scrambleAmount!==0&&p.scramble(this.options.scrambleAmount),p}getScramble(t=0){let r=this.getOrbitsDef(!1);return r.transformToKTransformationData(r.getScrambleTransformation(t))}getMovesAsPerms(){return this.getOrbitsDef(!1).moveops.map(t=>t.toPerm())}showcanon(t){mf(this.getOrbitsDef(!1),t)}getsolved(){let t=[];for(let r=0;r<this.baseFaceCount;r++)for(let n=0;n<this.stickersperface;n++)t.push(r);return new mt(t)}getOrientationRotation(t){let[r,[n,o,l]]=t[0],i=new O(0,n,-o,l),[a,[s,f,g]]=t[1],p=new O(0,s,-f,g),u=null,c=null,m=this.swizzler.unswizzle(r),L=this.swizzler.unswizzle(a);for(let A of this.geonormals)m===A[1]&&(u=A[0]),L===A[1]&&(c=A[0]);if(!u)throw new Error(\\\"Could not find feature \\\"+r);if(!c)throw new Error(\\\"Could not find feature \\\"+a);let R=u.pointrotation(i);return c.rotatepoint(R).unproject(i).pointrotation(p.unproject(i)).mul(R)}getInitial3DRotation(){let t=this.baseFaceCount,r=null;if(this.options.puzzleOrientation?r=this.options.puzzleOrientation:this.options.puzzleOrientations&&(r=this.options.puzzleOrientations[t]),r||(r=Vm()[t]),!r)throw new Error(\\\"No default orientation?\\\");return this.getOrientationRotation(r)}generate2dmapping(t=800,r=500,n=10,o=!1,l=.92){t-=2*n,r-=2*n;function i(x,S){let z=x[1][0]-x[0][0],Q=x[1][1]-x[0][1],H=2*Math.PI/S,ce=Math.cos(H),Re=Math.sin(H);for(let Ue=2;Ue<S;Ue++){let ve=z*ce+Q*Re;Q=Q*ce-z*Re,z=ve,x.push([x[Ue-1][0]+z,x[Ue-1][1]+Q])}}this.genperms();let f=this.getboundarygeometry().facenames[0][0].length,g=this.net;if(g===null)throw new Error(\\\"No net?\\\");let p={},u=0,c=0,m=1,L=0;p[g[0][0]]=[[1,0],[0,0]],i(p[g[0][0]],f);for(let x of g){let S=x[0];if(!p[S])throw new Error(\\\"Bad edge description; first edge not connected.\\\");for(let z=1;z<x.length;z++){let Q=x[z];Q===\\\"\\\"||p[Q]||(p[Q]=[p[S][z%f],p[S][(z+f-1)%f]],i(p[Q],f))}}for(let x in p){let S=p[x];for(let z of S)u=Math.min(u,z[0]),m=Math.max(m,z[0]),c=Math.min(c,z[1]),L=Math.max(L,z[1])}let R=Math.min(t/(m-u),r/(L-c)),h=.5*(t-R*(m+u)),y=.5*(r-R*(L+c)),A={},E=this.getboundarygeometry(),v={},K=[[R+h,y],[h,y]];v[g[0][0]]=K,i(v[g[0][0]],f),A[this.facenames[0][1]]=this.project2d(0,0,[new O(0,K[0][0],K[0][1],0),new O(0,K[1][0],K[1][1],0)]);let Z=[];Z[0]=0;for(let x of g){let S=x[0];if(!v[S])throw new Error(\\\"Bad edge description; first edge not connected.\\\");let z=-1;for(let H=0;H<E.facenames.length;H++)if(S===E.facenames[H][1]){z=H;break}if(z<0)throw new Error(\\\"Could not find first face name \\\"+S);let Q=E.facenames[z][0];for(let H=1;H<x.length;H++){let ce=x[H];if(ce===\\\"\\\"||v[ce])continue;v[ce]=[v[S][H%f],v[S][(H+f-1)%f]],i(v[ce],f);let Re=Z[z],Ue=Q[(Re+H)%f].sum(Q[(Re+H+f-1)%f]).smul(.5),ve=Xl(E.edgenames,Ue),zt=E.edgenames[ve][1],Oe=Ym(zt,this.facenames),nt=Oe[S===Oe[0]?1:0],ze=-1;for(let w=0;w<E.facenames.length;w++)if(nt===E.facenames[w][1]){ze=w;break}if(ze<0)throw new Error(\\\"Could not find second face name\\\");let D=E.facenames[ze][0];for(let w=0;w<D.length;w++)if(D[w].sum(D[(w+1)%f]).smul(.5).dist(Ue)<=Ee){let W=v[S][(H+f-1)%f],oe=v[S][H%f];Z[ze]=w,A[nt]=this.project2d(ze,w,[new O(0,oe[0],oe[1],0),new O(0,W[0],W[1],0)]);break}}}let M=0,ne=0,b=this.getInitial3DRotation();for(let x of this.faces){o&&(x=x.rotate(b));for(let S=0;S<x.length;S++)M=Math.max(M,Math.abs(x.get(S).b)),ne=Math.max(ne,Math.abs(x.get(S).c))}let _=Math.min(r/ne/2,(t-n)/M/4);return(x,S)=>{if(o){S=S.rotatepoint(b);let z=.5*n+.25*t,Q=this.baseplanes[x].rotateplane(b).d<0?1:-1;return[n+t*.5+Q*(z-S.b*_),n+r*.5+S.c*_]}else{let z=A[this.facenames[x][1]];return[n+l*S.dot(z[0])+z[2].b,n+r-l*S.dot(z[1])-z[2].c]}}}generatesvg(t=800,r=500,n=10,o=!1){let l=this.generate2dmapping(t,r,n,o);function i(u,c,m){return'<polygon id=\\\"'+u+'\\\" class=\\\"sticker\\\" style=\\\"fill: '+m+'\\\" points=\\\"'+c.map(L=>L[0]+\\\" \\\"+L[1]).join(\\\" \\\")+`\\\"/>\\n`}let a=this.getsolved(),s=[],f=[];for(let u=0;u<this.baseFaceCount;u++)s[u]=this.colors[this.facenames[u][1]];for(let u=0;u<this.faces.length;u++){let c=this.faces[u],m=Math.floor(u/this.stickersperface),L=[];for(let R=0;R<c.length;R++)L.push(l(m,c.get(R)));f.push(L)}let g=[];for(let u=0;u<this.baseFaceCount;u++){g.push(\\\"<g>\\\"),g.push(\\\"<title>\\\"+this.facenames[u][1]+`</title>\\n`);for(let c=0;c<this.stickersperface;c++){let m=u*this.stickersperface+c,L=this.facetocubie[m],R=this.facetoord[m],h=this.cubiesetnums[L],y=this.cubieordnums[L],A=this.graybyori(L)?\\\"#808080\\\":s[a.p[m]],E=this.cubiesetnames[h]+\\\"-l\\\"+y+\\\"-o\\\"+R;if(g.push(i(E,f[m],A)),this.duplicatedFaces[m])for(let v=1;v<this.duplicatedFaces[m];v++)E=this.cubiesetnames[h]+\\\"-l\\\"+y+\\\"-o\\\"+v,g.push(i(E,f[m],A))}g.push(\\\"</g>\\\")}return`<svg id=\\\"svg\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" viewBox=\\\"0 0 800 500\\\">\\n<style type=\\\"text/css\\\"><![CDATA[.sticker { stroke: #000000; stroke-width: 1px; }]]></style>\\n`+g.join(\\\"\\\")+\\\"</svg>\\\"}get3d(t){let r=[],n=this.getInitial3DRotation(),o=[],l=.52*this.basefaces[0].get(0).len();for(let f=0;f<this.basefaces.length;f++){let g=this.basefaces[f].rotate(n),p=this.facenames[f][1];o.push({coords:ia(g,l),name:p})}for(let f=0;f<this.faces.length;f++){let g=Math.floor(f/this.stickersperface),p=this.facetocubie[f],u=this.facetoord[f],c=this.cubiesetnums[p],m=this.cubieordnums[p],L=this.graybyori(p)?\\\"#808080\\\":this.colors[this.facenames[g][1]];t?.stickerColors&&(L=t.stickerColors[f]);let R=this.faces[f].rotate(n);r.push({coords:ia(R,l),color:L,orbit:this.cubiesetnames[c],ord:m,ori:u,face:g});let h=R;if(this.duplicatedFaces[f]){let y=h.length/this.duplicatedFaces[f];for(let A=1;A<this.duplicatedFaces[f];A++){for(let E=0;E<y;E++)h=h.rotateforward();r.push({coords:ia(h,l),color:L,orbit:this.cubiesetnames[c],ord:m,ori:A,face:g,isDup:!0})}}}let i=[];for(let f=0;f<this.movesetgeos.length;f++){let g=this.movesetgeos[f],p=this.movesetorders[f];for(let u of this.geonormals)g[0]===u[1]&&g[1]===u[2]&&(i.push({coordinates:$l(u[0].rotatepoint(n),1),quantumMove:new B(g[0]),order:p}),i.push({coordinates:$l(u[0].rotatepoint(n).smul(-1),1),quantumMove:new B(g[2]),order:p}))}let a=this.generate2dmapping(2880,2160,0,!1,1),s=function(){let f=n.invrot();return function(g,p){let u=new O(0,p[0]*l,-p[1]*l,p[2]*l);u=u.rotatepoint(f);let c=a(g,u);return c[0]/=2880,c[1]=1-c[1]/2160,c}}().bind(this);return{stickers:r,faces:o,axis:i,unswizzle:this.unswizzle.bind(this),notationMapper:this.notationMapper,textureMapper:{getuv:s}}}getGeoNormal(t){let r=this.getInitial3DRotation(),n=this.swizzler.unswizzle(t);for(let o of this.geonormals)if(n===o[1]){let l=$l(o[0].rotatepoint(r),1);return Math.abs(l[0])<Ee&&Math.abs(l[2])<Ee&&(l[0]=0,l[2]=1e-6),l}}getfaceindex(t){let r=this.stickersperface;return Math.floor(t/r)}textForTwizzleExplorer(){return`Faces ${this.baseplanerot.length}\\nStickers per face ${this.stickersperface}\\nShort edge ${this.shortedge}\\nCubies ${this.cubies.length}\\nEdge distance ${this.edgedistance}\\nVertex distance ${this.vertexdistance}`}writeSchreierSims(t){let n=this.getOrbitsDef(!1).reassemblySize();t(`Reassembly size is ${n}`);let o=Zl(this.getMovesAsPerms(),t),l=n/o;t(`Ratio is ${l}`)}},Qr=class{constructor(t,r){this.pg=t;this.orbitNames=r.orbitnames}lookupMove(t){let r=this.pg.parseMove(t);if(this.pg.parsedmovelist){let i=!1;for(let a of this.pg.parsedmovelist)a[1]===r[1]&&a[2]===r[2]&&a[3]===r[3]&&a[4]===r[4]&&(i=!0);if(!i)return null}let n=[r[2],r[3]];if(!r[4]){let i=this.pg.moveplanesets[r[1]].length;n=[i-r[3],i-r[2]]}let o=this.pg.getMoveFromBits(n,r[5],!r[4],this.pg.cmovesbyslice[r[1]],void 0,this.pg.movesetorders[r[1]]);return _n.transformToKTransformationData(this.orbitNames,o)}}});var ti={};me(ti,{ExperimentalPGNotation:()=>Qr,PuzzleGeometry:()=>ei,Quat:()=>O,getPG3DNamedPuzzles:()=>xf,getPuzzleDescriptionString:()=>Sf,getPuzzleGeometryByDesc:()=>aa,getPuzzleGeometryByName:()=>Pn,parseOptions:()=>gf,parsePuzzleDescription:()=>Go,schreierSims:()=>Zl});var Mn=U(()=>{jl();J0();Yl();la();jl()});async function jr(e){return(await Promise.resolve().then(()=>(Mn(),ti))).getPuzzleGeometryByName(e,{allMoves:!0,orientCenters:!0,addRotations:!0})}async function Jm(e,t){let r=await e,n=r.getKPuzzleDefinition(!0);n.name=t;let o=await Promise.resolve().then(()=>(Mn(),ti)),l=new o.ExperimentalPGNotation(r,r.getOrbitsDef(!0));return new be(n,{experimentalPGNotation:l})}var ri,ni,oi,Lt,qr,Lr=U(()=>{Ce();En();Mt();Lt=class{constructor(t){re(this,ri,void 0);re(this,ni,void 0);re(this,oi,void 0);this.pgId=t.pgID,this.id=t.id,this.fullName=t.fullName,this.inventedBy=t.inventedBy,this.inventionYear=t.inventionYear}pg(){return d(this,ri)??j(this,ri,jr(this.pgId??this.id))}kpuzzle(){return d(this,ni)??j(this,ni,Jm(this.pg(),this.id))}svg(){return d(this,oi)??j(this,oi,(async()=>(await this.pg()).generatesvg())())}};ri=new WeakMap,ni=new WeakMap,oi=new WeakMap;qr=class extends Lt{constructor(){super(...arguments);this.stickerings=vn}appearance(t){return Pt(this,t)}}});var wf={};me(wf,{cube2x2x2KPuzzleDefinition:()=>Tt});var Tt,vf=U(()=>{Tt={name:\\\"2x2x2\\\",orbits:{CORNERS:{numPieces:8,numOrientations:3}},startStateData:{CORNERS:{pieces:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]}},moves:{U:{CORNERS:{permutation:[1,2,3,0,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]}},y:{CORNERS:{permutation:[1,2,3,0,7,4,5,6],orientation:[0,0,0,0,0,0,0,0]}},x:{CORNERS:{permutation:[4,0,3,5,7,6,2,1],orientation:[2,1,2,1,1,2,1,2]}},L:{CORNERS:{permutation:[0,1,6,2,4,3,5,7],orientation:[0,0,2,1,0,2,1,0]}},F:{CORNERS:{permutation:[3,1,2,5,0,4,6,7],orientation:[1,0,0,2,2,1,0,0]}},R:{CORNERS:{permutation:[4,0,2,3,7,5,6,1],orientation:[2,1,0,0,1,0,0,2]}},B:{CORNERS:{permutation:[0,7,1,3,4,5,2,6],orientation:[0,2,1,0,0,0,2,1]}},D:{CORNERS:{permutation:[0,1,2,3,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]}},z:{CORNERS:{permutation:[3,2,6,5,0,4,7,1],orientation:[1,2,1,2,2,1,2,1]}}}};Tt.moves.Rv=Tt.moves.x;Tt.moves.Uv=Tt.moves.y;Tt.moves.Fv=Tt.moves.z;Tt.moves.Lv={CORNERS:{permutation:[1,7,6,2,0,3,5,4],orientation:[2,1,2,1,1,2,1,2]}};Tt.moves.Dv={CORNERS:{permutation:[3,0,1,2,5,6,7,4],orientation:[0,0,0,0,0,0,0,0]}};Tt.moves.Bv={CORNERS:{permutation:[4,7,1,0,5,3,2,6],orientation:[1,2,1,2,2,1,2,1]}}});var Ef={};me(Ef,{default:()=>Zm});var Zm,kf=U(()=>{Zm=`<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\n<!DOCTYPE svg PUBLIC \\\"-//W3C//DTD SVG 1.0//EN\\\"\\n \\\"http://www.w3.org/TR/2001/REC-SVG-20050904/DTD/svg11.dtd\\\">\\n<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" viewBox=\\\"0 0 520 394\\\" preserveAspectRatio=\\\"xMidYMid meet\\\">\\n <title>2x2x2</title>\\n <defs>\\n <g id=\\\"sticker\\\">\\n <rect x=\\\"0\\\" y=\\\"0\\\" width=\\\"1\\\" height=\\\"1\\\" stroke=\\\"black\\\" stroke-width=\\\"0.04px\\\" />\\n </g>\\n </defs>\\n <g id=\\\"puzzle\\\" transform=\\\"translate(5, 5) scale(60)\\\">\\n <use id=\\\"CORNERS-l0-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.2, 1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"CORNERS-l0-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.4, 2.2)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS-l0-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.2, 2.2)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"CORNERS-l1-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.2, 0)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"CORNERS-l1-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(6.6, 2.2)\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"CORNERS-l1-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(5.4, 2.2)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"CORNERS-l2-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(2.2, 0)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"CORNERS-l2-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(0, 2.2)\\\" style=\\\"fill: orange\\\"/>\\n <use id=\\\"CORNERS-l2-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(7.6, 2.2)\\\" style=\\\"fill: #26f\\\"/>\\n\\n <use id=\\\"CORNERS-l3-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(2.2, 1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"CORNERS-l3-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(2.2, 2.2)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS-l3-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(1, 2.2)\\\" style=\\\"fill: orange\\\"/>\\n\\n <use id=\\\"CORNERS-l4-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.2, 4.4)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l4-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.2, 3.2)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS-l4-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.4, 3.2)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"CORNERS-l5-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(2.2, 4.4)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l5-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(1, 3.2)\\\" style=\\\"fill: orange\\\"/>\\n <use id=\\\"CORNERS-l5-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(2.2, 3.2)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"CORNERS-l6-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(2.2, 5.4)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l6-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(7.6, 3.2)\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"CORNERS-l6-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(0, 3.2)\\\" style=\\\"fill: orange\\\"/>\\n\\n <use id=\\\"CORNERS-l7-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.2, 5.4)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l7-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(5.4, 3.2)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS-l7-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(6.6, 3.2)\\\" style=\\\"fill: #26f\\\"/>\\n </g>\\n\\n</svg>`});var Wo,_f=U(()=>{Ce();Lr();Mt();En();Wo={id:\\\"2x2x2\\\",fullName:\\\"2\\\\xD72\\\\xD72 Cube\\\",kpuzzle:de(async()=>new be((await Promise.resolve().then(()=>(vf(),wf))).cube2x2x2KPuzzleDefinition)),svg:async()=>(await Promise.resolve().then(()=>(kf(),Ef))).default,pg:de(async()=>jr(\\\"2x2x2\\\")),appearance:e=>Pt(Wo,e),stickerings:vn}});var zf={};me(zf,{default:()=>Xm});var Xm,Cf=U(()=>{Xm=`<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\n<!DOCTYPE svg PUBLIC \\\"-//W3C//DTD SVG 1.0//EN\\\"\\n \\\"http://www.w3.org/TR/2001/REC-SVG-20050904/DTD/svg11.dtd\\\">\\n<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" viewBox=\\\"0 0 518 392\\\" preserveAspectRatio=\\\"xMidYMid meet\\\">\\n <title>3x3x3</title>\\n <defs>\\n <g id=\\\"sticker\\\">\\n <rect x=\\\"0\\\" y=\\\"0\\\" width=\\\"1\\\" height=\\\"1\\\" stroke=\\\"black\\\" stroke-width=\\\"0.04px\\\" />\\n </g>\\n </defs>\\n\\n<!-- 0 1 2 3 4 5 6 7 8 9 10 11 -->\\n<!-- | | | | | | | | | | | |<- -->\\n<!-- 0 - . . . -->\\n<!-- 1 - . . . -->\\n<!-- 2 - . . . -->\\n<!-- 3 - . . . . . . . . . . . . -->\\n<!-- 4 - . . . . . . . . . . . . -->\\n<!-- 5 - . . . . . . . . . . . . -->\\n<!-- 6 - . . . -->\\n<!-- 7 - . . . -->\\n<!-- 8 - . . . -->\\n\\n <g id=\\\"puzzle\\\" transform=\\\"translate(5,5) scale(40)\\\">\\n <!-- CORNERS -->\\n <use id=\\\"CORNERS-l0-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(5.3,2.1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"CORNERS-l0-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(6.5,3.3)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS-l0-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(5.3,3.3)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"CORNERS-l1-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(5.3,0.1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"CORNERS-l1-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(9.7,3.3)\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"CORNERS-l1-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(8.5,3.3)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"CORNERS-l2-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.3,0.1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"CORNERS-l2-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(0.1,3.3)\\\" style=\\\"fill: orange\\\"/>\\n <use id=\\\"CORNERS-l2-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(11.7,3.3)\\\" style=\\\"fill: #26f\\\"/>\\n\\n <use id=\\\"CORNERS-l3-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.3,2.1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"CORNERS-l3-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.3,3.3)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS-l3-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(2.1,3.3)\\\" style=\\\"fill: orange\\\"/>\\n\\n <use id=\\\"CORNERS-l4-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(5.3,6.5)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l4-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(5.3,5.3)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS-l4-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(6.5,5.3)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"CORNERS-l5-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.3,6.5)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l5-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(2.1,5.3)\\\" style=\\\"fill: orange\\\"/>\\n <use id=\\\"CORNERS-l5-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.3,5.3)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"CORNERS-l6-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.3,8.5)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l6-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(11.7,5.3)\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"CORNERS-l6-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(0.1,5.3)\\\" style=\\\"fill: orange\\\"/>\\n\\n <use id=\\\"CORNERS-l7-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(5.3,8.5)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l7-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(8.5,5.3)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS-l7-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(9.7,5.3)\\\" style=\\\"fill: #26f\\\"/>\\n\\n <!-- EDGES -->\\n <use id=\\\"EDGES-l0-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,2.1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"EDGES-l0-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,3.3)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"EDGES-l1-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(5.3,1.1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"EDGES-l1-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(7.5,3.3)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"EDGES-l2-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,0.1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"EDGES-l2-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(10.7,3.3)\\\" style=\\\"fill: #26f\\\"/>\\n\\n <use id=\\\"EDGES-l3-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.3,1.1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"EDGES-l3-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(1.1,3.3)\\\" style=\\\"fill: orange\\\"/>\\n\\n <use id=\\\"EDGES-l4-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,6.5)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l4-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,5.3)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"EDGES-l5-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(5.3,7.5)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l5-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(7.5,5.3)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"EDGES-l6-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,8.5)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l6-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(10.7,5.3)\\\" style=\\\"fill: #26f\\\"/>\\n\\n <use id=\\\"EDGES-l7-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.3,7.5)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l7-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(1.1,5.3)\\\" style=\\\"fill: orange\\\"/>\\n\\n <use id=\\\"EDGES-l8-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(5.3,4.3)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"EDGES-l8-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(6.5,4.3)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"EDGES-l9-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(3.3,4.3)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"EDGES-l9-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(2.1,4.3)\\\" style=\\\"fill: orange\\\"/>\\n\\n <use id=\\\"EDGES-l10-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(9.7,4.3)\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"EDGES-l10-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(8.5,4.3)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"EDGES-l11-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(11.7,4.3)\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"EDGES-l11-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(0.1,4.3)\\\" style=\\\"fill: orange\\\"/>\\n\\n <!-- CENTERS -->\\n <!-- TODO: Allow the same sticker to be reused for multiple orientations -->\\n <use id=\\\"CENTERS-l0-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,1.1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"CENTERS-l0-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,1.1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"CENTERS-l0-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,1.1)\\\" style=\\\"fill: white\\\"/>\\n <use id=\\\"CENTERS-l0-o3\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,1.1)\\\" style=\\\"fill: white\\\"/>\\n\\n <use id=\\\"CENTERS-l1-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(1.1,4.3)\\\" style=\\\"fill: orange\\\"/>\\n <use id=\\\"CENTERS-l1-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(1.1,4.3)\\\" style=\\\"fill: orange\\\"/>\\n <use id=\\\"CENTERS-l1-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(1.1,4.3)\\\" style=\\\"fill: orange\\\"/>\\n <use id=\\\"CENTERS-l1-o3\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(1.1,4.3)\\\" style=\\\"fill: orange\\\"/>\\n\\n <use id=\\\"CENTERS-l2-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,4.3)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CENTERS-l2-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,4.3)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CENTERS-l2-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,4.3)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CENTERS-l2-o3\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,4.3)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"CENTERS-l3-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(7.5,4.3)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CENTERS-l3-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(7.5,4.3)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CENTERS-l3-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(7.5,4.3)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CENTERS-l3-o3\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(7.5,4.3)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"CENTERS-l4-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(10.7,4.3)\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"CENTERS-l4-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(10.7,4.3)\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"CENTERS-l4-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(10.7,4.3)\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"CENTERS-l4-o3\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(10.7,4.3)\\\" style=\\\"fill: #26f\\\"/>\\n\\n <use id=\\\"CENTERS-l5-o0\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,7.5)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CENTERS-l5-o1\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,7.5)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CENTERS-l5-o2\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,7.5)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CENTERS-l5-o3\\\" xlink:href=\\\"#sticker\\\" transform=\\\"translate(4.3,7.5)\\\" style=\\\"fill: yellow\\\"/>\\n </g>\\n\\n</svg>`});var Pf={};me(Pf,{default:()=>$m});var $m,Mf=U(()=>{$m=`<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\n<svg width=\\\"288px\\\" height=\\\"288px\\\" viewBox=\\\"-16 -16 288 288\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\">\\n <title>3x3x3 LL</title>\\n <defs>\\n <g id=\\\"sticker\\\">\\n <rect x=\\\"-10\\\" y=\\\"-10\\\" width=\\\"1\\\" height=\\\"1\\\" stroke=\\\"black\\\" stroke-width=\\\"0.04px\\\" />\\n </g>\\n </defs>\\n <g id=\\\"3x3x3-LL\\\" stroke=\\\"none\\\" stroke-width=\\\"4\\\" style=\\\"none\\\" stroke-linejoin=\\\"round\\\">\\n <rect id=\\\"CENTERS-l0-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: white\\\" x=\\\"96\\\" y=\\\"96\\\" width=\\\"64\\\" height=\\\"64\\\"></rect>\\n <rect id=\\\"CENTERS-l0-o1\\\" stroke=\\\"#000000\\\" style=\\\"fill: white\\\" x=\\\"96\\\" y=\\\"96\\\" width=\\\"64\\\" height=\\\"64\\\"></rect>\\n <rect id=\\\"CENTERS-l0-o2\\\" stroke=\\\"#000000\\\" style=\\\"fill: white\\\" x=\\\"96\\\" y=\\\"96\\\" width=\\\"64\\\" height=\\\"64\\\"></rect>\\n <rect id=\\\"CENTERS-l0-o3\\\" stroke=\\\"#000000\\\" style=\\\"fill: white\\\" x=\\\"96\\\" y=\\\"96\\\" width=\\\"64\\\" height=\\\"64\\\"></rect>\\n\\n <rect id=\\\"CORNERS-l0-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: white\\\" x=\\\"160\\\" y=\\\"160\\\" width=\\\"64\\\" height=\\\"64\\\"></rect>\\n <polygon id=\\\"CORNERS-l0-o1\\\" stroke=\\\"#000000\\\" style=\\\"fill: red\\\" points=\\\"224 160 252 160 252 252 224 224\\\"></polygon>\\n <polygon id=\\\"CORNERS-l0-o2\\\" stroke=\\\"#000000\\\" style=\\\"fill: limegreen\\\" transform=\\\"translate(206, 238) scale(1, -1) rotate(-90) translate(-206, -238) \\\" points=\\\"192 192 220 192 220 284 192 256\\\"></polygon>\\n <rect id=\\\"CORNERS-l1-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: white\\\" x=\\\"160\\\" y=\\\"32\\\" width=\\\"64\\\" height=\\\"64\\\"></rect>\\n <polygon id=\\\"CORNERS-l1-o1\\\" stroke=\\\"#000000\\\" style=\\\"fill: #26f\\\" transform=\\\"translate(206, 18) rotate(-90) translate(-206, -18) \\\" points=\\\"192 -28 220 -28 220 64 192 36\\\"></polygon>\\n <polygon id=\\\"CORNERS-l1-o2\\\" stroke=\\\"#000000\\\" style=\\\"fill: red\\\" transform=\\\"translate(238, 50) scale(1, -1) translate(-238, -50) \\\" points=\\\"224 4 252 4 252 96 224 68\\\"></polygon>\\n <rect id=\\\"CORNERS-l2-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: white\\\" x=\\\"32\\\" y=\\\"32\\\" width=\\\"64\\\" height=\\\"64\\\"></rect>\\n <polygon id=\\\"CORNERS-l2-o1\\\" stroke=\\\"#000000\\\" style=\\\"fill: orange\\\" transform=\\\"translate(18, 50) scale(-1, -1) translate(-18, -50) \\\" points=\\\"4 4 32 4 32 96 4 68\\\"></polygon>\\n <polygon id=\\\"CORNERS-l2-o2\\\" stroke=\\\"#000000\\\" style=\\\"fill: #26f\\\" transform=\\\"translate(50, 18) scale(1, -1) rotate(90) translate(-50, -18) \\\" points=\\\"36 -28 64 -28 64 64 36 36\\\"></polygon>\\n <rect id=\\\"CORNERS-l3-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: white\\\" x=\\\"32\\\" y=\\\"160\\\" width=\\\"64\\\" height=\\\"64\\\"></rect>\\n <polygon id=\\\"CORNERS-l3-o1\\\" stroke=\\\"#000000\\\" style=\\\"fill: limegreen\\\" transform=\\\"translate(50, 238) rotate(90) translate(-50, -238) \\\" points=\\\"36 192 64 192 64 284 36 256\\\"></polygon>\\n <polygon id=\\\"CORNERS-l3-o2\\\" stroke=\\\"#000000\\\" style=\\\"fill: orange\\\" transform=\\\"translate(18, 206) scale(-1, 1) translate(-18, -206) \\\" points=\\\"4 160 32 160 32 252 4 224\\\"></polygon>\\n\\n <rect id=\\\"EDGES-l0-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: white\\\" x=\\\"96\\\" y=\\\"160\\\" width=\\\"64\\\" height=\\\"64\\\"></rect>\\n <rect id=\\\"EDGES-l0-o1\\\" stroke=\\\"#000000\\\" style=\\\"fill: limegreen\\\" transform=\\\"translate(128, 238) scale(1, -1) rotate(90) translate(-128, -238) \\\" x=\\\"114\\\" y=\\\"206\\\" width=\\\"28\\\" height=\\\"64\\\"></rect>\\n <rect id=\\\"EDGES-l1-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: white\\\" x=\\\"160\\\" y=\\\"96\\\" width=\\\"64\\\" height=\\\"64\\\"></rect>\\n <rect id=\\\"EDGES-l1-o1\\\" stroke=\\\"#000000\\\" style=\\\"fill: red\\\" x=\\\"224\\\" y=\\\"96\\\" width=\\\"28\\\" height=\\\"64\\\"></rect>\\n <rect id=\\\"EDGES-l2-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: white\\\" x=\\\"96\\\" y=\\\"32\\\" width=\\\"64\\\" height=\\\"64\\\"></rect>\\n <rect id=\\\"EDGES-l2-o1\\\" stroke=\\\"#000000\\\" style=\\\"fill: #26f\\\" transform=\\\"translate(128, 18) scale(1, -1) rotate(90) translate(-128, -18) \\\" x=\\\"114\\\" y=\\\"-14\\\" width=\\\"28\\\" height=\\\"64\\\"></rect>\\n <rect id=\\\"EDGES-l3-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: white\\\" x=\\\"32\\\" y=\\\"96\\\" width=\\\"64\\\" height=\\\"64\\\"></rect>\\n <rect id=\\\"EDGES-l3-o1\\\" stroke=\\\"#000000\\\" style=\\\"fill: orange\\\" x=\\\"4\\\" y=\\\"96\\\" width=\\\"28\\\" height=\\\"64\\\"></rect>\\n\\n </g>\\n <g style=\\\"opacity: 0\\\">\\n <!-- CORNERS -->\\n <use id=\\\"CORNERS-l4-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l4-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS-l4-o2\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"CORNERS-l5-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l5-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: orange\\\"/>\\n <use id=\\\"CORNERS-l5-o2\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"CORNERS-l6-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l6-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"CORNERS-l6-o2\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: orange\\\"/>\\n\\n <use id=\\\"CORNERS-l7-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l7-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS-l7-o2\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: #26f\\\"/>\\n\\n <!-- EDGES -->\\n <use id=\\\"EDGES-l4-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l4-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"EDGES-l5-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l5-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"EDGES-l6-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l6-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: #26f\\\"/>\\n\\n <use id=\\\"EDGES-l7-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l7-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: orange\\\"/>\\n\\n <use id=\\\"EDGES-l8-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"EDGES-l8-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"EDGES-l9-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"EDGES-l9-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: orange\\\"/>\\n\\n <use id=\\\"EDGES-l10-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"EDGES-l10-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"EDGES-l11-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"EDGES-l11-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: orange\\\"/>\\n\\n <!-- CENTERS -->\\n <!-- TODO: Allow the same sticker to be reused for multiple orientations -->\\n <use id=\\\"CENTERS-l1-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: orange\\\"/>\\n <use id=\\\"CENTERS-l1-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: orange\\\"/>\\n <use id=\\\"CENTERS-l1-o2\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: orange\\\"/>\\n <use id=\\\"CENTERS-l1-o3\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: orange\\\"/>\\n\\n <use id=\\\"CENTERS-l2-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CENTERS-l2-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CENTERS-l2-o2\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CENTERS-l2-o3\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"CENTERS-l3-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CENTERS-l3-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CENTERS-l3-o2\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CENTERS-l3-o3\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"CENTERS-l4-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"CENTERS-l4-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"CENTERS-l4-o2\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: #26f\\\"/>\\n <use id=\\\"CENTERS-l4-o3\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: #26f\\\"/>\\n\\n <use id=\\\"CENTERS-l5-o0\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CENTERS-l5-o1\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CENTERS-l5-o2\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CENTERS-l5-o3\\\" xlink:href=\\\"#sticker\\\" style=\\\"fill: yellow\\\"/>\\n </g>\\n</svg>`});var sa,Nf=U(()=>{Ce();Lr();Mt();En();sa={id:\\\"3x3x3\\\",fullName:\\\"3\\\\xD73\\\\xD73 Cube\\\",inventedBy:[\\\"Ern\\\\u0151 Rubik\\\"],inventionYear:1974,kpuzzle:de(async()=>bn),svg:de(async()=>(await Promise.resolve().then(()=>(Cf(),zf))).default),llSVG:de(async()=>(await Promise.resolve().then(()=>(Mf(),Pf))).default),pg:de(async()=>jr(\\\"3x3x3\\\")),appearance:e=>Pt(sa,e),stickerings:vn}});var Tf={};me(Tf,{clockKPuzzleDefinition:()=>eL});var eL,Gf=U(()=>{eL={name:\\\"Clock\\\",orbits:{DIALS:{numPieces:18,numOrientations:12},FACES:{numPieces:18,numOrientations:1},FRAME:{numPieces:1,numOrientations:2}},startStateData:{DIALS:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{pieces:[0],orientation:[0]}},moves:{UR_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,1,1,0,1,1,0,0,0,-1,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},DR_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,1,1,0,1,1,0,0,0,0,0,0,-1,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},DL_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,-1]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},UL_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[1,1,0,1,1,0,0,0,0,0,0,-1,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},U_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[1,1,1,1,1,1,0,0,0,-1,0,-1,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},R_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,1,1,0,1,1,0,1,1,-1,0,0,0,0,0,-1,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},D_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,-1,0,-1]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},L_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[1,1,0,1,1,0,1,1,0,0,0,-1,0,0,0,0,0,-1]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},ALL_PLUS_:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[1,1,1,1,1,1,1,1,1,-1,0,-1,0,0,0,-1,0,-1]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},y2:{DIALS:{permutation:[9,10,11,12,13,14,15,16,17,0,1,2,3,4,5,6,7,8],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[9,10,11,12,13,14,15,16,17,0,1,2,3,4,5,6,7,8],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[1]}},UL:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},UR:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},DL:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}},DR:{DIALS:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FACES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},FRAME:{permutation:[0],orientation:[0]}}}}});var Of={};me(Of,{default:()=>tL});var tL,If=U(()=>{tL=`<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\n<svg version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" viewBox=\\\"0 0 480 240\\\" preserveAspectRatio=\\\"xMidYMid meet\\\">\\n <title>clock</title>\\n <defs>\\n <g id=\\\"hand\\\" transform=\\\"translate(-20, -20)\\\">\\n <path d=\\\"M19.9995197,2.22079449 L23.8791657,19.0203611 C23.9580836,19.3338406 24,19.6620253 24,20 C24,22.209139 22.209139,24 20,24 C17.790861,24 16,22.209139 16,20 C16,19.6620253 16.0419164,19.3338406 16.1208343,19.0203611 L19.9995197,2.22079449 Z\\\"></path>\\n </g>\\n <g id=\\\"cardinal_hours\\\" style=\\\"fill: #FFFFFF\\\">\\n <circle cx=\\\"0\\\" cy=\\\"24\\\" r=\\\"2\\\"></circle>\\n <circle cx=\\\"-24\\\" cy=\\\"0\\\" r=\\\"2\\\"></circle>\\n <circle cx=\\\"24\\\" cy=\\\"0\\\" r=\\\"2\\\"></circle>\\n <circle cx=\\\"0\\\" cy=\\\"-24\\\" r=\\\"2\\\"></circle>\\n </g>\\n <g id=\\\"face_hours\\\">\\n <g>\\n <use xlink:href=\\\"#cardinal_hours\\\"/>\\n </g>\\n <g transform=\\\"rotate(30)\\\">\\n <use xlink:href=\\\"#cardinal_hours\\\"/>\\n </g>\\n <g transform=\\\"rotate(60)\\\">\\n <use xlink:href=\\\"#cardinal_hours\\\"/>\\n </g>\\n </g>\\n <g id=\\\"pegs\\\" stroke=\\\"#000000\\\" style=\\\"fill: #FFD000\\\">\\n <circle id=\\\"PEG4\\\" cx=\\\"90\\\" cy=\\\"90\\\" r=\\\"10\\\"></circle>\\n <circle id=\\\"PEG3\\\" cx=\\\"30\\\" cy=\\\"90\\\" r=\\\"10\\\"></circle>\\n <circle id=\\\"PEG2\\\" cx=\\\"90\\\" cy=\\\"30\\\" r=\\\"10\\\"></circle>\\n <circle id=\\\"PEG1\\\" cx=\\\"30\\\" cy=\\\"30\\\" r=\\\"10\\\"></circle>\\n </g>\\n <g id=\\\"frame\\\" transform=\\\"translate(-24, -24)\\\">\\n <path stroke=\\\"#000000\\\" d=\\\"M120,20 C137.495665,20 153.941932,24.4930026 168.247913,32.3881183 C171.855881,30.8514056 175.828512,30 180,30 C196.568542,30 210,43.4314575 210,60 C210,64.1714878 209.148594,68.1441192 207.610077,71.7536009 C215.506997,86.0580678 220,102.504335 220,120 C220,137.495665 215.506997,153.941932 207.611882,168.247913 C209.148594,171.855881 210,175.828512 210,180 C210,196.568542 196.568542,210 180,210 C175.828512,210 171.855881,209.148594 168.246399,207.610077 C153.941932,215.506997 137.495665,220 120,220 C102.504335,220 86.0580678,215.506997 71.7520869,207.611882 C68.1441192,209.148594 64.1714878,210 60,210 C43.4314575,210 30,196.568542 30,180 C30,175.828512 30.8514056,171.855881 32.3899234,168.246399 C24.4930026,153.941932 20,137.495665 20,120 C20,102.504335 24.4930026,86.0580678 32.3881183,71.7520869 C30.8514056,68.1441192 30,64.1714878 30,60 C30,43.4314575 43.4314575,30 60,30 C64.1714878,30 68.1441192,30.8514056 71.7536009,32.3899234 C86.0580678,24.4930026 102.504335,20 120,20 Z\\\"></path>\\n </g>\\n </defs>\\n <g>\\n <g transform=\\\"translate(24, 24)\\\">\\n <use xlink:href=\\\"#frame\\\" id=\\\"FRAME-l0-o0\\\" style=\\\"fill: #0C5093\\\"/>\\n <use xlink:href=\\\"#pegs\\\" transform=\\\"translate(36, 36)\\\"/>\\n <g transform=\\\"translate(36, 36)\\\">\\n <circle id=\\\"FACES-l0-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #90B8DF\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l0-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l0-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l0-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l0-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l0-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l0-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l0-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l0-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l0-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l0-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l0-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l0-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(96, 36)\\\">\\n <circle id=\\\"FACES-l1-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #90B8DF\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l1-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l1-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l1-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l1-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l1-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l1-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l1-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l1-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l1-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l1-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l1-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l1-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(156, 36)\\\">\\n <circle id=\\\"FACES-l2-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #90B8DF\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l2-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l2-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l2-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l2-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l2-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l2-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l2-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l2-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l2-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l2-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l2-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l2-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(36, 96)\\\">\\n <circle id=\\\"FACES-l3-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #90B8DF\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l3-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l3-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l3-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l3-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l3-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l3-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l3-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l3-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l3-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l3-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l3-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l3-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(96, 96)\\\">\\n <circle id=\\\"FACES-l4-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #90B8DF\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l4-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l4-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l4-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l4-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l4-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l4-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l4-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l4-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l4-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l4-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l4-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l4-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(156, 96)\\\">\\n <circle id=\\\"FACES-l5-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #90B8DF\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l5-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l5-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l5-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l5-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l5-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l5-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l5-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l5-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l5-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l5-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l5-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l5-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(36, 156)\\\">\\n <circle id=\\\"FACES-l6-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #90B8DF\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l6-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l6-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l6-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l6-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l6-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l6-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l6-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l6-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l6-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l6-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l6-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l6-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(96, 156)\\\">\\n <circle id=\\\"FACES-l7-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #90B8DF\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l7-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l7-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l7-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l7-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l7-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l7-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l7-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l7-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l7-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l7-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l7-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l7-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(156, 156)\\\">\\n <circle id=\\\"FACES-l8-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #90B8DF\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l8-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l8-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l8-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l8-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l8-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l8-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l8-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l8-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l8-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l8-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l8-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l8-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n </g>\\n <g transform=\\\"translate(264, 24)\\\">\\n <use xlink:href=\\\"#frame\\\" id=\\\"FRAME-l0-o1\\\" style=\\\"fill: #90B8DF\\\"/>\\n <use xlink:href=\\\"#pegs\\\" transform=\\\"translate(36, 36)\\\"/>\\n <g transform=\\\"translate(36, 36)\\\">\\n <circle id=\\\"FACES-l9-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #0C5093\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l9-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l9-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l9-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l9-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l9-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l9-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l9-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l9-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l9-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l9-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l9-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l9-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(96, 36)\\\">\\n <circle id=\\\"FACES-l10-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #0C5093\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l10-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l10-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l10-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l10-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l10-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l10-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l10-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l10-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l10-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l10-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l10-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l10-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(156, 36)\\\">\\n <circle id=\\\"FACES-l11-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #0C5093\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l11-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l11-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l11-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l11-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l11-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l11-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l11-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l11-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l11-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l11-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l11-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l11-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(36, 96)\\\">\\n <circle id=\\\"FACES-l12-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #0C5093\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l12-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l12-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l12-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l12-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l12-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l12-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l12-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l12-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l12-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l12-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l12-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l12-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(96, 96)\\\">\\n <circle id=\\\"FACES-l13-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #0C5093\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l13-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l13-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l13-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l13-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l13-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l13-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l13-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l13-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l13-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l13-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l13-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l13-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(156, 96)\\\">\\n <circle id=\\\"FACES-l14-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #0C5093\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l14-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l14-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l14-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l14-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l14-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l14-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l14-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l14-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l14-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l14-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l14-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l14-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(36, 156)\\\">\\n <circle id=\\\"FACES-l15-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #0C5093\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l15-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l15-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l15-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l15-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l15-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l15-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l15-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l15-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l15-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l15-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l15-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l15-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(96, 156)\\\">\\n <circle id=\\\"FACES-l16-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #0C5093\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l16-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l16-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l16-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l16-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l16-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l16-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l16-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l16-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l16-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l16-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l16-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l16-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n <g transform=\\\"translate(156, 156)\\\">\\n <circle id=\\\"FACES-l17-o0\\\" stroke=\\\"#000000\\\" style=\\\"fill: #0C5093\\\" r=\\\"20\\\"></circle>\\n <use xlink:href=\\\"#face_hours\\\"/>\\n <g>\\n <use id=\\\"DIALS-l17-o0\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(0)\\\" style=\\\"fill: #FFD000\\\"/>\\n <use id=\\\"DIALS-l17-o1\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(30)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l17-o2\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(60)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l17-o3\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(90)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l17-o4\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(120)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l17-o5\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(150)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l17-o6\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(180)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l17-o7\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(210)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l17-o8\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(240)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l17-o9\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(270)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l17-o10\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(300)\\\" style=\\\"fill: #0000\\\"/>\\n <use id=\\\"DIALS-l17-o11\\\" xlink:href=\\\"#hand\\\" transform=\\\"rotate(330)\\\" style=\\\"fill: #0000\\\"/>\\n </g>\\n </g>\\n </g>\\n </g>\\n</svg>`});var Wf,Kf=U(()=>{Ce();Mt();Wf={id:\\\"clock\\\",fullName:\\\"Clock\\\",inventedBy:[\\\"Christopher C. Wiggs\\\",\\\"Christopher J. Taylor\\\"],inventionYear:1988,kpuzzle:de(async()=>new be((await Promise.resolve().then(()=>(Gf(),Tf))).clockKPuzzleDefinition)),svg:de(async()=>(await Promise.resolve().then(()=>(If(),Of))).default)}});async function Qf(e,t){let r=await e.kpuzzle(),n=new zo(r),o=new Co(r),l=()=>o.and([o.move(\\\"U\\\"),o.not(o.or(o.moves([\\\"F\\\",\\\"BL\\\",\\\"BR\\\"])))]),i=()=>o.and([o.move(\\\"U\\\"),o.not(o.move(\\\"F\\\"))]),a=()=>o.or([i(),o.and([o.move(\\\"F\\\"),o.not(o.or(o.moves([\\\"U\\\",\\\"BL\\\",\\\"BR\\\"])))])]),s=()=>o.not(o.or([o.and([o.move(\\\"U\\\"),o.move(\\\"F\\\")]),o.and([o.move(\\\"F\\\"),o.move(\\\"BL\\\")]),o.and([o.move(\\\"F\\\"),o.move(\\\"BR\\\")]),o.and([o.move(\\\"BL\\\"),o.move(\\\"BR\\\")])])),f=()=>o.not(o.or([o.and([o.move(\\\"F\\\"),o.move(\\\"BL\\\")]),o.and([o.move(\\\"F\\\"),o.move(\\\"BR\\\")]),o.and([o.move(\\\"BL\\\"),o.move(\\\"BR\\\")])]));switch(t){case\\\"full\\\":break;case\\\"experimental-fto-fc\\\":n.set(o.not(l()),\\\"Ignored\\\");break;case\\\"experimental-fto-f2t\\\":n.set(o.not(i()),\\\"Ignored\\\"),n.set(l(),\\\"Dim\\\");break;case\\\"experimental-fto-sc\\\":n.set(o.not(a()),\\\"Ignored\\\"),n.set(i(),\\\"Dim\\\");break;case\\\"experimental-fto-l2c\\\":n.set(o.not(s()),\\\"Ignored\\\"),n.set(a(),\\\"Dim\\\");break;case\\\"experimental-fto-lbt\\\":n.set(o.not(f()),\\\"Ignored\\\"),n.set(s(),\\\"Dim\\\");break;case\\\"experimental-fto-l3t\\\":n.set(f(),\\\"Dim\\\");break;default:console.warn(`Unsupported stickering for ${e.id}: ${t}. Setting all pieces to dim.`),n.set(o.and(o.moves([])),\\\"Dim\\\")}return n.toAppearance()}async function jf(){return[\\\"full\\\",\\\"experimental-fto-fc\\\",\\\"experimental-fto-f2t\\\",\\\"experimental-fto-sc\\\",\\\"experimental-fto-l2c\\\",\\\"experimental-fto-lbt\\\",\\\"experimental-fto-l3t\\\"]}var qf=U(()=>{Po()});var Vf={};me(Vf,{ftoSVG:()=>rL});var rL,Hf=U(()=>{rL=`<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\n<svg width=\\\"2368px\\\" height=\\\"1216px\\\" viewBox=\\\"0 0 2368 1216\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\">\\n <title>fto</title>\\n <g id=\\\"fto\\\" stroke=\\\"none\\\" stroke-width=\\\"1\\\" fill=\\\"none\\\" fill-rule=\\\"evenodd\\\" stroke-linejoin=\\\"round\\\">\\n <g id=\\\"BL\\\" transform=\\\"translate(2040.000000, 608.000000) scale(-1, -1) rotate(90.000000) translate(-2040.000000, -608.000000) translate(1560.000000, 368.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l4-o1\\\" style=\\\"fill: #FF7F00;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l9-o1\\\" style=\\\"fill: #FF7F00;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l16-o0\\\" style=\\\"fill: #FF7F00;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l3-o1\\\" style=\\\"fill: #FF7F00;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l3-o3\\\" style=\\\"fill: #FF7F00;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l19-o0\\\" style=\\\"fill: #FF7F00;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l7-o1\\\" style=\\\"fill: #FF7F00;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l3-o0\\\" style=\\\"fill: #FF7F00;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l0-o2\\\" style=\\\"fill: #FF7F00;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"D\\\" transform=\\\"translate(1280.000000, 648.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l4-o2\\\" style=\\\"fill: #FFFF00;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l3-o0\\\" style=\\\"fill: #FFFF00;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l8-o0\\\" style=\\\"fill: #FFFF00;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l5-o0\\\" style=\\\"fill: #FFFF00;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l0-o1\\\" style=\\\"fill: #FFFF00;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l17-o0\\\" style=\\\"fill: #FFFF00;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l1-o1\\\" style=\\\"fill: #FFFF00;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l6-o0\\\" style=\\\"fill: #FFFF00;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l2-o3\\\" style=\\\"fill: #FFFF00;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"BR\\\" transform=\\\"translate(1480.000000, 608.000000) scale(1, -1) rotate(90.000000) translate(-1480.000000, -608.000000) translate(1000.000000, 368.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l4-o3\\\" style=\\\"fill: #7F7F7F;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l2-o1\\\" style=\\\"fill: #7F7F7F;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l15-o0\\\" style=\\\"fill: #7F7F7F;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l5-o1\\\" style=\\\"fill: #7F7F7F;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l5-o1\\\" style=\\\"fill: #7F7F7F;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l2-o0\\\" style=\\\"fill: #7F7F7F;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l4-o0\\\" style=\\\"fill: #7F7F7F;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l4-o0\\\" style=\\\"fill: #7F7F7F;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l2-o2\\\" style=\\\"fill: #7F7F7F;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"B\\\" transform=\\\"translate(1760.000000, 328.000000) scale(1, -1) translate(-1760.000000, -328.000000) translate(1280.000000, 88.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l4-o0\\\" style=\\\"fill: #0000FF;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l9-o0\\\" style=\\\"fill: #0000FF;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l13-o0\\\" style=\\\"fill: #0000FF;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l2-o0\\\" style=\\\"fill: #0000FF;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l3-o0\\\" style=\\\"fill: #0000FF;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l12-o0\\\" style=\\\"fill: #0000FF;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l8-o0\\\" style=\\\"fill: #0000FF;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l10-o0\\\" style=\\\"fill: #0000FF;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l5-o0\\\" style=\\\"fill: #0000FF;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"R\\\" transform=\\\"translate(888.000000, 608.000000) scale(-1, -1) rotate(90.000000) translate(-888.000000, -608.000000) translate(408.000000, 368.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l1-o3\\\" style=\\\"fill: #32CD32;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l6-o1\\\" style=\\\"fill: #32CD32;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l7-o0\\\" style=\\\"fill: #32CD32;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l0-o1\\\" style=\\\"fill: #32CD32;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l5-o2\\\" style=\\\"fill: #32CD32;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l5-o0\\\" style=\\\"fill: #32CD32;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l4-o1\\\" style=\\\"fill: #32CD32;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l11-o0\\\" style=\\\"fill: #32CD32;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l2-o1\\\" style=\\\"fill: #32CD32;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"F\\\" transform=\\\"translate(128.000000, 648.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l1-o0\\\" style=\\\"fill: #FF0000;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l0-o0\\\" style=\\\"fill: #FF0000;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l0-o0\\\" style=\\\"fill: #FF0000;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l10-o0\\\" style=\\\"fill: #FF0000;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l2-o0\\\" style=\\\"fill: #FF0000;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l1-o0\\\" style=\\\"fill: #FF0000;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l1-o0\\\" style=\\\"fill: #FF0000;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l14-o0\\\" style=\\\"fill: #FF0000;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l0-o0\\\" style=\\\"fill: #FF0000;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"L\\\" transform=\\\"translate(328.000000, 608.000000) scale(1, -1) rotate(90.000000) translate(-328.000000, -608.000000) translate(-152.000000, 368.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l1-o1\\\" style=\\\"fill: #7F007F;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l11-o1\\\" style=\\\"fill: #7F007F;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l21-o0\\\" style=\\\"fill: #7F007F;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l10-o1\\\" style=\\\"fill: #7F007F;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l3-o2\\\" style=\\\"fill: #7F007F;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l18-o0\\\" style=\\\"fill: #7F007F;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l7-o0\\\" style=\\\"fill: #7F007F;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l9-o0\\\" style=\\\"fill: #7F007F;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l0-o3\\\" style=\\\"fill: #7F007F;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n <g id=\\\"U\\\" transform=\\\"translate(608.000000, 328.000000) scale(1, -1) translate(-608.000000, -328.000000) translate(128.000000, 88.000000)\\\" stroke=\\\"#000000\\\" stroke-width=\\\"12\\\">\\n <polygon id=\\\"C4RNER-l1-o2\\\" style=\\\"fill: #FFFFFF;\\\" points=\\\"480 0 640 160 320 160\\\"></polygon>\\n <polygon id=\\\"EDGES-l6-o0\\\" style=\\\"fill: #FFFFFF;\\\" points=\\\"640 160 800 320 480 320\\\"></polygon>\\n <polygon id=\\\"CENTERS-l20-o0\\\" style=\\\"fill: #FFFFFF;\\\" transform=\\\"translate(480.000000, 240.000000) scale(1, -1) translate(-480.000000, -240.000000) \\\" points=\\\"480 160 640 320 320 320\\\"></polygon>\\n <polygon id=\\\"EDGES-l11-o0\\\" style=\\\"fill: #FFFFFF;\\\" points=\\\"320 160 480 320 160 320\\\"></polygon>\\n <polygon id=\\\"C4RNER-l5-o3\\\" style=\\\"fill: #FFFFFF;\\\" points=\\\"800 320 960 480 640 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l23-o0\\\" style=\\\"fill: #FFFFFF;\\\" transform=\\\"translate(640.000000, 400.000000) scale(1, -1) translate(-640.000000, -400.000000) \\\" points=\\\"640 320 800 480 480 480\\\"></polygon>\\n <polygon id=\\\"EDGES-l8-o1\\\" style=\\\"fill: #FFFFFF;\\\" points=\\\"480 320 640 480 320 480\\\"></polygon>\\n <polygon id=\\\"CENTERS-l22-o0\\\" style=\\\"fill: #FFFFFF;\\\" transform=\\\"translate(320.000000, 400.000000) scale(1, -1) translate(-320.000000, -400.000000) \\\" points=\\\"320 320 480 480 160 480\\\"></polygon>\\n <polygon id=\\\"C4RNER-l3-o1\\\" style=\\\"fill: #FFFFFF;\\\" points=\\\"160 320 320 480 0 480\\\"></polygon>\\n </g>\\n </g>\\n</svg>\\n`});var Yf,Jf,Zf=U(()=>{Lr();Mt();qf();Yf=class extends Lt{constructor(){super({pgID:\\\"FTO\\\",id:\\\"fto\\\",fullName:\\\"Face-Turning Octahedron\\\",inventedBy:[\\\"Karl Rohrbach\\\",\\\"David Pitcher\\\"],inventionYear:1983});this.stickerings=jf;this.svg=de(async()=>(await Promise.resolve().then(()=>(Hf(),Vf))).ftoSVG)}appearance(t){return Qf(this,t)}},Jf=new Yf});async function Xf(e,t){switch(t){case\\\"full\\\":case\\\"F2L\\\":case\\\"LL\\\":return Pt(e,t);default:console.warn(`Unsupported stickering for ${e.id}: ${t}. Setting all pieces to dim.`)}return Pt(e,\\\"full\\\")}async function $f(){return[\\\"full\\\",\\\"F2L\\\",\\\"LL\\\"]}var eu=U(()=>{En()});var tu,ru,nu=U(()=>{Lr();eu();tu=class extends Lt{constructor(){super({id:\\\"megaminx\\\",fullName:\\\"Megaminx\\\",inventionYear:1981});this.stickerings=$f}appearance(t){return Xf(this,t)}},ru=new tu});var ou={};me(ou,{default:()=>nL});var nL,lu=U(()=>{nL=`<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\n<!DOCTYPE svg PUBLIC \\\"-//W3C//DTD SVG 1.0//EN\\\"\\n \\\"http://www.w3.org/TR/2001/REC-SVG-20050904/DTD/svg11.dtd\\\">\\n<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" viewBox=\\\"-20 -20 546 480\\\" preserveAspectRatio=\\\"xMidYMid meet\\\">\\n <defs>\\n </defs>\\n <title>pyraminx</title>\\n <defs>\\n <g id=\\\"stickerA\\\" transform=\\\"scale(1, 0.577350269)\\\">\\n <path\\n d=\\\"m 0,1.732050808 1,-1.732050808 1,1.732050808 z\\\"\\n stroke=\\\"black\\\" stroke-width=\\\"0.04px\\\" stroke-linecap=\\\"butt\\\" stroke-linejoin=\\\"round\\\"\\n />\\n </g>\\n <g id=\\\"stickerV\\\" transform=\\\"scale(1, 0.577350269)\\\">\\n <path\\n d=\\\"m 0,0 1,1.732050808 1,-1.732050808 z\\\"\\n stroke=\\\"black\\\" stroke-width=\\\"0.04px\\\" stroke-linecap=\\\"butt\\\" stroke-linejoin=\\\"round\\\"\\n />\\n </g>\\n </defs>\\n\\n<!-- 0 1 2 3 4 5 6 7 8 9 10 -->\\n<!-- | | | | | | | | | | | -->\\n<!-- 0 - L L L L L F R R R R R -->\\n<!-- 1 - L L L F F F R R R -->\\n<!-- 2 - L F F F F F R -->\\n<!-- 3 - D D D D D -->\\n<!-- 4 - D D D -->\\n<!-- 5 - D -->\\n\\n <g id=\\\"puzzle\\\" transform=\\\"translate(5, 5) scale(40, 69.28203232)\\\">\\n <!-- CORNERS -->\\n <use id=\\\"CORNERS-l0-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(5.2, 1.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS-l0-o1\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(3, 0)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS-l0-o2\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(7.4, 0)\\\" style=\\\"fill: blue\\\"/>\\n\\n <use id=\\\"CORNERS-l3-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(4.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS-l3-o1\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(4.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS-l3-o2\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(2, 1)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"CORNERS-l2-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(6.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS-l2-o1\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(8.4, 1)\\\" style=\\\"fill: blue\\\"/>\\n <use id=\\\"CORNERS-l2-o2\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(6.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n\\n <use id=\\\"CORNERS-l1-o1\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(9.4, 0)\\\" style=\\\"fill: blue\\\"/>\\n <use id=\\\"CORNERS-l1-o2\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(1, 0)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS-l1-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(5.2, 4.2)\\\" style=\\\"fill: yellow\\\"/>\\n\\n <!-- \\\"TIPS\\\" -->\\n <!-- CORNERS2 -->\\n <use id=\\\"CORNERS2-l0-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(5.2, 0.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS2-l0-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(4, 0)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS2-l0-o2\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(6.4, 0)\\\" style=\\\"fill: blue\\\"/>\\n\\n <use id=\\\"CORNERS2-l3-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(3.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"CORNERS2-l3-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(3.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS2-l3-o2\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(2, 2)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"CORNERS2-l2-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(8.4, 2)\\\" style=\\\"fill: blue\\\"/>\\n <use id=\\\"CORNERS2-l2-o2\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(7.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"CORNERS2-l2-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(7.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"CORNERS2-l1-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(10.4,0)\\\" style=\\\"fill: blue\\\"/>\\n <use id=\\\"CORNERS2-l1-o2\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(0, 0)\\\" style=\\\"fill: red\\\"/>\\n <use id=\\\"CORNERS2-l1-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(5.2, 5.2)\\\" style=\\\"fill: yellow\\\"/>\\n\\n <!-- EDGES -->\\n <use id=\\\"EDGES-l0-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(4.2, 1.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"EDGES-l0-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(3, 1)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"EDGES-l5-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(6.2, 1.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n <use id=\\\"EDGES-l5-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(7.4, 1)\\\" style=\\\"fill: blue\\\"/>\\n\\n <use id=\\\"EDGES-l1-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(8.4, 0)\\\" style=\\\"fill: blue\\\"/>\\n <use id=\\\"EDGES-l1-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(2, 0)\\\" style=\\\"fill: red\\\"/>\\n\\n <use id=\\\"EDGES-l2-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(5.2, 3.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l2-o0\\\" xlink:href=\\\"#stickerA\\\" transform=\\\"translate(5.2, 2.066666667)\\\" style=\\\"fill: limegreen\\\"/>\\n\\n <use id=\\\"EDGES-l3-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(6.2, 4.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l3-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(9.4, 1)\\\" style=\\\"fill: blue\\\"/>\\n\\n <use id=\\\"EDGES-l4-o0\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(4.2, 4.2)\\\" style=\\\"fill: yellow\\\"/>\\n <use id=\\\"EDGES-l4-o1\\\" xlink:href=\\\"#stickerV\\\" transform=\\\"translate(1, 1)\\\" style=\\\"fill: red\\\"/>\\n </g>\\n\\n</svg>`});var iu,au,su=U(()=>{Lr();Mt();iu=class extends Lt{constructor(){super({id:\\\"pyraminx\\\",fullName:\\\"Pyraminx\\\",inventedBy:[\\\"Uwe Meffert\\\"]});this.svg=de(async()=>(await Promise.resolve().then(()=>(lu(),ou))).default)}},au=new iu});var fu={};me(fu,{sq1HyperOrbitKPuzzleDefinition:()=>oL});var oL,uu=U(()=>{oL={name:\\\"Square-1\\\",orbits:{WEDGES:{numPieces:24,numOrientations:9},EQUATOR:{numPieces:2,numOrientations:6}},startStateData:{WEDGES:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},EQUATOR:{pieces:[0,1],orientation:[0,0]}},moves:{U_SQ_:{WEDGES:{permutation:[11,0,1,2,3,4,5,6,7,8,9,10,12,13,14,15,16,17,18,19,20,21,22,23],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},EQUATOR:{permutation:[0,1],orientation:[0,0]}},D_SQ_:{WEDGES:{permutation:[0,1,2,3,4,5,6,7,8,9,10,11,23,12,13,14,15,16,17,18,19,20,21,22],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},EQUATOR:{permutation:[0,1],orientation:[0,0]}},_SLASH_:{WEDGES:{permutation:[0,1,2,3,4,5,12,13,14,15,16,17,6,7,8,9,10,11,18,19,20,21,22,23],orientation:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},EQUATOR:{permutation:[0,1],orientation:[0,3]}}}}});var gu={};me(gu,{default:()=>lL});var lL,pu=U(()=>{lL=`<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\n<svg width=\\\"360px\\\" height=\\\"552px\\\" viewBox=\\\"0 0 360 552\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\">\\n <!-- Generator: Sketch 59.1 (86144) - https://sketch.com -->\\n <title>sq1-fancy</title>\\n <desc>Created with Sketch.</desc>\\n <!-- stroke=\\\"none\\\" -->\\n <g id=\\\"sq1-fancy\\\" stroke=\\\"#888\\\" stroke-width=\\\"0.25\\\" fill=\\\"none\\\" fill-rule=\\\"evenodd\\\">\\n <g id=\\\"EQUATOR\\\" transform=\\\"translate(24.000000, 264.000000)\\\">\\n <rect id=\\\"EQUATOR-l1-o3\\\" style=\\\"fill: red\\\" x=\\\"168\\\" y=\\\"0\\\" width=\\\"24\\\" height=\\\"24\\\"></rect>\\n <rect id=\\\"EQUATOR-l1-o4\\\" style=\\\"fill: red\\\" x=\\\"192\\\" y=\\\"0\\\" width=\\\"24\\\" height=\\\"24\\\"></rect>\\n <rect id=\\\"EQUATOR-l1-o5\\\" style=\\\"fill: limegreen\\\" x=\\\"216\\\" y=\\\"0\\\" width=\\\"24\\\" height=\\\"24\\\"></rect>\\n <rect id=\\\"EQUATOR-l1-o2\\\" style=\\\"fill: limegreen\\\" x=\\\"240\\\" y=\\\"0\\\" width=\\\"24\\\" height=\\\"24\\\"></rect>\\n <rect id=\\\"EQUATOR-l1-o1\\\" style=\\\"fill: limegreen\\\" x=\\\"264\\\" y=\\\"0\\\" width=\\\"24\\\" height=\\\"24\\\"></rect>\\n <rect id=\\\"EQUATOR-l1-o0\\\" style=\\\"fill: orange\\\" x=\\\"288\\\" y=\\\"0\\\" width=\\\"24\\\" height=\\\"24\\\"></rect>\\n <rect id=\\\"EQUATOR-l0-o3\\\" style=\\\"fill: orange\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"24\\\" height=\\\"24\\\"></rect>\\n <rect id=\\\"EQUATOR-l0-o4\\\" style=\\\"fill: orange\\\" x=\\\"24\\\" y=\\\"0\\\" width=\\\"24\\\" height=\\\"24\\\"></rect>\\n <rect id=\\\"EQUATOR-l0-o5\\\" style=\\\"fill: limegreen\\\" x=\\\"48\\\" y=\\\"0\\\" width=\\\"24\\\" height=\\\"24\\\"></rect>\\n <rect id=\\\"EQUATOR-l0-o2\\\" style=\\\"fill: limegreen\\\" x=\\\"72\\\" y=\\\"0\\\" width=\\\"24\\\" height=\\\"24\\\"></rect>\\n <rect id=\\\"EQUATOR-l0-o1\\\" style=\\\"fill: limegreen\\\" x=\\\"96\\\" y=\\\"0\\\" width=\\\"24\\\" height=\\\"24\\\"></rect>\\n <rect id=\\\"EQUATOR-l0-o0\\\" style=\\\"fill: red\\\" x=\\\"120\\\" y=\\\"0\\\" width=\\\"24\\\" height=\\\"24\\\"></rect>\\n </g>\\n <g id=\\\"BOTTOM\\\" transform=\\\"translate(41.000000, 257.000000)\\\" stroke-linejoin=\\\"round\\\">\\n <g id=\\\"WEDGES-23\\\" transform=\\\"translate(130.000000, 88.588457) rotate(120.000000) translate(-130.000000, -88.588457) translate(82.000000, 22.588457)\\\">\\n <polygon id=\\\"WEDGES-l23-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l23-o7\\\" style=\\\"fill: red\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l23-o6\\\" style=\\\"fill: red\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l23-o5\\\" style=\\\"fill: red\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l23-o4\\\" style=\\\"fill: red\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l23-o3\\\" style=\\\"fill: white\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l23-o2\\\" style=\\\"fill: white\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l23-o1\\\" style=\\\"fill: white\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l23-o0\\\" style=\\\"fill: red\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-22\\\" transform=\\\"translate(97.157677, 115.157677) rotate(90.000000) translate(-97.157677, -115.157677) translate(49.157677, 49.157677)\\\">\\n <polygon id=\\\"WEDGES-l22-o8\\\" style=\\\"fill: blue\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l22-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l22-o6\\\" style=\\\"fill: blue\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l22-o5\\\" style=\\\"fill: blue\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l22-o4\\\" style=\\\"fill: white\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l22-o3\\\" style=\\\"fill: blue\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l22-o2\\\" style=\\\"fill: white\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l22-o1\\\" style=\\\"fill: white\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l22-o0\\\" style=\\\"fill: blue\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-21\\\" transform=\\\"translate(82.000000, 154.588457) rotate(60.000000) translate(-82.000000, -154.588457) translate(34.000000, 88.588457)\\\">\\n <polygon id=\\\"WEDGES-l21-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l21-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l21-o6\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l21-o5\\\" style=\\\"fill: blue\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l21-o4\\\" style=\\\"fill: blue\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l21-o3\\\" style=\\\"fill: blue\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l21-o2\\\" style=\\\"fill: blue\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l21-o1\\\" style=\\\"fill: white\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l21-o0\\\" style=\\\"fill: blue\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-20\\\" transform=\\\"translate(88.588457, 196.315353) rotate(30.000000) translate(-88.588457, -196.315353) translate(40.588457, 130.315353)\\\">\\n <polygon id=\\\"WEDGES-l20-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l20-o7\\\" style=\\\"fill: blue\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l20-o6\\\" style=\\\"fill: blue\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l20-o5\\\" style=\\\"fill: blue\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l20-o4\\\" style=\\\"fill: blue\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l20-o3\\\" style=\\\"fill: white\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l20-o2\\\" style=\\\"fill: white\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l20-o1\\\" style=\\\"fill: white\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l20-o0\\\" style=\\\"fill: blue\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-19\\\" transform=\\\"translate(67.157677, 163.157677)\\\">\\n <polygon id=\\\"WEDGES-l19-o8\\\" style=\\\"fill: orange\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l19-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l19-o6\\\" style=\\\"fill: orange\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l19-o5\\\" style=\\\"fill: orange\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l19-o4\\\" style=\\\"fill: white\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l19-o3\\\" style=\\\"fill: orange\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l19-o2\\\" style=\\\"fill: white\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l19-o1\\\" style=\\\"fill: white\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l19-o0\\\" style=\\\"fill: orange\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-18\\\" transform=\\\"translate(154.588457, 244.315353) scale(-1, -1) rotate(150.000000) translate(-154.588457, -244.315353) translate(106.588457, 178.315353)\\\">\\n <polygon id=\\\"WEDGES-l18-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l18-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l18-o6\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l18-o5\\\" style=\\\"fill: orange\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l18-o4\\\" style=\\\"fill: orange\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l18-o3\\\" style=\\\"fill: orange\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l18-o2\\\" style=\\\"fill: orange\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l18-o1\\\" style=\\\"fill: white\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l18-o0\\\" style=\\\"fill: orange\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-17\\\" transform=\\\"translate(196.315353, 237.726896) scale(-1, -1) rotate(120.000000) translate(-196.315353, -237.726896) translate(148.315353, 171.726896)\\\">\\n <polygon id=\\\"WEDGES-l17-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l17-o7\\\" style=\\\"fill: orange\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l17-o6\\\" style=\\\"fill: orange\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l17-o5\\\" style=\\\"fill: orange\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l17-o4\\\" style=\\\"fill: orange\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l17-o3\\\" style=\\\"fill: white\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l17-o2\\\" style=\\\"fill: white\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l17-o1\\\" style=\\\"fill: white\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l17-o0\\\" style=\\\"fill: orange\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-16\\\" transform=\\\"translate(229.157677, 211.157677) scale(-1, -1) rotate(90.000000) translate(-229.157677, -211.157677) translate(181.157677, 145.157677)\\\">\\n <polygon id=\\\"WEDGES-l16-o8\\\" style=\\\"fill: limegreen\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l16-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l16-o6\\\" style=\\\"fill: limegreen\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l16-o5\\\" style=\\\"fill: limegreen\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l16-o4\\\" style=\\\"fill: white\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l16-o3\\\" style=\\\"fill: limegreen\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l16-o2\\\" style=\\\"fill: white\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l16-o1\\\" style=\\\"fill: white\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l16-o0\\\" style=\\\"fill: limegreen\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-15\\\" transform=\\\"translate(244.315353, 171.726896) scale(-1, -1) rotate(60.000000) translate(-244.315353, -171.726896) translate(196.315353, 105.726896)\\\">\\n <polygon id=\\\"WEDGES-l15-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l15-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l15-o6\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l15-o5\\\" style=\\\"fill: limegreen\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l15-o4\\\" style=\\\"fill: limegreen\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l15-o3\\\" style=\\\"fill: limegreen\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l15-o2\\\" style=\\\"fill: limegreen\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l15-o1\\\" style=\\\"fill: white\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l15-o0\\\" style=\\\"fill: limegreen\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-14\\\" transform=\\\"translate(237.726896, 130.000000) scale(-1, -1) rotate(30.000000) translate(-237.726896, -130.000000) translate(189.726896, 64.000000)\\\">\\n <polygon id=\\\"WEDGES-l14-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l14-o7\\\" style=\\\"fill: limegreen\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l14-o6\\\" style=\\\"fill: limegreen\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l14-o5\\\" style=\\\"fill: limegreen\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l14-o4\\\" style=\\\"fill: limegreen\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l14-o3\\\" style=\\\"fill: white\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l14-o2\\\" style=\\\"fill: white\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l14-o1\\\" style=\\\"fill: white\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l14-o0\\\" style=\\\"fill: limegreen\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-13\\\" transform=\\\"translate(211.157677, 97.157677) scale(-1, -1) translate(-211.157677, -97.157677) translate(163.157677, 31.157677)\\\">\\n <polygon id=\\\"WEDGES-l13-o8\\\" style=\\\"fill: red\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l13-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l13-o6\\\" style=\\\"fill: red\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l13-o5\\\" style=\\\"fill: red\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l13-o4\\\" style=\\\"fill: white\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l13-o3\\\" style=\\\"fill: red\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l13-o2\\\" style=\\\"fill: white\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l13-o1\\\" style=\\\"fill: white\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l13-o0\\\" style=\\\"fill: red\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-12\\\" transform=\\\"translate(171.726896, 82.000000) rotate(150.000000) translate(-171.726896, -82.000000) translate(123.726896, 16.000000)\\\">\\n <polygon id=\\\"WEDGES-l12-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l12-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l12-o6\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l12-o5\\\" style=\\\"fill: red\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l12-o4\\\" style=\\\"fill: red\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l12-o3\\\" style=\\\"fill: red\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l12-o2\\\" style=\\\"fill: red\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l12-o1\\\" style=\\\"fill: white\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l12-o0\\\" style=\\\"fill: red\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n </g>\\n <g id=\\\"TOP\\\" transform=\\\"translate(41.000000, -31.000000)\\\" stroke-linejoin=\\\"round\\\">\\n <g id=\\\"WEDGES-11\\\" transform=\\\"translate(154.588457, 244.315353) scale(-1, -1) rotate(150.000000) translate(-154.588457, -244.315353) translate(106.588457, 178.315353)\\\">\\n <polygon id=\\\"WEDGES-l11-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l11-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l11-o6\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l11-o5\\\" style=\\\"fill: red\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l11-o4\\\" style=\\\"fill: red\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l11-o3\\\" style=\\\"fill: red\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l11-o2\\\" style=\\\"fill: red\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l11-o1\\\" style=\\\"fill: yellow\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l11-o0\\\" style=\\\"fill: red\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-10\\\" transform=\\\"translate(196.315353, 237.726896) scale(-1, -1) rotate(120.000000) translate(-196.315353, -237.726896) translate(148.315353, 171.726896)\\\">\\n <polygon id=\\\"WEDGES-l10-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l10-o7\\\" style=\\\"fill: red\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l10-o6\\\" style=\\\"fill: red\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l10-o5\\\" style=\\\"fill: red\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l10-o4\\\" style=\\\"fill: red\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l10-o3\\\" style=\\\"fill: yellow\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l10-o2\\\" style=\\\"fill: yellow\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l10-o1\\\" style=\\\"fill: yellow\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l10-o0\\\" style=\\\"fill: red\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-9\\\" transform=\\\"translate(229.157677, 211.157677) scale(-1, -1) rotate(90.000000) translate(-229.157677, -211.157677) translate(181.157677, 145.157677)\\\">\\n <polygon id=\\\"WEDGES-l9-o8\\\" style=\\\"fill: limegreen\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l9-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l9-o6\\\" style=\\\"fill: limegreen\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l9-o5\\\" style=\\\"fill: limegreen\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l9-o4\\\" style=\\\"fill: yellow\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l9-o3\\\" style=\\\"fill: limegreen\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l9-o2\\\" style=\\\"fill: yellow\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l9-o1\\\" style=\\\"fill: yellow\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l9-o0\\\" style=\\\"fill: limegreen\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-8\\\" transform=\\\"translate(244.315353, 171.726896) scale(-1, -1) rotate(60.000000) translate(-244.315353, -171.726896) translate(196.315353, 105.726896)\\\">\\n <polygon id=\\\"WEDGES-l8-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l8-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l8-o6\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l8-o5\\\" style=\\\"fill: limegreen\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l8-o4\\\" style=\\\"fill: limegreen\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l8-o3\\\" style=\\\"fill: limegreen\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l8-o2\\\" style=\\\"fill: limegreen\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l8-o1\\\" style=\\\"fill: yellow\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l8-o0\\\" style=\\\"fill: limegreen\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-7\\\" transform=\\\"translate(237.726896, 130.000000) scale(-1, -1) rotate(30.000000) translate(-237.726896, -130.000000) translate(189.726896, 64.000000)\\\">\\n <polygon id=\\\"WEDGES-l7-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l7-o7\\\" style=\\\"fill: limegreen\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l7-o6\\\" style=\\\"fill: limegreen\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l7-o5\\\" style=\\\"fill: limegreen\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l7-o4\\\" style=\\\"fill: limegreen\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l7-o3\\\" style=\\\"fill: yellow\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l7-o2\\\" style=\\\"fill: yellow\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l7-o1\\\" style=\\\"fill: yellow\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l7-o0\\\" style=\\\"fill: limegreen\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-6\\\" transform=\\\"translate(211.157677, 97.157677) scale(-1, -1) translate(-211.157677, -97.157677) translate(163.157677, 31.157677)\\\">\\n <polygon id=\\\"WEDGES-l6-o8\\\" style=\\\"fill: orange\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l6-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l6-o6\\\" style=\\\"fill: orange\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l6-o5\\\" style=\\\"fill: orange\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l6-o4\\\" style=\\\"fill: yellow\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l6-o3\\\" style=\\\"fill: orange\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l6-o2\\\" style=\\\"fill: yellow\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l6-o1\\\" style=\\\"fill: yellow\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l6-o0\\\" style=\\\"fill: orange\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-5\\\" transform=\\\"translate(171.726896, 82.000000) rotate(150.000000) translate(-171.726896, -82.000000) translate(123.726896, 16.000000)\\\">\\n <polygon id=\\\"WEDGES-l5-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l5-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l5-o6\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l5-o5\\\" style=\\\"fill: orange\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l5-o4\\\" style=\\\"fill: orange\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l5-o3\\\" style=\\\"fill: orange\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l5-o2\\\" style=\\\"fill: orange\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l5-o1\\\" style=\\\"fill: yellow\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l5-o0\\\" style=\\\"fill: orange\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-4\\\" transform=\\\"translate(130.000000, 88.588457) rotate(120.000000) translate(-130.000000, -88.588457) translate(82.000000, 22.588457)\\\">\\n <polygon id=\\\"WEDGES-l4-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l4-o7\\\" style=\\\"fill: orange\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l4-o6\\\" style=\\\"fill: orange\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l4-o5\\\" style=\\\"fill: orange\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l4-o4\\\" style=\\\"fill: orange\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l4-o3\\\" style=\\\"fill: yellow\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l4-o2\\\" style=\\\"fill: yellow\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l4-o1\\\" style=\\\"fill: yellow\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l4-o0\\\" style=\\\"fill: orange\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-3\\\" transform=\\\"translate(97.157677, 115.157677) rotate(90.000000) translate(-97.157677, -115.157677) translate(49.157677, 49.157677)\\\">\\n <polygon id=\\\"WEDGES-l3-o8\\\" style=\\\"fill: blue\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l3-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l3-o6\\\" style=\\\"fill: blue\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l3-o5\\\" style=\\\"fill: blue\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l3-o4\\\" style=\\\"fill: yellow\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l3-o3\\\" style=\\\"fill: blue\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l3-o2\\\" style=\\\"fill: yellow\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l3-o1\\\" style=\\\"fill: yellow\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l3-o0\\\" style=\\\"fill: blue\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-2\\\" transform=\\\"translate(82.000000, 154.588457) rotate(60.000000) translate(-82.000000, -154.588457) translate(34.000000, 88.588457)\\\">\\n <polygon id=\\\"WEDGES-l2-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l2-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l2-o6\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l2-o5\\\" style=\\\"fill: blue\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l2-o4\\\" style=\\\"fill: blue\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l2-o3\\\" style=\\\"fill: blue\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l2-o2\\\" style=\\\"fill: blue\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l2-o1\\\" style=\\\"fill: yellow\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l2-o0\\\" style=\\\"fill: blue\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-1\\\" transform=\\\"translate(88.588457, 196.315353) rotate(30.000000) translate(-88.588457, -196.315353) translate(40.588457, 130.315353)\\\">\\n <polygon id=\\\"WEDGES-l1-o8\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l1-o7\\\" style=\\\"fill: blue\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l1-o6\\\" style=\\\"fill: blue\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l1-o5\\\" style=\\\"fill: blue\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l1-o4\\\" style=\\\"fill: blue\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l1-o3\\\" style=\\\"fill: yellow\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l1-o2\\\" style=\\\"fill: yellow\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l1-o1\\\" style=\\\"fill: yellow\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l1-o0\\\" style=\\\"fill: blue\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n <g id=\\\"WEDGES-0\\\" transform=\\\"translate(67.157677, 163.157677)\\\">\\n <polygon id=\\\"WEDGES-l0-o8\\\" style=\\\"fill: red\\\" points=\\\"25.723 70.277 40.574 95.999 -2.27373675e-13 96\\\"></polygon>\\n <polygon id=\\\"WEDGES-l0-o7\\\" style=\\\"fill: #D8D8D8\\\" points=\\\"70.2768775 96 60.8615612 131.138439 40.5741225 95.9988775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l0-o6\\\" style=\\\"fill: red\\\" points=\\\"70.2768775 96 40.574 95.999 25.7231225 70.2768775\\\"></polygon>\\n <polygon id=\\\"WEDGES-l0-o5\\\" style=\\\"fill: red\\\" points=\\\"48.0001225 47.9995 68.287 47.9995 78.4307806 65.5692194\\\"></polygon>\\n <polygon id=\\\"WEDGES-l0-o4\\\" style=\\\"fill: yellow\\\" points=\\\"60.8615 35.1385 68.287 47.9995 48 48\\\"></polygon>\\n <polygon id=\\\"WEDGES-l0-o3\\\" style=\\\"fill: red\\\" points=\\\"83.1384388 48 78.4307806 65.5692194 68.2870612 47.9994388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l0-o2\\\" style=\\\"fill: yellow\\\" points=\\\"83.1384388 48 68.287 47.9995 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l0-o1\\\" style=\\\"fill: yellow\\\" points=\\\"96 0 83.1384388 48 60.8615612 35.1384388\\\"></polygon>\\n <polygon id=\\\"WEDGES-l0-o0\\\" style=\\\"fill: red\\\" points=\\\"70.2768775 96 25.7231225 70.2768775 48.0001225 47.9995 78.4307806 65.5692194\\\"></polygon>\\n </g>\\n </g>\\n <g id=\\\"DIAGONALS\\\" transform=\\\"translate(168.861561, 1.019238)\\\" stroke=\\\"#000000\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" stroke-width=\\\"2\\\">\\n <line x1=\\\"0\\\" y1=\\\"287.842323\\\" x2=\\\"70.2768775\\\" y2=\\\"550.119201\\\" id=\\\"BOTTOM\\\"></line>\\n <line x1=\\\"0.15767665\\\" y1=\\\"262.276878\\\" x2=\\\"70.4345542\\\" y2=\\\"2.27488928e-16\\\" id=\\\"TOP\\\"></line>\\n </g>\\n </g>\\n</svg>`});var cu,mu=U(()=>{Ce();Mt();cu={id:\\\"square1\\\",fullName:\\\"Square-1\\\",inventedBy:[\\\"Karel Hr\\\\u0161el\\\",\\\"Vojtech Kopsk\\\\xFD\\\"],inventionYear:1990,kpuzzle:de(async()=>new be((await Promise.resolve().then(()=>(uu(),fu))).sq1HyperOrbitKPuzzleDefinition)),svg:de(async()=>(await Promise.resolve().then(()=>(pu(),gu))).default)}});var Lu={};me(Lu,{kilominxSVG:()=>iL});var iL,Bu=U(()=>{iL=`<svg id=\\\"svg\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" viewBox=\\\"0 0 800 500\\\">\\n<style type=\\\"text/css\\\"><![CDATA[.sticker { stroke: #000000; stroke-width: 1px; }]]></style>\\n<g><title>U</title>\\n<polygon id=\\\"CORNERS-l0-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffff\\\" points=\\\"247.941 89.861 283.500 115.696 269.918 157.499 212.382 138.805\\\"/>\\n<polygon id=\\\"CORNERS-l10-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffff\\\" points=\\\"154.845 157.499 141.263 115.696 176.822 89.861 212.382 138.805\\\"/>\\n<polygon id=\\\"CORNERS-l5-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffff\\\" points=\\\"176.822 89.861 212.381 64.025 247.941 89.861 212.382 138.805\\\"/>\\n<polygon id=\\\"CORNERS-l4-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffff\\\" points=\\\"212.381 199.301 168.427 199.301 154.845 157.499 212.382 138.805\\\"/>\\n<polygon id=\\\"CORNERS-l1-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffff\\\" points=\\\"269.918 157.499 256.335 199.301 212.381 199.301 212.382 138.805\\\"/>\\n</g><g><title>F</title>\\n<polygon id=\\\"CORNERS-l7-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #006633\\\" points=\\\"247.941 319.263 212.381 345.098 176.822 319.263 212.382 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l1-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #006633\\\" points=\\\"212.381 209.823 256.335 209.823 269.918 251.625 212.382 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l3-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #006633\\\" points=\\\"269.918 251.625 283.500 293.428 247.941 319.263 212.382 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l4-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #006633\\\" points=\\\"154.845 251.625 168.427 209.823 212.381 209.823 212.382 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l9-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #006633\\\" points=\\\"176.822 319.263 141.263 293.428 154.845 251.625 212.382 270.32\\\"/>\\n</g><g><title>L</title>\\n<polygon id=\\\"CORNERS-l13-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #660099\\\" points=\\\"87.302 290.176 43.349 290.176 29.766 248.374 87.303 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l4-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #660099\\\" points=\\\"122.862 180.736 158.421 206.571 144.839 248.374 87.303 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l9-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #660099\\\" points=\\\"144.839 248.374 131.256 290.176 87.302 290.176 87.303 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l10-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #660099\\\" points=\\\"51.743 180.736 87.302 154.901 122.862 180.736 87.303 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l11-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #660099\\\" points=\\\"29.766 248.374 16.184 206.571 51.743 180.736 87.303 229.68\\\"/>\\n</g><g><title>BL</title>\\n<polygon id=\\\"CORNERS-l15-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ffff00\\\" points=\\\"700.480 172.224 664.921 198.059 629.361 172.224 664.921 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l10-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ffff00\\\" points=\\\"664.921 62.784 708.874 62.784 722.457 104.586 664.921 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l11-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ffff00\\\" points=\\\"722.457 104.586 736.039 146.389 700.480 172.224 664.921 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l5-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ffff00\\\" points=\\\"607.384 104.586 620.967 62.784 664.921 62.784 664.921 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l19-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ffff00\\\" points=\\\"629.361 172.224 593.802 146.389 607.384 104.586 664.921 123.281\\\"/>\\n</g><g><title>BR</title>\\n<polygon id=\\\"CORNERS-l12-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #0000ff\\\" points=\\\"545.874 172.224 510.315 198.059 474.755 172.224 510.315 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l5-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #0000ff\\\" points=\\\"510.315 62.784 554.269 62.784 567.851 104.586 510.315 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l19-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #0000ff\\\" points=\\\"567.851 104.586 581.433 146.389 545.874 172.224 510.315 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l0-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #0000ff\\\" points=\\\"452.779 104.586 466.361 62.784 510.315 62.784 510.315 123.281\\\"/>\\n<polygon id=\\\"CORNERS-l6-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #0000ff\\\" points=\\\"474.755 172.224 439.196 146.389 452.779 104.586 510.315 123.281\\\"/>\\n</g><g><title>R</title>\\n<polygon id=\\\"CORNERS-l6-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ff0000\\\" points=\\\"373.019 180.736 408.579 206.571 394.996 248.374 337.461 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l1-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ff0000\\\" points=\\\"279.924 248.374 266.341 206.571 301.901 180.736 337.461 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l0-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ff0000\\\" points=\\\"301.901 180.736 337.460 154.901 373.019 180.736 337.461 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l3-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ff0000\\\" points=\\\"337.460 290.176 293.506 290.176 279.924 248.374 337.461 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l2-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ff0000\\\" points=\\\"394.996 248.374 381.414 290.176 337.460 290.176 337.461 229.68\\\"/>\\n</g><g><title>C</title>\\n<polygon id=\\\"CORNERS-l8-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffd0\\\" points=\\\"347.220 395.413 333.638 437.215 289.684 437.215 289.685 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l3-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffd0\\\" points=\\\"254.125 327.775 289.684 301.940 325.244 327.775 289.685 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l2-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffd0\\\" points=\\\"325.244 327.775 360.803 353.610 347.220 395.413 289.685 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l7-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffd0\\\" points=\\\"232.148 395.413 218.566 353.610 254.125 327.775 289.685 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l17-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ffffd0\\\" points=\\\"289.684 437.215 245.730 437.215 232.148 395.413 289.685 376.719\\\"/>\\n</g><g><title>A</title>\\n<polygon id=\\\"CORNERS-l17-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #3399ff\\\" points=\\\"192.615 395.413 179.032 437.215 135.078 437.215 135.079 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l9-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #3399ff\\\" points=\\\"99.519 327.775 135.078 301.940 170.638 327.775 135.079 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l7-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #3399ff\\\" points=\\\"170.638 327.775 206.197 353.610 192.615 395.413 135.079 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l13-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #3399ff\\\" points=\\\"77.542 395.413 63.960 353.610 99.519 327.775 135.079 376.719\\\"/>\\n<polygon id=\\\"CORNERS-l14-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #3399ff\\\" points=\\\"135.078 437.215 91.125 437.215 77.542 395.413 135.079 376.719\\\"/>\\n</g><g><title>I</title>\\n<polygon id=\\\"CORNERS-l18-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ff6633\\\" points=\\\"677.137 319.263 641.578 293.428 655.160 251.625 712.697 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l13-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ff6633\\\" points=\\\"770.233 251.625 783.815 293.428 748.256 319.263 712.697 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l14-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ff6633\\\" points=\\\"748.256 319.263 712.697 345.098 677.137 319.263 712.697 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l11-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #ff6633\\\" points=\\\"712.697 209.823 756.650 209.823 770.233 251.625 712.697 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l15-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #ff6633\\\" points=\\\"655.160 251.625 668.743 209.823 712.697 209.823 712.697 270.32\\\"/>\\n</g><g><title>BF</title>\\n<polygon id=\\\"CORNERS-l16-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #99ff00\\\" points=\\\"587.618 290.176 543.664 290.176 530.081 248.374 587.618 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l15-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #99ff00\\\" points=\\\"623.177 180.736 658.736 206.571 645.154 248.374 587.618 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l18-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #99ff00\\\" points=\\\"645.154 248.374 631.572 290.176 587.618 290.176 587.618 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l19-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #99ff00\\\" points=\\\"552.058 180.736 587.618 154.901 623.177 180.736 587.618 229.68\\\"/>\\n<polygon id=\\\"CORNERS-l12-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #99ff00\\\" points=\\\"530.081 248.374 516.499 206.571 552.058 180.736 587.618 229.68\\\"/>\\n</g><g><title>E</title>\\n<polygon id=\\\"CORNERS-l8-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ff66cc\\\" points=\\\"498.098 319.263 462.539 345.098 426.980 319.263 462.539 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l12-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ff66cc\\\" points=\\\"462.539 209.823 506.493 209.823 520.075 251.625 462.539 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l16-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ff66cc\\\" points=\\\"520.075 251.625 533.658 293.428 498.098 319.263 462.539 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l6-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ff66cc\\\" points=\\\"405.003 251.625 418.585 209.823 462.539 209.823 462.539 270.32\\\"/>\\n<polygon id=\\\"CORNERS-l2-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #ff66cc\\\" points=\\\"426.980 319.263 391.420 293.428 405.003 251.625 462.539 270.32\\\"/>\\n</g><g><title>D</title>\\n<polygon id=\\\"CORNERS-l18-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #999999\\\" points=\\\"587.618 300.698 631.572 300.698 645.154 342.500 587.618 361.195\\\"/>\\n<polygon id=\\\"CORNERS-l8-o1\\\" class=\\\"sticker\\\" style=\\\"fill: #999999\\\" points=\\\"552.058 410.138 516.499 384.303 530.081 342.500 587.618 361.195\\\"/>\\n<polygon id=\\\"CORNERS-l16-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #999999\\\" points=\\\"530.081 342.500 543.664 300.698 587.618 300.698 587.618 361.195\\\"/>\\n<polygon id=\\\"CORNERS-l17-o0\\\" class=\\\"sticker\\\" style=\\\"fill: #999999\\\" points=\\\"623.177 410.138 587.618 435.974 552.058 410.138 587.618 361.195\\\"/>\\n<polygon id=\\\"CORNERS-l14-o2\\\" class=\\\"sticker\\\" style=\\\"fill: #999999\\\" points=\\\"645.154 342.500 658.736 384.303 623.177 410.138 587.618 361.195\\\"/>\\n</g></svg>\\n`});var Ru,du=U(()=>{Ce();Lr();Mt();Ru={id:\\\"kilominx\\\",fullName:\\\"Kilominx\\\",kpuzzle:de(async()=>{let e=await jr(\\\"megaminx + chopasaurus\\\"),t=JSON.parse(JSON.stringify(e.getKPuzzleDefinition(!0)));delete t.orbits.CENTERS,delete t.orbits.CENTERS2,delete t.startStateData.CENTERS,delete t.startStateData.CENTERS2;for(let i of Object.values(t.moves))delete i.CENTERS,delete i.CENTERS2;t.name=\\\"kilominx\\\",delete t.experimentalPuzzleDescription;let r=await Promise.resolve().then(()=>(Mn(),ti)),n=new r.ExperimentalPGNotation(e,e.getOrbitsDef(!0)),o=new be(t,{experimentalPGNotation:{lookupMove:i=>i.toString()===\\\"x2\\\"||i.toString()===\\\"x2'\\\"?l.transformationData:n.lookupMove(i)}}),l=o.algToTransformation(\\\"Rv2 Fv Uv'\\\");return t.moves.x2=l,o}),svg:de(async()=>(await Promise.resolve().then(()=>(Bu(),Lu))).kilominxSVG)}});var hu={};me(hu,{rediCubeKPuzzleDefinition:()=>aL});var aL,Fu=U(()=>{aL={name:\\\"redi_cube\\\",orbits:{EDGES:{numPieces:12,numOrientations:2},CORNERS:{numPieces:8,numOrientations:3}},startStateData:{EDGES:{pieces:[0,1,2,3,4,5,6,7,8,9,10,11],orientation:[0,0,0,0,0,0,0,0,0,0,0,0]},CORNERS:{pieces:[0,1,2,3,4,5,6,7],orientation:[0,0,0,0,0,0,0,0]}},moves:{F:{EDGES:{permutation:[8,0,2,3,4,5,6,7,1,9,10,11],orientation:[0,1,0,0,0,0,0,0,1,0,0,0]},CORNERS:{permutation:[0,1,2,3,4,5,6,7],orientation:[1,0,0,0,0,0,0,0]}},x:{EDGES:{permutation:[4,8,0,9,6,10,2,11,5,7,1,3],orientation:[1,0,1,0,1,0,1,0,0,0,0,0]},CORNERS:{permutation:[4,0,3,5,7,6,2,1],orientation:[2,1,2,1,1,2,1,2]}},y:{EDGES:{permutation:[1,2,3,0,5,6,7,4,10,8,11,9],orientation:[0,0,0,0,0,0,0,0,1,1,1,1]},CORNERS:{permutation:[1,2,3,0,7,4,5,6],orientation:[0,0,0,0,0,0,0,0]}}},experimentalDerivedMoves:{z:\\\"[x: y]\\\",UR:\\\"[y: F]\\\",U:\\\"[y2: F]\\\",UL:\\\"[y': F]\\\",D:\\\"[x: F]\\\",L:\\\"[z2: F]\\\",R:\\\"[x2: F]\\\",B:\\\"[y2 x: F]\\\"}}});var Du={};me(Du,{rediCubeSVG:()=>sL});var sL,Au=U(()=>{sL=`<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\n<svg width=\\\"546px\\\" height=\\\"418px\\\" viewBox=\\\"-20 -20 546 418\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\">\\n<title>redi-cube</title>\\n<g istroke=\\\"none\\\" stroke-width=\\\"1\\\" fill=\\\"none\\\" fill-rule=\\\"evenodd\\\">\\n <g transform=\\\"translate(1.000000, 1.000000)\\\" fill-rule=\\\"nonzero\\\" stroke=\\\"#000000\\\" stroke-width=\\\"1.6\\\">\\n <g id=\\\"CORNERS-l0-o0\\\" transform=\\\"translate(208.000000, 80.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l0-o1\\\" transform=\\\"translate(256.000000, 128.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l0-o2\\\" transform=\\\"translate(208.000000, 128.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l1-o0\\\" transform=\\\"translate(208.000000, 0.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l1-o1\\\" transform=\\\"translate(384.000000, 128.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l1-o2\\\" transform=\\\"translate(336.000000, 128.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l2-o0\\\" transform=\\\"translate(128.000000, 0.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l2-o1\\\" transform=\\\"translate(0.000000, 128.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l2-o2\\\" transform=\\\"translate(464.000000, 128.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l3-o0\\\" transform=\\\"translate(128.000000, 80.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l3-o1\\\" transform=\\\"translate(128.000000, 128.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l3-o2\\\" transform=\\\"translate(80.000000, 128.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l4-o0\\\" transform=\\\"translate(208.000000, 256.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l4-o1\\\" transform=\\\"translate(208.000000, 208.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l4-o2\\\" transform=\\\"translate(256.000000, 208.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l5-o0\\\" transform=\\\"translate(128.000000, 256.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l5-o1\\\" transform=\\\"translate(80.000000, 208.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l5-o2\\\" transform=\\\"translate(128.000000, 208.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l6-o0\\\" transform=\\\"translate(128.000000, 336.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l6-o1\\\" transform=\\\"translate(464.000000, 208.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l6-o2\\\" transform=\\\"translate(0.000000, 208.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l7-o0\\\" transform=\\\"translate(208.000000, 336.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l7-o1\\\" transform=\\\"translate(336.000000, 208.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"CORNERS-l7-o2\\\" transform=\\\"translate(384.000000, 208.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <rect id=\\\"Rectangle\\\" x=\\\"0\\\" y=\\\"0\\\" width=\\\"40\\\" height=\\\"40\\\"></rect>\\n </g>\\n <g id=\\\"EDGES-l0-o0\\\" transform=\\\"translate(168.000000, 60.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 20 20 -8.8817842e-16 40 20 40 60 0 60\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l0-o1\\\" transform=\\\"translate(168.000000, 128.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 40 40 20 60 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l1-o0\\\" transform=\\\"translate(188.000000, 40.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"20 0 60 0 60 40 20 40 0 20\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l1-o1\\\" transform=\\\"translate(296.000000, 128.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 40 40 20 60 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l2-o0\\\" transform=\\\"translate(168.000000, 0.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 40 40 20 60 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l2-o1\\\" transform=\\\"translate(424.000000, 128.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 40 40 20 60 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l3-o0\\\" transform=\\\"translate(128.000000, 40.000000)\\\" style=\\\"fill: #FFFFFF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 60 20 40 40 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l3-o1\\\" transform=\\\"translate(40.000000, 128.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 40 40 20 60 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l4-o0\\\" transform=\\\"translate(168.000000, 256.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 40 40 20 60 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l4-o1\\\" transform=\\\"translate(168.000000, 188.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 20 20 0 40 20 40 60 0 60\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l5-o0\\\" transform=\\\"translate(188.000000, 296.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"20 0 60 0 60 40 20 40 0 20\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l5-o1\\\" transform=\\\"translate(296.000000, 188.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 20 20 0 40 20 40 60 0 60\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l6-o0\\\" transform=\\\"translate(168.000000, 316.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 20 20 -5.32907052e-14 40 20 40 60 0 60\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l6-o1\\\" transform=\\\"translate(424.000000, 188.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 20 20 -1.77635684e-15 40 20 40 60 0 60\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l7-o0\\\" transform=\\\"translate(128.000000, 296.000000)\\\" style=\\\"fill: #FFFF00;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 60 20 40 40 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l7-o1\\\" transform=\\\"translate(40.000000, 188.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 20 20 0 40 20 40 60 0 60\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l8-o0\\\" transform=\\\"translate(188.000000, 168.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"20 0 60 0 60 40 20 40 2.66453526e-14 20\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l8-o1\\\" transform=\\\"translate(256.000000, 168.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 60 20 40 40 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l9-o0\\\" transform=\\\"translate(128.000000, 168.000000)\\\" style=\\\"fill: #32CD32;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 60 20 40 40 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l9-o1\\\" transform=\\\"translate(60.000000, 168.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"20 0 60 0 60 40 20 40 0 20\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l10-o0\\\" transform=\\\"translate(384.000000, 168.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 60 20 40 40 0 40\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l10-o1\\\" transform=\\\"translate(316.000000, 168.000000)\\\" style=\\\"fill: #FF0000;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"20 0 60 0 60 40 20 40 5.32907052e-14 20\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l11-o0\\\" transform=\\\"translate(444.000000, 168.000000)\\\" style=\\\"fill: #2266FF;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"20 0 60 0 60 40 20 40 -3.55271368e-15 20\\\"></polygon>\\n </g>\\n <g id=\\\"EDGES-l11-o1\\\" transform=\\\"translate(0.000000, 168.000000)\\\" style=\\\"fill: #FFA500;\\\">\\n <polygon id=\\\"Rectangle\\\" points=\\\"0 0 40 0 60 20 40 40 0 40\\\"></polygon>\\n </g>\\n </g>\\n</g>\\n</svg>\\n`});var yu,Uu=U(()=>{Ce();Mt();yu={id:\\\"redi_cube\\\",fullName:\\\"Redi Cube\\\",inventedBy:[\\\"Oskar van Deventer\\\"],inventionYear:2009,kpuzzle:de(async()=>new be((await Promise.resolve().then(()=>(Fu(),hu))).rediCubeKPuzzleDefinition)),svg:async()=>(await Promise.resolve().then(()=>(Au(),Du))).rediCubeSVG}});var Pe,Jt=U(()=>{Ce();Q2();j2();Po();En();Lr();_f();Nf();Kf();Zf();nu();su();mu();du();Uu();Pe={\\\"3x3x3\\\":sa,\\\"2x2x2\\\":Wo,\\\"4x4x4\\\":new qr({id:\\\"4x4x4\\\",fullName:\\\"4\\\\xD74\\\\xD74 Cube\\\"}),\\\"5x5x5\\\":new qr({id:\\\"5x5x5\\\",fullName:\\\"5\\\\xD75\\\\xD75 Cube\\\"}),\\\"6x6x6\\\":new qr({id:\\\"6x6x6\\\",fullName:\\\"6\\\\xD76\\\\xD76 Cube\\\"}),\\\"7x7x7\\\":new qr({id:\\\"7x7x7\\\",fullName:\\\"7\\\\xD77\\\\xD77 Cube\\\"}),\\\"40x40x40\\\":new qr({id:\\\"40x40x40\\\",fullName:\\\"40\\\\xD740\\\\xD740 Cube\\\"}),clock:Wf,megaminx:ru,pyraminx:au,skewb:new Lt({id:\\\"skewb\\\",fullName:\\\"Skewb\\\",inventedBy:[\\\"Tony Durham\\\"]}),square1:cu,fto:Jf,gigaminx:new Lt({id:\\\"gigaminx\\\",fullName:\\\"Gigaminx\\\",inventedBy:[\\\"Tyler Fox\\\"],inventionYear:2006}),master_tetraminx:new Lt({pgID:\\\"master tetraminx\\\",id:\\\"master_tetraminx\\\",fullName:\\\"Master Tetraminx\\\",inventedBy:[\\\"Katsuhiko Okamoto\\\"],inventionYear:2002}),kilominx:Ru,redi_cube:yu}});function xu(e){bu=e}function xe(){if(!bu)throw new Error(\\\"Must be called from inside a worker, to avoid impact on page performance. Try importing from the top level of `cubing/solve`?\\\")}var bu,Bt=U(()=>{bu=!1});async function Su(){if(globalThis?.crypto?.getRandomValues)return crypto.getRandomValues.bind(crypto);{let e=(await(fL??(fL=import(gL())))).webcrypto;return e.getRandomValues.bind(e)}}var fL,uL,gL,wu=U(()=>{fL=null,uL=\\\"cr-yp-to\\\",gL=()=>uL.replace(/-/g,\\\"\\\")});function mL(e){let t=new Uint32Array(2);e(t);let r=t[0],n=t[1];return Math.floor(r*pL)+Math.floor(n/cL)}function LL(e){if(typeof e!=\\\"number\\\"||e<0||Math.floor(e)!==e)throw new Error(\\\"randomInt.below() not called with a positive integer value.\\\");if(e>vu)throw new Error(`Called randomInt.below() with max == ${e}, which is larger than JavaScript can handle with integer precision.`)}async function Se(){let e=await Su(),t=r=>{LL(r);let n=mL(e),o=Math.floor(vu/r)*r;return n<o?n%r:t(r)};return t}var vu,pL,cL,li=U(()=>{wu();vu=9007199254740992,pL=2097152,cL=2048});async function Zt(){let e=await Se();return t=>t[e(t.length)]}var Eu=U(()=>{li()});async function ku(e){for(let t=1;t<e.length;t++){let r=(await BL)(t);[e[t],e[r]]=[e[r],e[t]]}}var BL,Rt=U(()=>{Eu();li();li();BL=Se()});function Ot(e,t){let r=[],n=[];for(let g of t.split(`\\n`)){let p=g.split(\\\" \\\");if(!g.startsWith(\\\"SetOrder \\\")){if(g.startsWith(\\\"Alg \\\")){let u=k.fromString(g.substring(4));n.push({alg:u,transformation:e.algToTransformation(u)})}else if(g.startsWith(\\\"SubgroupSizes \\\"))for(let u=1;u<p.length;u++)r.push(parseInt(p[u]))}}let o={ordering:new Array(r.length)},l=[],i=0;l.push(0);let a=k.fromString(\\\"\\\"),s=e.identityTransformation();for(let g=0;g<r.length;g++)i+=r[g],l.push(i),n.splice(i-1,0,{alg:a,transformation:s});if(n.length!==i)throw Error(`Bad sgs; expected ${i-r.length} algs but saw ${n.length-r.length}`);let f={};for(let g in e.definition.orbits){let p=e.definition.orbits[g];f[g]=new Array(p.numPieces).fill(!1)}for(let g=r.length-1;g>=0;g--){let p=[];for(let c=l[g];c<l[g+1];c++){let m=n[c].transformation;for(let L in e.definition.orbits){let R=e.definition.orbits[L];for(let h=0;h<R.numPieces;h++)(m.transformationData[L].permutation[h]!==h||m.transformationData[L].orientation[h]!==0)&&(f[L][h]||(p.push({orbitName:L,permutationIdx:h}),f[L][h]=!0))}}let u={};for(let c=l[g];c<l[g+1];c++){let m=n[c].transformation.invert(),L=\\\"\\\";for(let R=0;R<p.length;R++){let h=p[R];L=`${L} ${m.transformationData[h.orbitName].permutation[h.permutationIdx]} ${m.transformationData[h.orbitName].orientation[h.permutationIdx]}`}u[L]=n[c],n[c].alg=n[c].alg.invert(),n[c].transformation=n[c].transformation.invert()}o.ordering[g]={pieceOrdering:p,lookup:u}}return o}var Nn=U(()=>{Le()});var Tu={};me(Tu,{cachedData222:()=>xL,data222:()=>Nu});async function xL(){return bL??(bL=Nu())}async function Nu(){return Ot(await Wo.kpuzzle(),`SubgroupSizes 24 21 18 15 12 9 6\\n\\nAlg F\\nAlg F2\\nAlg F'\\nAlg D\\nAlg D2\\nAlg D'\\nAlg L\\nAlg L2\\nAlg L'\\nAlg F U\\nAlg F U2\\nAlg F U'\\nAlg F L\\nAlg F L2\\nAlg F L'\\nAlg F2 U\\nAlg F2 U'\\nAlg F2 R\\nAlg F2 R'\\nAlg F' D\\nAlg F' D'\\nAlg F' R\\nAlg F' R'\\nAlg B\\nAlg B2\\nAlg B'\\nAlg B R\\nAlg B R2\\nAlg B R'\\nAlg B2 U\\nAlg B2 U2\\nAlg B2 U'\\nAlg B2 R\\nAlg B2 R2\\nAlg B2 R'\\nAlg B' U\\nAlg B' U'\\nAlg F D' F'\\nAlg F2 L F2\\nAlg B R' B2\\nAlg B R' U2\\nAlg B2 U R'\\nAlg B2 R B'\\nAlg R\\nAlg R2\\nAlg R'\\nAlg R2 U\\nAlg R2 U2\\nAlg R2 U'\\nAlg R' U\\nAlg R' U2\\nAlg R' U'\\nAlg F R F'\\nAlg F R2 F'\\nAlg L2 D' L2\\nAlg L' B L\\nAlg R2 U' R\\nAlg R' U R2\\nAlg R' U R'\\nAlg F R F' U2\\nAlg F' U F\\nAlg F' U2 F\\nAlg F' U' F\\nAlg L F L'\\nAlg L F2 L'\\nAlg L F' L'\\nAlg F' D R D'\\nAlg F' U2 F U'\\nAlg F D2 B D2 F'\\nAlg F2 D' L2 D F2\\nAlg F2 L F L' F\\nAlg L' F2 L' F2 L\\nAlg F L' U' L2 F L'\\nAlg F2 L F L' U2 F\\nAlg U\\nAlg U2\\nAlg U'\\nAlg F2 D2 B D2 F2\\nAlg F2 D2 B' D2 F2\\nAlg L2 D2 R D2 L2\\nAlg L2 D2 R' D2 L2\\nAlg F2 D2 B D2 F2 U\\nAlg F2 D2 B D2 F2 U'\\nAlg U F2 D2 B D2 F2\\nAlg U F2 D2 B' D2 F2\\nAlg F D B D' R' F' U\\nAlg F' D L F U B' L'\\nAlg F' L' F U L U L'\\nAlg D' L F D R' U' F'\\nAlg L F L' U' F' U' F\\nAlg L D' F' L' U' R F\\nAlg F D F U F' L' F' R'\\nAlg F2 D' F L F2 D F' R'\\nAlg F D' F L' D F R2 U2 F' U'\\nAlg F D' L D' L F D2 L2 B' R'\\nAlg F L' D F R2 D2 L D F' U2\\nAlg F L' D F2 D' L F L2 F2 U\\nAlg F D F' D L2 F R' F' D' B2 U'`)}var bL,Gu=U(()=>{Jt();Nn();bL=null});async function Tn(e,t){let r=new ct;r.experimentalPushAlg(e);for(let n of t){let o=(await Zt())(n);o!==null&&r.push(B.fromString(o))}return r.toAlg()}var ai=U(()=>{Le();Rt()});function Qu(e,t){return e.slice(t)+e.slice(0,t)}function CL(e){let t=[[],[]];for(let r=0;r<6;r++)if(e.stateData.CENTERS.pieces[r]!==r)throw new Error(\\\"non-oriented puzzles are not supported\\\");for(let r=0;r<12;r++)t[0].push(Qu(EL[e.stateData.EDGES.pieces[r]],e.stateData.EDGES.orientation[r]));for(let r=0;r<8;r++)t[1].push(Qu(kL[e.stateData.CORNERS.pieces[r]],e.stateData.CORNERS.orientation[r]));return t.push(_L),t}function ju(e){let t=CL(e);return zL.map(([r,n,o])=>t[r][n][o]).join(\\\"\\\")}var EL,kL,_L,zL,qu=U(()=>{EL=\\\"UF UR UB UL DF DR DB DL FR FL BR BL\\\".split(\\\" \\\"),kL=\\\"UFR URB UBL ULF DRF DFL DLB DBR\\\".split(\\\" \\\"),_L=\\\"U L F R B D\\\".split(\\\" \\\"),zL=[[1,2,0],[0,2,0],[1,1,0],[0,3,0],[2,0,0],[0,1,0],[1,3,0],[0,0,0],[1,0,0],[1,0,2],[0,1,1],[1,1,1],[0,8,1],[2,3,0],[0,10,1],[1,4,1],[0,5,1],[1,7,2],[1,3,2],[0,0,1],[1,0,1],[0,9,0],[2,2,0],[0,8,0],[1,5,1],[0,4,1],[1,4,2],[1,5,0],[0,4,0],[1,4,0],[0,7,0],[2,5,0],[0,5,0],[1,6,0],[0,6,0],[1,7,0],[1,2,2],[0,3,1],[1,3,1],[0,11,1],[2,1,0],[0,9,1],[1,6,1],[0,7,1],[1,5,2],[1,1,2],[0,2,1],[1,2,1],[0,10,0],[2,4,0],[0,11,0],[1,7,1],[0,6,1],[1,6,2]]});function Vu(e,t){let r=new fe(e.kpuzzle,{EDGES:e.stateData.EDGES,CORNERS:e.stateData.CORNERS,CENTERS:{pieces:e.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}}).experimentalToTransformation(),n=new fe(t.kpuzzle,{EDGES:t.stateData.EDGES,CORNERS:t.stateData.CORNERS,CENTERS:{pieces:t.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}}).experimentalToTransformation();return r.isIdentical(n)}function Hu(e,t){if(Vu(e.startState(),t))return!1;for(let r of\\\"ULFRBD\\\")for(let n=1;n<4;n++){let o=e.moveToTransformation(new B(r,n)).toKState();if(Vu(o,t))return!1}return!0}var Yu=U(()=>{Le();Ce()});var Ju,Zu=U(()=>{Ju=[[\\\"R U'\\\",\\\"R2 B\\\",\\\"D2 B2\\\",\\\"D' L B'\\\",\\\"R' U'\\\",\\\"B\\\",\\\"D B2\\\",\\\"R' B\\\",\\\"L' U\\\",\\\"L2 B'\\\",\\\"B2\\\",\\\"D L B'\\\",\\\"L U\\\",\\\"B'\\\",\\\"U'\\\",\\\"R B\\\",\\\"D' B2\\\",\\\"L B'\\\",\\\"U2\\\",\\\"U L' B'\\\",\\\"\\\",\\\"U' L' B'\\\",\\\"U\\\",\\\"L' B'\\\"],[\\\"F2 L2\\\",\\\"F' L'\\\",\\\"R' F L2\\\",\\\"D' L2\\\",\\\"F L2\\\",\\\"F2 L'\\\",\\\"R' F' L'\\\",\\\"R2 F L2\\\",\\\"R2 F2 L'\\\",\\\"L2\\\",\\\"F L'\\\",\\\"D' L\\\",\\\"D2 L2\\\",\\\"R2 F' L'\\\",\\\"D L\\\",\\\"\\\",\\\"L2 F L'\\\",\\\"L F' L2\\\",\\\"L F L'\\\",\\\"F' L2\\\",\\\"L'\\\",\\\"D L2\\\",\\\"D F L'\\\",\\\"L\\\"],[\\\"R B U2 B'\\\",\\\"R2 B U' B'\\\",\\\"F2 B U B'\\\",\\\"F B2 L' B2\\\",\\\"B2 L B2\\\",\\\"B U' B'\\\",\\\"R2 B U2 B'\\\",\\\"R' B U' B'\\\",\\\"B2 L' B2\\\",\\\"F B U B'\\\",\\\"B2 U' B2\\\",\\\"B' L B\\\",\\\"L F' B D' B'\\\",\\\"B' U' B2 D B'\\\",\\\"B U2 B'\\\",\\\"R B U' B'\\\",\\\"B2 L2 B2\\\",\\\"D' B' L B\\\",\\\"B U B'\\\",\\\"F' B2 L' B2\\\",\\\"\\\",\\\"B2 L' B' U' B'\\\"],[\\\"U F2 L2 U'\\\",\\\"F' U L' U'\\\",\\\"F2 U L' U'\\\",\\\"U F L2 U'\\\",\\\"U2 B2 U2\\\",\\\"R' U' B U\\\",\\\"D2 U L U'\\\",\\\"D U2 B' U2\\\",\\\"U L2 U'\\\",\\\"F U L' U'\\\",\\\"D U L U'\\\",\\\"U2 B' U2\\\",\\\"\\\",\\\"U2 B' U' L' U'\\\",\\\"U2 L' U2\\\",\\\"U' B U\\\",\\\"U L U'\\\",\\\"D' U2 B' U2\\\",\\\"U L' U'\\\",\\\"U2 B U2\\\"],[\\\"R' D' F2\\\",\\\"F'\\\",\\\"F2\\\",\\\"D R F'\\\",\\\"R D' F2\\\",\\\"R2 F'\\\",\\\"D' F2\\\",\\\"R F'\\\",\\\"F2 R' D' F2\\\",\\\"F\\\",\\\"D2 F2\\\",\\\"D' R F'\\\",\\\"R2 D' F2\\\",\\\"R' F'\\\",\\\"D F2\\\",\\\"D2 R F'\\\",\\\"\\\",\\\"F R' D' F2\\\"],[\\\"R' D2 F' D F\\\",\\\"R F2 R2 F2\\\",\\\"R2 F' D2 F\\\",\\\"F' R2 D2 F\\\",\\\"L D' L'\\\",\\\"D F' D2 F\\\",\\\"F2 R2 F2\\\",\\\"R F' D2 F\\\",\\\"F' R2 D' F\\\",\\\"F' R' D2 F\\\",\\\"F2 R' F2\\\",\\\"L D L'\\\",\\\"F' R D' F\\\",\\\"F2 R F2\\\",\\\"F' D2 F\\\",\\\"\\\",\\\"L D2 R D' L'\\\",\\\"F' D2 F' R F2\\\",\\\"D2 R2 F2 R2 F2\\\",\\\"D F' D' F\\\",\\\"F' D F\\\"],[\\\"U F2 U'\\\",\\\"R U F' U'\\\",\\\"D R U F2 U'\\\",\\\"U F U'\\\",\\\"R2 U F2 U'\\\",\\\"R' U F' U'\\\",\\\"R U F2 U'\\\",\\\"R2 U F' U'\\\",\\\"\\\",\\\"U L D L' F U'\\\",\\\"F2 D' R D F2\\\",\\\"D2 U F U'\\\",\\\"R' U F2 U'\\\",\\\"U F' U'\\\",\\\"F2 D2 R D2 F2\\\",\\\"D U F U'\\\"],[\\\"R2\\\",\\\"R' B' D B\\\",\\\"D R'\\\",\\\"F' R2 F\\\",\\\"\\\",\\\"R B' D B\\\",\\\"R'\\\",\\\"B' D B\\\",\\\"D' R'\\\",\\\"D2 F' R2 F\\\",\\\"R\\\",\\\"R2 B' D B\\\",\\\"D2 R'\\\",\\\"B' D' B\\\"],[\\\"R2 D' R2\\\",\\\"F' R' F R\\\",\\\"R D' R2 D R'\\\",\\\"D2 R2 D2 R2\\\",\\\"R' D' F' R F\\\",\\\"U F D F' U'\\\",\\\"\\\",\\\"R2 D2 B R' B' R'\\\",\\\"R' F D' F2 R F\\\",\\\"R2 D R2\\\",\\\"F2 U F U' F\\\",\\\"R' D F' R F\\\",\\\"D R2 D2 R2\\\",\\\"U F D' F' U'\\\",\\\"D R' D2 F' R F\\\",\\\"R2 D2 R2\\\",\\\"U F D2 F' U'\\\",\\\"R' D2 F' R F\\\"],[\\\"B R B'\\\",\\\"F D F' B R2 B'\\\",\\\"D B R2 B'\\\",\\\"D2 B R' B'\\\",\\\"B R2 B'\\\",\\\"D B R' B'\\\",\\\"D' B R2 B'\\\",\\\"B R' B'\\\",\\\"\\\",\\\"B R2 B' D B R' B'\\\",\\\"D2 B R2 B'\\\",\\\"D' B R' B'\\\"],[\\\"\\\",\\\"R' D R F D2 F'\\\",\\\"R' D R\\\",\\\"D F D' F'\\\",\\\"R F' R' F\\\",\\\"F D' F'\\\",\\\"R' D' R\\\",\\\"F D2 F'\\\",\\\"R' D2 R\\\",\\\"F D F'\\\"],[\\\"\\\",\\\"F2 D2 R F' R' D2 F' D2 F'\\\",\\\"F2 D2 F' D' F D' F' D2 F'\\\",\\\"F2 D F2 D F2 D2 F2\\\",\\\"D2 F L D2 L' D2 F'\\\",\\\"D F D2 L D2 L' F'\\\",\\\"R' D B' D2 B D' R\\\",\\\"R' D2 B' D2 B R\\\",\\\"F D2 F' D F D F'\\\",\\\"F D' L D2 L' D F'\\\",\\\"B D' F D B' D' F'\\\",\\\"F D2 L D2 L' F'\\\",\\\"F D' L D L' D F'\\\",\\\"F L D2 L' D2 F'\\\",\\\"R' B' D2 B D2 R\\\"],[\\\"D'\\\",\\\"F L D L' D' F'\\\",\\\"D2\\\",\\\"L B D B' D' L'\\\",\\\"D\\\",\\\"B' L' D' L D B\\\",\\\"\\\",\\\"D F L D L' D' F'\\\"],[\\\"F' D2 F D F' D F\\\",\\\"F' D' R' D R F\\\",\\\"F' R' D' R D F\\\",\\\"B D R D' R' B'\\\",\\\"\\\",\\\"D B' D' L' D L B\\\"],[\\\"D F D F' D F D2 F'\\\",\\\"F' U2 B' R' B U2 F' L F' L' F'\\\",\\\"\\\",\\\"D2 L D L2 F L F2 D F\\\"],[\\\"L B' L' F L B L' F'\\\",\\\"F2 U F' D2 F U' F' D2 F'\\\",\\\"D' F' D B D' F D B'\\\",\\\"F L2 F R2 F' L2 F R2 F2\\\",\\\"D B D' F' D B' D' F\\\",\\\"R F L F' R' F L' F'\\\",\\\"\\\",\\\"D2 B L' U2 L B' D2 B L' U2 L B'\\\",\\\"D2 F R' U2 R F' D2 F R' U2 R F'\\\",\\\"R F L' F' R' F L F'\\\",\\\"D F D' B' D F' D' B\\\",\\\"L2 F2 L' B2 L F2 L' B2 L'\\\"],[\\\"L B R' B' L' B R B'\\\",\\\"R' B R F' R' B' R F\\\",\\\"L D2 L U L' D2 L U' L2\\\",\\\"\\\",\\\"D2 B' D2 F D' L2 F L2 F' D2 B D' F'\\\",\\\"D2 F' R' F R2 B' D2 B D2 R' F D2 F'\\\",\\\"L B L' F L B' L' F'\\\",\\\"F' D2 F' U' F D2 F' U F2\\\",\\\"D' B' D F D' B D F'\\\"],[\\\"\\\",\\\"D2 F' L U2 L' F D2 F' L U2 L' F\\\",\\\"D2 B' R U2 R' B D2 B' R U2 R' B\\\"]]});var v1={};me(v1,{initialize:()=>UB,solveState:()=>bB});function a1(){}function ML(e){function t(){}return t.prototype=e||{},new t}function NL(e){return e instanceof Array?e[0]:null}function Jo(e,t,r){var n=Ai,o=TL,l=NL,i=n[e],a=l(i);i&&!a?q=i:(q=n[e]=t?o(t):{},q.castableTypeMap$=r,q.constructor=q,!t&&(q.typeMarker$=a1));for(var s=3;s<arguments.length;++s)arguments[s].prototype=q;a&&(q.___clazz$=a)}function TL(e){var t=Ai;return ML(t[e])}function GL(){}function pi(e){return e<<24>>24}function Ua(){this.typeName=null,this.simpleName=null,this.packageName=null,this.compoundName=null,this.canonicalName=null,this.typeId=null,this.arrayLiterals=null}function ba(e,t){var r;return r=new Ua,r.packageName=e,r.compoundName=t,r}function Ur(e,t,r){var n;return n=ba(e,t),WL(r,n),n}function OL(e,t){var r;return r=ba(e,t),r.modifiers=2,r}function yi(e,t){var r;return r=ba(\\\"\\\",e),r.typeId=t,r.modifiers=1,r}function s1(e,t){var r=e.arrayLiterals=e.arrayLiterals||[];return r[t]||(r[t]=e.createClassLiteralForArray(t))}function IL(e){if(e.isPrimitive())return null;var t=e.typeId,r=Ai[t];return r}function WL(e,t){if(!!e){t.typeId=e;var r=IL(t);if(!r){Ai[e]=[t];return}r.___clazz$=t}}function X(e,t){return s1(e,t)}function Y(e,t,r,n,o,l){var i;return i=u1(o,n),$(X(e,l),t,r,o,i),i}function et(e,t,r,n,o,l){return f1(e,t,r,n,o,0,l)}function f1(e,t,r,n,o,l,i){var a,s,f,g,p;if(g=o[l],f=l==i-1,a=f?n:0,p=u1(a,g),$(X(e,i-l),t[l],r[l],a,p),!f)for(++l,s=0;s<g;++s)p[s]=f1(e,t,r,n,o,l,i);return p}function $(e,t,r,n,o){return o.___clazz$=e,o.castableTypeMap$=t,o.typeMarker$=a1,o.__elementTypeId$=r,o.__elementTypeCategory$=n,o}function u1(e,t){var r=new Array(t),n;switch(e){case 6:n={l:0,m:0,h:0};break;case 7:n=0;break;case 8:n=!1;break;default:return r}for(var o=0;o<t;++o)r[o]=n;return r}function Xu(e){var t,r,n;return t=e&tt,r=e>>22&tt,n=e<0?hr:0,KL(t,r,n)}function KL(e,t,r){return{l:e,m:t,h:r}}function QL(e,t){var r,n,o;return r=e.l+t.l,n=e.m+t.m+(r>>22),o=e.h+t.h+(n>>22),{l:r&tt,m:n&tt,h:o&hr}}function It(e,t){return{l:e.l&t.l,m:e.m&t.m,h:e.h&t.h}}function xa(e){var t,r;return e>-129&&e<128?(t=e+128,si==null&&(si=Y(AB,ae,293,256,0,1)),r=si[t],!r&&(r=si[t]=Xu(e)),r):Xu(e)}function g1(e,t){var r,n;return r=e.h>>19,n=t.h>>19,r==0?n!=0||e.h>t.h||e.h==t.h&&e.m>t.m||e.h==t.h&&e.m==t.m&&e.l>=t.l:!(n==0||e.h<t.h||e.h==t.h&&e.m<t.m||e.h==t.h&&e.m==t.m&&e.l<t.l)}function pa(e,t){return e.l!=t.l||e.m!=t.m||e.h!=t.h}function La(e,t){return{l:e.l|t.l,m:e.m|t.m,h:e.h|t.h}}function ci(e,t){var r,n,o;return t&=63,t<22?(r=e.l<<t,n=e.m<<t|e.l>>22-t,o=e.h<<t|e.m>>22-t):t<44?(r=0,n=e.l<<t-22,o=e.m<<t-22|e.l>>44-t):(r=0,n=0,o=e.l<<t-44),{l:r&tt,m:n&tt,h:o&hr}}function Hr(e,t){var r,n,o,l,i;return t&=63,r=e.h,n=(r&PL)!=0,n&&(r|=-1048576),t<22?(i=r>>t,l=e.m>>t|r<<22-t,o=e.l>>t|e.m<<22-t):t<44?(i=n?hr:0,l=r>>t-22,o=e.m>>t-22|r<<44-t):(i=n?hr:0,l=n?tt:0,o=r>>t-44),{l:o&tt,m:l&tt,h:i&hr}}function p1(e,t){var r,n,o;return r=e.l-t.l,n=e.m-t.m+(r>>22),o=e.h-t.h+(n>>22),{l:r&tt,m:n&tt,h:o&hr}}function Yr(e){return e.l|e.m<<22}function jL(e){this.string=e}function Fr(e,t){return e>t?e:t}function Sa(e,t){return e<t?e:t}function qL(e,t){return e.indexOf(t)}function VL(e){return HL(e,0,e.length)}function HL(e,t,r){for(var n=\\\"\\\",o=t;o<r;){var l=Math.min(o+1e4,r);n+=String.fromCharCode.apply(null,e.slice(o,l)),o=l}return n}function YL(e){return String.fromCharCode(e&Ve)}function $u(e){return e.string+=\\\" \\\",e}function e1(e,t){return e.string+=t,e}function ZL(){jL.call(this,\\\"\\\")}function mi(e,t){var r;if(e===t)return!0;if(e.length!=t.length)return!1;for(r=0;r<e.length;++r)if(e[r]!=t[r])return!1;return!0}function Jr(){t1||(t1=!0,Rr=et(Ae,[ae,De],[11,0],7,[495,18],2),jn=et(Ae,[ae,De],[11,0],7,[324,18],2),Yn=et(Ae,[ae,De],[11,0],7,[336,18],2),Dr=et(Ae,[ae,De],[11,0],7,[495,8],2),xi=Y(Te,Ne,0,20048,7,1),bi=Y(Te,Ne,0,20791,7,1),Qn=Y(Te,Ne,0,82945,7,1),On=et(Ae,[ae,De],[11,0],7,[2768,10],2),Wn=et(Ae,[ae,De],[11,0],7,[2768,10],2),Kn=et(Ae,[ae,De],[11,0],7,[24,10],2),Zo=et(Ae,[ae,De],[11,0],7,[24,16],2),Zr=et(Ae,[ae,De],[11,0],7,[140,16],2),Ui=Y(Te,Ne,0,8305,7,1),In=Y(Te,Ne,0,48441,7,1))}function XL(e,t,r){return e.slice_0=Rr[t.slice_0][r],e.flip=Yn[t.flip][(J(),$r)[r<<3|t.fsym]],e.fsym=e.flip&7^t.fsym,e.flip>>=3,e.twist=jn[t.twist][$r[r<<3|t.tsym]],e.tsym=e.twist&7^t.tsym,e.twist>>=3,e.prun=Fr(Fr(at(xi,e.twist*495+Dr[e.slice_0][e.tsym]),at(bi,e.flip*495+Dr[e.slice_0][e.fsym])),at(Qn,e.twist<<11|yr[e.flip<<3|e.fsym^e.tsym])),e.prun}function $L(e,t,r){return r=(J(),Vo)[3][r],e.flipc=Yn[t.flipc>>3][$r[r<<3|t.flipc&7]]^t.flipc&7,e.twistc=jn[t.twistc>>3][$r[r<<3|t.twistc&7]]^t.twistc&7,at(Qn,e.twistc>>3<<11|yr[e.flipc^e.twistc&7])}function c1(e,t,r){var n;return e.twist=(J(),Yo)[Bi(t)],e.flip=Xr[Li(t)],e.tsym=e.twist&7,e.twist=e.twist>>3,e.prun=at(Qn,e.twist<<11|yr[e.flip^e.tsym]),e.prun>r||(e.fsym=e.flip&7,e.flip=e.flip>>3,e.slice_0=494-Vn(t.ea,8,!0),e.prun=Fr(e.prun,Fr(at(xi,e.twist*495+Dr[e.slice_0][e.tsym]),at(bi,e.flip*495+Dr[e.slice_0][e.fsym]))),e.prun>r)?!1:(n=new ge,Xo(t,1,n),$o(t,1,n),e.twistc=Yo[Bi(n)],e.flipc=Xr[Li(n)],e.prun=Fr(e.prun,at(Qn,e.twistc>>3<<11|yr[e.flipc^e.twistc&7])),e.prun<=r)}function jo(){Jr()}function at(e,t){return Jr(),e[t>>3]>>(t<<2)&15}function m1(e){Jr(),!(fi==2||fi==1&&!e)&&(fi==0&&(pB(),eB(),rB(),oB(),tB(),J(),Ra(2048,_a,Xr,n1=Y(Ae,De,0,336,7,1),0),Ra(2187,Ca,Yo,ca=Y(Ae,De,0,324,7,1),1),nB(),lB(),iB()),Qo(Ui,Kn,Zo,On,(J(),da),584244,e),Qo(In,Ba,Zr,Wn,da,514084,e),Qo(xi,Rr,Dr,jn,ca,431619,e),Qo(bi,Rr,Dr,Yn,n1,431619,e),Qo(Qn,null,null,jn,ca,103939,e),fi=e?2:1)}function eB(){var e,t,r,n;for(e=new ge,t=new ge,r=0;r<2768;r++)for(fB(e,(J(),Gn)[r]),n=0;n<10;n++)Ar(e,ue[(Ye(),St)[n]],t),On[r][n]=di(rr[ft(t.ca,8,!1)])&Ve}function tB(){var e,t,r,n,o;for(e=new ge,t=new ge,Ba=et(Ae,[ae,De],[11,0],7,[140,10],2),r=0;r<140;r++){for(S1(e.ca,r%70,0,!1),o=0;o<10;o++)Ar(e,(J(),ue)[(Ye(),St)[o]],t),Ba[r][o]=Vn(t.ca,0,!1)+70*(165>>o&1^~~(r/70))&Ve;for(n=0;n<16;n++)Xo(e,(J(),st)[0][n],t),Zr[r][n]=Vn(t.ca,0,!1)+70*~~(r/70)&Ve}}function rB(){var e,t,r,n;for(e=new ge,t=new ge,r=0;r<2768;r++)for(R1(e,(J(),Gn)[r]),n=0;n<10;n++)dt(e,ue[(Ye(),St)[n]],t),Wn[r][n]=rr[ft(t.ea,8,!0)]}function nB(){var e,t,r,n;for(e=new ge,t=new ge,r=0;r<336;r++)for(Ea(e,(J(),_a)[r]),n=0;n<18;n++)dt(e,ue[n],t),Yn[r][n]=Xr[Li(t)]}function oB(){var e,t,r,n,o;for(e=new ge,t=new ge,r=0;r<24;r++){for(en(e.ea,r,12,!0),o=0;o<10;o++)dt(e,(J(),ue)[(Ye(),St)[o]],t),Kn[r][o]=ft(t.ea,12,!0)%24&Ve;for(n=0;n<16;n++)$o(e,(J(),st)[0][n],t),Zo[r][n]=ft(t.ea,12,!0)%24&Ve}}function Qo(e,t,r,n,o,l,i){var a,s,f,g,p,u,c,m,L,R,h,y,A,E,v,K,Z,M,ne,b,_,P,x,S,z,Q,H,ce,Re,Ue,ve,zt,Oe,nt,ze,D;if(A=l&15,h=(l>>4&1)==1?ya:0,f=(l>>5&1)==1,a=l>>8&15,g=l>>12&15,p=l>>16&15,R=i?g:p,y=(1<<A)-1,s=t==null,m=s?2048:t.length,L=m*n.length,c=f?10:18,u=c==10?66:599186,v=(e[L>>3]>>(L<<2)&15)-1,v==-1){for(M=0;M<~~(L/8)+1;M++)e[M]=Ko;e[0]^=1,v=0}for(;v<R;){for(z=(v+1)*Ko^-1,ne=0;ne<e.length;ne++)ze=e[ne]^z,ze&=ze>>1,e[ne]+=ze&ze>>2&Ko;for(P=v>a,Ue=P?v+2:v,Re=Ue*Ko,E=P?v:v+2,++v,D=v^v+1,nt=0,M=0;M<L;++M,nt>>=4){if((M&7)==0&&(nt=e[M>>3],((nt^Re)-Ko&~(nt^Re)&-2004318072)==0)){M+=7;continue}if((nt&15)==Ue)for(H=M%m,ve=~~(M/m),K=0,Z=0,s&&(K=(J(),Xr)[H],Z=K&7,K>>=3),S=0;S<c;S++){if(Oe=n[ve][S],s?ce=(J(),yr)[Yn[K][$r[S<<3|Z]]^Z^Oe&y]:ce=r[t[H][S]][Oe&y],Oe>>=A,b=Oe*m+ce,Q=e[b>>3]>>(b<<2)&15,Q!=E){Q<v-1&&(S+=u>>S&3);continue}if(P){e[M>>3]^=D<<(M<<2);break}for(e[b>>3]^=D<<(b<<2),x=1,zt=o[Oe];(zt>>=1)!=0;x++)(zt&1)==1&&(_=Oe*m,s?_+=(J(),yr)[Xr[ce]^x]:_+=r[ce][x^h>>(x<<1)&3],(e[_>>3]>>(_<<2)&15)==E&&(e[_>>3]^=D<<(_<<2)))}}}}function lB(){var e,t,r,n;for(e=new ge,t=new ge,r=0;r<324;r++)for(ka(e,(J(),Ca)[r]),n=0;n<18;n++)Ar(e,ue[n],t),jn[r][n]=Yo[Bi(t)]}function iB(){var e,t,r,n,o,l,i,a;for(e=new ge,t=new ge,n=0;n<495;n++){for(S1(e.ea,494-n,8,!0),l=0;l<18;l+=3)dt(e,(J(),ue)[l],t),Rr[n][l]=494-Vn(t.ea,8,!0)&Ve;for(o=0;o<16;o+=2)$o(e,(J(),st)[0][o],t),Dr[n][o>>1]=494-Vn(t.ea,8,!0)&Ve}for(r=0;r<495;r++)for(o=0;o<18;o+=3)for(a=Rr[r][o],i=1;i<3;i++)a=Rr[a][o],Rr[r][o+i]=a&Ve}function J(){r1||(r1=!0,er=Y(Ho,ae,7,16,0,1),ue=Y(Ho,ae,7,18,0,1),Si=Y(yB,ae,0,18,6,1),F1=Y(Te,Ne,0,48,7,1),tr=et(Te,[ae,Ne],[17,0],7,[16,16],2),st=et(Te,[ae,Ne],[17,0],7,[16,16],2),Vo=et(Te,[ae,Ne],[17,0],7,[16,18],2),$r=Y(Te,Ne,0,144,7,1),dr=et(Te,[ae,Ne],[17,0],7,[16,18],2),_a=Y(Ae,De,0,336,7,1),Ca=Y(Ae,De,0,324,7,1),Gn=Y(Ae,De,0,2768,7,1),qn=Y(ee,ie,0,2768,7,1),za=Y(Ae,De,0,2768,7,1),hi=Y(ee,ie,0,24,7,1),Xr=Y(Ae,De,0,2048,7,1),Yo=Y(Ae,De,0,2187,7,1),rr=Y(Ae,De,0,40320,7,1),yr=Y(Ae,De,0,2688,7,1),ha=new xt(2531,1373,67026819,1367),Fa=new xt(2089,1906,322752913,2040),Fi=$(X(ee,2),ae,10,0,[$(X(ee,1),ie,0,7,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),$(X(ee,1),ie,0,7,[6,7,8,0,1,2,3,4,5,15,16,17,9,10,11,12,13,14]),$(X(ee,1),ie,0,7,[3,4,5,6,7,8,0,1,2,12,13,14,15,16,17,9,10,11]),$(X(ee,1),ie,0,7,[2,1,0,5,4,3,8,7,6,11,10,9,14,13,12,17,16,15]),$(X(ee,1),ie,0,7,[8,7,6,2,1,0,5,4,3,17,16,15,11,10,9,14,13,12]),$(X(ee,1),ie,0,7,[5,4,3,8,7,6,2,1,0,14,13,12,17,16,15,11,10,9])]),gB(),cB())}function wa(e){e.ca=$(X(ee,1),ie,0,7,[0,1,2,3,4,5,6,7]),e.ea=$(X(ee,1),ie,0,7,[0,2,4,6,8,10,12,14,16,18,20,22])}function L1(e){!e.temps&&(e.temps=new ge),Ar(Fa,e,e.temps),Ar(e.temps,ha,e),dt(Fa,e,e.temps),dt(e.temps,ha,e)}function va(e,t){var r,n;for(n=0;n<8;n++)e.ca[n]=t.ca[n];for(r=0;r<12;r++)e.ea[r]=t.ea[r]}function aB(e){return di(rr[ft(e.ca,8,!1)])}function sB(e){return rr[ft(e.ea,8,!0)]}function Li(e){var t,r;for(r=0,t=0;t<11;t++)r=r<<1|e.ea[t]&1;return r}function Bi(e){var t,r;for(r=0,t=0;t<7;t++)r+=(r<<1)+(e.ca[t]>>3);return r}function Ri(e){var t,r;for(!e.temps&&(e.temps=new ge),r=0;r<12;r++)e.temps.ea[e.ea[r]>>1]=(r<<1|e.ea[r]&1)<<24>>24;for(t=0;t<8;t++)e.temps.ca[e.ca[t]&7]=(t|32>>(e.ca[t]>>3)&24)<<24>>24;va(e,e.temps)}function B1(e){var t,r,n,o,l,i,a;for(t=new d1(e),o=new ge,r=di(rr[ft(t.ca,8,!1)])>>4,i={l:0,m:0,h:0},a=0;a<6;a++){if(n=di(rr[ft(t.ca,8,!1)])>>4,r==n)for(l=0;l<16;l++)Xo(t,st[0][l],o),mi(o.ca,e.ca)&&($o(t,st[0][l],o),mi(o.ea,e.ea)&&(i=La(i,ci({l:1,m:0,h:0},(a<<4|l)<48?a<<4|l:48))));L1(t),a%3==2&&Ri(t)}return i}function fB(e,t){en(e.ca,t,8,!1)}function R1(e,t){en(e.ea,t,8,!0)}function Ea(e,t){var r,n,o;for(n=0,r=10;r>=0;--r,t>>=1)n^=o=t&1,e.ea[r]=(e.ea[r]&-2|o)<<24>>24;e.ea[11]=(e.ea[11]&-2|n)<<24>>24}function ka(e,t){var r,n,o;for(n=15,r=6;r>=0;--r,t=~~(t/3))n-=o=t%3,e.ca[r]=(e.ca[r]&7|o<<3)<<24>>24;e.ca[7]=(e.ca[7]&7|n%3<<3)<<24>>24}function uB(e){var t,r,n,o,l;for(l=0,o=0,n=0;n<12;n++)o|=1<<(e.ea[n]>>1),l^=e.ea[n]&1;if(o!=4095)return-2;if(l!=0)return-3;for(r=0,l=0,t=0;t<8;t++)r|=1<<(e.ca[t]&7),l+=e.ca[t]>>3;return r!=255?-4:l%3!=0?-5:(Da(ft(e.ea,12,!0),12)^Da(ft(e.ca,8,!1),8))!=0?-6:0}function Xo(e,t,r){J();var n,o,l,i,a,s;for(s=er[st[0][t]],a=er[t],n=0;n<8;n++)l=s.ca[e.ca[a.ca[n]&7]&7]>>3,i=e.ca[a.ca[n]&7]>>3,o=l<3?i:(3-i)%3,r.ca[n]=(s.ca[e.ca[a.ca[n]&7]&7]&7|o<<3)<<24>>24}function Ar(e,t,r){J();var n,o,l;for(n=0;n<8;n++)o=e.ca[t.ca[n]&7]>>3,l=t.ca[n]>>3,r.ca[n]=(e.ca[t.ca[n]&7]&7|(o+l)%3<<3)<<24>>24}function gi(e,t,r){var n,o,l,i;for(n=0;n<8;n++)l=e.ca[t.ca[n]&7]>>3,i=t.ca[n]>>3,o=l+(l<3?i:6-i),o=o%3+(l<3==i<3?0:3),r.ca[n]=(e.ca[t.ca[n]&7]&7|o<<3)<<24>>24}function ge(){J(),wa(this)}function xt(e,t,r,n){wa(this),en(this.ca,e,8,!1),ka(this,t),en(this.ea,r,12,!0),Ea(this,n)}function d1(e){wa(this),va(this,e)}function di(e){return J(),e^ya>>((e&15)<<1)&3}function $o(e,t,r){J();var n,o,l;for(l=er[st[0][t]],o=er[t],n=0;n<12;n++)r.ea[n]=(l.ea[e.ea[o.ea[n]>>1]>>1]^e.ea[o.ea[n]>>1]&1^o.ea[n]&1)<<24>>24}function dt(e,t,r){J();var n;for(n=0;n<12;n++)r.ea[n]=(e.ea[t.ea[n]>>1]^t.ea[n]&1)<<24>>24}function Br(e,t,r){J();var n;return n=za[e],r&&(n=n^ya>>((n&15)<<1)&3),n&65520|tr[n&15][t]}function h1(){return J(),0}function gB(){var e,t;for(ue[0]=new xt(15120,0,119750400,0),ue[3]=new xt(21021,1494,323403417,0),ue[6]=new xt(8064,1236,29441808,550),ue[9]=new xt(9,0,5880,0),ue[12]=new xt(1230,412,2949660,0),ue[15]=new xt(224,137,328552,137),e=0;e<18;e+=3)for(t=0;t<2;t++)ue[e+t+1]=new ge,dt(ue[e+t],ue[e],ue[e+t+1]),Ar(ue[e+t],ue[e],ue[e+t+1])}function pB(){J();var e,t,r;for(Ra(40320,Gn,rr,da=Y(Ae,De,0,2768,7,1),2),e=new ge,r=0;r<2768;r++)R1(e,Gn[r]),qn[r]=Vn(e.ea,0,!0)+Da(Gn[r],8)*70<<24>>24,Ri(e),za[r]=rr[ft(e.ea,8,!0)];for(t=0;t<24;t++)en(e.ea,t,12,!0),Ri(e),hi[t]=ft(e.ea,12,!0)%24<<24>>24}function cB(){var e,t,r,n,o,l,i,a,s,f,g,p,u,c,m,L;for(e=new ge,t=new ge,r=new xt(28783,0,259268407,0),L=new xt(15138,0,119765538,7),p=new xt(5167,0,83473207,0),o=0;o<8;o++)p.ca[o]=pi(p.ca[o]|24);for(l=0;l<16;l++)er[l]=new d1(e),gi(e,L,t),dt(e,L,t),m=t,t=e,e=m,l%4==3&&(gi(m,p,t),dt(m,p,t),m=t,t=e,e=m),l%8==7&&(gi(m,r,t),dt(m,r,t),m=t,t=e,e=m);for(i=0;i<16;i++)for(s=0;s<16;s++)for(gi(er[i],er[s],e),g=0;g<16;g++)if(mi(er[g].ca,e.ca)){tr[i][s]=g,st[g][s]=i;break}for(f=0;f<18;f++)for(c=0;c<16;c++){for(Xo(ue[f],st[0][c],e),u=0;u<18;u++)if(mi(ue[u].ca,e.ca)){Vo[c][f]=u,dr[c][(Ye(),Hn)[f]]=Hn[u];break}c%2==0&&($r[f<<3|c>>1]=Vo[c][f])}for(n=0;n<18;n++)for(Si[n]=B1(ue[n]),a=n,c=0;c<48;c++)Vo[c%16][a]<n&&(F1[c]|=1<<n),c%16==15&&(a=Fi[2][a])}function Ra(e,t,r,n,o){J();var l,i,a,s,f,g,p,u,c;for(l=new ge,a=new ge,i=0,f=0,c=o>=2?1:2,g=o!=1,s=0;s<e;s++)if(r[s]==0){switch(o){case 0:Ea(l,s);break;case 1:ka(l,s);break;case 2:en(l.ea,s,8,!0)}for(p=0;p<16;p+=c){switch(g?$o(l,p,a):Xo(l,p,a),o){case 0:f=Li(a);break;case 1:f=Bi(a);break;case 2:f=ft(a.ea,8,!0)}o==0&&(yr[i<<3|p>>1]=f&Ve),f==s&&(n[i]=(n[i]|1<<~~(p/c))&Ve),u=~~((i<<4|p)/c),r[f]=u&Ve}t[i++]=s&Ve}return i}function mB(e,t,r,n,o,l,i,a){var s,f,g,p,u;if(p=Fr(at((Jr(),In),(i>>4)*140+Zr[(J(),qn)[a>>4]&255][st[i&15][a&15]]),Fr(at(In,n*140+Zr[qn[t]&255][st[o][r]]),at(Ui,t*24+Zo[l][r]))),p>e.maxDep2)return p-e.maxDep2;for(s=e.maxDep2;s>=p&&(u=y1(e,n,o,t,r,l,s,e.depth1,10),!(u<0));s--){for(s-=u,e.solLen=0,e.solution=new w1,DB(e.solution,e.verbose,e.urfIdx,e.depth1),g=0;g<e.depth1+s;g++)l1(e.solution,e.move[g]);for(f=e.preMoveLen-1;f>=0;f--)l1(e.solution,e.preMoves[f]);e.solLen=e.solution.length_0}return s!=e.maxDep2?(e.maxDep2=Sa(b1,e.solLen-e.length1-1),g1(e.probe,e.probeMin)?0:1):1}function LB(e){var t,r,n,o,l,i,a,s,f,g,p,u,c,m,L;if(e.isRec=!1,g1(e.probe,e.solution?e.probeMin:e.probeMax))return 0;for(e.probe=QL(e.probe,{l:1,m:0,h:0}),n=e.valid1;n<e.depth1;n++)Ar(e.phase1Cubie[n],(J(),ue)[e.move[n]],e.phase1Cubie[n+1]),dt(e.phase1Cubie[n],ue[e.move[n]],e.phase1Cubie[n+1]);for(e.valid1=e.depth1,a=aB(e.phase1Cubie[e.depth1]),s=a&15,a>>=4,f=sB(e.phase1Cubie[e.depth1]),g=f&15,f>>=4,p=ft(e.phase1Cubie[e.depth1].ea,12,!0)%24,r=Br(f,g,!1),t=Br(a,s,!0),o=e.depth1==0?-1:e.move[e.depth1-1],l=e.preMoveLen==0?-1:e.preMoves[e.preMoveLen-1],L=0,m=(e.preMoveLen==0?1:2)*(e.depth1==0?1:2),u=0,c=(1<<m)-1;u<m;u++){if((c>>u&1)!=0){if(c&=~(1<<u),L=mB(e,a,s,f,g,p,r,t),L==0||L>2)break;L==2&&(c&=4<<u)}if(c==0)break;(u&1)==0&&e.depth1>0?(i=(Ye(),Hn)[~~(o/3)*3+1],e.move[e.depth1-1]=St[i]*2-e.move[e.depth1-1],p=(Jr(),Kn)[p][i],a=On[a][(J(),dr)[s][i]],s=tr[a&15][s],a>>=4,f=Wn[f][dr[g][i]],g=tr[f&15][g],f>>=4,t=Br(a,s,!0),r=Br(f,g,!1)):e.preMoveLen>0&&(i=(Ye(),Hn)[~~(l/3)*3+1],e.preMoves[e.preMoveLen-1]=St[i]*2-e.preMoves[e.preMoveLen-1],p=(J(),hi)[(Jr(),Kn)[hi[p]][i]],a=On[t>>4][dr[t&15][i]],t=a&-16|tr[a&15][t&15],a=Br(t>>4,t&15,!0),s=a&15,a>>=4,f=Wn[r>>4][dr[r&15][i]],r=f&-16|tr[f&15][r&15],f=Br(r>>4,r&15,!1),g=f&15,f>>=4)}return e.depth1>0&&(e.move[e.depth1-1]=o),e.preMoveLen>0&&(e.preMoves[e.preMoveLen-1]=l),L==0?0:2}function BB(e){var t;for(e.conjMask=0,e.selfSym=B1(e.cc),e.conjMask|=pa(It(Hr(e.selfSym,16),{l:Ve,m:0,h:0}),{l:0,m:0,h:0})?18:0,e.conjMask|=pa(It(Hr(e.selfSym,32),{l:Ve,m:0,h:0}),{l:0,m:0,h:0})?36:0,e.conjMask|=pa(It(Hr(e.selfSym,48),{l:Ve,m:0,h:0}),{l:0,m:0,h:0})?56:0,e.selfSym=It(e.selfSym,{l:tt,m:tt,h:15}),e.maxPreMoves=e.conjMask>7?0:20,t=0;t<6;t++)va(e.urfCubieCube[t],e.cc),c1(e.urfCoordCube[t],e.urfCubieCube[t],20),L1(e.cc),t%3==2&&Ri(e.cc)}function D1(e,t,r,n,o){var l,i,a,s,f,g;if(t.prun==0&&n<5)return e.allowShorter||n==0?(e.depth1-=n,f=LB(e),e.depth1+=n,f):1;for(g=h1(xa(r)),l=0;l<18;l+=3)if(!(l==o||l==o-9)){for(a=0;a<3;a++)if(i=l+a,!(e.isRec&&i!=e.move[e.depth1-n]||g!=0&&(g&1<<i)!=0)){if(s=XL(e.nodeUD[n],t,i),s>n)break;if(s==n)continue;if(s=$L(e.nodeUD[n],t,i),s>n)break;if(s==n)continue;if(e.move[e.depth1-n]=i,e.valid1=Sa(e.valid1,e.depth1-n),f=D1(e,e.nodeUD[n],r&Yr((J(),Si)[i]),n-1,l),f==0)return 0;if(f>=2)break}}return 1}function A1(e,t,r,n,o){var l,i,a;if(e.preMoveLen=e.maxPreMoves-t,(e.isRec?e.depth1==e.length1-e.preMoveLen:e.preMoveLen==0||(225207>>r&1)==0)&&(e.depth1=e.length1-e.preMoveLen,e.phase1Cubie[0]=n,e.allowShorter=e.depth1==ma&&e.preMoveLen!=0,c1(e.nodeUD[e.depth1+1],n,e.depth1)&&D1(e,e.nodeUD[e.depth1+1],o,e.depth1,-1)==0))return 0;if(t==0||e.preMoveLen+ma>=e.length1)return 1;for(a=h1(xa(o)),(t==1||e.preMoveLen+1+ma>=e.length1)&&(a|=225207),r=~~(r/3)*3,l=0;l<18;l++){if(l==r||l==r-9||l==r+9){l+=2;continue}if(!(e.isRec&&l!=e.preMoves[e.maxPreMoves-t]||(a&1<<l)!=0)&&(Ar((J(),ue)[l],n,e.preMoveCubes[t]),dt(ue[l],n,e.preMoveCubes[t]),e.preMoves[e.maxPreMoves-t]=l,i=A1(e,t-1,l,e.preMoveCubes[t],o&Yr(Si[l])),i==0))return 0}return 1}function y1(e,t,r,n,o,l,i,a,s){var f,g,p,u,c,m,L,R,h,y,A;if(t==0&&n==0&&l==0)return i;for(h=(Ye(),qo)[s],L=0;L<10;L++){if((h>>L&1)!=0){L+=66>>L&3;continue}if(R=(Jr(),Kn)[l][L],g=On[n][(J(),dr)[o][L]],p=tr[g&15][o],g>>=4,c=Wn[t][dr[r][L]],m=tr[c&15][r],c>>=4,u=Br(c,m,!1),f=Br(g,p,!0),y=at(In,(u>>4)*140+Zr[qn[f>>4]&255][st[u&15][f&15]]),y>i+1)return i-y+1;if(y>=i){L+=66>>L&3&i-y;continue}if(y=Fr(at(Ui,g*24+Zo[R][p]),at(In,c*140+Zr[qn[g]&255][st[m][p]])),y>=i){L+=66>>L&3&i-y;continue}if(A=y1(e,c,m,g,p,R,i-1,a+1,L),A>=0)return e.move[a]=St[L],A;if(A<-2)break;A<-1&&(L+=66>>L&3)}return-1}function RB(e){for(e.length1=e.isRec?e.length1:0;e.length1<e.solLen;e.length1++)for(e.maxDep2=Sa(b1,e.solLen-e.length1-1),e.urfIdx=e.isRec?e.urfIdx:0;e.urfIdx<6;e.urfIdx++)if((e.conjMask&1<<e.urfIdx)==0&&A1(e,e.maxPreMoves,-30,e.urfCubieCube[e.urfIdx],Yr(It(e.selfSym,{l:Ve,m:0,h:0})))==0)return e.solution?i1(e.solution):\\\"Error 8\\\";return e.solution?i1(e.solution):\\\"Error 7\\\"}function dB(e,t){var r;return r=hB(e,t),r!=0?\\\"Error \\\"+(r<0?-r:r):(e.solLen=22,e.probe={l:0,m:0,h:0},e.probeMax={l:3531008,m:23,h:0},e.probeMin={l:0,m:0,h:0},e.verbose=0,e.solution=null,e.isRec=!1,m1(!1),BB(e),RB(e))}function hB(e,t){var r,n,o,l;for(n=0,o=Y(ee,ie,0,54,7,1),r=VL($(X(Ae,1),De,0,7,[t.charCodeAt(4),t.charCodeAt(13),t.charCodeAt(22),t.charCodeAt(31),t.charCodeAt(40),t.charCodeAt(49)])),l=0;l<54;l++){if(o[l]=qL(r,YL(t.charCodeAt(l)))<<24>>24,o[l]==-1)return-1;n+=1<<(o[l]<<2)}return n!=10066329?-1:(FB(o,e.cc),uB(e.cc))}function U1(){var e,t,r;for(this.move=Y(Te,Ne,0,31,7,1),this.nodeUD=Y(ui,ae,31,21,0,1),this.nodeRL=Y(ui,ae,31,21,0,1),this.nodeFB=Y(ui,ae,31,21,0,1),this.cc=new ge,this.urfCubieCube=Y(Ho,ae,7,6,0,1),this.urfCoordCube=Y(ui,ae,31,6,0,1),this.phase1Cubie=Y(Ho,ae,7,21,0,1),this.preMoveCubes=Y(Ho,ae,7,21,0,1),this.preMoves=Y(Te,Ne,0,20,7,1),t=0;t<21;t++)this.nodeUD[t]=new jo,this.nodeRL[t]=new jo,this.nodeFB[t]=new jo,this.phase1Cubie[t]=new ge;for(r=0;r<6;r++)this.urfCubieCube[r]=new ge,this.urfCoordCube[r]=new jo;for(e=0;e<20;e++)this.preMoveCubes[e+1]=new ge}function Ye(){if(!o1){o1=!0;var e,t,r,n,o,l;for(Vr=$(X(ee,2),ae,10,0,[$(X(ee,1),ie,0,7,[8,9,20]),$(X(ee,1),ie,0,7,[6,18,38]),$(X(ee,1),ie,0,7,[0,36,47]),$(X(ee,1),ie,0,7,[2,45,11]),$(X(ee,1),ie,0,7,[29,26,15]),$(X(ee,1),ie,0,7,[27,44,24]),$(X(ee,1),ie,0,7,[33,53,42]),$(X(ee,1),ie,0,7,[35,17,51])]),Xt=$(X(ee,2),ae,10,0,[$(X(ee,1),ie,0,7,[5,10]),$(X(ee,1),ie,0,7,[7,19]),$(X(ee,1),ie,0,7,[3,37]),$(X(ee,1),ie,0,7,[1,46]),$(X(ee,1),ie,0,7,[32,16]),$(X(ee,1),ie,0,7,[28,25]),$(X(ee,1),ie,0,7,[30,43]),$(X(ee,1),ie,0,7,[34,52]),$(X(ee,1),ie,0,7,[23,12]),$(X(ee,1),ie,0,7,[21,41]),$(X(ee,1),ie,0,7,[50,39]),$(X(ee,1),ie,0,7,[48,14])]),$t=et(Te,[ae,Ne],[17,0],7,[13,13],2),Aa=$(X(JL,1),ae,2,4,[\\\"U \\\",\\\"U2\\\",\\\"U'\\\",\\\"R \\\",\\\"R2\\\",\\\"R'\\\",\\\"F \\\",\\\"F2\\\",\\\"F'\\\",\\\"D \\\",\\\"D2\\\",\\\"D'\\\",\\\"L \\\",\\\"L2\\\",\\\"L'\\\",\\\"B \\\",\\\"B2\\\",\\\"B'\\\"]),St=$(X(Te,1),Ne,0,7,[0,1,2,4,7,9,10,11,13,16,3,5,6,8,12,14,15,17]),Hn=Y(Te,Ne,0,18,7,1),qo=Y(Te,Ne,0,11,7,1),t=0;t<18;t++)Hn[St[t]]=t;for(r=0;r<10;r++)for(n=~~(St[r]/3),qo[r]=0,o=0;o<10;o++)l=~~(St[o]/3),qo[r]|=(n==l||n%3==l%3&&n>=l?1:0)<<o;for(qo[10]=0,e=0;e<13;e++)for($t[e][0]=$t[e][e]=1,o=1;o<e;o++)$t[e][o]=$t[e-1][o-1]+$t[e-1][o]}}function Vn(e,t,r){Ye();var n,o,l,i,a;for(n=e.length-1,l=0,a=4,o=n;o>=0;o--)i=x1(e[o],r),(i&12)==t&&(l+=$t[o][a--]);return l}function Da(e,t){Ye();var r,n;for(n=0,r=t-2;r>=0;r--)n^=e%(t-r),e=~~(e/(t-r));return n&1}function ft(e,t,r){Ye();var n,o,l,i;for(o=0,i={l:1323536,m:2777561,h:1043915},n=0;n<t-1;n++)l=x1(e[n],r)<<2,o=(t-n)*o+Yr(It(Hr(i,l),{l:15,m:0,h:0})),i=p1(i,ci({l:1118480,m:279620,h:69905},l));return o}function x1(e,t){return t?e>>1:e&7}function S1(e,t,r,n){Ye();var o,l,i,a;for(o=e.length-1,a=4,l=o,i=o;i>=0;i--)t>=$t[i][a]?(t-=$t[i][a--],e[i]=Di(e[i],a|r,n)):((l&12)==r&&(l-=4),e[i]=Di(e[i],l--,n))}function en(e,t,r,n){Ye();var o,l,i,a,s,f;for(f={l:1323536,m:2777561,h:1043915},o={l:0,m:0,h:0},a=2;a<=r;a++)o=La(ci(o,4),xa(t%a)),t=~~(t/a);for(l=0;l<r-1;l++)s=(Yr(o)&15)<<2,o=Hr(o,4),e[l]=Di(e[l],Yr(It(Hr(f,s),{l:15,m:0,h:0})),n),i=p1(ci({l:1,m:0,h:0},s),{l:1,m:0,h:0}),f=La(It(f,i),It(Hr(f,4),{l:~i.l&tt,m:~i.m&tt,h:~i.h&hr}));e[r-1]=Di(e[r-1],Yr(It(f,{l:15,m:0,h:0})),n)}function Di(e,t,r){return(r?t<<1|e&1:t|e&-8)<<24>>24}function FB(e,t){Ye();var r,n,o,l,i,a,s,f;for(l=0;l<8;l++)t.ca[l]=0;for(i=0;i<12;i++)t.ea[i]=0;for(a=0;a<8;a++){for(f=0;f<3&&!(e[Vr[a][f]]==0||e[Vr[a][f]]==3);f++);for(r=e[Vr[a][(f+1)%3]],n=e[Vr[a][(f+2)%3]],s=0;s<8;s++)if(r==~~(Vr[s][1]/9)&&n==~~(Vr[s][2]/9)){t.ca[a]=pi(f%3<<3|s);break}}for(o=0;o<12;o++)for(s=0;s<12;s++){if(e[Xt[o][0]]==~~(Xt[s][0]/9)&&e[Xt[o][1]]==~~(Xt[s][1]/9)){t.ea[o]=pi(s<<1);break}if(e[Xt[o][0]]==~~(Xt[s][1]/9)&&e[Xt[o][1]]==~~(Xt[s][0]/9)){t.ea[o]=pi(s<<1|1);break}}}function l1(e,t){var r,n,o;if(e.length_0==0){e.moves[e.length_0++]=t;return}if(r=~~(t/3),n=~~(e.moves[e.length_0-1]/3),r==n){o=(t%3+e.moves[e.length_0-1]%3+1)%4,o==3?--e.length_0:e.moves[e.length_0-1]=r*3+o;return}if(e.length_0>1&&r%3==n%3&&r==~~(e.moves[e.length_0-2]/3)){o=(t%3+e.moves[e.length_0-2]%3+1)%4,o==3?(e.moves[e.length_0-2]=e.moves[e.length_0-1],--e.length_0):e.moves[e.length_0-2]=r*3+o;return}e.moves[e.length_0++]=t}function DB(e,t,r,n){e.verbose=t,e.urfIdx=r,e.depth1=n}function i1(e){var t,r,n;if(r=new ZL,n=(e.verbose&2)!=0?(e.urfIdx+3)%6:e.urfIdx,n<3)for(t=0;t<e.length_0;t++)(e.verbose&1)!=0&&t==e.depth1&&(r.string+=\\\". \\\"),$u(e1(r,(Ye(),Aa)[(J(),Fi)[n][e.moves[t]]]));else for(t=e.length_0-1;t>=0;t--)$u(e1(r,(Ye(),Aa)[(J(),Fi)[n][e.moves[t]]])),(e.verbose&1)!=0&&t==e.depth1&&(r.string+=\\\". \\\");return r.string}function w1(){this.moves=Y(Te,Ne,0,31,7,1)}var ae,tt,hr,PL,Ve,De,Ne,ya,Ko,ie,q,Ai,si,JL,t1,Zr,Ba,On,In,Wn,Yn,Ui,Zo,Kn,Qn,jn,Dr,bi,Rr,xi,fi,ui,r1,er,rr,Gn,Xr,_a,yr,hi,qn,za,$r,Vo,dr,tr,st,n1,da,ca,Yo,Ca,F1,ue,Si,ha,Fa,Fi,Ho,b1,ma,o1,$t,qo,Vr,Xt,Aa,Hn,St,Te,AB,ee,yB,Ae,UB,bB,E1=U(()=>{ae={3:1},tt=4194303,hr=1048575,PL=524288,Ve=65535,De={11:1,3:1},Ne={17:1,3:1},ya=14540032,Ko=286331153,ie={10:1,3:1},Ai={};Jo(1,null,{},GL);Jo(79,1,{},Ua);q.createClassLiteralForArray=function(t){var r;return r=new Ua,r.modifiers=4,t>1?r.componentType=s1(this,t-1):r.componentType=this,r};q.isPrimitive=function(){return(this.modifiers&1)!=0};JL=Ur(\\\"java.lang\\\",\\\"String\\\",2);t1=!1;Jo(31,1,{31:1},jo);q.flip=0;q.flipc=0;q.fsym=0;q.prun=0;q.slice_0=0;q.tsym=0;q.twist=0;q.twistc=0;fi=0,ui=Ur(\\\"org.cubing.min2phase.client\\\",\\\"CoordCube\\\",31),r1=!1;Ho=Ur(\\\"org.cubing.min2phase.client\\\",\\\"CubieCube\\\",7);Jo(72,1,{},U1);q.allowShorter=!1;q.conjMask=0;q.depth1=0;q.isRec=!1;q.length1=0;q.maxDep2=0;q.maxPreMoves=0;q.preMoveLen=0;q.probe={l:0,m:0,h:0};q.probeMax={l:0,m:0,h:0};q.probeMin={l:0,m:0,h:0};q.selfSym={l:0,m:0,h:0};q.solLen=0;q.urfIdx=0;q.valid1=0;q.verbose=0;b1=12,ma=7,o1=!1;Jo(150,1,{},w1);q.depth1=0;q.length_0=0;q.urfIdx=0;q.verbose=0;Te=yi(\\\"int\\\",\\\"I\\\");Ur(\\\"com.google.gwt.lang\\\",\\\"CollapsedPropertyHolder\\\",252);Ur(\\\"com.google.gwt.lang\\\",\\\"JavaClassHierarchySetupUtil\\\",254);AB=Ur(\\\"com.google.gwt.lang\\\",\\\"LongLibBase/LongEmul\\\",null);Ur(\\\"com.google.gwt.lang\\\",\\\"ModuleUtils\\\",257);ee=yi(\\\"byte\\\",\\\"B\\\"),yB=yi(\\\"long\\\",\\\"J\\\"),Ae=yi(\\\"char\\\",\\\"C\\\");Ur(\\\"com.google.gwt.user.client.rpc\\\",\\\"XsrfToken\\\",null),OL(\\\"java.util\\\",\\\"Map/Entry\\\");UB=function(){m1(!1)},bB=function(e){return dB(new U1,e)}});async function _1(){let e=await Pe[\\\"3x3x3\\\"].kpuzzle(),t=e.startState();for(let r of Ju)t=t.applyAlg(k.fromString((await Zt())(r)));return Hu(e,t)?t:_1()}function z1(){return xB??(xB=Promise.resolve().then(()=>(E1(),v1)))}async function Pa(e){return xe(),k.fromString((await z1()).solveState(ju(e)))}async function Jn(){return Pa(await _1())}async function C1(){(await z1()).initialize()}async function P1(){return Tn(await Jn(),SB)}async function M1(){let e=new ct,t=await Jn();return e.experimentalPushAlg(k1),e.experimentalPushAlg(t),e.experimentalPushAlg(k1),e.toAlg()}var xB,SB,k1,Ma=U(()=>{Le();Jt();Rt();Bt();ai();qu();Yu();Zu();xB=null;SB=[[null,\\\"Rw\\\",\\\"Rw2\\\",\\\"Rw'\\\",\\\"Fw\\\",\\\"Fw'\\\"],[null,\\\"Dw\\\",\\\"Dw2\\\",\\\"Dw'\\\"]];k1=new k(\\\"R' U' F\\\")});function se(e,...t){let r=t.length,n=e[t[r-1]];for(let o=r;o>0;o--)e[t[o]]=e[t[o-1]];return e[t[0]]=n,se}function N1(e,t,r,n){r=(r||8)-1;let o=1985229328,l=0;n??(n=0),n<0&&(t<<=1);for(let i=0;i<r;++i){let a=Na[r-i],s=~~(t/a);l^=s,t%=a,s<<=2,e[i]=o>>s&7;let f=(1<<s)-1;o=(o&f)+(o>>4&~f)}return n<0&&(l&1)!==0?(e[r]=e[r-1],e[r-1]=o&7):e[r]=o&7,e}var Be,Na,T1=U(()=>{Be=[],Na=[1];for(let e=0;e<32;++e){Be[e]=[];for(let t=0;t<32;++t)Be[e][t]=0}for(let e=0;e<32;++e){Be[e][0]=Be[e][e]=1,Na[e+1]=Na[e]*(e+1);for(let t=1;t<e;++t)Be[e][t]=Be[e-1][t-1]+Be[e-1][t]}});var jg={};me(jg,{initialize:()=>WR,random444Scramble:()=>KR});function N(e,t){let r=new Array(e);if(t!==void 0)for(let n=0;n<e;n++)r[n]=new Array(t);return r}function CB(e){return new ol[e]}function pt(e,t,r,...n){let o=ol[e];o&&!o.___clazz$?V=o.prototype:(!o&&(o=ol[e]=function(){}),V=o.prototype=t<0?{}:CB(t),V.castableTypeMap$=r);for(let l of n)l.prototype=V;o.___clazz$&&(V.___clazz$=o.___clazz$,o.___clazz$=null)}function vr(e){let t={};for(let r=0,n=e.length;r<n;++r)t[e[r]]=1;return t}function ag(){}function PB(e,t){let r=sg(0,t);return fg(e.___clazz$,e.castableTypeMap$,e.queryId$,r),r}function sg(e,t){let r=new Array(t);if(e===3)for(let n=0;n<t;++n){let o={m:0,l:0,h:0};o.l=o.m=o.h=0,r[n]=o}else if(e>0){let n=[null,0,!1][e];for(let o=0;o<t;++o)r[o]=n}return r}function Va(e,t,r,n,o){let l=sg(o,n);return fg(e,t,r,l),l}function fg(e,t,r,n){return ug(),NB(n,Oa,Ia),n.___clazz$=e,n.castableTypeMap$=t,n.queryId$=r,n}function Pi(e,t,r){return e[t]=r}function ug(){G1||(G1=!0,Oa=[],Ia=[],MB(new ag,Oa,Ia))}function MB(e,t,r){let n=0,o;for(let l in e)(o=e[l])&&(t[n]=l,r[n]=o,++n)}function NB(e,t,r){ug();for(let n=0,o=t.length;n<o;++n)e[t[n]]=r[n]}function TB(e,t){return e.castableTypeMap$&&!!e.castableTypeMap$[t]}function GB(e,t){return e!==null&&TB(e,t)}function OB(){if(O1)return!1;O1=!0,Vi=N(15582,36),Hi=N(15582),kt=N(15582),ro=N(48,48),vt=N(48,36),to=N(48),Ja=N(48)}function Ha(e){e.ct=N(24)}function I1(e,t){let r,n;if(GB(t,lg)){for(r=t,n=0;n<24;++n)if(e.ct[n]!==r.ct[n])return!1;return!0}return!1}function Mi(e){let t,r,n;for(r=0,n=8,t=23;t>=0;--t)e.ct[t]===1&&(r+=Be[t][n--]);return r}function vi(e){let t,r;if(io!==null)return io[Mi(e)];for(r=0;r<48;++r){if(t=qB(Mi(e)),t!==-1)return t*64+r;le(e,0),r%2===1&&le(e,1),r%8===7&&le(e,2),r%16===15&&le(e,3)}}function wt(e,t){let r=t%3;switch(t=~~(t/3),t){case 0:F(e.ct,0,1,2,3,r);break;case 1:F(e.ct,16,17,18,19,r);break;case 2:F(e.ct,8,9,10,11,r);break;case 3:F(e.ct,4,5,6,7,r);break;case 4:F(e.ct,20,21,22,23,r);break;case 5:F(e.ct,12,13,14,15,r);break;case 6:F(e.ct,0,1,2,3,r),F(e.ct,8,20,12,16,r),F(e.ct,9,21,13,17,r);break;case 7:F(e.ct,16,17,18,19,r),F(e.ct,1,15,5,9,r),F(e.ct,2,12,6,10,r);break;case 8:F(e.ct,8,9,10,11,r),F(e.ct,2,19,4,21,r),F(e.ct,3,16,5,22,r);break;case 9:F(e.ct,4,5,6,7,r),F(e.ct,10,18,14,22,r),F(e.ct,11,19,15,23,r);break;case 10:F(e.ct,20,21,22,23,r),F(e.ct,0,8,4,14,r),F(e.ct,3,11,7,13,r);break;case 11:F(e.ct,12,13,14,15,r),F(e.ct,1,20,7,18,r),F(e.ct,0,23,6,17,r)}}function le(e,t){switch(t){case 0:wt(e,19),wt(e,28);break;case 1:wt(e,21),wt(e,32);break;case 2:F(e.ct,0,3,1,2,1),F(e.ct,8,11,9,10,1),F(e.ct,4,7,5,6,1),F(e.ct,12,15,13,14,1),F(e.ct,16,19,21,22,1),F(e.ct,17,18,20,23,1);break;case 3:wt(e,18),wt(e,29),wt(e,24),wt(e,35)}}function W1(e,t){let r;for(r=0;r<t;++r)le(e,0),r%2===1&&le(e,1),r%8===7&&le(e,2),r%16===15&&le(e,3)}function Ya(e,t){let r,n;for(n=8,r=23;r>=0;--r)e.ct[r]=0,t>=Be[r][n]&&(t-=Be[r][n--],e.ct[r]=1)}function Ei(e,t){let r;for(r=0;r<24;++r)e.ct[r]=t.ct[r]}function ll(){let e;for(Ha(this),e=0;e<8;++e)this.ct[e]=1;for(e=8;e<24;++e)this.ct[e]=0}function ki(e,t){let r;for(Ha(this),r=0;r<24;++r)this.ct[r]=~~(e.ct[r]/2)===t?1:0}function tl(e){let t;for(Ha(this),t=0;t<24;++t)this.ct[t]=e[t]}function IB(){let e,t,r=new ll,n=new ll;for(e=0;e<15582;++e)for(Ya(n,Hi[e]),t=0;t<36;++t)Ei(r,n),wt(r,t),Vi[e][t]=vi(r)}function WB(){let e,t,r,n,o,l,i,a;for(Xi(kt),kt[0]=0,t=0,r=1;r!==15582;)for(l=t>4,a=l?-1:t,e=l?t:-1,++t,n=0;n<15582;++n)if(kt[n]===a){for(i=0;i<27;++i)if(o=~~Vi[n][i]>>>6,kt[o]===e)if(++r,l){kt[n]=t;break}else kt[o]=t}}function KB(e){let t,r,n,o=new tl(e.ct);for(n=0;n<48;++n){for(t=!0,r=0;r<24;++r)if(o.ct[r]!==~~(r/4)){t=!1;break}if(t)return n;le(o,0),n%2===1&&le(o,1),n%8===7&&le(o,2),n%16===15&&le(o,3)}return-1}function QB(){let e,t,r,n=new ll;for(e=0;e<24;++e)n.ct[e]=e;let o=new tl(n.ct),l=new tl(n.ct),i=new tl(n.ct);for(e=0;e<48;++e){for(t=0;t<48;++t){for(r=0;r<48;++r)I1(n,o)&&(ro[e][t]=r,r===0&&(to[e]=t)),le(o,0),r%2===1&&le(o,1),r%8===7&&le(o,2),r%16===15&&le(o,3);le(n,0),t%2===1&&le(n,1),t%8===7&&le(n,2),t%16===15&&le(n,3)}le(n,0),e%2===1&&le(n,1),e%8===7&&le(n,2),e%16===15&&le(n,3)}for(e=0;e<48;++e)for(Ei(n,l),W1(n,to[e]),t=0;t<36;++t)for(Ei(o,n),wt(o,t),W1(o,e),r=0;r<36;++r)if(Ei(i,l),wt(i,r),I1(i,o)){vt[e][t]=r;break}for(Ya(n,0),e=0;e<48;++e)Ja[to[e]]=Mi(n),le(n,0),e%2===1&&le(n,1),e%8===7&&le(n,2),e%16===15&&le(n,3)}function jB(){let e,t,r,n,o=new ll,l=N(22984);for(t=0;t<22984;t++)l[t]=0;for(e=0,t=0;t<735471;++t)if((l[~~t>>>5]&1<<(t&31))===0){for(Ya(o,t),n=0;n<48;++n)r=Mi(o),l[~~r>>>5]|=1<<(r&31),io!==null&&(io[r]=e<<6|to[n]),le(o,0),n%2===1&&le(o,1),n%8===7&&le(o,2),n%16===15&&le(o,3);Hi[e++]=t}}function qB(e){let t=zR(Hi,e);return t>=0?t:-1}function VB(){K1||(K1=!0,Oi=N(70,28),Gi=N(6435,28),mg=N(70,16),pg=N(6435,16),rt=N(450450),cg=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,1,0,1,0,0,0])}function Ni(e){let t,r,n;for(r=0,n=8,t=14;t>=0;--t)e.ct[t]!==e.ct[15]&&(r+=Be[t][n--]);return r}function Ti(e){let t,r,n;for(r=0,n=4,t=6;t>=0;--t)e.rl[t]!==e.rl[7]&&(r+=Be[t][n--]);return r*2+e.parity}function eo(e,t){e.parity^=cg[t];let r=t%3;switch(t=~~(t/3),t){case 0:F(e.ct,0,1,2,3,r);break;case 1:F(e.rl,0,1,2,3,r);break;case 2:F(e.ct,8,9,10,11,r);break;case 3:F(e.ct,4,5,6,7,r);break;case 4:F(e.rl,4,5,6,7,r);break;case 5:F(e.ct,12,13,14,15,r);break;case 6:F(e.ct,0,1,2,3,r),F(e.rl,0,5,4,1,r),F(e.ct,8,9,12,13,r);break;case 7:F(e.rl,0,1,2,3,r),F(e.ct,1,15,5,9,r),F(e.ct,2,12,6,10,r);break;case 8:F(e.ct,8,9,10,11,r),F(e.rl,0,3,6,5,r),F(e.ct,3,2,5,4,r);break;case 9:F(e.ct,4,5,6,7,r),F(e.rl,3,2,7,6,r),F(e.ct,11,10,15,14,r);break;case 10:F(e.rl,4,5,6,7,r),F(e.ct,0,8,4,14,r),F(e.ct,3,11,7,13,r);break;case 11:F(e.ct,12,13,14,15,r),F(e.rl,1,4,7,2,r),F(e.ct,1,0,7,6,r)}}function Zn(e,t){switch(t){case 0:eo(e,19),eo(e,28);break;case 1:eo(e,21),eo(e,32);break;case 2:F(e.ct,0,3,1,2,1),F(e.ct,8,11,9,10,1),F(e.ct,4,7,5,6,1),F(e.ct,12,15,13,14,1),F(e.rl,0,3,5,6,1),F(e.rl,1,2,4,7,1)}}function gg(e,t,r){let n;for(n=0;n<16;++n)e.ct[n]=~~(t.ct[n]/2);for(n=0;n<8;++n)e.rl[n]=t.ct[n+16];e.parity=r}function Q1(e,t){let r,n;for(n=8,e.ct[15]=0,r=14;r>=0;--r)t>=Be[r][n]?(t-=Be[r][n--],e.ct[r]=1):e.ct[r]=0}function j1(e,t){let r,n;for(e.parity=t&1,t>>>=1,n=4,e.rl[7]=0,r=6;r>=0;--r)t>=Be[r][n]?(t-=Be[r][n--],e.rl[r]=1):e.rl[r]=0}function Za(){this.rl=N(8),this.ct=N(16)}function HB(){let e,t,r,n,o,l,i,a,s,f,g=new Za;for(o=0;o<70;++o)for(a=0;a<28;++a)j1(g,o),eo(g,rn[a]),Oi[o][a]=Ti(g);for(o=0;o<70;++o)for(j1(g,o),i=0;i<16;++i)mg[o][i]=Ti(g),Zn(g,0),i%2===1&&Zn(g,1),i%8===7&&Zn(g,2);for(o=0;o<6435;++o)for(Q1(g,o),i=0;i<16;++i)pg[o][i]=Ni(g)&65535,Zn(g,0),i%2===1&&Zn(g,1),i%8===7&&Zn(g,2);for(o=0;o<6435;++o)for(a=0;a<28;++a)Q1(g,o),eo(g,rn[a]),Gi[o][a]=Ni(g)&65535;for(Xi(rt),rt[0]=rt[18]=rt[28]=rt[46]=rt[54]=rt[56]=0,r=0,n=6;n!==450450;){let p=r>6,u=p?-1:r,c=p?r:-1;for(++r,o=0;o<450450;++o)if(rt[o]===u){for(e=~~(o/70),s=o%70,a=0;a<23;++a)if(t=Gi[e][a],f=Oi[s][a],l=t*70+f,rt[l]===c)if(++n,p){rt[o]=r;break}else rt[l]=r}}}function YB(){q1||(q1=!0,rl=N(29400,20),Bg=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1],xr=N(29400),es=[0,9,14,23,27,28,41,42,46,55,60,69],ts=N(70))}function Xa(e){let t,r,n,o;for(r=0,o=4,t=6;t>=0;--t)e.ud[t]!==e.ud[7]&&(r+=Be[t][o--]);for(r*=35,o=4,t=6;t>=0;--t)e.fb[t]!==e.fb[7]&&(r+=Be[t][o--]);r*=12;let l=e.fb[7]^e.ud[7];for(n=0,o=4,t=7;t>=0;--t)e.rl[t]!==l&&(n+=Be[t][o--]);return e.parity+2*(r+ts[n])}function JB(e,t){switch(e.parity^=Bg[t],t){case 0:case 1:case 2:F(e.ud,0,1,2,3,t%3);break;case 3:F(e.rl,0,1,2,3,1);break;case 4:case 5:case 6:F(e.fb,0,1,2,3,(t-1)%3);break;case 7:case 8:case 9:F(e.ud,4,5,6,7,(t-1)%3);break;case 10:F(e.rl,4,5,6,7,1);break;case 11:case 12:case 13:F(e.fb,4,5,6,7,(t+1)%3);break;case 14:F(e.ud,0,1,2,3,1),F(e.rl,0,5,4,1,1),F(e.fb,0,5,4,1,1);break;case 15:F(e.rl,0,1,2,3,1),F(e.fb,1,4,7,2,1),F(e.ud,1,6,5,2,1);break;case 16:F(e.fb,0,1,2,3,1),F(e.ud,3,2,5,4,1),F(e.rl,0,3,6,5,1);break;case 17:F(e.ud,4,5,6,7,1),F(e.rl,3,2,7,6,1),F(e.fb,3,2,7,6,1);break;case 18:F(e.rl,4,5,6,7,1),F(e.fb,0,3,6,5,1),F(e.ud,0,3,4,7,1);break;case 19:F(e.fb,4,5,6,7,1),F(e.ud,0,7,6,1,1),F(e.rl,1,4,7,2,1)}}function Lg(e,t,r){let n,o=(t.ct[0]>t.ct[8]?1:0)^(t.ct[8]>t.ct[16]?1:0)^(t.ct[0]>t.ct[16]?1:0)?1:0;for(n=0;n<8;++n)e.ud[n]=t.ct[n]&1^1,e.fb[n]=t.ct[n+8]&1^1,e.rl[n]=t.ct[n+16]&1^1^o;e.parity=o^r}function ZB(e,t){let r,n,o,l;for(e.parity=t&1,t>>>=1,o=es[t%12],t=~~(t/12),l=4,r=7;r>=0;--r)e.rl[r]=0,o>=Be[r][l]&&(o-=Be[r][l--],e.rl[r]=1);for(n=t%35,t=~~(t/35),l=4,e.fb[7]=0,r=6;r>=0;--r)n>=Be[r][l]?(n-=Be[r][l--],e.fb[r]=1):e.fb[r]=0;for(l=4,e.ud[7]=0,r=6;r>=0;--r)t>=Be[r][l]?(t-=Be[r][l--],e.ud[r]=1):e.ud[r]=0}function $a(){this.ud=N(8),this.rl=N(8),this.fb=N(8)}function XB(){let e,t,r,n;for(r=0;r<12;++r)ts[es[r]]=r;let o=new $a;for(r=0;r<29400;++r)for(n=0;n<20;++n)ZB(o,r),JB(o,n),rl[r][n]=Xa(o)&65535;for(Xi(xr),xr[0]=0,e=0,t=1;t!==29400;){for(r=0;r<29400;++r)if(xr[r]===e)for(n=0;n<17;++n)xr[rl[r][n]]===-1&&(xr[rl[r][n]]=e+1,++t);++e}}function $B(e,t){let r;for(r=0;r<24;++r)e.ct[r]=t.ct[r]}function eR(e,t){let r=t%3;switch(t=~~(t/3),t){case 0:F(e.ct,0,1,2,3,r);break;case 1:F(e.ct,16,17,18,19,r);break;case 2:F(e.ct,8,9,10,11,r);break;case 3:F(e.ct,4,5,6,7,r);break;case 4:F(e.ct,20,21,22,23,r);break;case 5:F(e.ct,12,13,14,15,r);break;case 6:F(e.ct,0,1,2,3,r),F(e.ct,8,20,12,16,r),F(e.ct,9,21,13,17,r);break;case 7:F(e.ct,16,17,18,19,r),F(e.ct,1,15,5,9,r),F(e.ct,2,12,6,10,r);break;case 8:F(e.ct,8,9,10,11,r),F(e.ct,2,19,4,21,r),F(e.ct,3,16,5,22,r);break;case 9:F(e.ct,4,5,6,7,r),F(e.ct,10,18,14,22,r),F(e.ct,11,19,15,23,r);break;case 10:F(e.ct,20,21,22,23,r),F(e.ct,0,8,4,14,r),F(e.ct,3,11,7,13,r);break;case 11:F(e.ct,12,13,14,15,r),F(e.ct,1,20,7,18,r),F(e.ct,0,23,6,17,r)}}function rs(){let e;for(this.ct=N(24),e=0;e<24;++e)this.ct[e]=~~(e/4)}function Rg(e){let t,r,n;for(rs.call(this),t=0;t<23;++t)n=t+e(24-t),this.ct[n]!==this.ct[t]&&(r=this.ct[t],this.ct[t]=this.ct[n],this.ct[n]=r)}function tR(){V1||(V1=!0,Ft=N(18),oR())}function dg(e){e.cp=[0,1,2,3,4,5,6,7],e.co=[0,0,0,0,0,0,0,0]}function hg(e,t){let r;for(r=0;r<8;++r)e.cp[r]=t.cp[r],e.co[r]=t.co[r]}function rR(e,t){!e.temps&&(e.temps=new Yi),Fg(e,Ft[t],e.temps),hg(e,e.temps)}function nR(e,t){let r,n;for(n=0,r=6;r>=0;--r)n+=e.co[r]=t%3,t=~~(t/3);e.co[7]=(15-n)%3}function Fg(e,t,r){let n,o,l,i;for(n=0;n<8;++n)r.cp[n]=e.cp[t.cp[n]],l=e.co[t.cp[n]],i=t.co[n],o=l,o=o+(l<3?i:6-i),o=o%3,(l>=3?1:0)^(i>=3?1:0)&&(o=o+3),r.co[n]=o}function Yi(){dg(this)}function br(e,t){dg(this),N1(this.cp,e),nR(this,t)}function Dg(e){br.call(this,e(40320),e(2187))}function oR(){let e,t;for(Ft[0]=new br(15120,0),Ft[3]=new br(21021,1494),Ft[6]=new br(8064,1236),Ft[9]=new br(9,0),Ft[12]=new br(1230,412),Ft[15]=new br(224,137),e=0;e<18;e+=3)for(t=0;t<2;++t)Ft[e+t+1]=new Yi,Fg(Ft[e+t],Ft[e],Ft[e+t+1])}function lR(){H1||(H1=!0,Et=N(1937880),Ji=N(1538),Ki=N(1538),uo=N(11880),xg=[0,1,6,3,4,5,2,7],os=N(160,12),ls=N(160,12),ns=[1,1,1,3,12,60,360,2520,20160,181440,1814400,19958400,239500800],Wa=[0,2,4,6,1,3,7,5,8,9,10,11])}function Xn(e,t,r,n,o){let l=e.edgeo[o];e.edgeo[o]=e.edge[n],e.edge[n]=e.edgeo[r],e.edgeo[r]=e.edge[t],e.edge[t]=l}function ao(e,t){let r,n,o,l,i;for(e.isStd||Ug(e),n=0,i=1985229328,l=47768,r=0;r<t;++r)o=e.edge[r]<<2,n*=12-r,o>=32?(n+=l>>o-32&15,l-=4368<<o-32):(n+=i>>o&15,l-=4369,i-=286331152<<o);return n}function Ag(e){let t,r=ao(e,4);t=uo[r];let n=t&7;t>>=3,Wi(e,n);let o=ao(e,10)%20160;return t*20160+o}function Ii(e,t){switch(e.isStd=!1,t){case 0:se(e.edge,0,4,1,5),se(e.edgeo,0,4,1,5);break;case 1:he(e.edge,0,4,1,5),he(e.edgeo,0,4,1,5);break;case 2:se(e.edge,0,5,1,4),se(e.edgeo,0,5,1,4);break;case 3:he(e.edge,5,10,6,11),he(e.edgeo,5,10,6,11);break;case 4:se(e.edge,0,11,3,8),se(e.edgeo,0,11,3,8);break;case 5:he(e.edge,0,11,3,8),he(e.edgeo,0,11,3,8);break;case 6:se(e.edge,0,8,3,11),se(e.edgeo,0,8,3,11);break;case 7:se(e.edge,2,7,3,6),se(e.edgeo,2,7,3,6);break;case 8:he(e.edge,2,7,3,6),he(e.edgeo,2,7,3,6);break;case 9:se(e.edge,2,6,3,7),se(e.edgeo,2,6,3,7);break;case 10:he(e.edge,4,8,7,9),he(e.edgeo,4,8,7,9);break;case 11:se(e.edge,1,9,2,10),se(e.edgeo,1,9,2,10);break;case 12:he(e.edge,1,9,2,10),he(e.edgeo,1,9,2,10);break;case 13:se(e.edge,1,10,2,9),se(e.edgeo,1,10,2,9);break;case 14:he(e.edge,0,4,1,5),he(e.edgeo,0,4,1,5),se(e.edge,9,11),se(e.edgeo,8,10);break;case 15:he(e.edge,5,10,6,11),he(e.edgeo,5,10,6,11),se(e.edge,1,3),se(e.edgeo,0,2);break;case 16:he(e.edge,0,11,3,8),he(e.edgeo,0,11,3,8),se(e.edge,5,7),se(e.edgeo,4,6);break;case 17:he(e.edge,2,7,3,6),he(e.edgeo,2,7,3,6),se(e.edge,8,10),se(e.edgeo,9,11);break;case 18:he(e.edge,4,8,7,9),he(e.edgeo,4,8,7,9),se(e.edge,0,2),se(e.edgeo,1,3);break;case 19:he(e.edge,1,9,2,10),he(e.edgeo,1,9,2,10),se(e.edge,4,6),se(e.edgeo,5,7)}}function no(e,t){switch(e.isStd=!1,t){case 0:Ii(e,14),Ii(e,17);break;case 1:Xn(e,11,5,10,6),Xn(e,5,10,6,11),Xn(e,1,2,3,0),Xn(e,4,9,7,8),Xn(e,8,4,9,7),Xn(e,0,1,2,3);break;case 2:ht(e,4,5),ht(e,5,4),ht(e,11,8),ht(e,8,11),ht(e,7,6),ht(e,6,7),ht(e,9,10),ht(e,10,9),ht(e,1,1),ht(e,0,0),ht(e,3,3),ht(e,2,2)}}function Wi(e,t){for(;t>=2;)t-=2,no(e,1),no(e,2);t!==0&&no(e,0)}function sl(e,t){let r,n,o,l,i,a;for(i=1985229328,a=47768,o=0,r=0;r<11;++r)if(n=ns[11-r],l=~~(t/n),t=t%n,o^=l,l<<=2,l>=32){l=l-32,e.edge[r]=a>>l&15;let s=(1<<l)-1;a=(a&s)+(a>>4&~s)}else{e.edge[r]=i>>l&15;let s=(1<<l)-1;i=(i&s)+(i>>>4&~s)+(a<<28),a=a>>4}for((o&1)===0?e.edge[11]=i:(e.edge[11]=e.edge[10],e.edge[10]=i),r=0;r<12;++r)e.edgeo[r]=r;e.isStd=!0}function Y1(e,t){let r;for(r=0;r<12;++r)e.edge[r]=t.edge[r],e.edgeo[r]=t.edgeo[r];e.isStd=t.isStd}function yg(e,t){let r,n,o,l;for(e.temp===null&&(e.temp=N(12)),r=0;r<12;++r)e.temp[r]=r,e.edge[r]=t.ep[Wa[r]+12]%12;for(n=1,r=0;r<12;++r)for(;e.edge[r]!==r;)l=e.edge[r],e.edge[r]=e.edge[l],e.edge[l]=l,o=e.temp[r],e.temp[r]=e.temp[l],e.temp[l]=o,n^=1;for(r=0;r<12;++r)e.edge[r]=e.temp[t.ep[Wa[r]]%12];return n}function Ug(e){let t;for(e.temp===null&&(e.temp=N(12)),t=0;t<12;++t)e.temp[e.edgeo[t]]=t;for(t=0;t<12;++t)e.edge[t]=e.temp[e.edge[t]],e.edgeo[t]=t;e.isStd=!0}function he(e,t,r,n,o){let l;l=e[t],e[t]=e[n],e[n]=l,l=e[r],e[r]=e[o],e[o]=l}function ht(e,t,r){let n=e.edge[t];e.edge[t]=e.edgeo[r],e.edgeo[r]=n}function nr(){this.edge=N(12),this.edgeo=N(12)}function iR(){let e,t,r,n,o,l,i,a,s,f,g,p,u,c,m,L,R,h,y,A,E,v,K=new nr,Z=new nr,M=new nr;for(Xi(Et),a=0,wi=1,Ta(Et,0,0);wi!==31006080&&(m=a>9,i=a%3,l=(a+1)%3,f=m?3:i,e=m?i:3,!(a>=9));){for(p=0;p<31006080;p+=16)if(v=Et[~~p>>4],!(!m&&v===-1)){for(g=p,s=p+16;g<s;++g,v>>=2)if((v&3)===f){for(y=~~(g/20160),t=Ji[y],n=g%20160,sl(K,t*20160+n),R=0;R<17;++R)if(r=so(K.edge,R<<3,4),A=uo[r],E=A&7,A>>=3,o=so(K.edge,R<<3|E,10)%20160,u=A*20160+o,il(Et,u)===e){if(Ta(Et,m?g:u,l),++wi,m)break;if(h=Ki[A],h!==1)for(Y1(Z,K),Ii(Z,R),Wi(Z,E),L=1;(h=~~h>>1&65535)!==0;++L)(h&1)===1&&(Y1(M,Z),Wi(M,L),c=A*20160+ao(M,10)%20160,il(Et,c)===e&&(Ta(Et,c,l),++wi))}}}++a}}function il(e,t){return e[t>>4]>>((t&15)<<1)&3}function so(e,t,r){let n,o,l,i,a,s=ls[t],f=os[t];for(o=0,a=1985229328,i=47768,n=0;n<r;++n)l=s[e[f[n]]]<<2,o*=12-n,l>=32?(o+=i>>l-32&15,i-=4368<<l-32):(o+=a>>l&15,i-=4369,a-=286331152<<l);return o}function bg(e){let t,r,n,o,l,i,a,s,f,g,p,u=new nr;if(i=0,l=il(Et,e),l===3)return 10;for(;e!==0;)for(l===0?l=2:--l,f=~~(e/20160),t=Ji[f],n=e%20160,sl(u,t*20160+n),s=0;s<17;++s)if(r=so(u.edge,s<<3,4),g=uo[r],p=g&7,g>>=3,o=so(u.edge,s<<3|p,10)%20160,a=g*20160+o,il(Et,a)===l){++i,e=a;break}return i}function aR(e,t){let r=il(Et,e);return r===3?10:(1227133513<<r>>t&3)+t-1}function sR(){let e,t,r,n=new nr;for(t=0;t<20;++t)for(r=0;r<8;++r){for(sl(n,0),Ii(n,t),Wi(n,r),e=0;e<12;++e)os[t<<3|r][e]=n.edge[e];for(Ug(n),e=0;e<12;++e)ls[t<<3|r][e]=n.temp[e]}}function fR(){let e,t,r,n,o=new nr,l=N(1485);for(t=0;t<1485;t++)l[t]=0;for(e=0,t=0;t<11880;++t)if((l[~~t>>>3]&1<<(t&7))===0){for(sl(o,t*ns[8]),n=0;n<8;++n)r=ao(o,4),r===t&&(Ki[e]=(Ki[e]|1<<n)&65535),l[~~r>>3]=l[~~r>>3]|1<<(r&7),uo[r]=e<<3|xg[n],no(o,0),n%2===1&&(no(o,1),no(o,2));Ji[e++]=t}}function Ta(e,t,r){e[t>>4]^=(3^r)<<((t&15)<<1)}function uR(){J1||(J1=!0)}function gR(e){let t,r,n;for(t=0,n=!1,r=0;r<12;++r)t|=1<<e.ep[r],n=n!==e.ep[r]>=12;return t&=~~t>>12,t===0&&!n}function pR(e,t){let r;for(r=0;r<24;++r)e.ep[r]=t.ep[r]}function cR(e,t){let r=t%3;switch(t=~~(t/3),t){case 0:F(e.ep,0,1,2,3,r),F(e.ep,12,13,14,15,r);break;case 1:F(e.ep,11,15,10,19,r),F(e.ep,23,3,22,7,r);break;case 2:F(e.ep,0,11,6,8,r),F(e.ep,12,23,18,20,r);break;case 3:F(e.ep,4,5,6,7,r),F(e.ep,16,17,18,19,r);break;case 4:F(e.ep,1,20,5,21,r),F(e.ep,13,8,17,9,r);break;case 5:F(e.ep,2,9,4,10,r),F(e.ep,14,21,16,22,r);break;case 6:F(e.ep,0,1,2,3,r),F(e.ep,12,13,14,15,r),F(e.ep,9,22,11,20,r);break;case 7:F(e.ep,11,15,10,19,r),F(e.ep,23,3,22,7,r),F(e.ep,2,16,6,12,r);break;case 8:F(e.ep,0,11,6,8,r),F(e.ep,12,23,18,20,r),F(e.ep,3,19,5,13,r);break;case 9:F(e.ep,4,5,6,7,r),F(e.ep,16,17,18,19,r),F(e.ep,8,23,10,21,r);break;case 10:F(e.ep,1,20,5,21,r),F(e.ep,13,8,17,9,r),F(e.ep,14,0,18,4,r);break;case 11:F(e.ep,2,9,4,10,r),F(e.ep,14,21,16,22,r),F(e.ep,7,15,1,17,r)}}function is(){let e;for(this.ep=N(24),e=0;e<24;++e)this.ep[e]=e}function Sg(e){let t,r,n;for(is.call(this),t=0;t<23;++t)n=t+e(24-t),n!==t&&(r=this.ep[t],this.ep[t]=this.ep[n],this.ep[n]=r)}function mR(){Z1||(Z1=!0,Ka=[35,1,34,2,4,6,22,5,19])}function wg(e){e.moveBuffer=N(60)}function LR(e,t){return e.value-t.value}function fo(e,t){let r;for(pR(e.edge,t.edge),$B(e.center,t.center),hg(e.corner,t.corner),e.value=t.value,e.add1=t.add1,e.length1=t.length1,e.length2=t.length2,e.length3=t.length3,e.sym=t.sym,r=0;r<60;++r)e.moveBuffer[r]=t.moveBuffer[r];e.moveLength=t.moveLength,e.edgeAvail=t.edgeAvail,e.centerAvail=t.centerAvail,e.cornerAvail=t.cornerAvail}function Sr(e){for(;e.centerAvail<e.moveLength;)eR(e.center,e.moveBuffer[e.centerAvail++]);return e.center}function vg(e){for(;e.cornerAvail<e.moveLength;)rR(e.corner,e.moveBuffer[e.cornerAvail++]%18);return e.corner}function al(e){for(;e.edgeAvail<e.moveLength;)cR(e.edge,e.moveBuffer[e.edgeAvail++]);return e.edge}function BR(e){let t,r,n,o,l,i,a=new Array(e.moveLength-(e.add1?2:0));for(r=0,t=0;t<e.length1;++t)a[r++]=e.moveBuffer[t];for(i=e.sym,t=e.length1+(e.add1?2:0);t<e.moveLength;++t)vt[i][e.moveBuffer[t]]>=27?(a[r++]=vt[i][e.moveBuffer[t]]-9,o=Ka[vt[i][e.moveBuffer[t]]-27],i=ro[i][o]):a[r++]=vt[i][e.moveBuffer[t]];let s=ro[to[i]][KB(Sr(e))];for(l=\\\"\\\",i=s,t=r-1;t>=0;--t)n=a[t],n=~~(n/3)*3+(2-n%3),vt[i][n]>=27?(l=l+Qa[vt[i][n]-9]+\\\" \\\",o=Ka[vt[i][n]-27],i=ro[i][o]):l=l+Qa[vt[i][n]]+\\\" \\\";return l}function tn(e,t){e.moveBuffer[e.moveLength++]=t}function Qi(){wg(this),this.edge=new is,this.center=new rs,this.corner=new Yi}function Zi(e){Qi.call(this),fo(this,e)}function Eg(e){wg(this),this.edge=new Sg(e),this.center=new Rg(e),this.corner=new Dg(e)}function RR(e,t){return t.value-e.value}function ji(e,t){return RR(e,t)}function kg(){}function dR(){if(X1)return;X1=!0;let e,t;for(Qa=[\\\"U \\\",\\\"U2 \\\",\\\"U' \\\",\\\"R \\\",\\\"R2 \\\",\\\"R' \\\",\\\"F \\\",\\\"F2 \\\",\\\"F' \\\",\\\"D \\\",\\\"D2 \\\",\\\"D' \\\",\\\"L \\\",\\\"L2 \\\",\\\"L' \\\",\\\"B \\\",\\\"B2 \\\",\\\"B' \\\",\\\"Uw \\\",\\\"Uw2\\\",\\\"Uw'\\\",\\\"Rw \\\",\\\"Rw2\\\",\\\"Rw'\\\",\\\"Fw \\\",\\\"Fw2\\\",\\\"Fw'\\\",\\\"Dw \\\",\\\"Dw2\\\",\\\"Dw'\\\",\\\"Lw \\\",\\\"Lw2\\\",\\\"Lw'\\\",\\\"Bw \\\",\\\"Bw2\\\",\\\"Bw'\\\"],rn=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,19,21,22,23,25,28,30,31,32,34,36],el=[0,1,2,4,6,7,8,9,10,11,13,15,16,17,19,22,25,28,31,34,36],$1=N(37),eg=N(37),$n=N(37,36),_i=N(29,28),zi=N(21,20),Ga=N(36),nl=N(28),oo=N(20),e=0;e<29;++e)$1[rn[e]]=e;for(e=0;e<21;++e)eg[el[e]]=e;for(e=0;e<36;++e){for(t=0;t<36;++t)$n[e][t]=~~(e/3)===~~(t/3)||~~(e/3)%3===~~(t/3)%3&&e>t;$n[36][e]=!1}for(e=0;e<29;++e)for(t=0;t<28;++t)_i[e][t]=$n[rn[e]][rn[t]];for(e=0;e<21;++e)for(t=0;t<20;++t)zi[e][t]=$n[el[e]][el[t]];for(e=0;e<36;++e)for(Ga[e]=36,t=e;t<36;++t)if(!$n[e][t]){Ga[e]=t-1;break}for(e=0;e<28;++e)for(nl[e]=28,t=e;t<28;++t)if(!_i[e][t]){nl[e]=t-1;break}for(e=0;e<20;++e)for(oo[e]=20,t=e;t<20;++t)if(!zi[e][t]){oo[e]=t-1;break}}function hR(e){let t,r,n,o,l,i,a,s,f,g,p,u;e.solution=\\\"\\\";let c=vi(new ki(Sr(e.c),0)),m=vi(new ki(Sr(e.c),1)),L=vi(new ki(Sr(e.c),2)),R=kt[~~c>>6],h=kt[~~m>>6],y=kt[~~L>>6];for(e.p1SolsCnt=0,e.arr2idx=0,wR(e.p1sols.heap),e.length1=(R<h?R:h)<y?R<h?R:h:y;e.length1<100&&!(y<=e.length1&&Ci(e,~~L>>>6,L&63,e.length1,-1,0)||R<=e.length1&&Ci(e,~~c>>>6,c&63,e.length1,-1,0)||h<=e.length1&&Ci(e,~~m>>>6,m&63,e.length1,-1,0));++e.length1);let A=GR(e.p1sols,Va(IR,vr([kB,ja,qa]),ig,0,0));A.sort(function(K,Z){return K.value-Z.value}),t=9;do{e:for(s=A[0].value;s<100;++s)for(i=0;i<A.length&&!(A[i].value>s);++i)if(!(s-A[i].length1>t)&&(fo(e.c1,A[i]),gg(e.ct2,Sr(e.c1),qi(al(e.c1).ep)),p=Ni(e.ct2),u=Ti(e.ct2),e.length1=A[i].length1,e.length2=s-A[i].length1,_g(e,p,u,e.length2,28,0)))break e;++t}while(s===100);e.arr2.sort(function(K,Z){return K.value-Z.value}),a=0,r=13;do{e:for(f=e.arr2[0].value;f<100;++f)for(i=0;i<Math.min(e.arr2idx,100)&&!(e.arr2[i].value>f);++i)if(!(f-e.arr2[i].length1-e.arr2[i].length2>r)&&(l=yg(e.e12,al(e.arr2[i])),Lg(e.ct3,Sr(e.arr2[i]),l^qi(vg(e.arr2[i]).cp)),n=Xa(e.ct3),o=ao(e.e12,10),g=bg(Ag(e.e12)),g<=f-e.arr2[i].length1-e.arr2[i].length2&&zg(e,o,n,g,f-e.arr2[i].length1-e.arr2[i].length2,20,0))){a=i;break e}++r}while(f===100);let E=new Zi(e.arr2[a]);e.length1=E.length1,e.length2=E.length2;let v=f-e.length1-e.length2;for(i=0;i<v;++i)tn(E,el[e.move3[i]]);e.solution=BR(E)}function FR(e,t){let r,n;for(fo(e.c1,e.c),r=0;r<e.length1;++r)tn(e.c1,e.move1[r]);switch(Ja[t]){case 0:tn(e.c1,24),tn(e.c1,35),e.move1[e.length1]=24,e.move1[e.length1+1]=35,e.add1=!0,t=19;break;case 12869:tn(e.c1,18),tn(e.c1,29),e.move1[e.length1]=18,e.move1[e.length1+1]=29,e.add1=!0,t=34;break;case 735470:e.add1=!1,t=0}gg(e.ct2,Sr(e.c1),qi(al(e.c1).ep));let o=Ni(e.ct2),l=Ti(e.ct2),i=rt[o*70+l];return e.c1.value=i+e.length1,e.c1.length1=e.length1,e.c1.add1=e.add1,e.c1.sym=t,++e.p1SolsCnt,e.p1sols.heap.size<500?n=new Zi(e.c1):(n=NR(e.p1sols),n.value>e.c1.value&&fo(n,e.c1)),bR(e.p1sols,n),e.p1SolsCnt===1e4}function DR(e){let t;for(fo(e.c2,e.c1),t=0;t<e.length2;++t)tn(e.c2,e.move2[t]);if(!gR(al(e.c2)))return!1;let r=yg(e.e12,al(e.c2));Lg(e.ct3,Sr(e.c2),r^qi(vg(e.c2).cp));let n=Xa(e.ct3);ao(e.e12,10);let o=bg(Ag(e.e12));return e.arr2[e.arr2idx]?fo(e.arr2[e.arr2idx],e.c2):e.arr2[e.arr2idx]=new Zi(e.c2),e.arr2[e.arr2idx].value=e.length1+e.length2+Math.max(o,xr[n]),e.arr2[e.arr2idx].length2=e.length2,++e.arr2idx,e.arr2idx===e.arr2.length}function AR(e,t){return Pg(),e.c=new Eg(t),hR(e),e.solution}function Ci(e,t,r,n,o,l){let i,a,s,f,g,p;if(t===0)return n===0&&FR(e,r);for(i=0;i<27;i+=3)if(!(i===o||i===o-9||i===o-18))for(f=0;f<3;++f){if(s=i+f,a=Vi[t][vt[r][s]],g=kt[~~a>>>6],g>=n){if(g>n)break;continue}if(p=ro[r][a&63],a>>>=6,e.move1[l]=s,Ci(e,a,p,n-1,i,l+1))return!0}return!1}function _g(e,t,r,n,o,l){let i,a,s,f;if(t===0&&rt[r]===0)return n===0&&DR(e);for(a=0;a<23;++a){if(_i[o][a]){a=nl[a];continue}if(i=Gi[t][a],f=Oi[r][a],s=rt[i*70+f],s>=n){s>n&&(a=nl[a]);continue}if(e.move2[l]=rn[a],_g(e,i,f,n-1,a,l+1))return!0}return!1}function zg(e,t,r,n,o,l,i){let a,s,f,g,p,u,c,m,L;if(o===0)return t===0&&r===0;for(sl(e.tempe[i],t),p=0;p<17;++p){if(zi[l][p]){p=oo[p];continue}if(f=rl[r][p],u=xr[f],u>=o){u>o&&p<14&&(p=oo[p]);continue}if(g=so(e.tempe[i].edge,p<<3,10),a=~~(g/20160),m=uo[a],L=m&7,m>>=3,s=so(e.tempe[i].edge,p<<3|L,10)%20160,c=aR(m*20160+s,n),c>=o){c>o&&p<14&&(p=oo[p]);continue}if(zg(e,g,f,c,o-1,p,i+1))return e.move3[i]=p,!0}return!1}function Cg(){let e;for(this.p1sols=new Ig(new kg),this.move1=N(15),this.move2=N(20),this.move3=N(20),this.c1=new Qi,this.c2=new Qi,this.ct2=new Za,this.ct3=new $a,this.e12=new nr,this.tempe=N(20),this.arr2=N(100),e=0;e<20;++e)this.tempe[e]=new nr}function Pg(){tg||(QB(),io=N(735471),jB(),IB(),io=null,WB(),HB(),XB(),sR(),fR(),iR(),tg=!0)}function yR(){rg||(rg=!0)}function qi(e){let t,r,n,o;for(o=0,t=0,n=e.length;t<n;++t)for(r=t;r<n;++r)e[t]>e[r]&&(o^=1);return o}function F(e,t,r,n,o,l){let i;switch(l){case 0:i=e[o],e[o]=e[n],e[n]=e[r],e[r]=e[t],e[t]=i;return;case 1:i=e[t],e[t]=e[n],e[n]=i,i=e[r],e[r]=e[o],e[o]=i;return;case 2:i=e[t],e[t]=e[r],e[r]=e[n],e[n]=e[o],e[o]=i;return}}function Mg(){}function Ng(e,t,r,n){let o=new Mg;return o.typeName=e+t,Gg(r!==0?-r:0)&&Og(r!==0?-r:0,o),o.modifiers=4,o.superclass=as,o.componentType=n,o}function Tg(e,t,r,n){let o=new Mg;return o.typeName=e+t,Gg(r)&&Og(r,o),o.superclass=n,o}function UR(e){let t=ol[e.seedId];return e=null,t}function Gg(e){return typeof e==\\\"number\\\"&&e>0}function Og(e,t){let r;if(t.seedId=e,e===2)r=String.prototype;else if(e>0){let n=UR(t);if(n)r=n.prototype;else{n=ol[e]=function(){},n.___clazz$=t;return}}else return;r.___clazz$=t}function bR(e,t){if(MR(e,t))return!0}function xR(e){e.array=Va(Wg,vr([ja,qa]),og,0,0)}function SR(e,t){return Pi(e.array,e.size++,t),!0}function wR(e){e.array=Va(Wg,vr([ja,qa]),og,0,0),e.size=0}function wr(e,t){return e.array[t]}function vR(e,t){let r=e.array[t];return _R(e.array,t,1),--e.size,r}function lo(e,t,r){let n=e.array[t];return Pi(e.array,t,r),n}function ER(e,t){let r;for(t.length<e.size&&(t=PB(t,e.size)),r=0;r<e.size;++r)Pi(t,r,e.array[r]);return t.length>e.size&&Pi(t,e.size,null),t}function kR(){xR(this),this.array.length=500}function _R(e,t,r){e.splice(t,r)}function zR(e,t){let r,n,o,l;for(n=0,r=e.length-1;n<=r;)if(o=n+(~~(r-n)>>1),l=e[o],l<t)n=o+1;else if(l>t)r=o-1;else return o;return-n-1}function Xi(e){CR(e,e.length)}function CR(e,t){let r;for(r=0;r<t;++r)e[r]=-1}function PR(e,t){let r,n,o,l,i=e.heap.size,a=wr(e.heap,t);for(;t*2+1<i&&(r=(n=2*t+1,o=n+1,l=n,o<i&&ji(wr(e.heap,o),wr(e.heap,n))<0&&(l=o),l),!(ji(a,wr(e.heap,r))<0));)lo(e.heap,t,wr(e.heap,r)),t=r;lo(e.heap,t,a)}function MR(e,t){let r,n;for(n=e.heap.size,SR(e.heap,t);n>0;){if(r=n,n=~~((n-1)/2),ji(wr(e.heap,n),t)<=0)return lo(e.heap,r,t),!0;lo(e.heap,r,wr(e.heap,n))}return lo(e.heap,n,t),!0}function NR(e){if(e.heap.size===0)return null;let t=wr(e.heap,0);return TR(e),t}function TR(e){let t=vR(e.heap,e.heap.size-1);0<e.heap.size&&(lo(e.heap,0,t),PR(e,0))}function GR(e,t){return ER(e.heap,t)}function Ig(e){this.heap=new kR,this.cmp=e}function Qg(){ng||(ng=!0,dR(),yR(),OB(),VB(),YB(),lR(),tR(),uR(),mR(),Kg=new Cg)}function WR(){Qg(),Pg()}async function KR(){xe(),Qg();let e=k.fromString(AR(Kg,await Se()));return(await Jn()).concat(e)}var V,ol,wB,og,ja,lg,vB,EB,ig,kB,_B,zB,qa,G1,Oa,Ia,O1,kt,Vi,Ja,io,Hi,to,vt,ro,K1,Gi,rt,pg,cg,Oi,mg,q1,rl,Bg,xr,es,ts,V1,Ft,H1,Wa,wi,Et,ns,os,ls,uo,Ji,xg,Ki,J1,Z1,Ka,X1,$n,_i,zi,rn,Qa,el,Ga,nl,oo,$1,eg,tg,rg,as,Wg,OR,IR,Kg,ng,qg=U(()=>{Le();Ma();T1();Rt();Bt();ol={},wB={},og=0,ja=30,lg=21,vB=22,EB=23,ig=24,kB=25,_B=34,zB=26,qa=40;pt(1,-1,wB);V.value=null;pt(73,1,{},ag);V.queryId$=0;G1=!1;O1=!1;pt(153,1,vr([lg]),ll,ki,tl);io=null,K1=!1;pt(154,1,{},Za);V.parity=0;q1=!1;pt(155,1,{},$a);V.parity=0;pt(156,1,{},rs,Rg);V1=!1;pt(157,1,vr([vB]),Yi,br,Dg);V.temps=null;H1=!1;pt(158,1,vr([EB]),nr);V.isStd=!0;V.temp=null;wi=0,J1=!1;pt(159,1,{},is,Sg);Z1=!1;pt(160,1,vr([ig,_B]),Qi,Zi,Eg);V.compareTo$=function(t){return LR(this,t)};V.add1=!1;V.center=null;V.centerAvail=0;V.corner=null;V.cornerAvail=0;V.edge=null;V.edgeAvail=0;V.length1=0;V.length2=0;V.length3=0;V.moveLength=0;V.sym=0;V.value=0;pt(161,1,{},kg);V.compare=function(t,r){return ji(t,r)};X1=!1;pt(163,1,vr([zB]),Cg);V.add1=!1;V.arr2idx=0;V.c=null;V.length1=0;V.length2=0;V.p1SolsCnt=0;V.solution=\\\"\\\";tg=!1,rg=!1;V.val$outerIter=null;V.size=0;pt(239,1,{},Ig);V.cmp=null;V.heap=null;as=Tg(\\\"java.lang.\\\",\\\"Object\\\",1,null),Wg=Ng(\\\"[Ljava.lang.\\\",\\\"Object;\\\",356,as),OR=Tg(\\\"cs.threephase.\\\",\\\"FullCube\\\",160,as),IR=Ng(\\\"[Lcs.threephase.\\\",\\\"FullCube;\\\",381,OR),ng=!1});var wp={};me(wp,{randomFTOScrambleString:()=>Kd});function ul(e){if(e<2)return e;let t=1;for(let r=2;r<=e;r++)t*=r;return t}function $i(e,t){if(t<0||t>e)return 0;if(t===0||t===e)return 1;let r=1;for(let n=0;n<t;n++)r=r*(e-n)/(n+1)|0;return r}function lp(e,t,r,n,o=e-t-r-n){return $i(e,t+r)*$i(t+r,t)*$i(n+o,n)}function JR(e){e=e.slice();let t=e.length,r=ul(t-1),n=0;for(;t>1;){t--;let o=e[0];n+=o*r;for(let l=0;l<t;l++){let i=e[l+1];e[l]=i-(i>o)}r/=t}return n}function ZR(e){let t=e.length,r=0;for(let n=0;n<t-1;n++)for(let o=n;o<t;o++)e[n]>e[o]&&(r^=1);return r}function Rs(e,t){let r=[],n=ul(t-1)/2,o=0;for(let l=0;l<t-1;l++)r[l]=e/n|0,e%=n,n/=t-1-l;r[t-1]=0;for(let l=t-2;l>=0;l--)for(let i=l+1;i<t;i++)r[i]>=r[l]?r[i]++:o^=1;return o===1&&([r[t-2],r[t-1]]=[r[t-1],r[t-2]]),r}function nn(e){return JR(e)>>1}function ms(e,t){let r=[0];for(let n=1;n<e;n++){let o=t(n+1);r[n]=r[o],r[o]=n}return r}function Xg(e,t){let r=ms(e,t);return ZR(r)===1&&([r[0],r[1]]=[r[1],r[0]]),r}function XR(e){return e|=0,31-Math.clz32(e^e-1)}function $g(e,t){e|=0,t|=0;let r=e+\\\" \\\"+t;if(fs[r])return fs[r];let n=$i(e,t),o=new Uint32Array(n),l=new Uint32Array(1<<e).fill(-1);for(let i=0,a=(1<<t)-1;i<n;i++){o[i]=a,l[a]=i;let s=a|a-1;a=s+1|(~s&-~s)-1>>XR(a)+1}return fs[r]=[o,l]}function $R(e){e|=0;let t=0;for(;e!==0;)e&=e-1,t++;return t}function ep(e){return e&=65535,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,e}function ed(e,t){return ep(e)|ep(t)<<1}function mo(e,t,r,n,o){if(e|=0,t|=0,r|=0,n|=0,o|=0,e!==t+r+n+o)throw\\\"generate_comb4_lookup_tables: invalid parameters\\\";let l=[e,t,r,n,o].join(\\\" \\\");if(us[l])return us[l];let[i,a]=$g(e,r+o),[s,f]=$g(e,n+o),g=lp(e,t,r,n,o),p=new Uint32Array(g),u=new Uint32Array(4**e).fill(-1);for(let c=0,m=0;c<s.length;c++){let L=s[c];for(let R=0;R<i.length;R++){let h=i[R];if($R(h&L)===o){let y=ed(h,L);p[m]=y,u[y]=m,m++}}}return us[l]=[p,u]}function Je(e,t){let r=[];for(let n=0;n<t.length;n++)r[n]=e[t[n]];return r}function Lo(e,t,r){let n=[];for(let o=0;o<r.length;o++)n[o]=e[t[r[o]]];return n}function ds(e,t){let r=[];for(let n=0;n<t;n++)r[n]=n;for(let n of e)for(let o=0;o<n.length;o++)r[n[o]]=n[(o+1)%n.length];return r}function on(e,t){let r=e.length,n=Array(r).fill(0);for(let i=1;i<r;i++)n[i]=n[i-1]+t[i-1];let o=n[r-1]+t[r-1],l=Array(o);for(let i=0;i<r;i++)t[i]&&(l[n[i]]=n[e[i]]);return l}function hs(e){let t=e.length,r=Array(t);for(let n=0;n<t;n++)r[e[n]]=n;return r}function td(e,t){for(;e&&t;)[e,t]=[t%e,e];return Math.abs(e+t)}function rd(e,t){return e*t/td(e,t)}function nd(e){let t=1,r=e.length,n=Array(r).fill(!1),o=-1;for(;o=n.indexOf(!1,o+1),o!==-1;){let l=0,i=o;for(;!n[i];)n[i]=!0,i=e[i],l++;t=rd(t,l)}return t}function gd(e,t){for(let r=0;r<6;r++){if(e===_t[Er[r][0]]&&t===_t[Er[r][2]])return[r,0];if(e===_t[Er[r][2]]&&t===_t[Er[r][0]])return[r,1]}throw\\\"unknown corner piece\\\"}function pd(e,t){for(let r=0;r<12;r++)if(e===_t[kr[r][0]]&&t===_t[kr[r][1]]||t===_t[kr[r][0]]&&e===_t[kr[r][1]])return r;throw\\\"unknown edge piece\\\"}function Fs(e,t){return gd(e[Er[t][0]],e[Er[t][2]])}function l0(e,t){return pd(e[kr[t][0]],e[kr[t][1]])}function cd(e,t,r,n){let o=Er[t],l=Er[r].map(i=>_t[i]);n%2!==0&&(l=[l[2],l[3],l[0],l[1]]);for(let i=0;i<4;i++)e[o[i]]=l[i]}function md(e,t,r){let n=kr[t],o=kr[r].map(l=>_t[l]);for(let l=0;l<2;l++)e[n[l]]=o[l]}function sp(e){let t=e.map(s=>_t[s]),n=Array(6).fill().map((s,f)=>Fs(t,f)).map(([s,f])=>s+6*f),o=n.concat(n.map(s=>(s+6)%12)),l=Array(12).fill().map((s,f)=>l0(t,f)),i=Array(12).fill().map((s,f)=>ln.indexOf(e[ln[f]])),a=Array(12).fill().map((s,f)=>go.indexOf(e[go[f]]));return{cp:o,ep:l,ap:i,bp:a}}function Bd(e){let t=Array(72),r=Xg(5,e);r.push(5);let n=Array(4).fill().map(a=>e(2));n.push(n.reduce((a,s)=>a^s)),n.push(0);for(let a=0;a<6;a++)cd(t,a,r[a],n[a]);let o=Xg(12,e);for(let a=0;a<12;a++)md(t,a,o[a]);let l=ms(12,e).map(a=>a/3|0),i=ms(12,e).map(a=>4+(a/3|0));for(let a=0;a<12;a++)t[ln[a]]=l[a],t[go[a]]=i[a];return t}function up(e,t=!1){if(t){e=e.map(L=>L.slice());let c=[0,1,2,3,4,5,6,7],m=[[0,3,5,6,4,7,1,2],[7,1,0,6,3,5,4,2],[7,4,2,1,3,0,6,5],[2,4,5,3,6,0,1,7]];m=m.concat(m.map(L=>hs(L)));for(let L=0;L<e.length;L++)if(e[L][0]<4)e[L][0]=c[e[L][0]];else{let R=c[e[L][0]],h=e[L][1];e[L][0]=R,c=Je(h===1?m[R^4]:m[R],c)}}let r=t?\\\"U L F R D BR B BL\\\".split(\\\" \\\"):Ld,n=[\\\"0\\\",\\\"\\\",\\\"'\\\"];return e.map(([l,i])=>r[l]+n[i]).join(\\\" \\\")}function _r(e,t){for(let[r,n]of t)for(let o=0;o<n;o++)e=Je(e,fp[r]);return e}function gp(e){return e.map(([t,r])=>[t,(3-r)%3]).reverse()}function r0(e,t=!1){if(e.length===0)return[];let r=[],n;for(let[o,l]of e)n&&n[0]===o?(n[1]+=l,n[1]%=3,n[1]===0&&(r.pop(),n=r.length===0?void 0:r[r.length-1])):r.length>=2&&(n[0]^o)===4&&r[r.length-2][0]===o?(r[r.length-2][1]+=l,r[r.length-2][1]%=3,r[r.length-2][1]===0&&r.splice(r.length-2,1)):(n=[o,l],r.push(n));return t&&\\\"\\\"+e!=\\\"\\\"+r&&console.log(`simplified ${e} to ${r}`),r}function Rd(e){return up(gp(Fd(Bd(e),!0)),!0)}function po(e,t,r,n,o,l){let i=lp(e,t,r,n,o),a=l.length,[s,f]=mo(e,t,r,n,o),g=Array(a).fill().map(()=>new Uint32Array(i));for(let p=0;p<i;p++){let u=s[p],c=Array(e);for(let m=0;m<e;m++)c[m]=u>>2*m&3;for(let m=0;m<a;m++){let R=Je(c,l[m]).reduce((h,y,A)=>h|y<<2*A,0);g[m][p]=f[R]}}return g}function pp(e){let t=e[0].length,r=e.length,n=Array(r).fill().map(()=>new Uint32Array(t));for(let o=0;o<t;o++)for(let l=0;l<r;l++)n[l][e[l][o]]=o;return n}function sn(e,t){let r=e[0].length,n=t[0].length,o=e.length,l=Array(o).fill().map(()=>new Uint32Array(r*n));for(let i=0;i<n;i++)for(let a=0;a<r;a++){let s=a+r*i;for(let f=0;f<o;f++)l[f][s]=e[f][a]+r*t[f][i]}return l}function dd(e,t){let r=e.length,n=e[0].length,o=new Uint8Array(n);o[t]=1;let l=!1;for(;!l;){l=!0;for(let a=0;a<n;a++)if(!!o[a])for(let s=0;s<r;s++)o[e[s][a]]||(o[e[s][a]]=1,l=!1)}let i=new Int32Array(n).fill(-1);for(let a=0,s=0;a<n;a++)!o[a]||(i[a]=s,s++);return[e.map(a=>on(a,o)),i]}function hd(e,t){let r=e.length,n=e[0].length,o=new Int32Array(n).fill(-1);t.forEach(s=>{o[s]=0});let l=[t];for(let s=0;s<l.length;s++){let f=l[s];for(let g=0;g<r;g++){let p=e[g][f[0]];if(o[p]!==-1)continue;let u=f.map(m=>e[g][m]),c=l.length;l.push(u);for(let m of u){if(o[m]!==-1)throw\\\"quotienting failed\\\";o[m]=c}}}let i=l.length,a=Array(r).fill().map(()=>new Int32Array(i));for(let s=0;s<r;s++)for(let f=0;f<i;f++)a[s][f]=o[e[s][l[f][0]]];return[a,o]}function cp(e,t,r){let n=e[0].length,o=e.length,l=new Int32Array(n).fill(-1);l[t]=r,l[r]=t;let i=!1;for(;!i;){i=!0;for(let a=0;a<n;a++){if(l[a]===-1)continue;let s=l[a];for(let f=0;f<o;f++){let g=f^1,p=e[f][a],u=e[g][e[g][s]];if(l[p]===-1)i=!1,l[p]=u,l[u]=p;else if(l[p]!==u)throw\\\"mirroring failed - is the initial map correct?\\\"}}}return l}function mp(e,t){let r=e[0].length,n=e.length,o=new Int8Array(r).fill(-1);for(let a of t)o[a]=0;let l=0,i=!1;for(;!i;){i=!0;for(let a=0;a<r;a++)if(o[a]===l)for(let s=0;s<n;s++){let f=e[s][a];for(;f!==a;)o[f]===-1&&(i=!1,o[f]=l+1),f=e[s][f]}l++}return o}function Fd(e,t=!1){let r=bd(e).next().value,n=_r(e,r),o=(t?Id:Od)(n),l=r0(r.concat(o),!1);return _r(e,l).join(\\\"\\\")!==gl.join(\\\"\\\")&&(console.log(\\\"solving failed!\\\"),console.log(e),console.log(r),console.log(n),console.log(o),console.log(_r(e,l))),l}function Ad(e){let[t,r]=mo(12,6,0,3,3),n=Array(12).fill().map((a,s)=>l0(e,s)),o=n.indexOf(8)+12*n.indexOf(9)+12**2*n.indexOf(10)+12**3*n.indexOf(11),[l,i]=[ln,go].map(a=>{let s=a.map(f=>Dd[e[f]]);return r[s.reduce((f,g,p)=>f|g<<2*p,0)]});return[o,l,i]}function Lp(){if(I.phase1_edge)return I.phase1_edge;let e=pp(an.map(n=>n.ep)),t=sn(e,e),r=sn(t,t);return I.phase1_edge=r}function yd(){return lr.phase1_edge?lr.phase1_edge:lr.phase1_edge=mp(Lp(),[8+12*9+12**2*10+12**3*11])}function Ud(){return I.phase1_centreA?I.phase1_centreA:I.phase1_centreA=po(12,6,0,3,3,an.map(e=>e.ap))}function Bp(){return I.phase1_centreB?I.phase1_centreB:I.phase1_centreB=po(12,6,0,3,3,an.map(e=>e.bp))}function tp(){if(lr.phase1_centre)return lr.phase1_centre;let[e,t]=mo(12,6,0,3,3),r=e.filter(n=>{let o=n>>12&3,l=n>>18&3;return o===2&&l===3}).map(n=>t[n]);return lr.phase1_centre=mp(Bp(),r)}function*bd(e){let t=[Lp(),Ud(),Bp()],r=[yd(),tp(),tp()];yield*xd(Ad(e),t,r,15)}function*xd(e,t,r,n){let o=e.length,l=0;for(let i=0;i<o;i++)l=Math.max(l,r[i][e[i]]);for(;l<=n;)yield*Rp(e,t,r,l,-1),l++}function*Rp(e,t,r,n,o){let l=3,i=8,a=Math.max(r[0][e[0]],r[1][e[1]],r[2][e[2]]);if(!(a>n)){if(n===0){yield[];return}if(!(a===0&&n===1))for(let s=0;s<i;s++){if(s===o||s===o-4)continue;let f=[];f[0]=t[0][s][e[0]],f[1]=t[1][s][e[1]],f[2]=t[2][s][e[2]];let g=1;for(;e.some((p,u)=>e[u]!=f[u]);){let p=Rp(f,t,r,n-1,s);for(;;){let{value:u,done:c}=p.next();if(c)break;yield[[s,g]].concat(u)}f[0]=t[0][s][f[0]],f[1]=t[1][s][f[1]],f[2]=t[2][s][f[2]],g++}}}}function Ds(e){let[t,r]=mo(10,5,3,2,0),n=Array(8).fill().map((u,c)=>l0(e,c)),o=n.indexOf(5)+8*n.indexOf(6)+8**2*n.indexOf(7),l=Array(5).fill().map((u,c)=>Fs(e,c)),i=hs(l.map(([u,c])=>u+5*c).concat(l.map(([u,c])=>u+5*(c^1)))),a=i.slice(0,5).map(u=>u%5),s=i.slice(0,5).map(u=>u/5|0),f=nn(a)*8+(s[0]^s[2])+2*(s[0]^s[3])+4*s[4],[g,p]=[ln,go].map(u=>{let c=Je(u,wd).map(m=>Sd[e[m]]);return r[c.reduce((m,L,R)=>m|L<<2*R,0)]});return Fp(),yp(),[g,p,Ap[f]+40*hp[o]]}function*n0(e){yield*zd(Ds(e),30)}function dp(){if(I.phase2_centre)return I.phase2_centre;let e=po(10,5,3,2,0,an.slice(0,4).map(r=>on(r.ap,rp))),t=po(10,5,3,2,0,an.slice(0,4).map(r=>on(r.bp,rp)));return I.phase2_centre=[e,t]}function Fp(){if(I.phase2_edge)return I.phase2_edge;let e=pp(an.slice(0,4).map(n=>n.ep.slice(0,8))),t=sn(e,sn(e,e)),r;return[r,hp]=dd(t,501),I.phase2_edge=r}function Dp(){if(I.phase2_corner)return I.phase2_corner;let t=ul(5)/2*8,r=[!0,!0,!0,!0,!0,!1,!0,!0,!0,!0,!0,!1],n=Array(4).fill().map(()=>new Uint32Array(t)),o=an.slice(0,4).map(l=>hs(on(l.cp,r)));for(let l=0;l<t;l++){let i=Rs(l>>3,5),a=[0,0,l&1,l>>1&1,l>>2&1];a[1]=a[2]^a[3]^a[4];let s=Array(10);for(let f=0;f<5;f++)s[f]=i[f]+5*a[f],s[f+5]=i[f]+5*(a[f]^1);for(let f=0;f<4;f++){let g=Je(o[f],s),p=g.slice(0,5).map(m=>m%5),u=g.slice(0,5).map(m=>m/5|0),c=(u[0]^u[2])+2*(u[0]^u[3])+4*u[4];n[f][l]=nn(p)*8+c}}return I.phase2_corner=n}function yp(){return I.phase2_corner_compact||([I.phase2_corner_compact,Ap]=hd(Dp(),kd())),I.phase2_corner_compact}function As(){if(I.phase2_ce)return I.phase2_ce;let e=yp(),t=Fp();return I.phase2_ce=sn(e,t)}function vd(){if(gs)return gs;let e=Ds(gl)[2];return gs=cp(As(),e,e)}function Ed(){let[e,t]=mo(10,5,3,2,0);return e.filter(r=>(r>>10&63)===41).map(r=>t[r])}function kd(){let e=Dp(),t=e[0].length,r=Array(t).fill(!1);r[0]=!0;let n=!1;for(;!n;){n=!0;for(let o=0;o<t;o++)r[o]&&(r[e[0][o]]||(n=!1,r[e[0][o]]=!0),r[e[1][o]]||(n=!1,r[e[1][o]]=!0))}return r.map((o,l)=>l).filter(o=>r[o])}function _d(){if(lr.phase2_ace)return lr.phase2_ace;let[e,t]=dp(),r=As(),n=2520,o=40*336,l=n*o,i=Ds(gl)[2],a=9,s=new Int8Array(l).fill(a);for(let f of Ed())s[f+n*i]=0;for(let f=0;f<a-1;f++)for(let g=s.indexOf(f);g!==-1;g=s.indexOf(f,g+1)){let p=g%n,u=g/n|0;for(let c=0;c<4;c++){let m=e[c][p],L=r[c][u],R=m+n*L;s[R]===a&&(s[R]=f+1),m=e[c][m],L=r[c][L],R=m+n*L,s[R]===a&&(s[R]=f+1)}}return lr.phase2_ace=s}function*zd(e,t){let[r,n]=dp(),o=As(),l=_d(),i=vd(),[a,s,f]=e,g=i[f],p=Math.max(l[a+2520*f],l[s+2520*g]);for(;p<=t;)yield*Up(a,s,f,r,n,o,l,i,p,-1),p++}function*Up(e,t,r,n,o,l,i,a,s,f){let g=Math.max(i[e+2520*r],i[t+2520*a[r]]);if(!(g>s)){if(s===0){yield[];return}else if(g===0)return;for(let p=0;p<4;p++){if(p===f)continue;let u=e,c=t,m=r;for(let L=1;L<=2;L++){u=n[p][u],c=o[p][c],m=l[p][m];let R=Up(u,c,m,n,o,l,i,a,s-1,p);for(;;){let{value:h,done:y}=R.next();if(y)break;yield[[p,L]].concat(h)}}}}}function i0(e){let[t,r]=mo(7,3,2,0,2),n=Array(5).fill().map((f,g)=>l0(e,g)),o=nn(n),l=Array(4).fill().map((f,g)=>Fs(e,g)),i=nn(l.map(f=>f[0]))*2+l.find(f=>f[0]===0)[1],[a,s]=[ln,go].map(f=>{let g=Je(f,Cd).map(p=>e[p]%4);return r[g.reduce((p,u,c)=>p|u<<2*c,0)]});return[a+210*s,i+24*o]}function Md(){if(I.phase3_2gen_edge)return I.phase3_2gen_edge;let e=ul(5)/2,t=Array(co).fill().map(()=>new Uint32Array(e)),r=o0.map(n=>n.ep.slice(0,5));for(let n=0;n<e;n++){let o=Rs(n,5);for(let l=0;l<co;l++)t[l][n]=nn(Je(o,r[l]))}return I.phase3_2gen_edge=t}function Nd(){if(I.phase3_2gen_corner)return I.phase3_2gen_corner;let t=ul(4)/2*2,r=[!0,!0,!0,!0,!1,!1,!0,!0,!0,!0,!1,!1],n=Array(co).fill().map(()=>new Uint32Array(t)),o=o0.map(l=>on(l.cp,r).slice(0,4));for(let l=0;l<t;l+=2){let i=Rs(l>>1,4),a=i.concat(i.map(s=>s+4));for(let s=0;s<co;s++){let f=Je(a,o[s]),g=f.map(u=>u%4),p=f.find(u=>u%4===0)>>2;n[s][l]=nn(g)*2+p,n[s][l+1]=nn(g)*2+(p^1)}}return I.phase3_2gen_corner=n}function a0(){return I.phase3_2gen_corneredge?I.phase3_2gen_corneredge:I.phase3_2gen_corneredge=sn(Nd(),Md())}function ys(){if(I.phase3_2gen_centre)return I.phase3_2gen_centre;let e=po(7,3,2,0,2,o0.map(r=>on(r.ap,np))),t=po(7,3,2,0,2,o0.map(r=>on(r.bp,np)));return I.phase3_2gen_centreA=e,I.phase3_2gen_centreB=t,I.phase3_2gen_centre=sn(e,t)}function xp(){if(ps)return ps;let e=ys(),t=I.phase3_2gen_centreA,r=a0(),n=t[0].length,o=r[0].length,l=n*o,i=25,a=ir.map(u=>u.length),s=new Int8Array(l).fill(i),f=i0(gl);s[f[0]%n+n*f[1]]=0;let g=0,p=!1;for(;!p&&g<i-1;){p=!0;let u=Array(co).fill().map((h,y)=>y).filter(h=>a[h]+g<i);u.sort((h,y)=>a[h]-a[y]);let c=Je(a,u),m=Je(t,u),L=Je(r,u),R=u.length;for(let h=s.indexOf(g);h!==-1;h=s.indexOf(g,h+1)){let y=h%n,A=h/n|0;for(let E=0;E<R;E++){let v=c[E],K=m[E][y],Z=L[E][A],M=K+n*Z;s[M]>g+v&&(p=!1,s[M]=g+v)}}g++}return ps=s}function Sp(){if(cs)return cs;let e=a0().slice(0,2),t=i0(gl);return cs=cp(e,t[1],t[1])}function Ls(e,t=i0(e)){let[r,n]=t,o=r%210,l=Math.floor(r/210),i=ys(),a=I.phase3_2gen_centreA,s=I.phase3_2gen_centreB,f=a0(),g=xp(),p=Sp(),u=0;for(;;){let c=Us(o,l,n,a,s,f,g,p,u);for(let m of c)return m.map(L=>ir[L]).flat();u++}}function op(e,t=i0(e)){let[r,n]=t,o=r%210,l=Math.floor(r/210),i=ys(),a=I.phase3_2gen_centreA,s=I.phase3_2gen_centreB,f=a0(),g=xp(),p=Sp(),u=Ls(e).length,c=1/0,m;for(let L=u;L<=u+0;L++){let R=Us(o,l,n,a,s,f,g,p,L);for(let h of R){let y=h.map(v=>ir[v]).flat(),A=r0(y),E=Bs(A);E<c&&(c=E,m=A)}}return m}function Td(e){return(e-1)*(e-2)/2}function Bs(e){let t=up(e,!0).replace(/'/g,\\\"\\\").split(\\\" \\\");return e.length+Gd(t).map(Td).reduce((r,n)=>r+n,0)}function Gd(e){if(e.length<3)return[];let t=e.length,r=[];for(let l=0;l<t-2;l++)r[l]=e[l]===e[l+2];r.push(!1);let n=-1,o=[];for(;n<t-2&&(n=r.indexOf(!0,n+1),n!==-1);){let l=r.indexOf(!1,n+1);o.push(l-n),n=l}return o}function*Us(e,t,r,n,o,l,i,a,s,f=-1){let g=i[e+210*r],p=i[t+210*a[r]],u=Math.max(g,p);if(!(u>s)){if(s===0){yield[];return}if(u!==0)for(let c=0;c<co;c++){if(c===f&&Pd[c]<=3)continue;let m=n[c][e],L=o[c][t],R=l[c][r],h=s-ir[c].length;if(h<0)continue;let y=Us(m,L,R,n,o,l,i,a,h,c);for(;;){let{value:A,done:E}=y.next();if(E)break;yield[c].concat(A)}}}}function Od(e,t=200,r=24){let n=[],o=n0(e),l=Je(e,Wt).map(s=>s^1),i=n0(l),a=Array(1e3);for(let s=0;s<t;s++){{let{value:f,done:g}=o.next();if(!g){let p=_r(e,f),u=f.concat(Ls(p));if(u.length<=r)return u;u.length<a.length&&(a=u)}}{let{value:f,done:g}=i.next();if(!g){let p=_r(l,f),u=f.concat(Ls(p)).map(([c,m])=>[c^2,m]);if(u.length<=r)return u;u.length<a.length&&(a=u)}}}return a}function Id(e,t=20,r=30){let n=[],o=n0(e),l=Je(e,Wt).map(f=>f^1),i=n0(l),a,s=1/0;for(let f=0;f<t;f++){{let{value:g,done:p}=o.next();if(!p){let u=_r(e,g),c=r0(g.concat(op(u))),m=Bs(c);if(m<=r)return c;m<s&&(a=c,s=m)}}{let{value:g,done:p}=i.next();if(!p){let u=_r(l,g),c=r0(g.concat(op(u)));c=c.map(([L,R])=>[L^2,R]);let m=Bs(c);if(m<=r)return c;m<s&&(a=c,s=m)}}}return a}async function Kd(){return Rd(await Wd)}var p5,c5,fs,us,gl,fl,od,Wt,m5,e0,ip,ld,id,ad,t0,sd,ap,fd,ud,_t,Er,kr,ln,go,fp,Ld,an,I,lr,Dd,Sd,wd,rp,hp,Ap,gs,Cd,np,ir,co,bp,o0,Pd,ps,cs,Wd,vp=U(()=>{Rt();[p5,c5]=(()=>{let e=new Int8Array(2048),t=new Int8Array(256*8);for(let o=0;o<256;o++)for(let l=0,i=0;l<8;l++)(o>>>l&1)!==0&&(e[l<<8|o]=i,t[i<<8|o]=l,i++);function r(o){let l=255,i=2520,a=0;for(let s=0;s<6;s++){let f=o[s];a+=e[l|f<<8]*i,l&=~(1<<f),i/=7-s}return a}function n(o,l){let i=255,a=2520,s=0;for(let f=0;f<6;f++){let g=o/a|0;o-=g*a,s^=g&1;let p=t[i|g<<8];l[f]=p,i&=~(1<<p),a/=7-f}return l[6]=t[i|s<<8],l[7]=t[i|(s^1)<<8],l}return[r,n]})();fs={};us={};gl=Array(72).fill().map((e,t)=>t/9|0),fl=ds([[0,4,8],[1,6,3],[2,5,7],[9,22,35],[45,67,44],[47,68,43],[46,69,39],[50,70,38],[49,71,36]],72),od=Je(fl,fl),Wt=Array(72).fill().map((e,t)=>(t/18|0)*18+(t+9)%18),m5=Array(72).fill().map((e,t)=>(t/36|0)*36+(t+18)%36),e0=Array(72).fill().map((e,t)=>(t+36)%72),ip=Lo(e0,od,e0),ld=Lo(Wt,fl,Wt),id=Lo(Wt,ip,Wt),ad=ds([[10,24,30],[11,23,34],[12,19,33],[42,48,64],[41,52,65],[37,51,66]],72),t0=Je(fl,ad),sd=Je(t0,t0),ap=Lo(e0,sd,e0),fd=Lo(Wt,t0,Wt),ud=Lo(Wt,ap,Wt),_t=Array(72).fill().map((e,t)=>t/9|0),Er=[[0,45,9,36],[4,67,22,49],[8,44,35,71],[13,58,31,40],[17,53,26,62],[18,63,27,54]],kr=[[1,46],[3,39],[6,69],[10,37],[33,42],[12,48],[15,60],[24,51],[19,64],[28,55],[30,66],[21,57]],ln=Array(12).fill().map((e,t)=>(t/3|0)*9+[2,5,7][t%3]),go=ln.map(e=>e+36);fp=[fl,ip,ld,id,t0,ap,fd,ud],Ld=[\\\"U\\\",\\\"L\\\",\\\"F\\\",\\\"R\\\",\\\"u\\\",\\\"l\\\",\\\"f\\\",\\\"r\\\"],an=fp.map(sp);I={},lr={},Dd=[0,0,2,3,0,0,2,3];Sd=[0,1,2,0,0,1,2,0],wd=[0,1,2,3,4,5,7,8,10,11],rp=[!0,!0,!0,!0,!0,!0,!1,!0,!0,!1,!0,!0];Cd=[0,1,2,3,4,10,11],np=[!0,!0,!0,!0,!0,!1,!1,!1,!1,!1,!0,!0],ir=[[[0,1]],[[1,1]],[[2,1],[0,1],[3,1],[0,2],[3,2],[2,2]],[[3,2],[1,2],[2,2],[1,1],[2,1],[3,1]],[[6,1],[0,1],[3,1],[0,2],[3,2],[6,2]],[[7,2],[1,2],[2,2],[1,1],[2,1],[7,1]],[[2,1],[0,1],[2,2],[0,1],[2,1],[0,1],[2,2]],[[3,2],[1,1],[3,1],[1,1],[3,2],[1,1],[3,1]],[[2,1],[3,1],[2,2],[1,2],[0,2],[2,1],[3,1],[2,2]],[[3,2],[2,2],[3,1],[0,1],[1,1],[3,2],[2,2],[3,1]],[[6,1],[0,1],[6,2],[0,2],[1,2],[6,1],[0,1],[6,2]],[[7,2],[1,2],[7,1],[1,1],[0,1],[7,2],[1,2],[7,1]],[[2,1],[3,2],[2,2],[3,1],[0,1],[2,2],[1,1],[2,1]],[[3,2],[2,1],[3,1],[2,2],[1,2],[3,1],[0,2],[3,2]],[[6,1],[0,2],[6,2],[7,1],[6,1],[1,2],[7,1],[6,1]],[[7,2],[1,1],[7,1],[6,2],[7,2],[0,1],[6,2],[7,2]],[[2,2],[1,2],[2,2],[3,2],[2,2],[3,2],[0,2],[3,2]],[[6,2],[7,2],[1,2],[0,2],[1,2],[0,2],[6,2],[7,2]]];ir=ir.concat(ir.map(e=>gp(e)));co=ir.length,bp=ir.map(e=>_r(ds([],72),e)),o0=bp.map(sp),Pd=bp.map(nd);Wd=Se()});var Ep={};me(Ep,{randomFTOScrambleString:()=>Qd,sgsDataFTO:()=>qd});async function Qd(){let{randomFTOScrambleString:e}=await Promise.resolve().then(()=>(vp(),wp));return e()}async function qd(){return jd??(jd=Vd())}async function Vd(){return Ot(await Pe.fto.kpuzzle(),`SubgroupSizes 24 12 11 12 12 11 10 9 11 8 10 9 7 8 10 10 6 9 8 5 7 6 5 4 4 8 7 3 6 6 360\\n\\nAlg T\\nAlg B\\nAlg B T\\nAlg B'\\nAlg B' T\\nAlg U\\nAlg U T\\nAlg U'\\nAlg U' T\\nAlg B BL\\nAlg B BL T\\nAlg B BL'\\nAlg B BL' T\\nAlg B' BR\\nAlg B' BR T\\nAlg B' BR'\\nAlg B' BR' T\\nAlg U R'\\nAlg U R' T\\nAlg U' L\\nAlg U' L T\\nAlg B BL' D\\nAlg B BL' D T\\n\\nAlg R\\nAlg R'\\nAlg R D\\nAlg R D'\\nAlg R BR\\nAlg R BR'\\nAlg R' F\\nAlg R' L\\nAlg R' L'\\nAlg B L B'\\nAlg U L' U'\\n\\nAlg B U B'\\nAlg B U' B'\\nAlg B R B'\\nAlg B R' B'\\nAlg B' U' B\\nAlg B' U B L\\nAlg B' U B L'\\nAlg B' U' B BL'\\nAlg B U' B' BR\\nAlg B' R' B F\\n\\nAlg BR\\nAlg BR'\\nAlg BR BL\\nAlg BR BL'\\nAlg BR' F\\nAlg BR' F'\\nAlg BR' D\\nAlg B BR B'\\nAlg U F U'\\nAlg BR BL L\\nAlg BR' D BR'\\n\\nAlg B' BL B\\nAlg B' BL' B\\nAlg BR D' BR'\\nAlg B' BL B D'\\nAlg B' BL B BL\\nAlg B' BL B BL'\\nAlg B' BL L B\\nAlg B' BL' B F'\\nAlg B' BL' B L'\\nAlg B' BL' B BL'\\nAlg B' BL' L BL' B\\n\\nAlg R' BR R\\nAlg R' BR' R\\nAlg BR BL' D BR\\nAlg R' BR D R\\nAlg R' BR D' R\\nAlg R' BR R BL\\nAlg B' D' BL D B\\nAlg BR B D' B' BR'\\nAlg BR BL' D BR L'\\nAlg BR BL' D BL BR\\n\\nAlg U BR U'\\nAlg U BR' U'\\nAlg U' R U\\nAlg U' R' U\\nAlg U BR B' U'\\nAlg U BR' U' D\\nAlg U BR' U' D'\\nAlg U' R F' U\\nAlg U' R' U L'\\n\\nAlg U B U'\\nAlg U B' U'\\nAlg U B U' L\\nAlg U B U' L'\\nAlg U B' U' BL'\\nAlg U B U' L F\\nAlg U B U' L F'\\nAlg U B' U' BL' D'\\n\\nAlg B BL' L BL B'\\nAlg B BL' L' BL B'\\nAlg U B' D B U'\\nAlg U B' D' B U'\\nAlg U R D R' U'\\nAlg U R D' R' U'\\nAlg R' F L F' R\\nAlg R' F L' F' R\\nAlg B L' B F' D B\\nAlg U B' D' B U' D\\n\\nAlg F\\nAlg F'\\nAlg F D\\nAlg F D'\\nAlg F' L\\nAlg F' L'\\nAlg F D' BL\\n\\nAlg F BL F'\\nAlg F BL' F'\\nAlg BR' BL BR\\nAlg BR' BL' BR\\nAlg F BR F' BR'\\nAlg F BL F' BL'\\nAlg F BL' F' L\\nAlg F BL' L' F'\\nAlg F BR' BL BR F'\\n\\nAlg F' BL F\\nAlg F' BL' F\\nAlg U BL U'\\nAlg U BL' U'\\nAlg F U' F' U\\nAlg F' BL F D'\\nAlg F' BL F BL'\\nAlg F' BL D F\\n\\nAlg L\\nAlg L'\\nAlg L BL\\nAlg L BL'\\nAlg F' D F\\nAlg L BL D\\n\\nAlg L' BL L\\nAlg L' BL' L\\nAlg L' BL D L\\nAlg L' BL D' L\\nAlg L' BL L BL'\\nAlg L' BL D' L BL\\nAlg L' BL D' L BL'\\n\\nAlg L D L'\\nAlg L D' L'\\nAlg R' D R\\nAlg R' D' R\\nAlg L D L' D'\\nAlg L R L' R'\\nAlg L' B' L B\\nAlg R' D R BL\\nAlg L BL' L' BL L'\\n\\nAlg U L' D L U'\\nAlg U B D B' U'\\nAlg U L' D' L U'\\nAlg U B D' B' U'\\nAlg R' D' BL' D R\\nAlg U B D' B' U' D\\nAlg U B' L B L' U'\\nAlg U B D B' U' BL'\\nAlg U B D' B' L' D' L U'\\n\\nAlg F L F'\\nAlg F L' F'\\nAlg F L F' D\\nAlg F L F' D'\\nAlg F L' F' BL'\\n\\nAlg L BL' D BL L'\\nAlg L BL' D' BL L'\\nAlg F D L D' L' F'\\nAlg F L D L' D' F'\\nAlg F L' B' L B F'\\nAlg F' D' R' D R F\\nAlg F D L D' L' F' BL'\\nAlg F' R' B' R' B R' F\\n\\nAlg B D B'\\nAlg B D' B'\\nAlg L' D L\\nAlg L' D' L\\nAlg B D B' D'\\nAlg B' L B L'\\nAlg B D B' D' BL\\n\\nAlg D\\nAlg D'\\nAlg D BL\\nAlg D BL'\\n\\nAlg D BL' D BL D'\\nAlg D BL' D' BL D'\\nAlg B D R D' R' B'\\nAlg B R D R' D' B'\\nAlg D BL' D BL D' BL\\nAlg D BL' D BL D' BL'\\n\\nAlg D BL D BL' D'\\nAlg D BL D' BL' D'\\nAlg B' BL' B BR D' BR'\\nAlg D BL D BL' D' BL\\nAlg D BL D BL' D' BL'\\n\\nAlg D' BL D\\nAlg D' BL' D\\nAlg D' BL D BL\\nAlg D' BL D BL'\\n\\nAlg B D' B' BL B D B'\\nAlg B D' B' BL' B D B'\\nAlg D' BL' D BL D' BL D\\n\\nAlg B R' B' BL B R B'\\nAlg B R' B' BL' B R B'\\nAlg L R L' BL' L R' L'\\n\\nAlg F BL' B' BL F' BL' B\\nAlg F' R' F BL F' R F\\nAlg F' R' F BL' F' R F\\nAlg BR R BR' BL' BR R' BR'\\nAlg F L' BL U BL' U' L F'\\nAlg F' U' F D F' U F D'\\nAlg F BL F' D F BL' F' BL D'\\n\\nAlg F D F U' F' U D' F'\\nAlg F D F' BL F BL' D' F'\\nAlg F U D BL' U' BL D' F'\\nAlg F U' D F U F' D' F'\\nAlg F' BR L F BR' F' L' F\\nAlg U R BL' F BL F' R' U'\\n\\nAlg BL\\nAlg BL'\\n\\nAlg F U BL U' BL' F'\\nAlg F BL U BL' U' F'\\nAlg U BL BR BL' BR' U'\\nAlg BR F BL F' BL' BR'\\nAlg F U' F' U BL' U BL U'\\n\\nAlg F U' F' D F U F' D'\\nAlg B' U' F U B U' F' U\\nAlg D F U' F' D' F U F'\\nAlg BR' U BR D' BR' U' BR D\\nAlg D' BR BL' F BL' F' BL BR' BL D\\n\\nAlg D BL D F' U' B L' BL' L R' BR' R L' BL L B' U F D\\nAlg B D BR F' R' BR' R B' F D' BL D B BR' D' B'\\nAlg L B' BR' L F BR L' B BR' L U F U' BR' F L BL BR'\\nAlg L BL' D' BR' B R' U' R BR B' D BL' L'\\nAlg B BR B' D' B D B F' R' B' R BR' B' BR F BR' BL\\nAlg L' BL D L' D' L' D L' U' R' F' R U D'\\nAlg U' L BL L U' D R' BL B' BL F' BL' B R BL' U D' L U\\nAlg L BL BR' L U' D R' F' R BL' U BL D' BR L\\nAlg D L' R F' R' L BL' BR BL' B' BL B BR' F BL' F' D'\\nAlg B BL B BR' L R' U' R BR L' B\\nAlg L B' R' BR B F BL D' BL' D BL' B' F' BR' R U B L'\\nAlg D' L' BL F' D' BL' D B F' R' BR R B' F' BL' L D\\nAlg B D' R D' R' BL BR' B BR' B' BL' D' BR B R' B' R B' BL' D'\\nAlg U' L R' F U L' BL' L B BL' B' BL L U' L' F' R L' U\\nAlg F' D BL' BR' BL' BR B' U' F L F' U B D F L U BL' U' L'\\nAlg L' U BR' U D R' BL F R BL' U D' BR' L' BL' BR' L'\\nAlg U' L' U' D R' BL B' BL F BL' B R BL' U D' L' BL' L' U\\nAlg D F BL L' BL' B L' B' L' B L' B' L' BL L BL' F' D'\\nAlg F' BR' B BL' BR BL B' F L' F' L B BR' B' BR L' F L BL'\\nAlg F' L F' L U' D R' F R U D' L' BL' F L' F\\nAlg F U' F' BR F' R' BR' U F' L' BL F' D' BL'\\nAlg B BR' U R BR' R' BR U' B' BR\\nAlg F' BR' B BR' R BR' BL' BR R' BR BL B' BR F\\nAlg L' U BL B' U' BL U BL' B BR BL' BR' U' L\\nAlg BR BL' BR' BL L' BL BR BL' BR' L\\nAlg U BR' U' BR L' BL BR BL' BR' L\\nAlg U' L F BL' F' BL F' BR F BR' L' U\\nAlg F L F' BL D F' D' F BL' L'\\nAlg U BR' U BR L BL BR BL' BR' L' U\\nAlg F BR R BL' F' BL' F R' BL BR' BL F'\\nAlg D BL D B U BR' D BR' L' U' BR' U BR L D' BR U' B' D\\nAlg U BL' U' BL U BL D L' D BR D' L D BR U BR U D\\nAlg B' U F U' B' U F' BR' U' B L B' U BR U' B L' B BL\\nAlg B U' B BL U' BL L U' D R' F' R U' D' L' BL' U B\\nAlg B L R F D' BR' D F' R' BL' U' L U L' U BL L' B'\\nAlg D BL D F' BR' F BL' D R' BR' R F D' BL F' BR D\\nAlg L' D F' R' U BR L BL B' BL B BL' BR' L' U' R D' L\\nAlg F BL' U D L' U' BR R F' R' BR' U L D BL U' D BL F'\\nAlg BR' BL' U' L' BL D F' L' F' L F L U L' D' BR L BL\\nAlg B' L' BL U D R' F' R U D' L' BL L U BL' L B\\nAlg B BL' L U B' L BL' L B' U' B' L' D L' U' B L' B' D'\\nAlg B' R' L U L' R BR BL' B BR' B' BL B' BL' B'\\nAlg F L R BL B' U' B R' BL' L' BL F' BL BR' BL L BL' BR L'\\nAlg B' U' BL L U D R' F R U D' L' BL' U BL' B' U B'\\nAlg U BR BL' BR' D' B D' F' D B' D' F BL' U' BL' F' BL' F D'\\nAlg D' BL' D L BL L' D' BL D F' D F D' BL' D' BL D\\nAlg B' BL' B' BL L' B' BL' F' D F L F' D' F BL' L BL' B L B\\nAlg F BL' U D' BL' D' L' U' BR R F R' BR' U L U' D' BL F'\\nAlg U' D' B D F' D' BR' D' BR D BR B' BL' D F BL U BL'\\nAlg B BL BR D' BR L' R F R' BR' L D BL' BR' BL' B'\\nAlg L' F L' U BR' U' BR L F' BR' L U BR U'\\nAlg F' BL' D' BR' BL B' U' BL U B BL' BR D F\\nAlg F' D' BR' U R' U BL U' R U' BL' BR D F\\nAlg F U' BR F' U' BL' B U F BR' R F' U BL L\\nAlg B' BL' U' BL U B BL' B BL BR BL' BR' B' BL\\nAlg D' F' U BL U' L F U' F' U L' BL' F D\\nAlg F' BL' D' BR' BL BR' F' BR U' B' BR' U R' BR' F'\\nAlg B' U' B BL' B U' B BL' L U' L BL' L B\\nAlg F' D' F U' F U F' BL F' BL' D F\\nAlg F' D BR F' R F R' BR' F D'\\nAlg D BL D B BR' D L' BL' L' BL' BR' BL L BL L D' BR B' D\\nAlg B L BL L' BL' L' D F' R' BR R D' F L' BL' L' B'\\nAlg B BL' F' BL BR D' BR' F D' B' D L F' BL' F L D L D' BL\\nAlg B D' BR' D' BR' F D' BL' D' BL D BL F' D BR D' B'\\nAlg B D' B U B' D B F' BR' F L' F BR F' L U' B BL\\nAlg L BL' B' U BL L' BL L U L' BL' L BL' U' B BL' L'\\nAlg U D F' D BR BL' BR' BL B D' F D B' D BR BL BR' U'\\nAlg F' D BR L' U' R F' R' U BR' L D BR' BL BR D F\\nAlg BR' L BL L' BL' BR BL' F BL' L R BL B' U B R' BL' L' F'\\nAlg D BL BR D B F' R' U' BR' U R B' F D' BR' D'\\nAlg D' B BR' D L' BL' L' BL' BR BL L BL L D' BR B' D' BL' D'\\nAlg B U' R B' BL' B R' U' B BL' B' U' BL B' U' L U L'\\nAlg B D' B' D' BR' BL BR D' B' L B BR' U B U' BL' BR BL L' BL'\\nAlg B D BR' D' F BL' D' BL' D BL D F' BR D BR D B'\\nAlg D' B D F' D' BR' D' BR D BR BL BR' BL' BR B' BL' D F\\nAlg L BL B' U BL L' BL L U' L' BL' L BL' U' B BL L'\\nAlg B' U B' D' B U' B' D BL' U BL' U' BL' B' U BL' U'\\nAlg D' BR' B' L' U L' B' U B L U' L B BR D BL\\nAlg L' D L' F U' F' L D' L' F U BR F' L F BR' F' L BL'\\nAlg D BR D B F' R' U' BR U R B' F D' BR' BL' D'\\nAlg BR BL D F BR' BL BR BL' BR F' BR' D' BL' BR'\\nAlg BR' U' L' BL F' BL' F L BL' U BL BR\\nAlg D' BR' B' U BR U' BL U' BL' U BR' B BR D\\nAlg F U BR' U R U' BR B U' F' BL U' L' U BL' B'\\nAlg B U' L F BR F' L F' BR' F L U B'\\nAlg BR BL F BL' L F' BR' BL' F BL L' BL' F' BL\\nAlg U' BR' L BL' BR L U' BR' U L' BL L' U' BR U'\\nAlg L' F L' U BR' U' BR L F' L BL' BR BL BR'\\nAlg F' D' BR' BL U R' U BL' U' R U' BR D F\\nAlg F' BR' B F' U F BR U' BR' B' F BL BR BL'\\nAlg L B' U' R' BR B F BL D' BL D BL' B' F' BR' R B L'\\nAlg B F BL B L F BR' R' BL U' R BL' BR' F' L' F' BR' B\\nAlg U BR F' D F BR' U' L' BL L' BL' L U L B' BL L' B U'\\nAlg F' L B F BL B R U' R' B' BL' B' F' L BL L F\\nAlg D BL D B BR' D BR' D' BR D BR BL BR' BL' D' B' D\\nAlg D' BR' BL B BR B' BL' D BL D' B' BL B BR' BL' BR D\\nAlg D F' U BR U' L U' BR' U L' D B D' F D B' D BL\\nAlg L B BL' B L F R U' R' F' L' B' BL B' L' BL'\\nAlg B D' B U B' D F' BR F L' F BR' F' L B U' B BL\\nAlg B' BL L B' L' B' L B' BR' R' U' R BR L'\\nAlg D' F' U' B L' BL' L R' BR R L' BL L B' U F D' BL' D'\\nAlg B' F' BL' B' F U D' R BR R' BL U' BL' D B'\\nAlg F' BL' D BL F BL' D' B' U' B D F' D' B' F U B\\nAlg F' L' BL' L' B F BL B R U R' B' BL' B' F' L' F\\nAlg L' BL U' D F D' BL' D BL F' BL' D' BL D F' U D' BL L\\nAlg B' BR L R' U R BR F L' B' BL' B L F' BR L' B\\nAlg B' L B' BR' B L' B' D F' U F D' F U' F' BR B' BL'\\nAlg B' BR D' BL' BR' BL B L' R' L' R BR L D L BL BR' B BL\\nAlg L' D F' L F L' F D' L' BL' L' D BL' BR' BL' BR BL' D'\\nAlg B' F BR F BR L R' BL U R BL' BR L' B' BL' B' F\\nAlg F L' F' BR' B BR' F' BR B' BR' F' L F' BR'\\nAlg BR' B' BR BL' D' BR D BR' BL B\\nAlg L' F L' U BR' U' L U' BR U F' L\\nAlg F U' BR' R U' BR BL BR' U' BL' U' R' F' BR U\\nAlg B' BR' R' U' BL D' BL U BL' D R BL' BR B\\nAlg D BR' U' L BL' F' BL F L' BL U BL' BR D'\\nAlg F' BL' D' F BR' BL BR BL' BR F' BR' D BL F\\nAlg F' BR' BL' BR D' F' BR F BR' D BL F\\nAlg F' BR R' BR BL' BR' R BR' BL F\\nAlg B BR F' BR' B' F BL F BL' F'\\nAlg B D' B U B' D BL' F R' F BL F' R B F' U' B BL\\nAlg L BL' B' U L U L BL L B' BL B' U' BL' U' B' L' BL\\nAlg L' BL' U' D F D' BL' D BL F BL' D' BL D F' U D' BL' L\\nAlg F' L F' BL' D' BR' B R' U' R BR B' D BL' F L' F\\nAlg U D' BR' D BR' U' L U BR L' D' BR D L U' L' BL\\nAlg B' BR' B' BL B L F' BR' R' U' R BR F BR L' B\\nAlg U' F' D BR' F' BR D L D L' U D' B D' B' F D' BL F\\nAlg B F BL B F' L F BR' R' BL U' R BL' BR' F' BR' L' B\\nAlg F' D' BL B BR' BL BR BL' BR' D' BR' D BR D F D' B' D\\nAlg B' BR' B' BL B L F BR' R' U' R BR F' BR L' B\\nAlg L' F BR L' R' BR BL' BR' R BR' BL B' L F' L' B L' BL'\\nAlg B' U' BL' U D' BL' D F L' R U R' F' L U' BL U B\\nAlg D' B D BL BR BL' BR' D' BR' D BR D' BR B' D' BL' D'\\nAlg B' BR' L F' BR' R' U R BR F L' B' BL' B BR B\\nAlg L U L' D' BR' D L U' L' U D' BR D BR BL BR' BL' U' BL'\\nAlg F' L F' BL D' B BR' R' U R B' BR D BL F L' F\\nAlg B' L B' BR' B L' F' R F' BL F R' F BL' B' BR B' BL'\\nAlg F' L BL' BR' R' BL U R BR B L' B L B L' F BL' B\\nAlg L' F D' BR U' BR' D BR' U BR L' B' L F' L' B L' BL'\\nAlg B' BR' L F BR' R' U R BR F' L' B' BL' B BR B\\nAlg L F' D' F BR' BL BR BL' BR F' BR' D F L'\\nAlg F' BL' D F BL' F' BL D' BR' BL BR F\\nAlg B' BR' R' BL D' BL U' BL' D BL' U R BR B\\nAlg B' L BL' BR BL L' B' F BL F' BL' B BR' B\\nAlg F U' BR' R BR F' U BL L U BL' B U'\\nAlg B' BR B' BL F BL' B F' L BL' BR' BL L' B\\nAlg U' L BL' U' R U' BL' U R' U BL' L' U\\nAlg F U' BR' R' F' BR' F BL BR R BL' F' BR U\\nAlg B U' L' F' BR F L' F BR' F' L' U B'\\nAlg F' BR' B' F BR' BL' BR F BL B F' BL BR BL'\\nAlg B BL' U' L U BL' B' BL' B' L' BL U B' U' BL L BL L\\nAlg B R' U' B U R B' BR F D' B' D BL F' BL' BR' BL\\nAlg U BL U' B BL U BL U' BL D' B U B' D B U' B\\nAlg B BL B BL' B BR B' BL BR' R' L U' L' R B\\nAlg U' L BL' B BL B' L' F U B' R U R' U F' U B BL\\nAlg F' BL' D' BR' L' B' L B BL BR BL' B' L' B L D BL F BL\\nAlg L B' L' F U B' R BR B BR' R' BR BL' BR' BL B U' F' BL\\nAlg D' F BL B BR' B BR B' BL' D BL D' B' F' D\\nAlg B' L' BL F U F' L' U B U' L F U' F' BL' L BL' B BL B\\nAlg D BL D B U F' R' BR' R F U' B' D\\nAlg B BR B' D' BL BR D BR D B' BL' B D BR' BL' D' BL' D'\\nAlg B' R BR B' BR' R' B U' F' L B L' BL' F BL U BL'\\nAlg U BR BL' BR' D' B D' F' D B' BL' BR BL BR' D' F U' D'\\nAlg U' D' BR' U' BR' D' L' D BR' D' L D' BL' U' BL' U BL U'\\nAlg L' F' BR F' R F' R' L F' BR' D L BL' L' BL D' F BL'\\nAlg B D BL' D B U R BR R' U' B' D' BL D' B' BL\\nAlg B' U L' U B BL L' F' BL F D' B' U B D B' L B L'\\nAlg L BL' B' U L F R U' R' F' U L F' L B L' F\\nAlg L' D R' U BR L BL B' BL' B BL' BR' L' U' R F D' L\\nAlg D' B U F' R' BR R F U' B' D' BL' D'\\nAlg B D BL' B' U' BL L' D L D' BL' U B BL B' D'\\nAlg B U' BL' U' F U' B U B' F' U BL U' B U' B\\nAlg U BR' U L BL' L U' BR U BR' L' BL BR L' U\\nAlg F' D' BR' BL B' U' BL' U B BL' BR D BL F\\nAlg B' L' B' F BL' F' BL F' BR F BR' B L B\\nAlg F' BL' D' BR F' BR' F D BR' BL BR F\\nAlg F D' F' U' F' D' BR D F' D' BR' D' F' U\\nAlg BR' BL' U' BL L U' F U F' L' U BR\\nAlg F BR R U' BR B U BR' F BR BL' BR D BL F\\nAlg F' BR' F U' BL L' U BL' B' F' BL' BR D' BL F\\nAlg B' U L' B' U L' D F L F' D' L U' B L U' L B L'\\nAlg B BL B L F BR' R' U' R BR F' L' B\\nAlg B D' B BR' R' U' B' U R BR U' D' F L' F' U L' D' L\\nAlg L U' L' U B BL' U B BL B' U R B' BL B R' U B'\\nAlg D F' D BL U' R U' BL' U R' U B D' F D B' D BL\\nAlg B BL U B BR' L R' F' U' F R BR L' B' U' B'\\nAlg B' U' B F' D F D' B' U B D BL F' BL' D' BL F\\nAlg B D BR B F' U' R' BR' R U B' F BR' D' BL B'\\nAlg L B' F R BL' U' R' BL B F' L U BR' U' BL L U BR U'\\nAlg F' L F' BL L U' D R' F' R U D' L' F L' F\\nAlg L U L' F' BL' F L B BL' U BL' U' BL B' BL L U' L\\nAlg B' L F BR' R' U R BR F' L' B' BL' B'\\nAlg U BR' U' L' U' BR' F' BR F BR D R' F R U D' L' BL' L'\\nAlg B L BL L F' D R' BR' R F D' L BL L BL' L' B'\\nAlg F' BL' D F' D' B D' B' U' D L D BR' L' F BR D' F U\\nAlg B U B BR' L R' F' U F R BR L' B' U' BL' B'\\nAlg U B' L BL' B L' U' L' BL L BL' L U BR F' D' F BR' U'\\nAlg B BL' D BR B F' U' R' BR R U B' F BR' D' B'\\nAlg B BR B F BR' U BL' L R BR' R' L' F' U BR U BL B BL'\\nAlg B' BR' L R' U R BR L' B' BL' B'\\nAlg B' U BR' R L F' BR' F L' R' BR U' B' BR B'\\nAlg F' BL' F' BR R U' BR B F BR BL' D F U BL'\\nAlg F' BR' B' U BR' F BR' F' BR U' BR B BR F\\nAlg BR' BL' U' BL L' F' BL F BL' L U BR\\nAlg U' L BL U' R U' BL U R' U BL L' U\\nAlg F BR' F' U' L F BR U F' U' L' BL U BL'\\nAlg L' F U' BR' U L' U BR U' L F' L\\nAlg F' BR' B' U' BR' U F BR B U' BL U BR BL'\\nAlg F' BR' U BR D' BR U' BR' D F\\nAlg F BL' BR R BL' F' BL F R' BL BR' F'\\nAlg L BL' B BL' U BL U' BL B' L' F' BL F L U' L U L\\nAlg B F BL B F' L F' BR' R' BL U' R BL' BR' F BR' L' B\\nAlg F BL B' F' BR B' BR' B L F BL B' BR B BL' BR' F' L' B\\nAlg B F D' BL U R BL' BR' R' U' D B F' BL B\\nAlg L B' U B' BR B BR U' BR' B L' F BL' B F' BR' B' BL'\\nAlg U' L R' F L U L' BL' B BL B' L' BL L U' F' R L' U\\nAlg BR BL F BL' F' L' F' BR' L B BR B' L' F L B BR' B' BL\\nAlg B' BR' L F L' B' BL B L F' BR' R' U' R BR' L' B\\nAlg D L U' BR U L U' R BL' F' R' F BL F' BR' U L D BL D\\nAlg B F BL B F BR' L R' BL U' R BL' BR' L' F BR' B\\nAlg L B' L' U L' B' U L' D F L' F' D' L U' B L U' B\\nAlg B' BR L F' BR R' BL U R BL' BR F L' B' F BL' B' F'\\nAlg B' BL L B L' B' BL' L' U BL' U R' L' R U' BL U' L B\\nAlg B U' D' F D B BL' B' U D' R BR R' U' F' U D B'\\nAlg D F L F' L' F R L' BL B L B' BL' L R' F' L D'\\nAlg L BL D' B BR' R' U R B' BR D BL L'\\nAlg D F D' B' U' B U' D F' D' F U B' U B F' BL'\\nAlg D' BR' BL BR B' BL' B D BL' D' BL B BR' B' BL' BR D\\nAlg U BR' U' L U R' L R BR L' B' L' B L U' L' BL'\\nAlg BR' L R' U R BR B L' B L B L' BL' B\\nAlg B BR' B U BR' R L F' BR F L' R' BR U' B\\nAlg F' L B' BR' B L BL' L' B' BR B L BL L F\\nAlg D F U' F' U D' BR U' D' F U F' D BR'\\nAlg B' BL' BR D' BR' D BL BR' B BR\\nAlg B BL U' BR' L U BR' F' BL D BL BR F BR\\nAlg L' U BR BL BR' B' BL U' BL' U B BL' U' L\\nAlg U B' BL U' L' BL' U' F BR' R' BR U F'\\nAlg D BR' BL U' BL' L F' BL' F BL L' U BR D'\\nAlg BR L' BL BR' BL' L BL' BR BL BR'\\nAlg F BL F' BL' B F' BR F BR' B'\\nAlg D BR L' U' R F' R' U BR L BL B' BL B BL' BR D'\\nAlg D' BL' D BL D F' D' F D' BL' D L BL' L' D' BL D\\nAlg B F D' F' U' BL' B U B' BL F D B U' B' U B' F' BL\\nAlg B U F' D' R BR' R' U' D B BL B' U F U' B'\\nAlg B BL B L B BR' F BR B' BR' R' U' R F' BR L' B\\nAlg B BL B L F' U' F' U F BR' R' U' R BR' F BR' L' B\\nAlg B' U' B F' D F D' B' U B U' D BL' F' BL D' F U BL\\nAlg L F' BR B' F' R BL' U' R' BL B F' BR L BL BR L\\nAlg D F' D' BL F' D' F R BL B' L U L' B R' F' BL' D F\\nAlg B BL BR BL D' BR L' R F' R' BR' L D BR' BL' B'\\nAlg B' L B' BR' B L' BL' U BL U' B' BR B' U BL' U'\\nAlg D' B BR' F BL' F' D BR D' BL F' BR B' F D' BL' D'\\nAlg B D F' L' R F D BR' D' F' R BR' L D B' BL' D' F D'\\nAlg D L BL' F' R U R' B F' L BL' L' B' F' BL L' D'\\nAlg B' BR' L F R' U R BR B BR' F' BR B' L' B' BL' B'\\nAlg D L F BL F L BL' L D' BL' D' F' D' F' L BL D' BL'\\nAlg D F BL F' BR B' BL' B BL BR' BL L' R F R' L D'\\nAlg L BL' B' L B L B' L F R U R' B F'\\nAlg F' D' BL F R B' L U' L' B R' BL' F' D F BL' D F D'\\nAlg B' L' BL U' D' L' BL' L U' D R' F R U' BL' L B\\nAlg L' F L' BL U' BL' U L F' L U' BL U BL'\\nAlg D' F' BL L U' F U F' L' U BL' U' F D\\nAlg B' U F D F' U F D' F U B U' F U\\nAlg U B' BR' U R' U' R BR U' B\\nAlg F' BL' D F BL F' BR F' BR' F BL' D' BL F\\nAlg F' BR' BL' BR D BL' F BL F' D' BL F\\nAlg U' F R F' BL' F R' F BL F U\\nAlg F' BR F BR' L BL' BR' BL BR L'\\nAlg F U' B F U' BR U BR' U F' U' B' U F'\\nAlg D F' BR R F' R' F BR' D' F\\nAlg B D' B U B' D B U' B BR BL BR' D BL BR BL BR' BL D'\\nAlg B' U' L' D' F D' L' F' L D F' D L U B BL'\\nAlg D L' F R L' BL B L' B' BL' L R' F' L F L' F' D'\\nAlg D L' D' BL D F' D F D' BL' L BL D'\\nAlg D' B R U' B' F' BL' L BL L' BL B F U R' BR' B' D\\nAlg D L BL' F L BL L' B' F R U' R' B F BL L' D'\\nAlg D F' BL F BL U BL F' D B D' F D B' D BR BL BR' U'\\nAlg B F' BL B F' BR' F' L F R' U' R BL' BR BL F' L' B\\nAlg L F BR B' D BL D' R U' R' D BL' D' B BR' F' L BL L\\nAlg B F BL B F' BR' L R' U' R BL' BR BL L' B\\nAlg D' B U BR' D BR' L' U' BR U BR L D' BR U' B' D' BL' D'\\nAlg F' D' BR' BL' BR D' BR L' U' R F R' U BR' L D' F\\nAlg D F U D' BL U' B D' F BR F' D' F' D BR' D B' BL\\nAlg B U' D' F D BL' D' BR D' BR' D BL B' BL' B F' U D B'\\nAlg L' BL' L' F BR B' D BL D' R U R' D BL' D' B BR' F' L'\\nAlg B U F' U' B BL' B' U D' R BR R' D F U' B'\\nAlg B L BL' U' L U' L' U R BL F D' BR D F' R' L' B'\\nAlg B' L B' BR' B L' F' BL F BL' B' BR B' F U' F' U BL'\\nAlg D' B BR R U' B' F' BL' L BL' L' BL B F U R' B' D\\nAlg B BL' U' B BL' B D B D' B D B D' BL B' U BL B'\\nAlg U BR' U' BR L' F BR' L' U BR U' L F' L\\nAlg L' U BR BL BR' B U BR' U' BR B' BL' U' L\\nAlg BR BL D BR' BL' L BL' BR BL L' BL D' BL' BR'\\nAlg F' BL' D' BR' D BL BR' B U BR U' B' BR F\\nAlg F U' F' D F' U' B' U F' U' B U' F' D'\\nAlg B' U BR' R' U R U' BR B U'\\nAlg L U BL U' BL' L' BL L' F' BL' F BL L BL'\\nAlg U B' BL' BR' U F' BR' D' F BR' U BL' L' BL'\\nAlg F BL' L' F' BL D' F' BR U' R' F' U F' BR'\\nAlg U B U' BL L U' L' U BL' B'\\nAlg U BL U' B BR' B U BL' U' BL L B' BR B L' B\\nAlg B BL B L F' U' F U F BR' R' U' R BR' F' BR' L' B\\nAlg B BR D L' D' F' D F D' F' D' F D' BR' L D' B D B\\nAlg F' L B' L' F L' U' F R U R' F' L' U' B BL L'\\nAlg B' L' F U F L' F R U' R' U L F R U R' U B F' BL\\nAlg B U F' D' F' U R BR' R' U' F D B BL B' F U' B'\\nAlg F BL U BL' U' F' BL L U' L D BR L' U L U' BR' U D' L\\nAlg B U' D' B' F BL B BL' D' BR D BR' D BL D' F' U D B'\\nAlg B BL' D' B' D B BL D BR' BL BR' R D R' BR BL' BR D' B'\\nAlg B F U' F' D' F' U' R BL' BR' R' BL U' F D B BL B\\nAlg D BR' BL B' BL' B BL' BR' L' U' R F R' U BR' L D'\\nAlg B' F' U' F' BL' D' B BR' R' U R B' BR D F U B F\\nAlg B' D' B' D BR L' D F' D F D F' D' F D L D' BR' B'\\nAlg D' B F D BL' D' BL B BR' B' BR B' BL' F' D\\nAlg B D B' F BL L' BL' F' L BL L' BL' BR L R L' R' BR' L' D'\\nAlg B U B F' BL' B' D' F' U R BR R' U' F D F U' B'\\nAlg BR BL' L' F' BR U F' U' BR L' B' BR' L F' BR L' B L'\\nAlg D BL' L' BL D F' D' F D' BL' D L D'\\nAlg F' BL' B F U' B U B' D' F' BL' B U' B' BL U F D B'\\nAlg B' F' L BL' BR' R' BL U R BR L' B' F BL' B'\\nAlg BR BL' BR' BL L' F L' BL' BR BL BR' L F' L\\nAlg B BL BR' F U' L F U BR' F BL D BR' BL\\nAlg B' BL' B' U BR' U' BR BL' BR BL BR' B BL B\\nAlg BR' U' L F U' F' U L' BL' U BL BR\\nAlg B U BR R' BR U' B' BR U' B' U BR' R' BR\\nAlg B BR BL L BL BR' BL' L U' BL' U BL L BL' B'\\nAlg F' BR' B BL' BR' R BR' BL BR R' BR B' BR F\\nAlg F' BR' B U BR' U' B' BR BL' D' BR D BL F\\nAlg D' F' BR U' R' F' U F' BR' F BL' L' F' BL\\nAlg B BL U' L U L' BL' U B' U'\\nAlg L' F' R B F' BR L' D' F' D BR' L B' F R' F BL L\\nAlg D F BL L' BL' B L B' L B L B' L BL L BL' F' D'\\nAlg B BL B BR' L R' U' R BR L' B U BR' U' BR BL' BR BL BR'\\nAlg B' F R U' R' F' L' B L' B' L' B BL L'\\nAlg B' L' F D R' F' L' U L F R' U D' L' B BL L F' L\\nAlg D' L' BL F R' BR' R B' F D' BL D B F BL' L D\\nAlg B' BR' R' U' BL' U' L R' F R F' L' R U' BL BR B BL\\nAlg BR L BL BR L U' D R' BL F' R BL' U' D' BR U' L\\nAlg BR L B' L F R F U F' U' R' L' B L F' BR' L BL\\nAlg B F U D' R BL' BR' R' BL U' D B F' BL B\\nAlg L' BL L' D B D' BL' B' D' L R' D R BL' U' L U BL'\\nAlg L' D BL' U' R' BL F R U D' BR L' BL' BR' L'\\nAlg U BR' U' L' BL' U BR U' L' B' F R BL' U R' BL B F' L'\\nAlg BR L' BL' L' B' F R BL' U R' BL B F BR F BR L'\\nAlg B' F' L F BR BL B' BR' B BL' F' L' B' BR B BR' B F BL'\\nAlg B D BR B' D' BL' D B F' R' BR R F BR' D' B'\\nAlg D BL' L' BL' L BL L' BL F' BL' L' F L BL F BL' L D'\\nAlg U' D R' F R U L D' L D L D' BL' L\\nAlg U D' BR D' L' D R F BR F' BR' R' BR' D' L U' D' BL'\\nAlg B' F' BR' L R' BL U R BL' BR L' B' F BL' B'\\nAlg L' F BL' F' BL F' BR F BR' L\\nAlg L BL F' D F D' BL' F L' F'\\nAlg F' D' BR U BR' D BR' U' BR F\\nAlg BR' L BL' BR BL BR L' F' BR' F\\nAlg B BR F BR' B' BR F' R' BR' BL' BR R BR' BL\\nAlg BR' B U BR' R BR R' U' BR B'\\nAlg F' BL' BR R' BR BL BR' R BR' F\\nAlg BR L' BL BR' BL' BR' L U BR U'\\nAlg U BR' U' BR BL' BR BL BR'\\n`)}var jd,kp=U(()=>{Jt();Nn();jd=null});var Wp={};me(Wp,{getRandomKilominxScramble:()=>Ip});function zp(e){if(e<2)return e;let t=1;for(let r=2;r<=e;r++)t*=r;return t}function f0(e,t){if(t<0||t>e)return 0;if(t===0||t===e)return 1;let r=1;for(let n=0;n<t;n++)r=r*(e-n)/(n+1)|0;return r}function Hd(e){e=e.slice();let t=e.length,r=zp(t-1),n=0;for(;t>1;){t--;let o=e[0];n+=o*r;for(let l=0;l<t;l++){let i=e[l+1];e[l]=i-(i>o)}r/=t}return n}function Yd(e){let t=e.length,r=0;for(let n=0;n<t-1;n++)for(let o=n;o<t;o++)e[n]>e[o]&&(r^=1);return r}function Jd(e){return Hd(e)>>1}function Ss(e){let t=e.length,r=0;for(let i=0;i<t;i++)r+=+(e[i]===1);let n=t-r;if(n===0||r===0||t===1)return 0;let o=f0(t-1,r),l=0;for(let i=0;n>0&&r>0&&t>1;i++)t--,e[i]===0?o=o*--n/t:(l+=o,o=o*r--/t);return l}function $d(e,t,r){let n=r-t,o=f0(r-1,t),l=[],i=r-1;for(let a=0;a<i;a++)r--,e<o?(l.push(0),o=o*--n/r):(l.push(1),e-=o,o=o*t--/r);return l.push(t),l}function Kt(e,t){let r=[];for(let n=0;n<t.length;n++)r[n]=e[t[n]];return r}function ws(e,t){let r=Kt(e[0],t[0]),n=[],o=t[0].length;for(let l=0;l<o;l++)n[l]=(e[1][t[0][l]]+t[1][l])%3;return[r,n]}function Bo(e,t){let r=[];for(let n=0;n<t;n++)r[n]=n;for(let n=0;n<e.length;n++)r[e[n]]=e[(n+1)%e.length];return r}function zr(e,t){let r=Array(t).fill(0);for(let n in e)r[n]=e[n];return r}function lh(e){let t=[0];for(let n=1;n<20;n++){let o=e(n+1);t[n]=t[o],t[o]=n}Yd(t)===1&&([t[0],t[1]]=[t[1],t[0]]);let r=Array(20).fill(0);for(let n=0;n<19;n++)r[n]=e(3),r[19]+=3-r[n];return r[19]%=3,[t,r]}function ih(e){let t=[\\\"0\\\",\\\"\\\",\\\"2\\\",\\\"2'\\\",\\\"'\\\"];return e.map(([n,o])=>nh[n]+t[o]).join(\\\" \\\")}function ah(e,t){for(let[r,n]of t)for(let o=0;o<n;o++)e=ws(e,fn[r]);return e}function sh(e){return Rh(lh(e))}function uh(e){let t=e[0];if(t.slice(15,20).every(l=>l<15))return[];if(t.slice(0,5).every(l=>l<15))return[[6,1]];let r=t.map(l=>l>=15),n=0,o;for(;o===void 0;)n++,o=Np(r,n,-1);return o.push([6,1]),o}function Np(e,t,r){if(t==0)return e.slice(0,5).some(n=>n)?void 0:[];for(let n=0;n<6;n++)if(n!==r)for(let o=1;o<5;o++){let l=Kt(e,s0[n][o][0]),i=Np(l,t-1,n);if(i!==void 0)return[[n,o]].concat(i)}}function gh(e){let t=e[0].slice(0,15),r=e[1],n=Ss(t.map(i=>+(i>=15))),o=243*n;for(let i=0,a=0;i<15;i++)t[i]<15||(o+=r[i]*Math.pow(3,a),a++);let l=0;for(let i=0;i<5;i++)l+=t.indexOf(15+i)*Math.pow(15,i);return[o,l]}function ph(e){let t=[u0(),g0()],r=[dh(),Fh()];return Tp(gh(e),t,r).concat([[6,1]])}function ch(e){let t=[5,6,7,8,14],r=e[0].slice(0,15),n=e[1],o=Ss(r.map(a=>+(t.indexOf(a)!==-1))),l=243*o;for(let a=0,s=0;a<15;a++)t.indexOf(r[a])!==-1&&(l+=n[a]*Math.pow(3,s),s++);let i=0;for(let a=0;a<5;a++)i+=r.indexOf(t[a])*Math.pow(15,a);return[l,i]}function mh(e){let t=[u0(),g0()],r=[hh(),Dh()];return Tp(ch(e),t,r)}function Lh(e){let t=e[0].slice(0,14),r=e[1],n=0,o=[],l=0;for(let i of[0,1,2,3,4,9,10,11,12,13])i!==13&&(n+=r[i]*Math.pow(3,l)),o[l]=t[i]<5?t[i]:t[i]-4,l++;return[n,Jd(o)]}function Bh(e){return xh(Lh(e))}function Rh(e){let t=[];for(let r of[uh,ph,mh,Bh]){let n=r(e);e=ah(e,n),t=t.concat(n)}return t}function u0(){if(te.phase23om)return te.phase23om;let e=f0(15,5),t=[1,3,9,27,81,243],r=Array(f0(15,5)*t[5]);te.phase23om=r;for(let n=0;n<e;n++){let o=$d(n,5,15).concat(Array(5).fill(0)),l=[];for(let i=0;i<6;i++){let a=Kt(o,fn[i][0]).slice(0,15);l[i]=Ss(a)}for(let i=0;i<t[5];i++){r[i+243*n]=[];let a=[];for(let s=0,f=0;s<20;s++)o[s]===1?(a[s]=(i/t[f]|0)%3,f++):a[s]=99;for(let s=0;s<6;s++){let f=fn[s],g=[];for(let c=0;c<15;c++)g[c]=a[f[0][c]]+f[1][c];let p=g.filter(c=>c<10),u=0;for(let c=0;c<5;c++)u+=p[c]%3*t[c];r[i+243*n][s]=u+243*l[s]}}}return r}function dh(){if(te.phase2op)return te.phase2op;let e=u0();return te.phase2op=Ro(e,[243*3002])}function hh(){if(te.phase3op)return te.phase3op;let e=u0();return te.phase3op=Ro(e,[243*246])}function g0(){if(te.phase23pm)return te.phase23pm;let e=[1,15,225,Math.pow(15,3),Math.pow(15,4),Math.pow(15,5)],t=Array(e[5]),r=Array(15);for(let o=0;o<15;o++){r[o]=Array(6);for(let l=0;l<6;l++)r[o][l]=fn[l][0].indexOf(o)}let n=[0,0,0,0,0];for(let o=0;o<e[5];o++){t[o]=Array(6);for(let l=0;l<6;l++){let i=0;for(let a=0;a<5;a++)i+=r[n[a]][l]*e[a];t[o][l]=i}n[0]++;for(let l=0;l<4;l++)n[l]===15&&(n[l]=0,n[l+1]++)}return te.phase23pm=t}function Fh(){if(te.phase2pp)return te.phase2pp;let e=g0();return te.phase2pp=Ro(e,[213090])}function Dh(){if(te.phase3pp)return te.phase3pp;let e=g0();return te.phase3pp=Ro(e,[737420])}function vs(){if(te.phase4om)return te.phase4om;let e=[1,3,9,27,81,243,729,2187,6561,19683,59049],t=Array(e[9]);for(let r=0;r<e[9];r++){let n=Array(14).fill(0);for(let o=0;o<9;o++){let l=o<5?o:o+4;n[l]=(r/e[o]|0)%3,n[13]-=n[l]}n[13]=(n[13]+999)%3,t[r]=[];for(let o=0;o<3;o++){let l=fn[o],i=[0,1,2,3,4,9,10,11,12,13].map(s=>n[l[0][s]]+l[1][s]),a=0;for(let s=0;s<9;s++)a+=i[s]%3*e[s];t[r][o]=a}}return te.phase4om=t}function Es(){if(te.phase4pm)return te.phase4pm;let e=zp(10)/2,t=10,r=[0,1,2,3,4,-1,-1,-1,-1,5,6,7,8,9],n=[0,1,2,3,4,9,10,11,12,13],o=[Kt(r,Kt(Cp[0],n)),Kt(r,Kt(Pp[0],n)),Kt(r,Kt(Mp[0],n))],l=Array(e),i=Array(10);for(let a=0;a<e;a++){Xd(a,i),l[a]=[];for(let s=0;s<3;s++){let f=Kt(i,o[s]);l[a][s]=Zd(f)}}return te.phase4pm=l}function Ah(){if(te.phase4op)return te.phase4op;let e=vs();return te.phase4op=Ro(e,[0])}function yh(){if(te.phase4pp)return te.phase4pp;let e=Es();return te.phase4pp=Ro(e,[0])}function Uh(e){if(te.phase4np_list&&te.phase4np_list.threshold===e)return te.phase4np_list;let t=[vs(),Es()],r=Math.pow(3,9),n=[0];o(e,[0,0],-1);function o(a,s,f){if(n.push(s[0]+r*s[1]),a===0)return;let g=[];for(let p=0;p<3;p++)if(p!==f){g[0]=s[0],g[1]=s[1];for(let u=1;u<5;u++)g[0]=t[0][g[0]][p],g[1]=t[1][g[1]][p],o(a-1,g,p)}}n.sort((a,s)=>a-s);let l=[],i=-1;for(let a of n)a!==i&&l.push(i=a);return l.threshold=e,te.phase4np_list=l}function bh(e,t){let r=0,n=e.length-1;for(;n-r>1;){let o=r+n>>1;t>e[o]?r=o+1:n=o}return t===e[r]||t===e[n]}function Ro(e,t){let r=e.length,n=e[0].length,o=Array(r).fill(-1);for(let a of t)o[a]=0;let l=0,i=!1;for(;!i;){i=!0;for(let a=0;a<r;a++)if(o[a]===l)for(let s=0;s<n;s++){let f=e[a][s];for(;f!==a;)o[f]===-1&&(i=!1,o[f]=l+1),f=e[f][s]}l++}return o}function Tp(e,t,r){let n=e.length,o=0;for(let l=0;l<n;l++)o=Math.max(o,r[l][e[l]]);for(;;){let l=Gp(e,t,r,o,-1);if(l!==void 0)return l;o++}}function Gp(e,t,r,n,o){let l=e.length,i=t[0][0].length,a=0;for(let s=0;s<l;s++)a=Math.max(a,r[s][e[s]]);if(!(a>n)){if(n===0||a===0)return[];for(let s=0;s<i;s++){if(s===o)continue;let f=e.slice();for(let p=0;p<l;p++)f[p]=t[p][e[p]][s];let g=1;for(;e.some((p,u)=>e[u]!=f[u]);){let p=Gp(f,t,r,n-1,s);if(p!==void 0)return[[s,g]].concat(p);for(let u=0;u<l;u++)f[u]=t[u][f[u]][s];g++}}}}function xh(e){let t=vs(),r=Es(),n=Ah(),o=yh(),l=Uh(bs),i=Math.max(n[e[0]],o[e[1]]);for(;;){let a=Op(e,i,-1,t,r,n,o,l);if(a!==void 0)return a;i++}}function Op(e,t,r,n,o,l,i,a){let s=Math.max(l[e[0]],i[e[1]]);if(!(s>t)&&(s<=bs&&!bh(a,e[0]+19683*e[1])&&(s=bs+1),!(s>t))){if(t===0||s===0)return[];for(let f=0;f<3;f++){if(f===r)continue;let g=e.slice();for(let p=1;p<5;p++){g[0]=n[g[0]][f],g[1]=o[g[1]][f];let u=Op(g,t-1,f,n,o,l,i,a);if(u!==void 0)return[[f,p]].concat(u)}}}}async function Ip(){return new k(ih(sh(await Sh)))}var bs,Zd,Xd,Cp,Pp,Mp,eh,th,rh,xs,b5,fn,nh,oh,s0,fh,te,Sh,Kp=U(()=>{\\\"use strict\\\";Le();Rt();bs=7;[Zd,Xd]=(()=>{let e=new Int8Array(10240),t=new Int8Array(1024*10);for(let o=0;o<1024;o++)for(let l=0,i=0;l<10;l++)(o>>>l&1)!==0&&(e[l<<10|o]=i,t[i<<10|o]=l,i++);function r(o){let l=1023,i=181440,a=0;for(let s=0;s<8;s++){let f=o[s];a+=e[l|f<<10]*i,l&=~(1<<f),i/=9-s}return a}function n(o,l){let i=1023,a=181440,s=0;for(let f=0;f<8;f++){let g=o/a|0;o-=g*a,s^=g&1;let p=t[i|g<<10];l[f]=p,i&=~(1<<p),a/=9-f}return l[8]=t[i|s<<10],l[9]=t[i|(s^1)<<10],l}return[r,n]})();Cp=[Bo([0,1,2,3,4],20),zr({},20)],Pp=[Bo([4,3,11,12,13],20),zr({4:2,3:1,11:1,12:1,13:1},20)],Mp=[Bo([3,2,9,10,11],20),zr({3:2,2:1,9:1,10:1,11:1},20)],eh=[Bo([2,1,7,8,9],20),zr({2:2,1:1,7:1,8:1,9:1},20)],th=[Bo([1,0,5,6,7],20),zr({1:2,0:1,5:1,6:1,7:1},20)],rh=[Bo([0,4,13,14,5],20),zr({0:2,4:1,13:1,14:1,5:1},20)],xs=[[15,16,17,18,19,10,9,8,7,6,5,14,13,12,11,0,1,2,3,4],zr({},20)],b5=[[1,2,3,4,0,7,8,9,10,11,12,13,14,5,6,19,15,16,17,18],zr({},20)],fn=[Cp,Pp,Mp,eh,th,rh,xs],nh=[\\\"U\\\",\\\"R\\\",\\\"F\\\",\\\"L\\\",\\\"BL\\\",\\\"BR\\\",\\\"x2\\\"],oh=ws(xs,xs),s0=[];for(let e=0;e<fn.length;e++){s0[e]=[oh];for(let t=1;t<5;t++)s0[e][t]=ws(s0[e][t-1],fn[e])}{let e=Math.sin(Math.PI/5),t=Math.cos(Math.PI/10),r=Math.cos(Math.PI/5),n=Math.sin(Math.PI/10);fh={U:[0,0],L:[-e-t,r-n],F:[0,2*r],R:[e+t,r-n],BR:[t,-1-n],BL:[-t,-1-n],DBR:[2*e+2*t,0],DB:[3*e+3*t,-r-n],DBL:[4*e+4*t,0],DFL:[3*e+4*t,1+r],DFR:[3*e+2*t,1+r],D:[3*e+3*t,r-n]}}te={};Sh=Se();Ip().then(e=>e.log())});var rc={};me(rc,{randomMasterTetraminxScrambleString:()=>tF});function pl(e){if(e<2)return e;let t=1;for(let r=2;r<=e;r++)t*=r;return t}function gn(e){let t=Array(e);for(let r=0;r<e;r++)t[r]=r;return t}function wh(e){e=e.slice();let t=e.length,r=pl(t-1),n=0;for(;t>1;){t--;let o=e[0];n+=o*r;for(let l=0;l<t;l++){let i=e[l+1];e[l]=i-(i>o)}r/=t}return n}function p0(e,t){let r=[],n=pl(t-1)/2,o=0;for(let l=0;l<t-1;l++)r[l]=e/n|0,e%=n,n/=t-1-l;r[t-1]=0;for(let l=t-2;l>=0;l--)for(let i=l+1;i<t;i++)r[i]>=r[l]?r[i]++:o^=1;return o===1&&([r[t-2],r[t-1]]=[r[t-1],r[t-2]]),r}function qp(e){return wh(e)>>1}function un(e,t){let r=[];for(let n=0;n<t.length;n++)r[n]=e[t[n]];return r}function _s(e){let t=[];for(let r=0;r<e.length;r++)t[e[r]]=r;return t}function cl(e,t){let r=[];for(let n=0;n<t;n++)r[n]=n;for(let n=0;n<e.length;n++)r[e[n]]=e[(n+1)%e.length];return r}function Cr(e,t){return e.length===0?gn(t):e.map(r=>cl(r,t)).reduce(un)}function vh(e,t){let r=Array(4);for(let i=0;i<4;i++)r[i]=(e.co[i]+t.co[i])%3;let n=un(e.mp,t.mp),o=un(e.wp,t.wp),l=un(e.cp,t.cp);return{co:r,mp:n,wp:o,cp:l}}function Vp(e,t){return e>=4&&t>=4?!0:e<4&&t<4?e===t:(e^t)===4}function Gh(e){let t=[\\\"0\\\",\\\"\\\",\\\"'\\\"];return e.map(([n,o])=>Th[n]+t[o]).join(\\\" \\\")}function Oh(e){let t=Array(4);for(let l=0;l<4;l++)t[l]=e(3);let r=p0(e(pl(6)/2),6);for(let l=0,i=0;l<6;l++){let a=l===5?i:e(2);i^=a,r[l]+=a*6,r[l+6]=(r[l]+6)%12}let n=p0(e(pl(12)/2),12),o=p0(e(pl(4)/2),4);return{co:t,mp:r,wp:n,cp:o}}function Ih(e){return Kh(Oh(e))}function Wh(e,t=!0,r=!1){let n=Gh(Ih(e));if(!t)return n;let o=[\\\"u\\\",\\\"l\\\",\\\"r\\\",\\\"b\\\"],l=[\\\"0\\\",\\\"\\\",\\\"'\\\"];if(!r){for(let u=0;u<4;u++){let c=e(3);c!==0&&(n+=\\\" \\\"+o[u]+l[c])}return n.trim()}let i=[],a=[],s=[];for(let u=0;u<4;u++)i[u]=e(3),a[u]=e(3),s[u]=(i[u]-a[u]+3)%3;let f=u=>u.filter(c=>c!==0).length;for(;!(f(a)>=1&&f(s)>=1&&f(a)+f(s)>=4);)for(let u=0;u<4;u++)a[u]=e(3),s[u]=(i[u]-a[u]+3)%3;let g=a.map((u,c)=>u!==0?o[c]+l[u]+\\\" \\\":\\\"\\\").join(\\\"\\\"),p=s.map((u,c)=>u!==0?\\\" \\\"+o[c]+l[u]:\\\"\\\").join(\\\"\\\");return g+n+p}function Kh(e){let t=jh(e),r=[Xp(),$p()],n=[Zh(),Xh()],o=Hh(t),l,i=new Set,a=performance.now();for(let s=0;s<22;s++){let{value:f,done:g}=o.next(),p=e;for(let[R,h]of f)for(let y=0;y<h;y++)p=vh(p,ho[R]);let u=JSON.stringify(p);if(i.has(u))continue;i.add(u);let c=Yh(p),m=l?l.length-f.length-1:999999,L=$h(c,r,n,m).next().value;if(L!==void 0&&((l===void 0||l.length>f.length+L.length)&&(l=f.concat(L)),performance.now()-a>300))break}return l}function Qh(e){return e[3^e.indexOf(3)]}function jh(e){let t=un(_s(e.mp),e.wp),r=(e.co.reduce((n,o)=>n+o)-Qh(e.cp)+3)%3;return[0,1,2,3,4,5].map(n=>n+6*t.indexOf(n)+72*t.indexOf(n+6)+864*r)}function*Hh(e){let t=0,r=Zp(),n=Jh();for(;;)yield*Yp(...e,r,n,t,-1),t++}function*Yp(e,t,r,n,o,l,i,a,s,f){let g=pn,p=ar[e]+ar[t]+ar[r]+ar[n]+ar[o]+ar[l],u=Math.max(a[e%864+t*864],a[r%864+t*864],a[o%864+t*864],a[e%864+n*864],a[r%864+n*864],a[o%864+n*864],a[e%864+l*864],a[r%864+l*864],a[o%864+l*864],a[e%864+r*864],a[e%864+o*864],a[r%864+o*864],a[t%864+n*864],a[t%864+l*864],a[n%864+l*864],Cs[p]);if(!(u>s)){if(s===0){yield[];return}if(!(u===0&&s===1))for(let c=0;c<g;c++){if(c===f||c<f&&Vp(c,f))continue;let m=e,L=t,R=r,h=n,y=o,A=l;for(let E=1;E<=2;E++){m=i[m][c],L=i[L][c],R=i[R][c],h=i[h][c],y=i[y][c],A=i[A][c];let v=Yp(m,L,R,h,y,A,i,a,s-1,c);for(;;){let{value:K,done:Z}=v.next();if(Z)break;yield[[c,E]].concat(K)}}}}}function Yh(e){let t=e.mp,r=qp(t.slice(0,6).map(i=>i%6)),n=t.slice(0,5).map((i,a)=>(i>=6)*2**a).reduce((i,a)=>i+a),o=e.co.map((i,a)=>i*3**a).reduce((i,a)=>i+a),l=e.cp.indexOf(0);return[r+360*l,n+32*o]}function Jp(){if(we.phase1pm)return we.phase1pm;let e=Array(6*12*12).fill().map(()=>Array(pn).fill(-1));for(let t=0;t<6;t++)for(let r=0;r<12;r++)for(let n=0;n<12;n++){if(r===n)continue;let o=t+6*r+72*n;for(let l=0;l<pn;l++){let i=Hp[l][t],a=zs[l][r],s=zs[l][n];i<6?e[o][l]=i+6*a+72*s:e[o][l]=i-6+6*s+72*a}}return we.phase1pm=e}function Zp(){if(we.phase1pcm)return we.phase1pcm;let e=Jp(),t=Array(e.length*3).fill().map(()=>Array(pn).fill(-1));for(let r=0;r<e.length;r++)for(let n=0;n<pn;n++){let o=e[r][n];t[r][n]=o+6*12*12*ks[n],t[r+6*12*12][n]=o+6*12*12*((ks[n]+1)%3),t[r+2*6*12*12][n]=o+6*12*12*((ks[n]+2)%3)}return we.phase1pcm=t}function Jh(){if(we.phase1p2cp)return we.phase1p2cp;let e=Jp(),t=Zp(),r=new Int8Array((6*12*12)**2*3);r.fill(-1);let n=[0,1,2,3,4,5].map(l=>l+6*l+72*(l+6));for(let l=0;l<6;l++)for(let i=0;i<6;i++)l!==i&&(r[n[l]+864*n[i]]=0);let o=0;for(;;){let l=!1;for(let i=0;i<r.length;i++){if(r[i]!==o)continue;let a=i%864,s=Math.floor(i/864);for(let f=0;f<pn;f++){let g=a,p=s;for(let u=1;u<=2;u++){g=e[g][f],p=t[p][f];let c=g+864*p;r[c]===-1&&(l=!0,r[c]=o+1)}}}if(!l)break;o++}return we.phase1p2cp=r}function Xp(){if(we.phase2pm)return we.phase2pm;let e=Array(1440).fill().map(()=>Array(c0));for(let t=0;t<360;t++){let r=p0(t,6);for(let n=0;n<6;n++)r[n+6]=r[n]+6;for(let n=0;n<c0;n++){let o=un(r,ho[n].mp),l=qp(o.slice(0,6).map(i=>i%6));for(let i=0;i<4;i++){let a=ho[n].cp[i];e[t+360*a][n]=l+360*i}}}return we.phase2pm=e}function $p(){if(we.phase2om)return we.phase2om;let e=Array(32*81).fill().map(()=>Array(c0));for(let t=0;t<32;t++){let r=[0,1,2,3,4].map(o=>t>>o&1);r[5]=r.reduce((o,l)=>o^l);let n=[];for(let o=0;o<6;o++)n[o]=o+6*r[o],n[o+6]=o+6*(r[o]^1);for(let o=0;o<81;o++){let l=[0,1,2,3].map(i=>Math.floor(o/3**i)%3);for(let i=0;i<c0;i++){let s=un(n,ho[i].mp).slice(0,5).map(u=>+(u>=6)),f=0;for(let u=0;u<5;u++)f+=s[u]<<u;let g=l.map((u,c)=>(u+ho[i].co[c])%3),p=0;for(let u=0;u<4;u++)p+=g[u]*3**u;e[t+32*o][i]=f+32*p}}}return we.phase2om=e}function Zh(){return we.phase2pp?we.phase2pp:we.phase2pp=ec(Xp(),[0])}function Xh(){return we.phase2op?we.phase2op:we.phase2op=ec($p(),[0])}function ec(e,t){let r=e.length,n=e[0].length,o=Array(r).fill(-1),l=t.slice(),i=[],a=0;for(;l.length>0;){i.length=0;for(let s of l)if(o[s]===-1){o[s]=a;for(let f=0;f<n;f++){let g=e[s][f];for(;g!=s;)i.push(g),g=e[g][f]}}[l,i]=[i,l],a+=1}return o}function*$h(e,t,r,n){let o=e.length,l=0;for(let i=0;i<o;i++)l=Math.max(l,r[i][e[i]]);for(;l<=n;)yield*tc(e,t,r,l,-1),l++}function*tc(e,t,r,n,o){let l=e.length,i=t[0][0].length,a=0;for(let s=0;s<l;s++)a=Math.max(a,r[s][e[s]]);if(!(a>n)){if(n===0){yield[];return}if(!(a===0&&n===1))for(let s=0;s<i;s++){if(s===o||s<o&&Vp(s,o))continue;let f=e.slice();for(let p=0;p<l;p++)f[p]=t[p][e[p]][s];let g=1;for(;e.some((p,u)=>e[u]!=f[u]);){let p=tc(f,t,r,n-1,s);for(;;){let{value:u,done:c}=p.next();if(c)break;yield[[s,g]].concat(u)}for(let u=0;u<l;u++)f[u]=t[u][f[u]][s];g++}}}}async function tF(){return Wh(await eF,!1)}var v5,E5,k5,Eh,kh,_h,zh,Ch,Ph,Mh,Nh,ho,Th,pn,c0,qh,Hp,Vh,zs,ks,jp,Cs,ar,we,eF,nc=U(()=>{\\\"use strict\\\";Rt();[v5,E5]=(()=>{let e=new Int8Array(49152),t=new Int8Array(4096*12);for(let o=0;o<4096;o++)for(let l=0,i=0;l<12;l++)(o>>>l&1)!==0&&(e[l<<12|o]=i,t[i<<12|o]=l,i++);function r(o){let l=4095,i=19958400,a=0;for(let s=0;s<10;s++){let f=o[s];a+=e[l|f<<12]*i,l&=~(1<<f),i/=11-s}return a}function n(o,l){let i=4095,a=19958400,s=0;for(let f=0;f<10;f++){let g=o/a|0;o-=g*a,s^=g&1;let p=t[i|g<<12];l[f]=p,i&=~(1<<p),a/=11-f}return l[10]=t[i|s<<12],l[11]=t[i|(s^1)<<12],l}return[r,n]})();k5={co:[0,0,0,0],mp:gn(12),wp:gn(12),cp:[0,1,2,3]},Eh={co:[2,0,0,0],mp:gn(12),wp:cl([1,9,11],12),cp:[0,1,2,3]},kh={co:[0,2,0,0],mp:gn(12),wp:cl([0,7,2],12),cp:[0,1,2,3]},_h={co:[0,0,2,0],mp:gn(12),wp:cl([3,6,10],12),cp:[0,1,2,3]},zh={co:[0,0,0,2],mp:gn(12),wp:cl([4,8,5],12),cp:[0,1,2,3]},Ch={co:[2,0,0,0],mp:Cr([[1,9,11],[7,3,5]],12),wp:Cr([[1,9,11],[7,3,5]],12),cp:[0,2,3,1]},Ph={co:[0,2,0,0],mp:Cr([[0,7,2],[6,1,8]],12),wp:Cr([[0,7,2],[6,1,8]],12),cp:[3,1,0,2]},Mh={co:[0,0,2,0],mp:Cr([[3,6,10],[9,0,4]],12),wp:Cr([[3,6,10],[9,0,4]],12),cp:[1,3,2,0]},Nh={co:[0,0,0,2],mp:Cr([[4,8,5],[10,2,11]],12),wp:Cr([[4,8,5],[10,2,11]],12),cp:[2,0,1,3]},ho=[Ch,Ph,Mh,Nh,Eh,kh,_h,zh],Th=[\\\"u\\\",\\\"l\\\",\\\"r\\\",\\\"b\\\",\\\"U\\\",\\\"L\\\",\\\"R\\\",\\\"B\\\"],pn=8,c0=4;qh=[],Hp=[],Vh=[],zs=[];for(let e=0;e<pn;e++){let t=ho[e];qh[e]=t.mp,Hp[e]=_s(t.mp),Vh[e]=t.wp,zs[e]=_s(t.wp)}ks=[0,0,0,0,2,2,2,2],jp=[[14,-1,-1,11,11,10,9,8,8,7,7,6,4,5,5,3,4,4,2,3,4,3,-1,-1,0],[13,-1,-1,11,10,10,9,8,8,7,7,6,4,5,5,3,4,4,2,3,3,1,-1,-1,6]],Cs=new Int8Array(55);for(let e=0;e<25;e++)Cs[e]=jp[0][e],Cs[e+30]=jp[1][e];ar=new Int8Array(6*12*12*3);for(let e=0;e<6;e++)for(let t=0;t<12;t++)for(let r=0;r<12;r++){let n=e+6*t+72*r,o=2;t===e?o++:t===(e+6)%12&&o--,r===(e+6)%12?o++:r===e&&o--,ar[n]=o,ar[n+6*12*12]=ar[n+2*6*12*12]=o+5}we={};eF=Se()});var ic={};me(ic,{cachedMegaminxKPuzzleWithoutMO:()=>ml,cachedSGSDataMegaminx:()=>lF,sgsDataMegaminx:()=>lc});async function rF(){let e=Pn(\\\"megaminx\\\",{allMoves:!0,addRotations:!0}),t=new be(e.getKPuzzleDefinition(!0),{experimentalPGNotation:new Qr(e,e.getOrbitsDef(!0))});return t.definition.name=\\\"megaminx\\\",t}async function ml(){return nF??(nF=rF())}async function lF(){return oF??(oF=lc())}async function lc(){return Ot(await ml(),`SubgroupSizes 12 5 60 58 60 56 54 57 52 50 54 48 46 51 44 42 48 40 45 38 36 42 34 32 39 30 36 28 26 33 24 30 22 20 27 18 24 16 14 21 12 18 10 15 8 6 2 12 9 3\\n\\nAlg Rv\\nAlg Rv2\\nAlg Rv2'\\nAlg Rv'\\nAlg Lv'\\nAlg Lv2\\nAlg Lv2'\\nAlg Fv\\nAlg Fv'\\nAlg BRv2\\nAlg Lv2 Rv'\\n\\nAlg Uv\\nAlg Uv2\\nAlg Uv2'\\nAlg Uv'\\n\\nAlg D\\nAlg D2\\nAlg D2'\\nAlg D'\\nAlg B\\nAlg B2\\nAlg B2'\\nAlg B'\\nAlg D DL\\nAlg D DL2\\nAlg D DL2'\\nAlg D DL'\\nAlg D2 FL\\nAlg D2 FL2\\nAlg D2 FL2'\\nAlg D2 FL'\\nAlg D2' FR\\nAlg D2' FR2\\nAlg D2' FR2'\\nAlg D2' FR'\\nAlg D' DR\\nAlg D' DR2\\nAlg D' DR2'\\nAlg D' DR'\\nAlg B DR\\nAlg B DR2'\\nAlg B DR'\\nAlg B2 BR2\\nAlg B2 BR2'\\nAlg B2 BR'\\nAlg B2' BL\\nAlg B2' BL2\\nAlg B2' BL2'\\nAlg B' DL\\nAlg B' DL2\\nAlg B' DL'\\nAlg D DL B\\nAlg D DL B2'\\nAlg D DL B'\\nAlg D DL2' L\\nAlg D DL2' L2\\nAlg D DL2' L2'\\nAlg D DL' FL\\nAlg D DL' FL2\\nAlg D DL' FL'\\nAlg D2 FL2' F\\nAlg D2 FL2' F2\\nAlg D2 FL2' F2'\\nAlg D2 FL' FR\\nAlg D2 FL' FR2\\nAlg D2 FL' FR'\\nAlg D2' FR2' R\\nAlg D2' FR2' R2\\nAlg D2' FR2' R2'\\nAlg B DR2' R2'\\nAlg B DR' BR2\\nAlg B2 BR' BL\\nAlg B2' BL2' L\\nAlg D DL2' L2' F\\nAlg DL\\nAlg DL2\\nAlg DL2'\\nAlg DL'\\nAlg DL BL\\nAlg DL BL2\\nAlg DL BL2'\\nAlg DL BL'\\nAlg DL2 L\\nAlg DL2 L2\\nAlg DL2 L2'\\nAlg DL2 L'\\nAlg DL2' FL\\nAlg DL2' FL2\\nAlg DL2' FL2'\\nAlg DL2' FL'\\nAlg D B D'\\nAlg D B2 D'\\nAlg D B2' D'\\nAlg D B' D'\\nAlg D2 B D2'\\nAlg D2 DL' D2'\\nAlg D2' DL' D2\\nAlg D' B D\\nAlg D' DL' D\\nAlg B2 DR2 B2'\\nAlg B2 DR2' B2'\\nAlg B2 DR' B2'\\nAlg B2' BR B2\\nAlg B2' BR2 B2\\nAlg B2' BR2' B2\\nAlg B' BL B\\nAlg B' BL2 B\\nAlg B' BL' B\\nAlg DL BL2' U\\nAlg DL BL2' U2\\nAlg DL BL2' U2'\\nAlg DL BL' L\\nAlg DL BL' L2\\nAlg DL BL' L'\\nAlg DL2 L2' F\\nAlg DL2 L2' F2\\nAlg DL2 L2' F2'\\nAlg DL2 L' FL\\nAlg DL2 L' FL2\\nAlg DL2 L' FL'\\nAlg DL2' FL2' FR\\nAlg DL2' FL2' FR2\\nAlg DL2' FL2' FR2'\\nAlg D B D' DR2\\nAlg D B D' DR'\\nAlg D2 B D2' FR2'\\nAlg D' B D DL\\nAlg B2 DR' B2' BR\\nAlg B2 DR' B2' BR'\\nAlg B2' BR2' B2 U\\nAlg DL BL2' U2' F\\nAlg D FL D'\\nAlg D FL2 D'\\nAlg D FL2' D'\\nAlg D FL' D'\\nAlg D2 FR D2'\\nAlg D2 FR2 D2'\\nAlg D2 FR2' D2'\\nAlg D2' DR D2\\nAlg D2' DR2 D2\\nAlg D2' DR2' D2\\nAlg DL2 BL DL2'\\nAlg DL2 BL2 DL2'\\nAlg DL2 BL2' DL2'\\nAlg DL2 BL' DL2'\\nAlg DL2' L2 DL2\\nAlg DL2' L2' DL2\\nAlg DL' FL2 DL\\nAlg DL' FL' DL\\nAlg D FL D' FL2'\\nAlg D FL L D'\\nAlg D FL L2 D'\\nAlg D FL L2' D'\\nAlg D FL2 F D'\\nAlg D FL2 F2 D'\\nAlg D FL2 F2' D'\\nAlg D FL2 L D'\\nAlg D FL2 L2 D'\\nAlg D FL2' D' FR\\nAlg D FL2' D' FR2\\nAlg D FL2' D' FR2'\\nAlg D FL2' F D'\\nAlg D FL2' F2' D'\\nAlg D FL2' FR2' D'\\nAlg D FL2' FR' D'\\nAlg D FL' D' FL\\nAlg D FL' FR D'\\nAlg D2 FR D2' FR2'\\nAlg D2 FR2 R D2'\\nAlg D2 FR2 R2 D2'\\nAlg D2 FR2 R2' D2'\\nAlg D2 FR2' D2' DR\\nAlg D2 FR2' D2' DR2\\nAlg D2 FR2' D2' DR2'\\nAlg D2 FR2' D2' DR'\\nAlg D2 FR2' R2' D2'\\nAlg D2 FR' DR2' D2'\\nAlg D2' DR D2 DR2'\\nAlg D2' DR2 BR D2\\nAlg D2' DR2 BR2' D2\\nAlg D2' DR2' BR2' D2\\nAlg D2' DR2' BR' D2\\nAlg DL2 BL2 DL2' BL'\\nAlg DL2 BL2 DL2' BR'\\nAlg DL2 BL' DL2' L'\\nAlg DL2' L2 DL2 BL2\\nAlg D FL L2 BL2 D'\\nAlg D FL L' FL2' D'\\nAlg D FL2 L FL' D'\\nAlg D FL2' D' FR2 DR2'\\nAlg B DL B'\\nAlg B DL2 B'\\nAlg B DL2' B'\\nAlg B DL' B'\\nAlg B2 D B2'\\nAlg B2 D2 B2'\\nAlg B2 D2' B2'\\nAlg B2 D' B2'\\nAlg B2 DL B2'\\nAlg B2' D' B2\\nAlg B2' DL B2\\nAlg B' D' B\\nAlg B DL B' BL\\nAlg B DL B' BL2\\nAlg B DL B' BL2'\\nAlg B DL B' BL'\\nAlg B DL2 B' BL2\\nAlg B DL2 B' BL2'\\nAlg B DL2 B' BL'\\nAlg B DL2' L2 B'\\nAlg B DL2' L2' B'\\nAlg B DL2' L' B'\\nAlg B DL' FL B'\\nAlg B DL' FL2 B'\\nAlg B DL' FL2' B'\\nAlg B DL' FL' B'\\nAlg B2 D FL B2'\\nAlg B2 D FL2' B2'\\nAlg B2 D FL' B2'\\nAlg B2 D2 FR2 B2'\\nAlg B2 D2 FR2' B2'\\nAlg B2 D2 FR' B2'\\nAlg B2 D2' B2' DR\\nAlg B2 D2' B2' DR2\\nAlg B2 D2' B2' DR2'\\nAlg B2 DL B2' BR\\nAlg B2 DL B2' BR2\\nAlg B2 DL B2' BR2'\\nAlg B2' D' B2 BR2\\nAlg B2' D' B2 BR2'\\nAlg B' D' B DR\\nAlg B' D' B DR2'\\nAlg D FL' D FR D2'\\nAlg D DL FL DL' D'\\nAlg D2' FR DR FR' D2\\nAlg B DL B D B2'\\nAlg B DL B D2' B2'\\nAlg B DL B' BL2 U2\\nAlg B DL B' BL2 U2'\\nAlg B DL B' BL2 U'\\nAlg B DL2 B' BL2' U2\\nAlg B DL2 B' BL2' U2'\\nAlg B DL2 B' BL' L2\\nAlg B DL2' L2' B' F2\\nAlg B2 D FL2' B2' F2'\\nAlg DR\\nAlg DR2\\nAlg DR2'\\nAlg DR'\\nAlg DR2 FR\\nAlg DR2 FR2\\nAlg DR2 FR2'\\nAlg DR2 FR'\\nAlg DR2' R\\nAlg DR2' R2\\nAlg DR2' R2'\\nAlg DR2' R'\\nAlg DR' BR\\nAlg DR' BR2\\nAlg DR' BR2'\\nAlg DR' BR'\\nAlg D DR D'\\nAlg D2 DR D2'\\nAlg B BR B'\\nAlg B BR2' B'\\nAlg B BR' B'\\nAlg B2 BL2 B2'\\nAlg B2 BL2' B2'\\nAlg B2 BL' B2'\\nAlg DR2 FR2 FL2\\nAlg DR2 FR2 FL2'\\nAlg DR2 FR2 FL'\\nAlg DR2 FR2' F\\nAlg DR2 FR2' F2\\nAlg DR2 FR2' F2'\\nAlg DR2 FR' R\\nAlg DR2 FR' R2\\nAlg DR2 FR' R'\\nAlg DR2' R FR\\nAlg DR2' R FR2'\\nAlg DR2' R FR'\\nAlg DR2' R2' U\\nAlg DR2' R2' U2\\nAlg DR2' R2' U2'\\nAlg DR2' R' BR2'\\nAlg DR' BR2' BL'\\nAlg D DR2 FR D'\\nAlg B BR B' DR\\nAlg B BR B' DR2\\nAlg B BR2' B' U2'\\nAlg B BR' B' BL2\\nAlg B BR' B' BL2'\\nAlg B BR' B' BL'\\nAlg B2 BL2' L' B2'\\nAlg DR2 FR2 FL' F\\nAlg DR2 FR2' F FL2'\\nAlg DR2 FR2' F FL'\\nAlg B BR2' U2' L2' B'\\nAlg D2' FL D2\\nAlg D2' FL2 D2\\nAlg D2' FL2' D2\\nAlg D2' FL' D2\\nAlg D' FR2 D\\nAlg D' FR2' D\\nAlg D' FR' D\\nAlg DR FR DR'\\nAlg DR FR2' DR'\\nAlg DR FR' DR'\\nAlg DR2 R2 DR2'\\nAlg DR2 R2' DR2'\\nAlg DR2' BR DR2\\nAlg DR2' BR2 DR2\\nAlg DR2' BR2' DR2\\nAlg D DR2 D' DR2'\\nAlg D DR2' D' DR2\\nAlg D2' FL D2 FR'\\nAlg D2' FL2 D2 FL2'\\nAlg D2' FL2 D2 FL'\\nAlg D2' FL2 L D2\\nAlg D2' FL2 L2 D2\\nAlg D2' FL2 L2' D2\\nAlg D2' FL2 L' D2\\nAlg D2' FL2' F D2\\nAlg D2' FL2' F2 D2\\nAlg D2' FL2' F2' D2\\nAlg D2' FL2' L D2\\nAlg D2' FL2' L2 D2\\nAlg D2' FL2' L2' D2\\nAlg D2' FL2' L' D2\\nAlg D2' FL' F D2\\nAlg D2' FL' F2' D2\\nAlg D' FR FL' D\\nAlg D' FR2 D FR'\\nAlg D' FR2 D FL2\\nAlg D' FR2 D FL2'\\nAlg D' FR2 FL D\\nAlg D' FR2' R2' D\\nAlg D' FR' R2' D\\nAlg DR2 R2 DR2' U2'\\nAlg DR2 R2' DR2' BR\\nAlg DR2 R2' DR2' BR2\\nAlg DR2 R2' DR2' BR2'\\nAlg DR2 R2' DR2' BR'\\nAlg DR2 R' BR2' DR2'\\nAlg DR2' BR DR2 BR2'\\nAlg DR2' BR2 BL DR2\\nAlg DR2' BR2 BL2' DR2\\nAlg DR2' BR2' BL' DR2\\nAlg D B2' BL2' B2 D'\\nAlg D2 B2 DL2 B2' D2'\\nAlg D2' FL2 L' FL2 D2\\nAlg D2' FL2' L D2 FL'\\nAlg D2' FL2' L FL2' D2\\nAlg D2' FL2' L2' BL2 D2\\nAlg B2' DR B2\\nAlg B2' DR2 B2\\nAlg B2' DR2' B2\\nAlg B2' DR' B2\\nAlg B' DR' B\\nAlg B2' DR FR B2\\nAlg B2' DR FR2 B2\\nAlg B2' DR FR2' B2\\nAlg B2' DR FR' B2\\nAlg B2' DR2 R B2\\nAlg B2' DR2 R2 B2\\nAlg B2' DR2 R2' B2\\nAlg B2' DR2 R' B2\\nAlg B2' DR2' B2 BR\\nAlg B2' DR2' B2 BR2\\nAlg B2' DR2' B2 BR2'\\nAlg B2' DR2' B2 BR'\\nAlg B2' DR' B2 BL2\\nAlg B2' DR' B2 BL2'\\nAlg B2' DR' B2 BL'\\nAlg B' DR2' BR' B\\nAlg B' DR' B BR\\nAlg B' DR' B BR2'\\nAlg B' DR' B BR'\\nAlg D2' FR2' FL FR2 D2\\nAlg D2' FR2' FL2 FR2 D2\\nAlg D2' FR2' FL2' FR2 D2\\nAlg D' DR2' FR DR2 D\\nAlg D' DR2' FR2 DR2 D\\nAlg D' DR' FR' DR D\\nAlg D' FR D' FL' D2\\nAlg B2 D2 DL2 D2' B2'\\nAlg B2 D2 DL2' D2' B2'\\nAlg B2 D2 DL' D2' B2'\\nAlg B2 D' FR' D B2'\\nAlg B2 DL D2' DL' B2'\\nAlg B2 DL D' DL' B2'\\nAlg B2' DR FR2' B2 F2\\nAlg B2' DR FR2' B2 F2'\\nAlg B2' DR FR' R B2\\nAlg B2' DR FR' R2 B2\\nAlg B2' DR2 R2' B2 U\\nAlg B2' DR2 R2' B2 U2\\nAlg B2' DR2 R2' B2 U2'\\nAlg B2' DR' B2 BL2 U'\\nAlg B' DR2' BR' B BL2'\\nAlg DR D FR D' DR'\\nAlg DL2' B D B' DL2\\nAlg D2' FR2' FL2' FR2 F D2\\nAlg D' DR2' FR DR2 D FL2'\\nAlg B2 D B D' DR B2\\nAlg FR\\nAlg FR2\\nAlg FR2'\\nAlg FR'\\nAlg FR2 FL\\nAlg FR2 FL2\\nAlg FR2 FL2'\\nAlg FR2 FL'\\nAlg FR2' F\\nAlg FR2' F2\\nAlg FR2' F2'\\nAlg FR2' F'\\nAlg FR' R\\nAlg FR' R2\\nAlg FR' R2'\\nAlg FR' R'\\nAlg D FR D'\\nAlg DR R DR'\\nAlg DR R2' DR'\\nAlg DR R' DR'\\nAlg DR2 BR2 DR2'\\nAlg DR2 BR2' DR2'\\nAlg DR2 BR' DR2'\\nAlg FR2 FL2' L\\nAlg FR2 FL2' L2\\nAlg FR2 FL2' L2'\\nAlg FR2 FL' F\\nAlg FR2 FL' F2\\nAlg FR2 FL' F'\\nAlg FR2' F FL\\nAlg FR2' F FL2'\\nAlg FR2' F FL'\\nAlg FR2' F2' U\\nAlg FR2' F2' U2\\nAlg FR2' F2' U2'\\nAlg FR2' F' R2'\\nAlg FR' R2' BR'\\nAlg DR R DR' FR\\nAlg DR R DR' FR2\\nAlg DR R2' DR' U2'\\nAlg DR R' DR' BR2\\nAlg DR R' DR' BR2'\\nAlg DR R' DR' BR'\\nAlg DR2 BR2' BL2' DR2'\\nAlg DR2 BR2' BL' DR2'\\nAlg FR2 FL' F L2\\nAlg FR2 FL' F L2'\\nAlg B' DR2 BR' DR2' B\\nAlg DR R2' U2' BL2 DR'\\nAlg D' FL D\\nAlg D' FL2 D\\nAlg D' FL2' D\\nAlg D' FL' D\\nAlg FR FL FR'\\nAlg FR FL2 FR'\\nAlg FR FL2' FR'\\nAlg FR FL' FR'\\nAlg FR2 F2 FR2'\\nAlg FR2 F2' FR2'\\nAlg FR2' R FR2\\nAlg FR2' R2 FR2\\nAlg FR2' R2' FR2\\nAlg D FR2 D' FR2'\\nAlg D FR2' D' FR2\\nAlg D' FL D FL'\\nAlg D' FL2 D FL'\\nAlg D' FL2 L D\\nAlg D' FL2 L2 D\\nAlg D' FL2 L2' D\\nAlg D' FL2 L' D\\nAlg D' FL2' F2' D\\nAlg D' FL2' L2 D\\nAlg D' FL2' L2' D\\nAlg D' FL2' L' D\\nAlg D' FL' F2' D\\nAlg FR FL2' F' FR'\\nAlg FR FL2' FR' L\\nAlg FR FL2' FR' L2\\nAlg FR FL2' FR' L2'\\nAlg FR2 F2 FR2' U2\\nAlg FR2 F2 FR2' U2'\\nAlg FR2 F2' FR2' U2'\\nAlg FR2 F2' FR2' R\\nAlg FR2 F2' FR2' R2\\nAlg FR2 F2' FR2' R2'\\nAlg FR2 F2' FR2' R'\\nAlg FR2 F' R2' FR2'\\nAlg FR2' R FR2 R2'\\nAlg FR2' R2 BR FR2\\nAlg FR2' R2 BR2 FR2\\nAlg FR2' R2 BR2' FR2\\nAlg FR2' R2' BR2' FR2\\nAlg FR2' R2' BR' FR2\\nAlg D DR2' BR2' DR2 D'\\nAlg D FR2' D' FR2 FL2\\nAlg D2' B DL B' D2\\nAlg D2' B2' D' B2 D2'\\nAlg D' FL2 L BL D\\nAlg D' FL2 L' FL2 D\\nAlg D' FL2' F2' R' D\\nAlg D' FL2' L FL2' D\\nAlg D' FL2' L2' BL2 D\\nAlg DR2' FR DR2\\nAlg DR2' FR2 DR2\\nAlg DR2' FR2' DR2\\nAlg DR2' FR' DR2\\nAlg DR' FR' DR\\nAlg DR2' FR FL DR2\\nAlg DR2' FR FL2 DR2\\nAlg DR2' FR FL2' DR2\\nAlg DR2' FR FL' DR2\\nAlg DR2' FR2 DR2 F\\nAlg DR2' FR2 DR2 F2\\nAlg DR2' FR2 DR2 F2'\\nAlg DR2' FR2 DR2 F'\\nAlg DR2' FR2' DR2 R\\nAlg DR2' FR2' DR2 R2\\nAlg DR2' FR2' DR2 R2'\\nAlg DR2' FR2' DR2 R'\\nAlg DR2' FR' DR2 BR2\\nAlg DR2' FR' DR2 BR2'\\nAlg DR2' FR' DR2 BR'\\nAlg DR' FR2' R' DR\\nAlg DR' FR' DR R\\nAlg DR' FR' DR R2'\\nAlg DR' FR' DR R'\\nAlg D' FR2' FL FR2 D\\nAlg D' FR2' FL2 FR2 D\\nAlg D' FR' FL' FR D\\nAlg B2' DR2 FR' DR2' B2\\nAlg B' DR2 FR' DR2' B\\nAlg DR2 D' FL' D DR2'\\nAlg DR2' FR FL2' DR2 L\\nAlg DR2' FR FL2' DR2 L2\\nAlg DR2' FR FL2' DR2 L2'\\nAlg DR2' FR FL' DR2 F\\nAlg DR2' FR FL' DR2 F2\\nAlg DR2' FR2 F FL2 DR2\\nAlg DR2' FR2 DR2 F2' U\\nAlg DR2' FR2 DR2 F2' U2\\nAlg DR2' FR2 DR2 F2' U2'\\nAlg DR2' FR' DR2 BR2 U'\\nAlg DR2' FR' DR2 BR2' BL2'\\nAlg DR' FR2' R' DR BR2'\\nAlg D' FR2' FL2 FR2 L D\\nAlg D' FR2' FL2 FR2 L2 D\\nAlg B2' DR2' FR2' R' DR2 B2\\nAlg DR2 D DR D' FR DR2\\nAlg DR2' FR' DR2 BR2 U' BL2\\nAlg FL\\nAlg FL2\\nAlg FL2'\\nAlg FL'\\nAlg FL L\\nAlg FL L2\\nAlg FL L2'\\nAlg FL L'\\nAlg FL2 F\\nAlg FL2 F2\\nAlg FL2 F2'\\nAlg FL2 F'\\nAlg FR2' FL2' FR2\\nAlg FR' FL2' FR\\nAlg FL L2 BL\\nAlg FL L2 BL2\\nAlg FL L2 BL2'\\nAlg FL L2 BL'\\nAlg FL L2' U\\nAlg FL L2' U2\\nAlg FL L2' U2'\\nAlg FL L' F\\nAlg FL L' F2\\nAlg FL L' F'\\nAlg FL2 F L\\nAlg FL2 F L2\\nAlg FL2 F L2'\\nAlg FL2 F L'\\nAlg FL2 F2' R\\nAlg FL2 F2' R2\\nAlg FL2 F2' R2'\\nAlg FR' FL2 F' FR\\nAlg FL L2 BL2' BR\\nAlg FL L2 BL2' BR2\\nAlg FL L2 BL' U\\nAlg FL L2' U BL2\\nAlg FL L2' U BL2'\\nAlg FL L2' U BL'\\nAlg FL L2' U2' R\\nAlg FL L2' U2' R2\\nAlg FL L' F' FL\\nAlg FL L' F' FL2\\nAlg FL L' F' FL2'\\nAlg B DL2' BL DL2 B'\\nAlg FL L2 BL' U BR2'\\nAlg FL2 L FL2'\\nAlg FL2 L2 FL2'\\nAlg FL2 L2' FL2'\\nAlg FL2 L' FL2'\\nAlg FL2' F2 FL2\\nAlg FL2' F2' FL2\\nAlg FL2' F' FL2\\nAlg FR2' FL' FR2 FL\\nAlg FL2 L2 FL2' L2'\\nAlg FL2 L2 FL2' L'\\nAlg FL2 L2 FL2' BL\\nAlg FL2 L2 FL2' BL2\\nAlg FL2 L2 FL2' BL2'\\nAlg FL2 L2 FL2' BL'\\nAlg FL2 L2' FL2' U\\nAlg FL2 L2' FL2' U2\\nAlg FL2 L2' FL2' U2'\\nAlg FL2 L2' FL2' BL\\nAlg FL2 L2' FL2' BL2\\nAlg FL2 L2' FL2' BL2'\\nAlg FL2 L2' FL2' BL'\\nAlg FL2 L' FL2' U\\nAlg FL2 L' FL2' U2'\\nAlg FL2 L' FL2' F\\nAlg FL2 L' FL2' F2\\nAlg FL2 L' FL2' F2'\\nAlg FL2 L' FL2' F'\\nAlg FL2' F L FL2\\nAlg FL2' F L' FL2\\nAlg FL2' F2 L FL2\\nAlg FL2' F2 L2 FL2\\nAlg FL2' F2 L2' FL2\\nAlg FL2' F2 FL2 F'\\nAlg FL2' F2 FL2 L2\\nAlg FL2' F2' R FL2\\nAlg FL2' F2' R2 FL2\\nAlg FL2' F2' R2' FL2\\nAlg FL2' F' R2' FL2\\nAlg FL2' F' R' FL2\\nAlg FL' FR2' FL FR2\\nAlg D DR2' FR2' DR2 D'\\nAlg D FR2' R' FR2 D'\\nAlg D' DL2 BL2 DL2' D\\nAlg B2 D2' B D2 B2\\nAlg DR2 D2 DR D2' DR2\\nAlg FR2 D FR D' FR2\\nAlg FL2 L2 BL' L2 FL2'\\nAlg FL2 L2 FL2' BL2 BR\\nAlg FL2 L2' BL L2' FL2'\\nAlg FL2 L2' FL2' BL L'\\nAlg DL FL DL'\\nAlg DL FL2 DL'\\nAlg DL FL2' DL'\\nAlg DL FL' DL'\\nAlg DL2 FL DL2'\\nAlg DL FL DL' L\\nAlg DL FL DL' L2\\nAlg DL FL DL' L2'\\nAlg DL FL DL' L'\\nAlg DL FL2 L DL'\\nAlg DL FL2 L2 DL'\\nAlg DL FL2 L2' DL'\\nAlg DL FL2 L' DL'\\nAlg DL FL2 DL' L\\nAlg DL FL2' DL' F2\\nAlg DL FL2' DL' F2'\\nAlg DL FL2' DL' F'\\nAlg DL2 FL DL2' BL\\nAlg DL2 FL DL2' BL2\\nAlg DL2 FL DL2' BL2'\\nAlg B DL2' FL DL2 B'\\nAlg B2 DL2' FL DL2 B2'\\nAlg FL2 F2 L' F2' FL2'\\nAlg FL2 F2' L' F2 FL2'\\nAlg FL2 F' L' F FL2'\\nAlg FL2' FR2' FL FR2 FL2\\nAlg FL2' FR' F' FR FL2\\nAlg DL FL DL' L BL2'\\nAlg DL FL DL' L BL'\\nAlg DL FL DL' L2 U2\\nAlg DL FL DL' L2 U2'\\nAlg DL FL2 L2' DL' U2\\nAlg DL FL2 L2' DL' U2'\\nAlg DL FL2 L' DL' F'\\nAlg DL FL2' DL' F2' R2\\nAlg DL FL2' DL' F2' R2'\\nAlg DL2 FL DL2' BL2 BR2\\nAlg B DL2 FL DL2' BL B'\\nAlg FL2 F2' L' F2 R2 FL2'\\nAlg FL2 F2' L' F2 R2' FL2'\\nAlg FL2' FR' F FR L FL2\\nAlg DL FL DL' L BL2' BR2\\nAlg DL FL2 L DL FL' DL2'\\nAlg FR F FR'\\nAlg FR F2 FR'\\nAlg FR F2' FR'\\nAlg FR F' FR'\\nAlg FR2 R FR2'\\nAlg FR2 R2 FR2'\\nAlg FR2 R2' FR2'\\nAlg FR2 R' FR2'\\nAlg FL2' L FL2\\nAlg FL2' L2 FL2\\nAlg FL2' L2' FL2\\nAlg FL' F FL\\nAlg FL' F2 FL\\nAlg FL' F' FL\\nAlg FR F FR' F'\\nAlg FR F2 FR' L\\nAlg FR F2' FR' U\\nAlg FR F2' FR' U2\\nAlg FR F2' FR' U2'\\nAlg FR F' FR' R\\nAlg FR F' FR' R2\\nAlg FR F' FR' R2'\\nAlg FR F' FR' R'\\nAlg FR2 R FR2' F2\\nAlg FR2 R FR2' R'\\nAlg FR2 R2' BR FR2'\\nAlg FR2 R2' BR2 FR2'\\nAlg FR2 R2' BR2' FR2'\\nAlg FR2 R2' BR' FR2'\\nAlg FL2' L2 FL2 BL\\nAlg FL2' L2 FL2 BL2\\nAlg FL2' L2' FL2 U\\nAlg FL' F L2 FL\\nAlg FL' F L2' FL\\nAlg FL' F FL L\\nAlg DR' FR2 R' FR2' DR\\nAlg FR F2' U2' BR FR'\\nAlg FR F2' U2' BR2 FR'\\nAlg FR F' FR R' FR2'\\nAlg FL2' L2' FL2 U BL2\\nAlg FL2' L2' FL2 U BL2'\\nAlg FR F L F' FR'\\nAlg FR F L2 F' FR'\\nAlg FR F L2' F' FR'\\nAlg FR F L' F' FR'\\nAlg FR F2 U F2' FR'\\nAlg FR F2 U2 F2' FR'\\nAlg FR F2 U2' F2' FR'\\nAlg FR F2' R F2 FR'\\nAlg FR F2' R2 F2 FR'\\nAlg FR F2' R2' F2 FR'\\nAlg FR FL' L FL FR'\\nAlg FR FL' L2 FL FR'\\nAlg FR FL' L' FL FR'\\nAlg FR2 F2' L F2 FR2'\\nAlg FR2 F2' L2 F2 FR2'\\nAlg FR2 F' U2 F FR2'\\nAlg FR2 F' U2' F FR2'\\nAlg FR2 R U R' FR2'\\nAlg FR2 R U' R' FR2'\\nAlg FR2 R2 BR2 R2' FR2'\\nAlg FR2 R2 BR2' R2' FR2'\\nAlg FR2' DR BR DR' FR2\\nAlg FR2' R2' U R2 FR2\\nAlg FR2' R2' U2 R2 FR2\\nAlg FR2' R' BR2 R FR2\\nAlg FR2' R' BR2' R FR2\\nAlg FR2' R' BR' R FR2\\nAlg FL2 L BL L' FL2'\\nAlg FL2 L2 U2' L2' FL2'\\nAlg FL2 DL' BL2 DL FL2'\\nAlg FL2' F2 R2' F2' FL2\\nAlg FL2' L2' BL2 L2 FL2\\nAlg FL' F2 L F2' FL\\nAlg FL' F2 L2 F2' FL\\nAlg FL' F' R' F FL\\nAlg FL' FR R' FR' FL\\nAlg FR F L2' F' FR' BL\\nAlg FR F L2' F' FR' BL2\\nAlg FR F L' F' FR' F'\\nAlg FR F2 U2 BR2 F2' FR'\\nAlg FR F2 U2 BR2' F2' FR'\\nAlg FR F2' R F2 R2' FR'\\nAlg FR F2' R2' F2 FR' R'\\nAlg FR FL' L FL FR' F'\\nAlg FR2 F' U2 F FR2' L2'\\nAlg FR F L2 BL' L2 F' FR'\\nAlg FR F L2' F U' F2' FR'\\nAlg R\\nAlg R2\\nAlg R2'\\nAlg R'\\nAlg R2 F\\nAlg R2 F2\\nAlg R2 F2'\\nAlg R2 F'\\nAlg R2' U\\nAlg R2' U2\\nAlg R2' U2'\\nAlg R2' U'\\nAlg R' BR\\nAlg R' BR2\\nAlg R' BR2'\\nAlg R' BR'\\nAlg DR BR DR'\\nAlg DR BR2' DR'\\nAlg DR BR' DR'\\nAlg FR R FR'\\nAlg R2 F2' L\\nAlg R2 F2' L2\\nAlg R2 F2' L2'\\nAlg R2 F' U\\nAlg R2 F' U2\\nAlg R2 F' U'\\nAlg R2' U F\\nAlg R2' U F2'\\nAlg R2' U F'\\nAlg R2' U2' BL\\nAlg R2' U2' BL2\\nAlg R2' U2' BL2'\\nAlg R2' U' BR2'\\nAlg DR BR DR' R\\nAlg DR BR DR' R2\\nAlg DR BR2' BL2' DR'\\nAlg DR BR2' BL' DR'\\nAlg R2 F' U L2\\nAlg R2 F' U L2'\\nAlg FR' F FR\\nAlg FR' F2 FR\\nAlg FR' F2' FR\\nAlg FR' F' FR\\nAlg R F R'\\nAlg R F2 R'\\nAlg R F2' R'\\nAlg R F' R'\\nAlg R2 U2 R2'\\nAlg R2 U2' R2'\\nAlg R2' BR R2\\nAlg R2' BR2 R2\\nAlg R2' BR2' R2\\nAlg FR R2 FR' R2'\\nAlg FR R2' FR' R2\\nAlg FR' F FR F'\\nAlg FR' F2 FR F'\\nAlg FR' F2 FR L\\nAlg FR' F2 FR L2\\nAlg FR' F2 FR L2'\\nAlg FR' F2 FR L'\\nAlg FR' F2' FR U2'\\nAlg FR' F2' FR L2\\nAlg FR' F2' FR L2'\\nAlg FR' F2' FR L'\\nAlg FR' F' FR U2'\\nAlg R F2' U' R'\\nAlg R F2' R' L\\nAlg R F2' R' L2\\nAlg R F2' R' L2'\\nAlg R2 U2 R2' BL2\\nAlg R2 U2 R2' BL2'\\nAlg R2 U2' BR R2'\\nAlg R2 U2' BR2 R2'\\nAlg R2 U2' R2' BL2'\\nAlg R2 U2' R2' BR2'\\nAlg R2 U2' R2' BR'\\nAlg R2 U' BR2' R2'\\nAlg R2' BR R2 BR2'\\nAlg DR BR2 BL2' BR2' DR'\\nAlg FR R2' FR' R2 F2\\nAlg FR' F2 L' F2 FR\\nAlg FR' F2' U2' BR' FR\\nAlg FR' F2' L F2' FR\\nAlg DR' R DR\\nAlg DR' R2 DR\\nAlg DR' R2' DR\\nAlg DR' R' DR\\nAlg DR' R DR F\\nAlg DR' R DR F2\\nAlg DR' R DR F2'\\nAlg DR' R DR F'\\nAlg DR' R2 DR U\\nAlg DR' R2 DR U2\\nAlg DR' R2 DR U2'\\nAlg DR' R2 DR U'\\nAlg DR' R2' DR BR\\nAlg DR' R2' DR BR2\\nAlg DR' R2' DR BR2'\\nAlg DR' R2' DR BR'\\nAlg DR' R' DR BR\\nAlg DR' R' DR BR2'\\nAlg DR' R' DR BR'\\nAlg B2' DR2' R' DR2 B2\\nAlg DR2' FR' F FR DR2\\nAlg DR2' FR' F2 FR DR2\\nAlg DR2' FR' F' FR DR2\\nAlg DR' R DR F2' L\\nAlg DR' R DR F2' L2\\nAlg DR' R DR F2' L2'\\nAlg DR' R DR F' U\\nAlg DR' R DR F' U2\\nAlg DR' R DR F' U'\\nAlg DR' R2 U2' BL DR\\nAlg DR' R2 U2' BL2 DR\\nAlg DR' R2 U2' BL2' DR\\nAlg DR' R2 DR U F2\\nAlg DR' R' DR BR2' BL2'\\nAlg DR2' FR' F2 FR DR2 L\\nAlg DR2' FR' F2 FR DR2 L2\\nAlg DR' FR' F' FR R' DR\\nAlg BR\\nAlg BR2\\nAlg BR2'\\nAlg BR'\\nAlg BR2' U\\nAlg BR2' U2\\nAlg BR2' U2'\\nAlg BR2' U'\\nAlg BR' BL\\nAlg BR' BL2\\nAlg BR' BL2'\\nAlg BR' BL'\\nAlg B BL B'\\nAlg B BL2' B'\\nAlg B BL' B'\\nAlg BR2' U2 F\\nAlg BR2' U2 F2\\nAlg BR2' U2 F2'\\nAlg BR2' U2 F'\\nAlg BR2' U2' L\\nAlg BR2' U2' L2\\nAlg BR2' U2' L2'\\nAlg BR2' U' BL2'\\nAlg BR' BL U\\nAlg BR' BL U2\\nAlg BR' BL U2'\\nAlg BR' BL U'\\nAlg B BL B' BR\\nAlg B BL B' BR2\\nAlg B BL B' BR2'\\nAlg B BL2' L2' B'\\nAlg B BL2' L' B'\\nAlg BR2' U2' L F2\\nAlg BR2' U2' L F2'\\nAlg BR2' U2' L F'\\nAlg BR2 U BR2'\\nAlg BR2 U2 BR2'\\nAlg BR2 U2' BR2'\\nAlg BR2 U' BR2'\\nAlg BR2' BL BR2\\nAlg BR2' BL2 BR2\\nAlg BR2' BL2' BR2\\nAlg BR R BR' R'\\nAlg BR2 U BR2' U2'\\nAlg BR2 U BR2' U'\\nAlg BR2 U BR2' F\\nAlg BR2 U BR2' F2\\nAlg BR2 U BR2' F2'\\nAlg BR2 U BR2' F'\\nAlg BR2 U2 BR2' F\\nAlg BR2 U2 BR2' F2\\nAlg BR2 U2 BR2' F2'\\nAlg BR2 U2 BR2' F'\\nAlg BR2 U2 BR2' L\\nAlg BR2 U2 BR2' L2\\nAlg BR2 U2 BR2' L2'\\nAlg BR2 U2' BL BR2'\\nAlg BR2 U2' BL2 BR2'\\nAlg BR2 U2' BL' BR2'\\nAlg BR2 U2' BR2' L\\nAlg BR2 U2' BR2' L2'\\nAlg BR2 U2' BR2' BL2'\\nAlg BR2 U2' BR2' BL'\\nAlg BR2 U' BL BR2'\\nAlg BR2 U' BL2' BR2'\\nAlg BR2 U' BL' BR2'\\nAlg BR2' BL BR2 U2\\nAlg BR2' BL BR2 U2'\\nAlg BR2' BL BR2 BL2'\\nAlg BR2' BL BR2 BL'\\nAlg B BL2 L2' BL2' B'\\nAlg DR' R2 F R2' DR\\nAlg BR2 U F' U2' BR2'\\nAlg BR2 U BR2' U2' BL'\\nAlg BR2 U2 F U' BR2'\\nAlg BR2 U2 BR2' L F2'\\nAlg B' BR B\\nAlg B' BR2 B\\nAlg B' BR2' B\\nAlg B' BR' B\\nAlg B' BR2 B U\\nAlg B' BR2 B U2\\nAlg B' BR2 B U2'\\nAlg B' BR2 B U'\\nAlg B' BR2' B BL\\nAlg B' BR2' B BL2\\nAlg B' BR2' B BL2'\\nAlg B' BR2' B BL'\\nAlg B' BR' B BL\\nAlg B' BR' B BL2'\\nAlg B' BR' B BL'\\nAlg B' BR2 U2' L B\\nAlg B' BR2 U2' L2 B\\nAlg B' BR2 U2' L2' B\\nAlg B' BR2 B U2 F\\nAlg B' BR2 B U2 F2\\nAlg B' BR2 B U2 F2'\\nAlg B' BR2 B U2 F'\\nAlg B' BR2' B BL U\\nAlg B' BR2' B BL U2\\nAlg B' BR2' B BL U2'\\nAlg B' BR2' B BL U'\\nAlg B' BR' B BL2' L2'\\nAlg B' BR' B BL2' L'\\nAlg BR2 R U R' BR2'\\nAlg B' BR2 U2' L B F2'\\nAlg B' BR2 U2' L B F'\\nAlg B' BR' B BR2 BL BR2'\\nAlg B' BR2 U R BR' R' B\\nAlg BR U BR'\\nAlg BR U2 BR'\\nAlg BR U2' BR'\\nAlg BR U' BR'\\nAlg BR2 BL BR2'\\nAlg BR2 BL2 BR2'\\nAlg BR2 BL2' BR2'\\nAlg BR2 BL' BR2'\\nAlg R2' F R2\\nAlg R2' F2 R2\\nAlg R2' F2' R2\\nAlg R' U R\\nAlg R' U2 R\\nAlg R' U' R\\nAlg BR U BR' U'\\nAlg BR U2 BR' F\\nAlg BR U2' BR' L\\nAlg BR U2' BR' L2\\nAlg BR U2' BR' L2'\\nAlg BR U' BL BR'\\nAlg BR U' BL2 BR'\\nAlg BR U' BL2' BR'\\nAlg BR U' BR' BL'\\nAlg BR2 BL BR2' U2\\nAlg BR2 BL BR2' BL'\\nAlg R2' F2' R2 L\\nAlg R2' F2' R2 L2\\nAlg R' U F2 R\\nAlg R' U F2' R\\nAlg R' U R F\\nAlg BR U' BR BL' BR2'\\nAlg BR U F U' BR'\\nAlg BR U F2 U' BR'\\nAlg BR U F2' U' BR'\\nAlg BR U F' U' BR'\\nAlg BR U2 L U2' BR'\\nAlg BR U2 L2 U2' BR'\\nAlg BR U2 L2' U2' BR'\\nAlg BR U2' BL U2 BR'\\nAlg BR U2' BL2 U2 BR'\\nAlg BR U2' BL2' U2 BR'\\nAlg BR R' F R BR'\\nAlg BR R' F2 R BR'\\nAlg BR R' F' R BR'\\nAlg BR2 U2' F U2 BR2'\\nAlg BR2 U2' F2 U2 BR2'\\nAlg BR2 U' L2 U BR2'\\nAlg BR2 U' L2' U BR2'\\nAlg BR2 BL L BL' BR2'\\nAlg BR2 BL L' BL' BR2'\\nAlg BR2' BL2' L BL2 BR2\\nAlg BR2' BL2' L2 BL2 BR2\\nAlg R2 F2 L F2' R2'\\nAlg R2 F2 L2 F2' R2'\\nAlg R2 F2 L2' F2' R2'\\nAlg R2' U2 BL2' U2' R2\\nAlg R' U2 F U2' R\\nAlg R' U2 F2 U2' R\\nAlg R' U' BL' U R\\nAlg R' BR BL' BR' R\\nAlg BR U F' U' BR' U'\\nAlg BR U2 L' BL2 U2' BR'\\nAlg BR U2' BL U2 BL2' BR'\\nAlg BR U2' BL2' U2 BR' BL'\\nAlg BR R' F R BR' U'\\nAlg BR2 U' L2 U BR2' F2'\\nAlg BR2 U' L2 U BR2' F'\\nAlg BR U F2' U L' U2' BR'\\nAlg BR U F2' L' F U' BR'\\nAlg F\\nAlg F2\\nAlg F2'\\nAlg F'\\nAlg F L\\nAlg F L2\\nAlg F L2'\\nAlg F L'\\nAlg F2 U\\nAlg F2 U2\\nAlg F2 U2'\\nAlg F2 U'\\nAlg F L2' BL\\nAlg F L2' BL2\\nAlg F L2' BL2'\\nAlg F L' U\\nAlg F L' U2\\nAlg F L' U2'\\nAlg F L' U'\\nAlg F2 U L\\nAlg F2 U L2\\nAlg F2 U L2'\\nAlg F2 U L'\\nAlg F L' U BL2\\nAlg F L' U BL2'\\nAlg F L' U BL'\\nAlg F L' U' F\\nAlg F L' U' F2\\nAlg F L' U' F2'\\nAlg F2 L F2'\\nAlg F2 L2 F2'\\nAlg F2 L2' F2'\\nAlg F2 L' F2'\\nAlg F2' U2 F2\\nAlg F2' U2' F2\\nAlg F2' U' F2\\nAlg F2 L2 F2' L2'\\nAlg F2 L2 F2' L'\\nAlg F2 L2' BL F2'\\nAlg F2 L2' BL2 F2'\\nAlg F2 L2' BL2' F2'\\nAlg F2 L' F2' U\\nAlg F2 L' F2' U2\\nAlg F2 L' F2' U2'\\nAlg F2 L' F2' U'\\nAlg F2 L' BL F2'\\nAlg F2 L' BL2 F2'\\nAlg F2 L' BL2' F2'\\nAlg F2' U L F2\\nAlg F2' U L2 F2\\nAlg F2' U L' F2\\nAlg F2' U2 F2 U2'\\nAlg F2' U2 F2 U'\\nAlg F2' U2 F2 L2\\nAlg F2' U2 F2 L2'\\nAlg F2' U2 F2 L'\\nAlg F2' U2 L F2\\nAlg F' R' F R\\nAlg F L2 BL L2' F'\\nAlg F L2 BL2 L2' F'\\nAlg F2 L2 F2' L2' U2'\\nAlg F2 L2' BL' L F2'\\nAlg F2 L' F U2' F2\\nAlg F2 L' F' U' F'\\nAlg FL F FL'\\nAlg FL F2 FL'\\nAlg FL F2' FL'\\nAlg FL F' FL'\\nAlg FL F FL' L\\nAlg FL F FL' L2\\nAlg FL F FL' L2'\\nAlg FL F FL' L'\\nAlg FL F2 FL' L\\nAlg FL F2 FL' L2\\nAlg FL F2 FL' L2'\\nAlg FL F2 FL' L'\\nAlg FL F2' FL' U2\\nAlg FL F2' FL' U2'\\nAlg FL F2' FL' U'\\nAlg F2 U2 L' U2' F2'\\nAlg F2 U2' L' U2 F2'\\nAlg F2 U' L' U F2'\\nAlg FL F FL' L2 BL\\nAlg FL F FL' L2 BL2\\nAlg FL F FL' L2 BL2'\\nAlg FL F2 FL' L2' BL\\nAlg FL F2 FL' L2' BL2\\nAlg FL F2 FL' L2' BL2'\\nAlg FL F2 FL' L' U'\\nAlg FL F FL' F2' L' F2\\nAlg F2 U F U L U2' F2'\\nAlg F2' L F2\\nAlg F2' L2 F2\\nAlg F2' L2' F2\\nAlg F2' L' F2\\nAlg F' U F\\nAlg F' U2 F\\nAlg F' U2' F\\nAlg F' U' F\\nAlg R U R'\\nAlg R U2' R'\\nAlg R U' R'\\nAlg F R' F' R\\nAlg F2' L F2 L'\\nAlg F2' L2' BL F2\\nAlg F2' L2' BL2 F2\\nAlg F2' L2' BL2' F2\\nAlg F' U F U'\\nAlg F' U F L\\nAlg F' U F L2\\nAlg F' U F L2'\\nAlg F' U F L'\\nAlg R U2' R' BL2\\nAlg R U2' R' BL2'\\nAlg R U2' R' BL'\\nAlg F2' L' F U' F\\nAlg F2 L2 BL L2' F2'\\nAlg F2 L2 BL2 L2' F2'\\nAlg F2 L2 BL2' L2' F2'\\nAlg F2 L2 BL' L2' F2'\\nAlg F2' U BL U' F2\\nAlg F2' U BL' U' F2\\nAlg F2' L' BL L F2\\nAlg F2' L' BL2 L F2\\nAlg F2' L' BL2' L F2\\nAlg F2' L' BL' L F2\\nAlg F' U2 L U2' F\\nAlg F' U2 L2 U2' F\\nAlg F' U2 L2' U2' F\\nAlg F' U2' BL2 U2 F\\nAlg R U L U' R'\\nAlg R U L' U' R'\\nAlg R F' L F R'\\nAlg R2 U2' L2 U2 R2'\\nAlg R2 U' BL2 U R2'\\nAlg R2 U' BL2' U R2'\\nAlg R2 U' BL' U R2'\\nAlg R2 BR BL' BR' R2'\\nAlg F2 L2 BL2' L2' F2' U2\\nAlg F2' U BL U' F2 L\\nAlg F2' U BL' U' F2 L2\\nAlg F2' U BL' U' F2 L2'\\nAlg F2' L' BL L F2 U2\\nAlg F2' L' BL L F2 U2'\\nAlg F2' L' BL' L F2 U\\nAlg F2' L' BL' L F2 U2\\nAlg F' U2 L' U BL2' U2 F\\nAlg F' U2' BL L' BL2' U2 F\\nAlg U\\nAlg U2\\nAlg U2'\\nAlg U'\\nAlg U L\\nAlg U L2\\nAlg U L2'\\nAlg U L'\\nAlg U2 BL\\nAlg U2 BL2\\nAlg U2 BL2'\\nAlg U2 BL'\\nAlg U L' BL\\nAlg U L' BL2\\nAlg U L' BL2'\\nAlg U L' BL'\\nAlg U2 BL L\\nAlg U2 BL L2\\nAlg U2 BL L2'\\nAlg U2 BL L'\\nAlg U F' L F\\nAlg U L' BL' U\\nAlg U L' BL' U2\\nAlg U2 L U2'\\nAlg U2 L2 U2'\\nAlg U2 L2' U2'\\nAlg U2 L' U2'\\nAlg U2' BL2 U2\\nAlg U2' BL2' U2\\nAlg U2' BL' U2\\nAlg U2 L2 U2' L2'\\nAlg U2 L2 U2' L'\\nAlg U2 L' U2' BL\\nAlg U2 L' U2' BL2\\nAlg U2 L' U2' BL2'\\nAlg U2 L' U2' BL'\\nAlg U2' BL L U2\\nAlg U2' BL L2 U2\\nAlg U2' BL L2' U2\\nAlg U2' BL L' U2\\nAlg U2' BL2 U2 L2\\nAlg U2' BL2 U2 L2'\\nAlg U2' BL2 U2 L'\\nAlg U2' BL2 U2 BL2'\\nAlg U2' BL2 U2 BL'\\nAlg U2' BL2 L U2\\nAlg U' BR' U BR\\nAlg U2 L' U BL2' U2\\nAlg U2 L2' U2' L2 BL2\\nAlg U2 L2' U2' L2 BL2'\\nAlg U2 L' U' BL' U'\\nAlg U2' BL2 U' L U2'\\nAlg F U F'\\nAlg F U2 F'\\nAlg F U2' F'\\nAlg F U' F'\\nAlg F U F' L\\nAlg F U F' L2\\nAlg F U F' L2'\\nAlg F U F' L'\\nAlg F U2 F' L\\nAlg F U2 F' L2\\nAlg F U2 F' L2'\\nAlg F U2 F' L'\\nAlg F U2' BL2 F'\\nAlg F U2' BL2' F'\\nAlg F U2' BL' F'\\nAlg U2 BL2 L' BL2' U2'\\nAlg U2 BL' L' BL U2'\\nAlg U2 BL2' L' BL2 U2'\\nAlg F U2 F' L' BL'\\nAlg F U F' U2' L' U2\\nAlg U2 L U2 L2' U' BL' U2\\nAlg U2' L U2\\nAlg U2' L2 U2\\nAlg U2' L2' U2\\nAlg U2' L' U2\\nAlg U' BL U\\nAlg U' BL2 U\\nAlg U' BL2' U\\nAlg U' BL' U\\nAlg BR BL BR'\\nAlg BR BL2' BR'\\nAlg BR BL' BR'\\nAlg U BR' U' BR\\nAlg U2' L U2 L'\\nAlg U' BL U L\\nAlg U' BL U L2\\nAlg U' BL U L2'\\nAlg U' BL U L'\\nAlg U' BL U BL'\\nAlg U2' L' U BL' U\\nAlg U' BL2 L BL2' U\\nAlg U' BL2 L2 BL2' U\\nAlg U' BL2 L2' BL2' U\\nAlg U' BL2 L' BL2' U\\nAlg BR U' L U BR'\\nAlg BR U' L2 U BR'\\nAlg BR U' L2' U BR'\\nAlg BR U' L' U BR'\\nAlg BR BL L BL' BR'\\nAlg BR BL L' BL' BR'\\nAlg BR2 BL2' L BL2 BR2'\\nAlg BR2 BL2' L2 BL2 BR2'\\nAlg U2' L BL2' L' BL2 U2\\nAlg U2' L2 F' L2' F U2\\nAlg U2' L' DL L DL' U2\\nAlg U2' BL2' L BL2 L' U2\\nAlg U2' BL2' L2 BL2 L2' U2\\nAlg U' BL2 L BL2' U BL\\nAlg U' BL2 L2 BL2' U L\\nAlg U' BL2 L2 BL2' U BL2'\\nAlg U' BL2 L2 BL2' U BL'\\nAlg U' BL2 L2 BL2' L2' U\\nAlg BR BL L' BL' BR' BL2'\\nAlg BR BL L' BL' BR' BL'\\nAlg U' BL U BL U' L2' BL2' U\\nAlg U' BL2 U' L2 U L' BL2' U\\nAlg L\\nAlg L2\\nAlg L2'\\nAlg L'\\nAlg L' BL\\nAlg L' BL2\\nAlg L' BL2'\\nAlg L' BL'\\nAlg U BL U'\\nAlg U BL2 U'\\nAlg U BL2' U'\\nAlg U BL' U'\\nAlg U BL U' L\\nAlg U BL U' L2\\nAlg U BL U' L2'\\nAlg U BL U' L'\\nAlg U BL U' BL'\\nAlg L2' BL L2\\nAlg L2' BL2 L2\\nAlg L2' BL2' L2\\nAlg L2' BL' L2\\nAlg L2 DL L2' DL'\\nAlg L2' BL L2 BL2'\\nAlg L2' BL L2 BL'\\nAlg F' L2 BL L2' F\\nAlg F' L2 BL2 L2' F\\nAlg F' L2 BL2' L2' F\\nAlg F' L2 BL' L2' F\\nAlg L2 DL L' DL' L'\\nAlg L2' U BL2' U' L2\\nAlg L2' BL L2' BL2' L'\\nAlg L2' BL L' BL2' L2'\\nAlg L2' DL L' DL' L2\\nAlg L' U' L' U L2\\nAlg U L' DL L DL' U'\\nAlg F' L2 BL L2' BL2' F\\nAlg L2 DL' BL DL2 L2' DL'\\nAlg L2' U BL2' U' BL L2\\nAlg L2' BL' U BL' U' L2\\nAlg L2' BL' L2 U' L' U\\nAlg U' L U\\nAlg U' L2 U\\nAlg U' L2' U\\nAlg U' L' U\\nAlg U' L2' U BL\\nAlg U' L2' U BL2\\nAlg U' L2' U BL2'\\nAlg U' L2' U BL'\\nAlg U' L' U BL\\nAlg U' L' U BL2\\nAlg U' L' U BL2'\\nAlg U' L' U BL'\\nAlg U' L' U L BL L'\\nAlg U' L' U L2 BL L2'\\nAlg U' L' U BL U' L2 U\\nAlg L2 BL L2'\\nAlg L2 BL2 L2'\\nAlg L2 BL2' L2'\\nAlg L2 BL' L2'\\nAlg L2 BL L2' BL'\\nAlg L DL L' DL'\\nAlg DL L DL' L'\\nAlg L U' L2 U L2\\nAlg L DL' BL DL L'\\nAlg L DL' BL2 DL L'\\nAlg L DL' BL' DL L'\\nAlg DL L DL' L' BL'\\nAlg L2 BL L' DL L' DL'\\nAlg FL' L BL L' FL\\nAlg FL' L BL2 L' FL\\nAlg FL' L BL2' L' FL\\nAlg FL' L BL' L' FL\\nAlg FL' DL' BL DL FL\\nAlg FL' DL' BL2 DL FL\\nAlg FL' DL' BL2' DL FL\\nAlg FL' DL' BL' DL FL\\nAlg L2 BL2' U BL2 U' L2'\\nAlg FL' L BL L' FL BL2'\\nAlg FL' L BL' L' FL BL\\nAlg U' F U BL U' F' U\\nAlg U' F U BL2 U' F' U\\nAlg U' F U BL2' U' F' U\\nAlg F' FL2' DL' BL' DL FL2 F\\nAlg L2' BL2 L2' BL' L2 BL' L2\\nAlg DL L DL2' BL' DL2 L' DL'\\nAlg DL2 FL2' DL2 BL' DL2' FL2 DL2'\\nAlg FL' L U BL2' U' BL L' FL\\nAlg FL' L2 U' L' U BL2 L' FL\\nAlg L BL L'\\nAlg L BL2 L'\\nAlg L BL2' L'\\nAlg L BL' L'\\nAlg DL' BL DL\\nAlg DL' BL2 DL\\nAlg DL' BL2' DL\\nAlg DL' BL' DL\\nAlg L BL L' BL'\\nAlg L' DL L DL'\\nAlg L BL2 L' DL' BL' DL\\nAlg L U BL2' U' BL2 L'\\nAlg L BL2' U BL2 U' L'\\nAlg DL' B' BL2 B BL2' DL\\nAlg DL' BL2 B' BL2' B DL\\nAlg U BL2' DL2' BL2 U' BL2' DL2\\nAlg B' BL2 L2 BL2' B BL2 L2'\\nAlg L U BL2' U' BL2 L' BL2'\\nAlg L U BL2' U' BL2 L' BL'\\nAlg L BL B BL' L' BL B'\\nAlg L BL2' U BL2 U' L' BL2\\nAlg L BL' U BL2 U' BL L'\\nAlg L BL' U BL2' U' BL L'\\nAlg L BL' U BL' U' BL L'\\nAlg L2 BL2 L2' BL' L2 BL' L2'\\nAlg DL' BL B' BL2' B BL' DL\\nAlg L BL2' L U2 BR' U' BR U' L2'\\nAlg L BL2' L BL L' BL L BL2' L2'\\nAlg BL\\nAlg BL2\\nAlg BL2'\\nAlg BL'\\nAlg U BR BL2 BR' BL2' U'\\nAlg B BL DL BL' DL' B'\\nAlg L' BL2' DL' BL2 DL L\\nAlg BR B BL B' BL' BR'\\nAlg U BR BL2 BR' BL2' U' BL2\\nAlg U BL BR BL' BR' U'\\nAlg U BR BL BR' BL' U'\\nAlg U' L' BL2' L BL2 U\\nAlg B' BR' BL2' BR BL2 B\\nAlg L BL2 U BL2' U' L'\\nAlg BR B BL2 B' BL2' BR'\\nAlg U BL2 U' BL' U BL' U'\\nAlg B BL DL BL DL' BL2' B'\\nAlg B BL2 DL BL' DL' BL' B'\\nAlg B' BL' B BL2' B' BL2' B\\nAlg U BL U' BL2 U BL2 U' BL2\\nAlg U BR2 B' BR2' U' BR B BR'\\nAlg BL2 BR B DL' B DL B2' BR'\\nAlg B BL2' B2' BR B BR' B BL2 B'\\nAlg U' BL' L' BL L U BL\\nAlg B' BL2 B BL B' BL2 B\\nAlg B' BL2' B BL' B' BL2' B\\nAlg B' BL' BR' BL' BR BL2 B\\nAlg B' BL2' BR' BL BR BL B\\nAlg U' BL' L' BL' L BL2 U BL'\\nAlg L' BL' L' DL L DL' BL L BL\\nAlg L U BL U' BL' L'\\nAlg L BL U BL' U' L'\\nAlg BR' U' BL' U BL BR\\nAlg L U2 BR' U' BR U' L'\\nAlg U BL U2' L U L2' BL L BL2'\\nAlg U' L2 F' L' F2 U' F' U2 L'\\nAlg U BR' U' L U BR U' L'\\nAlg U BR B BR' U' BR B' BR'\\nAlg U' L U BR' U' L' U BR\\nAlg B DL' B' BR B DL B' BR'\\nAlg L' DL' B DL L DL' B' DL\\nAlg BR B BR' U BR B' BR' U'\\nAlg BR B DL' B' BR' B DL B'\\nAlg U BR2' U2 L2 U2' BR2 U2 L2' U2\\nAlg U2' L2 U2' BR2' U2 L2' U2' BR2 U'\\nAlg U BL' B' BL U' L U2 BL' B BL U2' L'\\nAlg U BR' U' L F' L2' U BR U' L2 F L'\\nAlg U BR U' L U BR' U' L'\\nAlg U' BL2 B BL2' U BL2 B' BL2'\\nAlg L U BR U' L' U BR' U'\\nAlg L BL2' B' BL2 L' BL2' B BL2\\nAlg U BR' U2 L2 U2' BR U2 L2' U2\\nAlg L' BL2 L2' F' L2 BL2' L2' F L2'\\nAlg U BL2' U R U' BL2 U' L U2 R' U2' L'\\nAlg U BR U' L2 F L' U BR' U' L F' L2'\\nAlg U L' BL2 L' FL' L BL2' L U' L2' FL L2\\nAlg U BR2' U R' U2' L U2 R U' BR2 U' L'`)}var nF,oF,Ps=U(()=>{Ce();Mn();Nn();nF=null;oF=null});var uc={};me(uc,{sgsDataPyraminx:()=>fc,sgsDataPyraminxFixedOrientation:()=>Ms});async function fc(){return sF??(sF=fF())}async function Ms(){return{ordering:(await fc()).ordering.slice(2)}}async function fF(){return Ot(await Pe.pyraminx.kpuzzle(),`SubgroupSizes 12 9 12 3 10 3 8 6 2 3 3 3 3\\n\\nAlg B\\nAlg B'\\nAlg y\\nAlg B y\\nAlg B' y\\nAlg y'\\nAlg B y'\\nAlg B' y'\\nAlg BR'\\nAlg B BR'\\nAlg B' BR'\\n\\nAlg L\\nAlg L'\\nAlg L F\\nAlg L' F\\nAlg F\\nAlg L F'\\nAlg L' F'\\nAlg F'\\n\\nAlg L B' U L' B\\nAlg L U L'\\nAlg L U' L'\\nAlg L U L' U'\\nAlg B' U B\\nAlg B' U' B\\nAlg B' U' B U\\nAlg L U' L' R\\nAlg L U' L' R'\\nAlg L' R' L\\nAlg L' R' L R\\n\\nAlg R\\nAlg R'\\n\\nAlg R' U R\\nAlg R' U' R\\nAlg R' U R U'\\nAlg B U B'\\nAlg B U' B'\\nAlg R B' R' B\\nAlg L R L' R U' R\\nAlg R L R' L'\\nAlg L' R' U R L\\n\\nAlg U\\nAlg U'\\n\\nAlg R U R' U'\\nAlg U R U' R'\\nAlg L' U' L U\\nAlg U' L' U L\\nAlg U L R' L' R U'\\nAlg U' R' L R L' U\\nAlg L' U' L U' R U' R'\\n\\nAlg R U' R' U\\nAlg L' U L U'\\nAlg U' R U R'\\nAlg U L' U' L\\nAlg L R' L' R L' U L U'\\n\\nAlg L' U L U' L R' L' R\\n\\nAlg b\\nAlg b'\\n\\nAlg l\\nAlg l'\\n\\nAlg r\\nAlg r'\\n\\nAlg u\\nAlg u'`)}var sF,Ns=U(()=>{Jt();Nn();sF=null});var Ac={};me(Ac,{getRandomRediCubeScramble:()=>OF});function Bl(e){if(e<2)return e;let t=1;for(let r=2;r<=e;r++)t*=r;return t}function Gs(e,t){if(t<0||t>e)return 0;if(t===0||t===e)return 1;let r=1;for(let n=0;n<t;n++)r=r*(e-n)/(n+1)|0;return r}function cF(e){e=e.slice();let t=e.length,r=Bl(t-1),n=0;for(;t>1;){t--;let o=e[0];n+=o*r;for(let l=0;l<t;l++){let i=e[l+1];e[l]=i-(i>o)}r/=t}return n}function mF(e,t){let r=[],n=Bl(t-1);for(let o=0;o<t;o++)r[o]=e/n|0,e%=n,n/=t-1-o;for(let o=t-2;o>=0;o--)for(let l=o+1;l<t;l++)r[l]+=+(r[l]>=r[o]);return r}function cc(e){let t=e.length,r=0;for(let n=0;n<t-1;n++)for(let o=n;o<t;o++)e[n]>e[o]&&(r^=1);return r}function LF(e,t){let r=[],n=Bl(t-1)/2,o=0;for(let l=0;l<t-1;l++)r[l]=e/n|0,e%=n,n/=t-1-l;r[t-1]=0;for(let l=t-2;l>=0;l--)for(let i=l+1;i<t;i++)r[i]>=r[l]?r[i]++:o^=1;return o===1&&([r[t-2],r[t-1]]=[r[t-1],r[t-2]]),r}function mc(e){return cF(e)>>1}function Lc(e){let t=e.length,r=0;for(let i=0;i<t;i++)r+=+(e[i]===1);let n=t-r;if(n===0||r===0||t===1)return 0;let o=Gs(t-1,r),l=0;for(let i=0;n>0&&r>0&&t>1;i++)t--,e[i]===0?o=o*--n/t:(l+=o,o=o*r--/t);return l}function BF(e,t,r){let n=r-t,o=Gs(r-1,t),l=[],i=r-1;for(let a=0;a<i;a++)r--,e<o?(l.push(0),o=o*--n/r):(l.push(1),e-=o,o=o*t--/r);return l.push(t),l}function m0(e,t){let r=[];for(let n=0;n<t.length;n++)r[n]=e[t[n]];return r}function Pr(e,t){let r=[];for(let n=0;n<t;n++)r[n]=n;for(let n=0;n<e.length;n++)r[e[n]]=e[(n+1)%e.length];return r}function Mr(e,t){let r=Array(t).fill(0);for(let n in e)r[n]=e[n];return r}function RF(e,t){let r=Array(8).fill(0);for(let n=0;n<8;n++)r[n]=(e[1][n]+t[1][n])%3;return[m0(e[0],t[0]),r]}function SF(e){let t=[\\\"0\\\",\\\"\\\",\\\"'\\\"];return e.map(([n,o])=>xF[n]+t[o]).join(\\\" \\\")}function wF(e){let t=LF(Math.floor(e(Bl(12))/2),12),r=Array(8);for(let n=0;n<8;n++)r[n]=e(3);return[t,r]}function vF(e){return EF(wF(e))}function EF(e){let t=kF(e),r=[Rc(),dc()],n=[zF(),CF()],o=[hc(),PF()],l=[MF(),_F()],i=TF(t,r,n),a,s=new Set,f=+new Date;for(let g=0;g<25;g++){let{value:p,done:u}=i.next(),c=e;for(let[A,E]of p)for(let v=0;v<E;v++)c=RF(c,Ll[A]);if(s.has(c.toString()))continue;s.add(c.toString());let m=mc(c[0].slice(0,8)),L=0;for(let A=0;A<4;A++)L+=c[1][A]*3**A;let R=[m,L],h=a?a.length-p.length-1:999999,y=NF(R,o,l,h);if(y!==void 0&&((a===void 0||a.length>p.length+y.length)&&(a=p.concat(y)),new Date-f>300))break}return a}function kF(e){let t=0;for(let l=0;l<4;l++)t+=e[0].indexOf(l+8)*12**l;let r=0;for(let l=0;l<4;l++)r+=e[1][l+4]*3**l;let n=e[0].map(l=>Math.max(-1,l-8)),o=Lc(n.map(l=>+(l>=0)))*2+cc(n.filter(l=>l>=0));return[t,r+81*o]}function Bc(){if(pe.phase1cm)return pe.phase1cm;let e=[];for(let t=0;t<81;t++){e[t]=Array(8);let r=[t%3,Math.floor(t/3)%3,Math.floor(t/9)%3,Math.floor(t/27)];e[t][0]=e[t][1]=e[t][2]=e[t][3]=t;for(let n=0;n<4;n++)r[n]=(r[n]+2)%3,e[t][4+n]=r[0]+r[1]*3+r[2]*9+r[3]*27,r[n]=(r[n]+1)%3}return pe.phase1cm=e}function _F(){if(pe.phase1cp)return pe.phase1cp;let e=Array(81);for(let t=0;t<81;t++){let r=[t%3,Math.floor(t/3)%3,Math.floor(t/9)%3,Math.floor(t/27)];e[t]=(r[0]!==0)+(r[1]!==0)+(r[2]!==0)+(r[3]!==0)}return pe.phase1cp=e}function Rc(){if(pe.phase1em)return pe.phase1em;let e=[];for(let r=0;r<12;r++){e[r]=[];for(let n=0;n<8;n++)e[r][n]=Ll[n][0].indexOf(r)}let t=Array(12**4);for(let r=0;r<12**4;r++){t[r]=Array(8);for(let n=0;n<8;n++){let o=0;for(let l=0;l<4;l++)o+=e[Math.floor(r/12**l)%12][n]*12**l;t[r][n]=o}}return pe.phase1em=t}function zF(){return pe.phase1ep?pe.phase1ep:pe.phase1ep=Os(Rc(),[8+12*(9+12*(10+12*11))])}function dc(){if(pe.phase1sm)return pe.phase1sm;let e=Gs(12,4),t=[];for(let o=0;o<e;o++){t[o]=[];let l=BF(o,4,12),i=[];for(let a=0,s=0;a<12;a++)l[a]===0?i[a]=-1:i[a]=s++;for(let a=0;a<8;a++){let s=m0(i,Ll[a][0]),f=m0(l,Ll[a][0]),g=cc(s.filter(p=>p>=0));t[o][a]=Lc(f)*2+g}}let r=Bc(),n=[];for(let o=0;o<e;o++)for(let l=0;l<81;l++){let i=n[l+81*(2*o)]=[],a=n[l+81*(2*o+1)]=[];for(let s=0;s<8;s++)i[s]=r[l][s]+81*t[o][s],a[s]=r[l][s]+81*(t[o][s]^1)}return pe.phase1sm=n}function CF(){return pe.phase1sp?pe.phase1sp:pe.phase1sp=Os(dc(),[0])}function PF(){if(pe.phase2cm)return pe.phase2cm;let e=Bc(),t=Array(81);for(let r=0;r<81;r++)t[r]=e[r].slice(4,8);return pe.phase2cm=t}function hc(){if(pe.phase2em)return pe.phase2em;let e=8,t=Bl(e)/2,r=Array(t),n=[0,1,2,3,4,5,6,7];for(let o=0;o<t;o++){r[o]=Array(4);for(let i=0;i<4;i++){let a=m0(n,Ll[i][0].slice(0,8));r[o][i]=mc(a)}if(o===t-1)break;let l=0;do for(let i=e-2;i>=0;i--){if(n[i]>n[i+1])continue;let a=i+1;for(let s=a;s<e;s++)n[s]>n[i]&&(a=s);[n[i],n[a]]=[n[a],n[i]],l^=1;for(let s=0;i+1+s<e-1-s;s++,l^=1)[n[i+1+s],n[e-1-s]]=[n[e-1-s],n[i+1+s]];break}while(l!==0)}return pe.phase2em=r}function MF(){return pe.phase2ep?pe.phase2ep:pe.phase2ep=Os(hc(),[0])}function Os(e,t){let r=e.length,n=e[0].length,o=Array(r).fill(-1),l=t.slice(),i=[],a=0;for(;l.length>0;){i.length=0;for(let s of l)if(o[s]===-1){o[s]=a;for(let f=0;f<n;f++){let g=e[s][f];for(;g!=s;)i.push(g),g=e[g][f]}}[l,i]=[i,l],a+=1}return o}function NF(e,t,r,n){n=n||999999;let o=e.length,l=0;for(let i=0;i<o;i++)l=Math.max(l,r[i][e[i]]);for(;l<=n;){let i=Fc(e,t,r,l,-1);if(i!==void 0)return i;l++}}function Fc(e,t,r,n,o){let l=e.length,i=t[0][0].length,a=0;for(let s=0;s<l;s++)a=Math.max(a,r[s][e[s]]);if(!(a>n)){if(n===0)return[];if(!(a===0&&n===1))for(let s=0;s<i;s++){if(s===o||s<o&&L0[s]==L0[o])continue;let f=e.slice();for(let p=0;p<l;p++)f[p]=t[p][e[p]][s];let g=1;for(;e.some((p,u)=>e[u]!=f[u]);){let p=Fc(f,t,r,n-1,s);if(p!==void 0)return[[s,g]].concat(p);for(let u=0;u<l;u++)f[u]=t[u][f[u]][s];g++}}}}function*TF(e,t,r){let n=e.length,o=0;for(let l=0;l<n;l++)o=Math.max(o,r[l][e[l]]);for(;;)yield*Dc(e,t,r,o,-1),o++}function*Dc(e,t,r,n,o){let l=e.length,i=t[0][0].length,a=0;for(let s=0;s<l;s++)a=Math.max(a,r[s][e[s]]);if(!(a>n)){if(n===0){yield[];return}if(!(a===0&&n===1))for(let s=0;s<i;s++){if(s===o||s<o&&L0[s]==L0[o])continue;let f=e.slice();for(let p=0;p<l;p++)f[p]=t[p][e[p]][s];let g=1;for(;e.some((p,u)=>e[u]!=f[u]);){let p=Dc(f,t,r,n-1,s);for(;;){let{value:u,done:c}=p.next();if(c)break;yield[[s,g]].concat(u)}for(let u=0;u<l;u++)f[u]=t[u][f[u]][s];g++}}}}async function OF(){return new k(SF(vF(await GF)))}var dF,hF,FF,DF,AF,yF,UF,bF,eU,Ll,xF,L0,pe,GF,yc=U(()=>{\\\"use strict\\\";Le();Rt();dF=[Pr([0,1,4],12),Mr({0:2},8)],hF=[Pr([1,2,5],12),Mr({1:2},8)],FF=[Pr([2,3,6],12),Mr({2:2},8)],DF=[Pr([3,0,7],12),Mr({3:2},8)],AF=[Pr([9,8,4],12),Mr({4:2},8)],yF=[Pr([10,9,5],12),Mr({5:2},8)],UF=[Pr([11,10,6],12),Mr({6:2},8)],bF=[Pr([8,11,7],12),Mr({7:2},8)],eU=[mF(0,12),Array(8).fill(0)],Ll=[dF,hF,FF,DF,AF,yF,UF,bF],xF=[\\\"UL\\\",\\\"U\\\",\\\"UR\\\",\\\"F\\\",\\\"L\\\",\\\"B\\\",\\\"R\\\",\\\"D\\\"],L0=[0,1,0,1,1,0,1,0];pe={};GF=Se()});var xc={};me(xc,{sgsDataSkewb:()=>bc,sgsDataSkewbFixedCorner:()=>Is,skewbKPuzzleWithoutMOCached:()=>B0});async function IF(){let e=Pn(\\\"skewb\\\",{allMoves:!0,addRotations:!0});return new be(e.getKPuzzleDefinition(!0),{experimentalPGNotation:new Qr(e,e.getOrbitsDef(!0))})}async function B0(){return WF??(WF=IF())}async function bc(){return KF??(KF=QF())}async function Is(){return{ordering:(await bc()).ordering.slice(1)}}async function QF(){return Ot(await B0(),`SubgroupSizes 24 6 5 12 9 3 4 9 3 3\\n\\nAlg y\\nAlg y2\\nAlg y'\\nAlg F\\nAlg F'\\nAlg y U\\nAlg y U'\\nAlg y L\\nAlg y L'\\nAlg y F\\nAlg y F'\\nAlg y2 U\\nAlg y2 U'\\nAlg y2 B\\nAlg y2 B'\\nAlg y' U\\nAlg y' F'\\nAlg y U L'\\nAlg y U B\\nAlg y2 U B\\nAlg y2 U B'\\nAlg y2 U' B\\nAlg y2 U' B'\\n\\nAlg U\\nAlg U'\\nAlg U L\\nAlg U L'\\nAlg U' R'\\n\\nAlg R\\nAlg R'\\nAlg R B\\nAlg R' L'\\n\\nAlg U B' U\\nAlg U' L U\\nAlg U' L' U\\nAlg U' B U'\\nAlg R L R'\\nAlg R B' R\\nAlg U B L U'\\nAlg U B' U B'\\nAlg U B' L' U\\nAlg U' L B U'\\nAlg R' B L' R'\\n\\nAlg L\\nAlg L'\\nAlg L B\\nAlg L B'\\nAlg L B L\\nAlg L B L'\\nAlg L B' L\\nAlg L B' L'\\n\\nAlg B\\nAlg B'\\n\\nAlg L' B L\\nAlg L' B' L\\nAlg R' L' B L R\\n\\nAlg B L' B L B'\\nAlg B L' B' L B'\\nAlg U L U B U' L' U'\\nAlg R L R' B' R L' R'\\nAlg U B' R L R' B' U B\\nAlg U' B U L U' B' U L'\\nAlg L U' B U L' U' B' U\\nAlg R B' U R B L U' B\\n\\nAlg U L U' B' U L' U' B\\nAlg U' B L U L B' U' L'\\n\\nAlg U R' U' L B R' B' R\\nAlg R' U' R U B' U' B L`)}var WF,KF,Ws=U(()=>{Ce();Mn();Nn();WF=null;KF=null});var Nc={};me(Nc,{getRandomSquare1ScrambleString:()=>R3});function YF(e,t){e.ul=t.ul,e.ur=t.ur,e.dl=t.dl,e.dr=t.dr,e.ml=t.ml}function vc(e,t){var r;t<<=2,t>24?(t=48-t,r=e.ul,e.ul=(~~e.ul>>t|e.ur<<24-t)&16777215,e.ur=(~~e.ur>>t|r<<24-t)&16777215):t>0?(r=e.ul,e.ul=(e.ul<<t|~~e.ur>>24-t)&16777215,e.ur=(e.ur<<t|~~r>>24-t)&16777215):t==0?(r=e.ur,e.ur=e.dl,e.dl=r,e.ml=1-e.ml):t>=-24?(t=-t,r=e.dl,e.dl=(e.dl<<t|~~e.dr>>24-t)&16777215,e.dr=(e.dr<<t|~~r>>24-t)&16777215):t<-24&&(t=48+t,r=e.dl,e.dl=(~~e.dl>>t|e.dr<<24-t)&16777215,e.dr=(~~e.dr>>t|r<<24-t)&16777215)}function JF(e){var t,r,n,o,l;for(n=0,e.arr[0]=Qt(e,0),o=1;o<24;++o)Qt(e,o)!=e.arr[n]&&(e.arr[++n]=Qt(e,o));for(l=0,t=0;t<16;++t)for(r=t+1;r<16;++r)e.arr[t]>e.arr[r]&&(l^=1);return l}function ZF(e){var t,r,n,o;return o=e.ur&1118481,o|=~~o>>3,o|=~~o>>6,o=o&15|~~o>>12&48,n=e.ul&1118481,n|=~~n>>3,n|=~~n>>6,n=n&15|~~n>>12&48,r=e.dr&1118481,r|=~~r>>3,r|=~~r>>6,r=r&15|~~r>>12&48,t=e.dl&1118481,t|=~~t>>3,t|=~~t>>6,t=t&15|~~t>>12&48,Rl(JF(e)<<24|n<<18|o<<12|t<<6|r)}function XF(e,t){var r,n;for(r=0;r<8;++r)e.prm[r]=~~(~~Qt(e,r*3+1)>>1<<24)>>24;for(t.cornperm=Dl(e.prm),t.topEdgeFirst=Qt(e,0)==Qt(e,1),r=t.topEdgeFirst?2:0,n=0;n<4;r+=3,++n)e.prm[n]=~~(~~Qt(e,r)>>1<<24)>>24;for(t.botEdgeFirst=Qt(e,12)==Qt(e,13),r=t.botEdgeFirst?14:12;n<8;r+=3,++n)e.prm[n]=~~(~~Qt(e,r)>>1<<24)>>24;t.edgeperm=Dl(e.prm),t.ml=e.ml}function Qt(e,t){var r;return t<6?r=~~e.ul>>(5-t<<2):t<12?r=~~e.ur>>(11-t<<2):t<18?r=~~e.dl>>(17-t<<2):r=~~e.dr>>(23-t<<2),~~((r&15)<<24)>>24}function Qs(e,t,r){t<6?(e.ul&=~(15<<(5-t<<2)),e.ul|=r<<(5-t<<2)):t<12?(e.ur&=~(15<<(11-t<<2)),e.ur|=r<<(11-t<<2)):t<18?(e.dl&=~(15<<(17-t<<2)),e.dl|=r<<(17-t<<2)):(e.dr&=~(15<<(23-t<<2)),e.dr|=r<<(23-t<<2))}function Ys(){this.arr=[],this.prm=[]}async function $F(){let e=await Se();var t,r,n,o,l,i,a,s,f;for(t=new Ys,n=Fo[e(3678)],l=19088743<<1|286331153,o=19088743<<1,a=i=8,r=0;r<24;r++)(n>>r&1)==0?(s=e(i)<<2,Qs(t,23-r,o>>s&15),f=(1<<s)-1,o=(o&f)+(o>>4&~f),--i):(s=e(a)<<2,Qs(t,23-r,l>>s&15),Qs(t,22-r,l>>s&15),f=(1<<s)-1,l=(l&f)+(l>>4&~f),--a,++r);return t.ml=e(2),t}function e3(){}function t3(e){var t,r,n,o,l,i;for(YF(e.Search_d,e.Search_c),n=0;n<e.Search_length1;++n)vc(e.Search_d,e.Search_move[n]);for(XF(e.Search_d,e.Search_sq),r=e.Search_sq.edgeperm,t=e.Search_sq.cornperm,l=e.Search_sq.ml,i=Math.max(ye[e.Search_sq.edgeperm<<1|l],ye[e.Search_sq.cornperm<<1|l]),n=i;n<e.Search_maxlen2;++n)if(d0(e,r,t,e.Search_sq.topEdgeFirst,e.Search_sq.botEdgeFirst,l,n,e.Search_length1,0)){for(o=0;o<n;++o)vc(e.Search_d,e.Search_move[e.Search_length1+o]);return e.Search_sol_string=r3(e,n+e.Search_length1),!0}return!1}function r3(e,t){for(var r=\\\"\\\",n=0,o=0,l=t-1;l>=0;l--){var i=e.Search_move[l];i>0?(i=12-i,n=i>6?i-12:i):i<0?(i=12+i,o=i>6?i-12:i):(n==0&&o==0?r+=\\\" / \\\":r+=\\\"(\\\"+n+\\\", \\\"+o+\\\") / \\\",n=o=0)}return(n!==0||o!==0)&&(r+=\\\"(\\\"+n+\\\", \\\"+o+\\\")\\\"),r}function R0(e,t,r,n,o,l){var i,a,s;if(r==0&&n<4)return n==0&&t3(e);if(l!=0&&(s=h0[t],a=Ge[s],a<n&&(e.Search_move[o]=0,R0(e,s,a,n-1,o+1,0))))return!0;if(s=t,l<=0){for(i=0;i+=Fl[s],s=~~i>>4,i&=15,!(i>=12||(a=Ge[s],a>n));)if(a<n&&(e.Search_move[o]=i,R0(e,s,a,n-1,o+1,1)))return!0}if(s=t,l<=1){for(i=0;i+=hl[s],s=~~i>>4,i&=15,!(i>=6||(a=Ge[s],a>n));)if(a<n&&(e.Search_move[o]=-i,R0(e,s,a,n-1,o+1,2)))return!0}return!1}function d0(e,t,r,n,o,l,i,a,s){var f,g,p,u,c,m,L;if(i==0&&!n&&o||s!=0&&n==o&&(p=Al[t],g=Al[r],ye[p<<1|1-l]<i&&ye[g<<1|1-l]<i&&(e.Search_move[a]=0,d0(e,p,g,n,o,1-l,i-1,a+1,0))))return!0;if(s<=0)for(L=!n,p=L?Ln[t]:t,g=L?r:Ln[r],u=L?1:2,c=ye[p<<1|l],m=ye[g<<1|l];u<12&&c<=i&&c<=i;){if(c<i&&m<i&&(e.Search_move[a]=u,d0(e,p,g,L,o,l,i-1,a+1,1)))return!0;L=!L,L?(p=Ln[p],c=ye[p<<1|l],u+=1):(g=Ln[g],m=ye[g<<1|l],u+=2)}if(s<=1)for(f=!o,p=f?mn[t]:t,g=f?r:mn[r],u=f?1:2,c=ye[p<<1|l],m=ye[g<<1|l];u<(i>3?6:12)&&c<=i&&c<=i;){if(c<i&&m<i&&(e.Search_move[a]=-u,d0(e,p,g,n,f,l,i-1,a+1,2)))return!0;f=!f,f?(p=mn[p],c=ye[p<<1|l],u+=1):(g=mn[g],m=ye[g<<1|l],u+=2)}return!1}function n3(e,t){var r;for(e.Search_c=t,r=ZF(t),e.Search_length1=Ge[r];e.Search_length1<100&&(e.Search_maxlen2=Math.min(31-e.Search_length1,17),!R0(e,r,Ge[r],e.Search_length1,0,-1));++e.Search_length1);return e.Search_sol_string}function _c(){this.Search_move=[],this.Search_d=new Ys,this.Search_sq=new Cc}function o3(){}function l3(){Ec||(Ec=!0,dl=[0,3,6,12,15,24,27,30,48,51,54,60,63],Fo=[],Ge=[],Fl=[],hl=[],h0=[],s3())}function i3(e){var t,r;t=0,r=0;do(e.bottom&2048)==0?(t+=1,e.bottom=e.bottom<<1):(t+=2,e.bottom=e.bottom<<2^12291),r=1-r;while((Bn(e.bottom&63)&1)!=0);return(Bn(e.bottom)&2)==0&&(e.Shape_parity^=r),t}function js(e){var t;return t=Mc(Fo,e.top<<12|e.bottom)<<1|e.Shape_parity,t}function qs(e,t){e.Shape_parity=t&1,e.top=Fo[~~t>>1],e.bottom=e.top&4095,e.top>>=12}function a3(e){var t,r;t=0,r=0;do(e.top&2048)==0?(t+=1,e.top=e.top<<1):(t+=2,e.top=e.top<<2^12291),r=1-r;while((Bn(e.top&63)&1)!=0);return(Bn(e.top)&2)==0&&(e.Shape_parity^=r),t}function zc(){}function Rl(e){var t;return t=Mc(Fo,e&16777215)<<1|~~e>>24,t}function s3(){var e,t,r,n,o,l,i,a,s,f,g,p,u,c,m,L;for(e=0,i=0;i<28561;++i)l=dl[i%13],r=dl[~~(i/13)%13],p=dl[~~(~~(i/13)/13)%13],g=dl[~~(~~(~~(i/13)/13)/13)],u=g<<18|p<<12|r<<6|l,Bn(u)==16&&(Fo[e++]=u);for(f=new zc,i=0;i<7356;++i)qs(f,i),Fl[i]=a3(f),Fl[i]|=js(f)<<4,qs(f,i),hl[i]=i3(f),hl[i]|=js(f)<<4,qs(f,i),L=f.top&63,c=Bn(L),m=Bn(f.bottom&4032),f.Shape_parity^=1&~~(c&m)>>1,f.top=f.top&4032|~~f.bottom>>6&63,f.bottom=f.bottom&63|L<<6,h0[i]=js(f);for(i=0;i<7536;++i)Ge[i]=-1;for(Ge[Rl(14378715)]=0,Ge[Rl(31157686)]=0,Ge[Rl(23967451)]=0,Ge[Rl(7191990)]=0,n=4,o=0,t=-1;n!=o;)for(o=n,++t,i=0;i<7536;++i)if(Ge[i]==t){s=0,a=i;do a=Fl[a],s+=a&15,a>>=4,Ge[a]==-1&&(++n,Ge[a]=t+1);while(s!=12);s=0,a=i;do a=hl[a],s+=a&15,a>>=4,Ge[a]==-1&&(++n,Ge[a]=t+1);while(s!=12);a=h0[i],Ge[a]==-1&&(++n,Ge[a]=t+1)}}function f3(){}function u3(){if(!kc){kc=!0,ye=[],Al=[],Ln=[],mn=[],Pc=[1,1,2,6,24,120,720,5040],cn=[];for(var e=0;e<12;++e)cn[e]=[];g3()}}function Cc(){}function Dl(e){var t,r,n,o;for(r=0,o=1985229328,t=0;t<7;++t)n=e[t]<<2,r=(8-t)*r+(~~o>>n&7),o-=286331152<<n;return r&65535}function g3(){var e,t,r,n,o,l,i,a,s,f,g,p,u;for(o=0;o<12;++o)for(cn[o][0]=1,cn[o][o]=1,s=1;s<o;++s)cn[o][s]=cn[o-1][s-1]+cn[o-1][s];for(p=[],o=0;o<40320;++o)Vs(p,o),u=p[2],p[2]=p[4],p[4]=u,u=p[3],p[3]=p[5],p[5]=u,Al[o]=Dl(p),Vs(p,o),u=p[0],p[0]=p[1],p[1]=p[2],p[2]=p[3],p[3]=u,Ln[o]=Dl(p),Vs(p,o),u=p[4],p[4]=p[5],p[5]=p[6],p[6]=p[7],p[7]=u,mn[o]=Dl(p);for(o=0;o<80640;++o)ye[o]=-1;for(ye[0]=0,t=0,r=1;r<80640;){a=t>=11,n=a?-1:t,e=a?t:-1,++t;e:for(o=0;o<80640;++o)if(ye[o]==n){if(l=~~o>>1,g=o&1,i=Al[l]<<1|1-g,ye[i]==e&&(++r,ye[a?o:i]=~~(t<<24)>>24,a))continue e;for(i=l,f=0;f<4;++f)if(i=Ln[i],ye[i<<1|g]==e&&(++r,ye[a?o:i<<1|g]=~~(t<<24)>>24,a))continue e;for(f=0;f<4;++f)if(i=mn[i],ye[i<<1|g]==e&&(++r,ye[a?o:i<<1|g]=~~(t<<24)>>24,a))continue e}}}function Vs(e,t){var r,n,o,l,i;for(i=1985229328,r=0;r<7;++r)o=Pc[7-r],l=~~(t/o),t-=l*o,l<<=2,e[r]=~~((~~i>>l&7)<<24)>>24,n=(1<<l)-1,i=(i&n)+(~~i>>4&~n);e[7]=~~(i<<24)>>24}function p3(){}function Bn(e){return e-=~~e>>1&1431655765,e=(~~e>>2&858993459)+(e&858993459),e=(~~e>>4)+e&252645135,e+=~~e>>8,e+=~~e>>16,e&63}function Mc(e,t){var r,n,o,l;for(n=0,r=e.length-1;n<=r;)if(o=n+(~~(r-n)>>1),l=e[o],l<t)n=o+1;else if(l>t)r=o-1;else return o;return-n-1}async function R3(){return(await B3()).scramble_string}var ke,Ec,hl,Fo,Ge,Fl,h0,dl,kc,mn,cn,ye,Ln,Al,Pc,Hs,c3,m3,L3,B3,Tc=U(()=>{Rt();ke=Ys.prototype=e3.prototype;ke.dl=10062778;ke.dr=14536702;ke.ml=0;ke.ul=70195;ke.ur=4544119;ke=_c.prototype=o3.prototype;ke.Search_c=null;ke.Search_length1=0;ke.Search_maxlen2=0;ke.Search_sol_string=null;Ec=!1;ke=zc.prototype=f3.prototype;ke.bottom=0;ke.Shape_parity=0;ke.top=0;kc=!1;ke=Cc.prototype=p3.prototype;ke.botEdgeFirst=!1;ke.cornperm=0;ke.edgeperm=0;ke.ml=0;ke.topEdgeFirst=!1;Hs=!1,c3=function(e,t,r){Hs||(l3(),u3()),r&&r(\\\"Done initializing Square-1.\\\"),Hs=!0,e?.()},m3=async function(){return Hs||c3(),$F()},L3=function(e){var t=new _c;return n3(t,e)},B3=async function(){var e=await m3(),t=L3(e);return{state:e,scramble_string:t}}});var r2=Symbol(\\\"Comlink.proxy\\\"),Vc=Symbol(\\\"Comlink.endpoint\\\"),Hc=Symbol(\\\"Comlink.releaseProxy\\\"),A0=Symbol(\\\"Comlink.thrown\\\"),n2=e=>typeof e==\\\"object\\\"&&e!==null||typeof e==\\\"function\\\",Yc={canHandle:e=>n2(e)&&e[r2],serialize(e){let{port1:t,port2:r}=new MessageChannel;return Do(e,t),[r,[r]]},deserialize(e){return e.start(),Xc(e)}},Jc={canHandle:e=>n2(e)&&A0 in e,serialize({value:e}){let t;return e instanceof Error?t={isError:!0,value:{message:e.message,name:e.name,stack:e.stack}}:t={isError:!1,value:e},[t,[]]},deserialize(e){throw e.isError?Object.assign(new Error(e.value.message),e.value):e.value}},o2=new Map([[\\\"proxy\\\",Yc],[\\\"throw\\\",Jc]]);function Do(e,t=self){t.addEventListener(\\\"message\\\",function r(n){if(!n||!n.data)return;let{id:o,type:l,path:i}=Object.assign({path:[]},n.data),a=(n.data.argumentList||[]).map(Nr),s;try{let f=i.slice(0,-1).reduce((p,u)=>p[u],e),g=i.reduce((p,u)=>p[u],e);switch(l){case\\\"GET\\\":s=g;break;case\\\"SET\\\":f[i.slice(-1)[0]]=Nr(n.data.value),s=!0;break;case\\\"APPLY\\\":s=g.apply(f,a);break;case\\\"CONSTRUCT\\\":{let p=new g(...a);s=tm(p)}break;case\\\"ENDPOINT\\\":{let{port1:p,port2:u}=new MessageChannel;Do(e,u),s=em(p,[p])}break;case\\\"RELEASE\\\":s=void 0;break;default:return}}catch(f){s={value:f,[A0]:0}}Promise.resolve(s).catch(f=>({value:f,[A0]:0})).then(f=>{let[g,p]=U0(f);t.postMessage(Object.assign(Object.assign({},g),{id:o}),p),l===\\\"RELEASE\\\"&&(t.removeEventListener(\\\"message\\\",r),l2(t))})}),t.start&&t.start()}function Zc(e){return e.constructor.name===\\\"MessagePort\\\"}function l2(e){Zc(e)&&e.close()}function Xc(e,t){return y0(e,[],t)}function yl(e){if(e)throw new Error(\\\"Proxy has been released and is not useable\\\")}function y0(e,t=[],r=function(){}){let n=!1,o=new Proxy(r,{get(l,i){if(yl(n),i===Hc)return()=>Rn(e,{type:\\\"RELEASE\\\",path:t.map(a=>a.toString())}).then(()=>{l2(e),n=!0});if(i===\\\"then\\\"){if(t.length===0)return{then:()=>o};let a=Rn(e,{type:\\\"GET\\\",path:t.map(s=>s.toString())}).then(Nr);return a.then.bind(a)}return y0(e,[...t,i])},set(l,i,a){yl(n);let[s,f]=U0(a);return Rn(e,{type:\\\"SET\\\",path:[...t,i].map(g=>g.toString()),value:s},f).then(Nr)},apply(l,i,a){yl(n);let s=t[t.length-1];if(s===Vc)return Rn(e,{type:\\\"ENDPOINT\\\"}).then(Nr);if(s===\\\"bind\\\")return y0(e,t.slice(0,-1));let[f,g]=t2(a);return Rn(e,{type:\\\"APPLY\\\",path:t.map(p=>p.toString()),argumentList:f},g).then(Nr)},construct(l,i){yl(n);let[a,s]=t2(i);return Rn(e,{type:\\\"CONSTRUCT\\\",path:t.map(f=>f.toString()),argumentList:a},s).then(Nr)}});return o}function $c(e){return Array.prototype.concat.apply([],e)}function t2(e){let t=e.map(U0);return[t.map(r=>r[0]),$c(t.map(r=>r[1]))]}var i2=new WeakMap;function em(e,t){return i2.set(e,t),e}function tm(e){return Object.assign(e,{[r2]:!0})}function U0(e){for(let[t,r]of o2)if(r.canHandle(e)){let[n,o]=r.serialize(e);return[{type:\\\"HANDLER\\\",name:t,value:n},o]}return[{type:\\\"RAW\\\",value:e},i2.get(e)||[]]}function Nr(e){switch(e.type){case\\\"HANDLER\\\":return o2.get(e.name).deserialize(e.value);case\\\"RAW\\\":return e.value}}function Rn(e,t,r){return new Promise(n=>{let o=rm();e.addEventListener(\\\"message\\\",function l(i){!i.data||!i.data.id||i.data.id!==o||(e.removeEventListener(\\\"message\\\",l),n(i.data))}),e.start&&e.start(),e.postMessage(Object.assign({id:o},t),r)})}function rm(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join(\\\"-\\\")}function nm(e){let t=new WeakMap;return{postMessage:e.postMessage.bind(e),addEventListener:(r,n)=>{let o=l=>{\\\"handleEvent\\\"in n?n.handleEvent({data:l}):n({data:l})};e.on(\\\"message\\\",o),t.set(n,o)},removeEventListener:(r,n)=>{let o=t.get(n);!o||(e.off(\\\"message\\\",o),t.delete(n))},nodeWorker:e}}var a2=nm;var om=typeof globalThis.Worker>\\\"u\\\"&&typeof globalThis.WorkerNavigator>\\\"u\\\",lm=\\\"w-orker-_threa-ds\\\",im=()=>lm.replace(/-/g,\\\"\\\");async function am(){let{parentPort:e}=await import(im()).catch();return a2(e)}function s2(e){om?(async()=>Do(e,await am()))():Do(e)}Ce();Jt();Bt();Ce();Jt();Rt();Bt();Le();Le();var fa=class extends Un{constructor(t){super();this.metric=t}traverseAlg(t){let r=0;for(let n of t.units())r+=this.traverseUnit(n);return r}traverseGrouping(t){let r=t.alg;return this.traverseAlg(r)*Math.abs(t.amount)}traverseMove(t){return this.metric(t)}traverseCommutator(t){return 2*(this.traverseAlg(t.A)+this.traverseAlg(t.B))}traverseConjugate(t){return 2*this.traverseAlg(t.A)+this.traverseAlg(t.B)}traversePause(t){return 0}traverseNewline(t){return 0}traverseLineComment(t){return 0}};function Cu(e){return\\\"A\\\"<=e&&e<=\\\"Z\\\"}function RL(e){let t=e.family;return Cu(t[0])&&t[t.length-1]===\\\"v\\\"||t===\\\"x\\\"||t===\\\"y\\\"||t===\\\"z\\\"||t===\\\"T\\\"?0:1}function dL(e){let t=e.family;return Cu(t[0])&&t[t.length-1]===\\\"v\\\"||t===\\\"x\\\"||t===\\\"y\\\"||t===\\\"z\\\"||t===\\\"T\\\"?0:Math.abs(e.amount)}var _u=new fa(RL),ua=_u.traverseAlg.bind(_u),zu=new fa(dL),hL=zu.traverseAlg.bind(zu);Le();var Mu=class extends Un{traverseAlg(t){let r=0;for(let n of t.units())r+=this.traverseUnit(n);return r}traverseGrouping(t){return this.traverseAlg(t.alg)*Math.abs(t.amount)}traverseMove(t){return 1}traverseCommutator(t){return 2*(this.traverseAlg(t.A)+this.traverseAlg(t.B))}traverseConjugate(t){return 2*this.traverseAlg(t.A)+this.traverseAlg(t.B)}traversePause(t){return 1}traverseNewline(t){return 0}traverseLineComment(t){return 0}},Pu=new Mu,FL=Pu.traverseAlg.bind(Pu);Rt();var DL=2,AL=!0,yL=!1;function UL(e,t){let r=[];return t.forEach(function(n){let o=new B(n);if(o.amount!==1)throw new Error(\\\"SGS cannot handle def moves with an amount other than 1 yet.\\\");let l=e.identityTransformation();for(let i=1;l=l.applyMove(o),!l.isIdentityTransformation();i++)r.push({move:o.modified({amount:i}),transformation:l})}),r}var Gt=class{constructor(t,r,n){this.kpuzzle=t;this.sgs=r;this.searchMoves=UL(this.kpuzzle,n??Object.keys(this.kpuzzle.definition.moves))}async solve(t,r=DL,n){let o=t.experimentalToTransformation();if(!o)throw new Error(\\\"distinguishable pieces are not supported in tremble solver yt\\\");let l=null,i=1e6,a=(s,f,g)=>{if(f===0){let p=this.sgsPhaseSolve(s,i);if(!p)return;let u=g.concat(p).simplify({collapseMoves:!0,quantumMoveOrder:n}),c=ua(u);(l===null||c<i)&&(yL&&(console.log(`New best (${c} moves): ${u.toString()}`),console.log(`Tremble moves are: ${g.toString()}`)),l=u,i=c);return}for(let p of this.searchMoves)a(s.applyTransformation(p.transformation),f-1,g.concat([p.move]))};for(let s=0;s<=r;s++)a(o,s,new k);if(l===null)throw new Error(\\\"SGS search failed.\\\");return l}sgsPhaseSolve(t,r){let n=new ct,o=t;for(let l of this.sgs.ordering){let i=l.pieceOrdering,a=\\\"\\\",s=o.invert();for(let g=0;g<i.length;g++){let p=i[g],u=p.orbitName,c=p.permutationIdx;a+=` ${s.transformationData[u].permutation[c]} ${s.transformationData[u].orientation[c]}`}let f=l.lookup[a];if(!f)throw new Error(\\\"Missing algorithm in sgs or esgs?\\\");if(n.experimentalPushAlg(f.alg),n.experimentalNumUnits()>=r)return null;if(o=o.applyTransformation(f.transformation),AL)for(let g=0;g<i.length;g++){let p=i[g],u=p.orbitName,c=p.permutationIdx;if(o.transformationData[u].permutation[c]!==c||o.transformationData[u].orientation[c]!==0)throw new Error(\\\"bad SGS :-(\\\")}}return n.toAlg()}};async function ii(e,t){let r=await Zt(),n=e.identityTransformation();for(let o of t.ordering){let l=r(Object.values(o.lookup));n=n.applyTransformation(l.transformation)}return n.toKState()}var SL=3,Ou=null;async function Iu(){return Ou||(Ou=(async()=>{let e=await(await Promise.resolve().then(()=>(Gu(),Tu))).cachedData222();return new Gt(await Pe[\\\"2x2x2\\\"].kpuzzle(),e,\\\"URFLBD\\\".split(\\\"\\\"))})())}async function Wu(){await Iu()}async function ga(e){return xe(),await(await Iu()).solve(e,SL,()=>4)}async function wL(e,t,r,n){let o=await Se();await ku(r.stateData[t].pieces);let l=e.definition.orbits[t],i=r.stateData[t].orientation,a=0;for(let s=0;s<l.numPieces;s++){let f=o(l.numOrientations);i[s]=f,a+=f}n&&\\\"orientationSum\\\"in n&&(i[0]=((i[0]+n.orientationSum-a)%l.numOrientations+l.numOrientations)%l.numOrientations)}async function vL(){let e=await Pe[\\\"2x2x2\\\"].kpuzzle(),t=new fe(e,JSON.parse(JSON.stringify(e.startState().stateData)));return await wL(e,\\\"CORNERS\\\",t,{orientationSum:0}),t}async function Ku(){return await ga(await vL())}Ma();ai();var QR=[[null,\\\"x\\\",\\\"x2\\\",\\\"x'\\\",\\\"z\\\",\\\"z'\\\"],[null,\\\"y\\\",\\\"y2\\\",\\\"y'\\\"]],jR=null;function Vg(){return jR??(jR=Promise.resolve().then(()=>(qg(),jg)))}async function Hg(){return(await Vg()).initialize()}async function ss(){return(await Vg()).random444Scramble()}async function Yg(){return Tn(await ss(),QR)}ai();Le();Rt();function qR(e){switch(e){case 5:return 60;case 6:return 80;default:return 100}}var VR=[[\\\"U\\\",\\\"D\\\"],[\\\"L\\\",\\\"R\\\"],[\\\"F\\\",\\\"B\\\"]],Jg=new Map;function HR(e){let t=Jg.get(e);if(t)return t;let r=[];for(let n of VR){let o=[];r.push(o);for(let l of n){o.push(new C(l)),e>3&&o.push(new C(`${l}w`));for(let i=3;i<=e/2;i++)o.push(new C(`${l}w`,i))}}return Jg.set(e,r),r}async function or(e){let t=await Se(),r=await Zt(),n=r,o=HR(e),l=qR(e),i=new ct,a=0,s=new Set;for(;i.experimentalNumUnits()<l;){let f=t(3);f!==a&&s.clear(),a=f;let g=r(o[a]),p=g.toString();s.has(p)||(s.add(p),i.push(new B(g,n([1,2,-1]))))}return i.toAlg()}var YR=[[null,\\\"3Rw\\\",\\\"3Rw2\\\",\\\"3Rw'\\\",\\\"3Fw\\\",\\\"3Fw'\\\"],[null,\\\"3Dw\\\",\\\"3Dw2\\\",\\\"3Dw'\\\"]];async function Zg(){return Tn(await or(5),YR)}Le();Jt();Bt();async function _p(){xe();let{randomFTOScrambleString:e}=await Promise.resolve().then(()=>(kp(),Ep));return new k(await e())}Bt();async function Qp(){xe();let{getRandomKilominxScramble:e}=await Promise.resolve().then(()=>(Kp(),Wp));return e()}Le();Bt();async function oc(){let{randomMasterTetraminxScrambleString:e}=await Promise.resolve().then(()=>(nc(),rc));return xe(),new k(await e())}Ce();Bt();Ps();var iF=2,ac=null;async function aF(){return ac||(ac=(async()=>{let t=await(await Promise.resolve().then(()=>(Ps(),ic))).cachedSGSDataMegaminx();return new Gt(await ml(),t,[\\\"U\\\",\\\"R\\\",\\\"F\\\",\\\"L\\\",\\\"BR\\\",\\\"BL\\\",\\\"FR\\\",\\\"FL\\\",\\\"DR\\\",\\\"DL\\\",\\\"B\\\",\\\"D\\\"])})())}async function sc(e){xe();let t=await aF(),r=JSON.parse(JSON.stringify(e.stateData));r.CENTERS.orientation=new Array(12).fill(0);let n=new fe(await ml(),r);return await t.solve(n,iF,()=>5)}Jt();Bt();Ns();var uF=3,gc=null;async function gF(){return gc||(gc=(async()=>{let t=await(await Promise.resolve().then(()=>(Ns(),uc))).sgsDataPyraminx();return new Gt(await Pe.pyraminx.kpuzzle(),t,\\\"RLUB\\\".split(\\\"\\\"))})())}async function Ts(e){return xe(),await(await gF()).solve(e,uF,()=>3)}async function pF(){return xe(),ii(await Pe.pyraminx.kpuzzle(),await Ms())}async function pc(){return Ts(await pF())}Bt();async function Uc(){xe();let{getRandomRediCubeScramble:e}=await Promise.resolve().then(()=>(yc(),Ac));return e()}Ce();Bt();Ws();var jF=3,Sc=null;async function qF(){return Sc||(Sc=(async()=>{let e=await Promise.resolve().then(()=>(Ws(),xc)),t=await e.sgsDataSkewb();return new Gt(await e.skewbKPuzzleWithoutMOCached(),t,\\\"RLUB\\\".split(\\\"\\\"))})())}function VF(e){return new fe(e.kpuzzle,{CORNERS:e.stateData.CORNERS,CENTERS:{pieces:e.stateData.CENTERS.pieces,orientation:new Array(6).fill(0)}})}async function Ks(e){return xe(),await(await qF()).solve(VF(e),jF,n=>n.family===\\\"y\\\"?4:3)}async function HF(){return ii(await B0(),await Is())}async function wc(){return Ks(await HF())}Le();var d3=null;function h3(){return d3??(d3=Promise.resolve().then(()=>(Tc(),Nc)))}async function Gc(){return k.fromString(await(await h3()).getRandomSquare1ScrambleString())}var F3=1e3;xu(!0);var Wc=!0;function D3(e){Wc=e}function Oc(){return(typeof performance>\\\"u\\\"?Date:performance).now()}async function _e(e,t,r){if(!Wc)return t();let n=Oc(),o=t();o?.then&&await o;let l=Oc();return console.warn(`${e}${r?.isPrefetch?\\\" (prefetched)\\\":\\\"\\\"}: ${Math.round(l-n)}ms`),o}var Js=new Map,Zs=null;async function Ic(e,t){switch(e){case\\\"222\\\":return _e(\\\"random222Scramble\\\",Ku,{isPrefetch:t?.isPrefetch});case\\\"333\\\":case\\\"333oh\\\":case\\\"333ft\\\":return _e(\\\"random333Scramble\\\",Jn,{isPrefetch:t?.isPrefetch});case\\\"333fm\\\":return _e(\\\"random333FewestMovesScramble\\\",M1);case\\\"333bf\\\":case\\\"333mb\\\":return _e(\\\"random333OrientedScramble\\\",P1);case\\\"444\\\":return _e(\\\"random444Scramble\\\",ss,{isPrefetch:t?.isPrefetch});case\\\"444bf\\\":return _e(\\\"random444OrientedScramble\\\",Yg);case\\\"555\\\":return _e(\\\"bigCubeScramble(5)\\\",or.bind(or,5));case\\\"555bf\\\":return _e(\\\"oriented555RandomMoves\\\",Zg);case\\\"666\\\":return _e(\\\"bigCubeScramble(6)\\\",or.bind(or,6));case\\\"777\\\":return _e(\\\"bigCubeScramble(7)\\\",or.bind(or,7));case\\\"skewb\\\":return _e(\\\"randomSkewbFixedCornerScramble\\\",wc);case\\\"pyram\\\":return _e(\\\"randomPyraminxScrambleFixedOrientation\\\",pc);case\\\"sq1\\\":return _e(\\\"getRandomSquare1Scramble\\\",Gc,{isPrefetch:t?.isPrefetch});case\\\"fto\\\":return _e(\\\"randomFTOScramble\\\",_p,{isPrefetch:t?.isPrefetch});case\\\"master_tetraminx\\\":return _e(\\\"randomMasterTetraminxScramble\\\",oc);case\\\"kilominx\\\":return _e(\\\"randomKilominxScramble\\\",Qp,{isPrefetch:t?.isPrefetch});case\\\"redi_cube\\\":return _e(\\\"randomRediCubeScramble\\\",Uc,{isPrefetch:t?.isPrefetch});default:throw new Error(`unsupported event: ${e}`)}}var Xs=\\\"auto\\\",$s={initialize:async e=>{switch(e){case\\\"222\\\":return _e(\\\"preInitialize222\\\",Wu);case\\\"333\\\":case\\\"333oh\\\":case\\\"333ft\\\":return _e(\\\"initialize333\\\",C1);case\\\"444\\\":return _e(\\\"initialize444\\\",Hg);default:throw new Error(`unsupported event: ${e}`)}},setScramblePrefetchLevel(e){Xs=e},randomScrambleForEvent:async e=>{let t=Js.get(e);return t?Js.delete(e):t=Ic(e),Xs!==\\\"none\\\"&&t.then(()=>{Zs&&clearTimeout(Zs),Zs=setTimeout(()=>{Js.set(e,Ic(e,{isPrefetch:!0}))},Xs===\\\"immediate\\\"?0:F3)}),t},randomScrambleStringForEvent:async e=>(await $s.randomScrambleForEvent(e)).toString(),solve333ToString:async e=>{let t=new fe(await Pe[\\\"3x3x3\\\"].kpuzzle(),e);return(await Pa(t)).toString()},solve222ToString:async e=>{let t=new fe(await Pe[\\\"2x2x2\\\"].kpuzzle(),e);return(await ga(t)).toString()},solveSkewbToString:async e=>{let t=new fe(await Pe.skewb.kpuzzle(),e);return(await Ks(t)).toString()},solvePyraminxToString:async e=>{let t=new fe(await Pe.pyraminx.kpuzzle(),e);return(await Ts(t)).toString()},solveMegaminxToString:async e=>{let t=new fe(await Pe.megaminx.kpuzzle(),e);return(await sc(t)).toString()},setDebugMeasurePerf:async e=>{D3(e)}};s2($s);\\n\";"],
5
+ "mappings": ";;;AAAO,IAAM,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;",
6
+ "names": []
7
+ }