cubing 0.22.0 → 0.24.0-pre2

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 (1061) hide show
  1. package/README.md +5 -8
  2. package/alg/package.json +1 -3
  3. package/bluetooth/package.json +1 -3
  4. package/dist/esm/{2x2x2.kpuzzle.json-JOGUSQ4N.js → 2x2x2.kpuzzle.json-U5KOZCMU.js} +11 -11
  5. package/dist/esm/2x2x2.kpuzzle.json-U5KOZCMU.js.map +7 -0
  6. package/{src/cubing/search/inside/solve/puzzles/2x2x2.sgs.json.ts → dist/esm/2x2x2.sgs.json-UAYPCQVL.js} +21 -13
  7. package/dist/esm/2x2x2.sgs.json-UAYPCQVL.js.map +7 -0
  8. package/dist/esm/{3d-3WQVOHX5.js → 3d-NFF7OGTI.js} +4 -4
  9. package/dist/esm/{3d-3WQVOHX5.js.map → 3d-NFF7OGTI.js.map} +0 -0
  10. package/dist/esm/bluetooth/index.d.ts +1 -1
  11. package/dist/esm/bluetooth/index.js +46 -38
  12. package/dist/esm/bluetooth/index.js.map +3 -3
  13. package/dist/esm/chunk-27KJGD3S.js +84 -0
  14. package/dist/esm/chunk-27KJGD3S.js.map +7 -0
  15. package/dist/esm/chunk-37EHU3GZ.js +66 -0
  16. package/dist/esm/chunk-37EHU3GZ.js.map +7 -0
  17. package/dist/esm/chunk-7OPCF2OL.js +274 -0
  18. package/dist/esm/chunk-7OPCF2OL.js.map +7 -0
  19. package/dist/esm/chunk-BJIOROQC.js +18 -0
  20. package/dist/esm/chunk-BJIOROQC.js.map +7 -0
  21. package/dist/{bin/puzzle-geometry-bin.js → esm/chunk-J2U2GRS4.js} +104 -1488
  22. package/dist/esm/chunk-J2U2GRS4.js.map +7 -0
  23. package/dist/esm/chunk-KCRFOAR4.js +122 -0
  24. package/dist/esm/chunk-KCRFOAR4.js.map +7 -0
  25. package/{src/cubing/search/inside/solve/puzzles/pyraminx.sgs.json.ts → dist/esm/chunk-NPK6Z4AU.js} +22 -17
  26. package/dist/esm/chunk-NPK6Z4AU.js.map +7 -0
  27. package/dist/esm/chunk-NV5ESXTN.js +505 -0
  28. package/dist/esm/chunk-NV5ESXTN.js.map +7 -0
  29. package/dist/esm/{chunk-DLN5QS4V.js → chunk-REMJV2GO.js} +38 -51
  30. package/dist/esm/chunk-REMJV2GO.js.map +7 -0
  31. package/dist/esm/chunk-TB4D4E2W.js +226 -0
  32. package/dist/esm/chunk-TB4D4E2W.js.map +7 -0
  33. package/dist/esm/chunk-TNRZDNGH.js +822 -0
  34. package/dist/esm/chunk-TNRZDNGH.js.map +7 -0
  35. package/{src/cubing/search/inside/solve/puzzles/megaminx.sgs.json.ts → dist/esm/chunk-YN7E5RGM.js} +36 -24
  36. package/dist/esm/chunk-YN7E5RGM.js.map +7 -0
  37. package/dist/esm/{chunk-HXKINJ7U.js → chunk-ZLIK3DZT.js} +79 -57
  38. package/dist/esm/chunk-ZLIK3DZT.js.map +7 -0
  39. package/dist/esm/{clock.kpuzzle.json-EKWRMHJM.js → clock.kpuzzle.json-J3YBOI3G.js} +7 -45
  40. package/dist/esm/clock.kpuzzle.json-J3YBOI3G.js.map +7 -0
  41. package/dist/esm/entry-PHAJAE4E.js +536 -0
  42. package/dist/esm/entry-PHAJAE4E.js.map +7 -0
  43. package/dist/esm/esm-test-worker.js +3 -14
  44. package/dist/esm/esm-test-worker.js.map +3 -3
  45. package/dist/esm/fto.sgs.json-VO6HST2V.js +641 -0
  46. package/dist/esm/fto.sgs.json-VO6HST2V.js.map +7 -0
  47. package/{src/cubing/search/inside/solve/vendor/min2phase/gwt.js → dist/esm/gwt-B7CBESZR.js} +350 -1380
  48. package/dist/esm/gwt-B7CBESZR.js.map +7 -0
  49. package/dist/esm/kpuzzle/index.js +5 -35
  50. package/dist/esm/megaminx.sgs.json-R3MK4HXM.js +16 -0
  51. package/dist/esm/megaminx.sgs.json-R3MK4HXM.js.map +7 -0
  52. package/dist/esm/module-entry-UYTOFYBC.js +18 -0
  53. package/dist/esm/module-entry-UYTOFYBC.js.map +7 -0
  54. package/dist/esm/{node-BSAQKO3G.js → node-SP4L2AKI.js} +2 -2
  55. package/dist/esm/{node-BSAQKO3G.js.map → node-SP4L2AKI.js.map} +1 -1
  56. package/dist/esm/{node-WEHVBEKP.js → node-W3AD4HBK.js} +3 -2
  57. package/dist/esm/node-W3AD4HBK.js.map +7 -0
  58. package/dist/esm/protocol/index.js +2 -1
  59. package/dist/esm/puzzle-geometry/index.js +15 -4053
  60. package/dist/esm/puzzle-geometry/index.js.map +3 -3
  61. package/dist/esm/puzzles/index.js +4 -4
  62. package/dist/esm/pyraminx.sgs.json-R3J3JHMV.js +14 -0
  63. package/dist/esm/pyraminx.sgs.json-R3J3JHMV.js.map +7 -0
  64. package/dist/esm/scramble/index.js +5 -3
  65. package/{src/cubing/search/inside/solve/vendor/cstimer/src/js/scramble/scramble_444.ts → dist/esm/scramble_444-F3YANDPO.js} +367 -586
  66. package/dist/esm/scramble_444-F3YANDPO.js.map +7 -0
  67. package/{src/cubing/search/inside/solve/vendor/sq12phase/scramble_sq1.js → dist/esm/scramble_sq1-PQ2AYBFW.js} +143 -290
  68. package/dist/esm/scramble_sq1-PQ2AYBFW.js.map +7 -0
  69. package/dist/esm/search/index.js +7 -4
  70. package/dist/esm/skewb.sgs.json-T6CO36WU.js +16 -0
  71. package/dist/esm/skewb.sgs.json-T6CO36WU.js.map +7 -0
  72. package/dist/esm/{sq1-hyperorbit.kpuzzle.json-N3FGCPML.js → sq1-hyperorbit.kpuzzle.json-AWDGN4ZW.js} +6 -6
  73. package/dist/esm/sq1-hyperorbit.kpuzzle.json-AWDGN4ZW.js.map +7 -0
  74. package/dist/esm/twisty/index.js +342 -231
  75. package/dist/esm/twisty/index.js.map +3 -3
  76. package/dist/esm/worker-inside-generated-string-6YDSDSRJ.js +3447 -0
  77. package/dist/esm/worker-inside-generated-string-6YDSDSRJ.js.map +7 -0
  78. package/dist/{esm → types}/.DS_Store +0 -0
  79. package/dist/types/alg/Alg.d.ts +0 -1
  80. package/dist/types/alg/Alg.spec.d.ts +0 -1
  81. package/dist/types/alg/AlgBuilder.d.ts +0 -1
  82. package/dist/types/alg/Serializable.d.ts +0 -1
  83. package/dist/types/alg/common.d.ts +0 -1
  84. package/dist/types/alg/debug.d.ts +0 -1
  85. package/dist/types/alg/example.d.ts +0 -1
  86. package/dist/types/alg/index.d.ts +0 -1
  87. package/dist/types/alg/is.d.ts +0 -1
  88. package/dist/types/alg/iteration.d.ts +0 -1
  89. package/dist/types/alg/keyboard.d.ts +0 -1
  90. package/dist/types/alg/limits.d.ts +0 -1
  91. package/dist/types/alg/operation.d.ts +0 -1
  92. package/dist/types/alg/operation.spec.d.ts +0 -1
  93. package/dist/types/alg/parse.d.ts +0 -1
  94. package/dist/types/alg/parse.spec.d.ts +0 -1
  95. package/dist/types/alg/test/alg-comparison.d.ts +0 -1
  96. package/dist/types/alg/test/alg.spec.d.ts +0 -1
  97. package/dist/types/alg/traversal.d.ts +0 -1
  98. package/dist/types/alg/units/QuantumWithAmount.d.ts +0 -1
  99. package/dist/types/alg/units/Unit.d.ts +0 -1
  100. package/dist/types/alg/units/containers/Commutator.d.ts +0 -1
  101. package/dist/types/alg/units/containers/Conjugate.d.ts +0 -1
  102. package/dist/types/alg/units/containers/Grouping.d.ts +0 -1
  103. package/dist/types/alg/units/index.d.ts +0 -1
  104. package/dist/types/alg/units/leaves/LineComment.d.ts +0 -1
  105. package/dist/types/alg/units/leaves/LineComment.spec.d.ts +0 -1
  106. package/dist/types/alg/units/leaves/Move.d.ts +0 -1
  107. package/dist/types/alg/units/leaves/Move.spec.d.ts +0 -1
  108. package/dist/types/alg/units/leaves/Newline.d.ts +0 -1
  109. package/dist/types/alg/units/leaves/Pause.d.ts +0 -1
  110. package/dist/types/alg/url.d.ts +0 -1
  111. package/dist/types/alg/url.spec.d.ts +0 -1
  112. package/dist/types/alg/validation.d.ts +0 -1
  113. package/dist/types/alg/warnOnce.d.ts +0 -1
  114. package/dist/types/bluetooth/connect/index.d.ts +0 -1
  115. package/dist/types/bluetooth/debug.d.ts +0 -1
  116. package/dist/types/bluetooth/index.d.ts +0 -1
  117. package/dist/types/bluetooth/keyboard.d.ts +5 -5
  118. package/dist/types/bluetooth/smart-puzzle/Heykube.d.ts +3 -3
  119. package/dist/types/bluetooth/smart-puzzle/bluetooth-puzzle.d.ts +3 -5
  120. package/dist/types/bluetooth/smart-puzzle/connect.d.ts +0 -1
  121. package/dist/types/bluetooth/smart-puzzle/endianness.d.ts +0 -1
  122. package/dist/types/bluetooth/smart-puzzle/gan.d.ts +5 -4
  123. package/dist/types/bluetooth/smart-puzzle/giiker.d.ts +3 -3
  124. package/dist/types/bluetooth/smart-puzzle/giiker.spec.d.ts +0 -1
  125. package/dist/types/bluetooth/smart-puzzle/gocube.d.ts +0 -1
  126. package/dist/types/bluetooth/smart-robot/GanRobot.d.ts +0 -1
  127. package/dist/types/bluetooth/smart-robot/index.d.ts +0 -1
  128. package/dist/types/bluetooth/smart-timer/GanTimer.d.ts +0 -1
  129. package/dist/types/bluetooth/smart-timer/index.d.ts +0 -1
  130. package/dist/types/bluetooth/transformer.d.ts +0 -1
  131. package/dist/types/cubing.bundle-global.d.ts +0 -1
  132. package/{src/cubing/cubing.bundle-global.ts → dist/types/cubing.bundle-global.exports.d.ts} +12 -19
  133. package/dist/types/esm-test-worker.d.ts +0 -1
  134. package/dist/types/kpuzzle/3x3x3/3x3x3.kpuzzle.json.d.ts +2 -3
  135. package/dist/types/kpuzzle/3x3x3/3x3x3.kpuzzle.json.spec.d.ts +0 -1
  136. package/dist/types/kpuzzle/3x3x3/puzzle-orientation.d.ts +4 -0
  137. package/dist/types/kpuzzle/KPuzzle.d.ts +25 -0
  138. package/dist/types/kpuzzle/KPuzzleDefinition.d.ts +20 -0
  139. package/dist/types/kpuzzle/KState.d.ts +16 -0
  140. package/dist/types/kpuzzle/KTransformation.d.ts +20 -0
  141. package/dist/types/kpuzzle/calculate.d.ts +16 -0
  142. package/dist/types/kpuzzle/combine.d.ts +3 -0
  143. package/dist/types/kpuzzle/construct.d.ts +5 -0
  144. package/dist/types/kpuzzle/index.d.ts +6 -10
  145. package/dist/types/notation/CountAnimatedLeaves.d.ts +0 -1
  146. package/dist/types/notation/CountMoves.d.ts +0 -1
  147. package/dist/types/notation/index.d.ts +0 -1
  148. package/dist/types/protocol/binary/binary3x3x3.d.ts +5 -6
  149. package/dist/types/protocol/binary/binary3x3x3.spec.d.ts +0 -1
  150. package/dist/types/protocol/binary/hex.d.ts +0 -1
  151. package/dist/types/protocol/binary/hex.spec.d.ts +0 -1
  152. package/dist/types/protocol/binary/orbit-indexing.d.ts +0 -1
  153. package/dist/types/protocol/binary/orbit-indexing.spec.d.ts +0 -1
  154. package/dist/types/protocol/binary/puzzle-orientation.d.ts +4 -5
  155. package/dist/types/protocol/index.d.ts +0 -1
  156. package/dist/types/puzzle-geometry/FaceNameSwizzler.d.ts +0 -1
  157. package/dist/types/puzzle-geometry/Options.d.ts +0 -1
  158. package/dist/types/puzzle-geometry/PGPuzzles.d.ts +0 -1
  159. package/dist/types/puzzle-geometry/PGPuzzles.spec.d.ts +0 -1
  160. package/dist/types/puzzle-geometry/Perm.d.ts +0 -1
  161. package/dist/types/puzzle-geometry/PermOriSet.d.ts +4 -5
  162. package/dist/types/puzzle-geometry/PlatonicGenerator.d.ts +0 -1
  163. package/dist/types/puzzle-geometry/PuzzleGeometry.d.ts +11 -5
  164. package/dist/types/puzzle-geometry/Quat.d.ts +0 -1
  165. package/dist/types/puzzle-geometry/Quat.spec.d.ts +0 -1
  166. package/dist/types/puzzle-geometry/SchreierSims.d.ts +0 -1
  167. package/dist/types/puzzle-geometry/index.d.ts +2 -2
  168. package/dist/types/puzzle-geometry/notation-mapping/FTONotationMapper.d.ts +0 -1
  169. package/dist/types/puzzle-geometry/notation-mapping/FaceRenamingMapper.d.ts +0 -1
  170. package/dist/types/puzzle-geometry/notation-mapping/MegaminxScramblingNotationMapper.d.ts +0 -1
  171. package/dist/types/puzzle-geometry/notation-mapping/NotationMapper.d.ts +3 -2
  172. package/dist/types/puzzle-geometry/notation-mapping/NullMapper.d.ts +0 -1
  173. package/dist/types/puzzle-geometry/notation-mapping/NxNxNCubeMapper.d.ts +0 -1
  174. package/dist/types/puzzle-geometry/notation-mapping/PyraminxNotationMapper.d.ts +0 -1
  175. package/dist/types/puzzle-geometry/notation-mapping/SkewbNotationMapper.d.ts +0 -1
  176. package/dist/types/puzzle-geometry/notation-mapping/index.d.ts +0 -1
  177. package/dist/types/puzzle-geometry/orientcenters.spec.d.ts +0 -1
  178. package/dist/types/puzzles/PuzzleLoader.d.ts +3 -3
  179. package/dist/types/puzzles/async/async-pg3d.d.ts +3 -3
  180. package/dist/types/puzzles/async/lazy-cached-kpuzzle.d.ts +2 -0
  181. package/dist/types/puzzles/customPGPuzzleLoader.d.ts +2 -3
  182. package/dist/types/puzzles/implementations/2x2x2/2x2x2.kpuzzle.json.d.ts +1 -2
  183. package/dist/types/puzzles/implementations/2x2x2/2x2x2.kpuzzle.svg.d.ts +0 -1
  184. package/dist/types/puzzles/implementations/2x2x2/index.d.ts +0 -1
  185. package/dist/types/puzzles/implementations/3x3x3/3x3x3-ll.kpuzzle.svg.d.ts +0 -1
  186. package/dist/types/puzzles/implementations/3x3x3/3x3x3.kpuzzle.svg.d.ts +0 -1
  187. package/dist/types/puzzles/implementations/3x3x3/index.d.ts +0 -1
  188. package/dist/types/puzzles/implementations/clock/clock.kpuzzle.json.d.ts +1 -2
  189. package/dist/types/puzzles/implementations/clock/clock.kpuzzle.svg.d.ts +0 -1
  190. package/dist/types/puzzles/implementations/clock/index.d.ts +0 -1
  191. package/dist/types/puzzles/implementations/fto/index.d.ts +0 -1
  192. package/dist/types/puzzles/implementations/megaminx/index.d.ts +0 -1
  193. package/dist/types/puzzles/implementations/pyraminx/index.d.ts +0 -1
  194. package/dist/types/puzzles/implementations/pyraminx/pyraminx.kpuzzle.json.d.ts +0 -1
  195. package/dist/types/puzzles/implementations/pyraminx/pyraminx.kpuzzle.svg.d.ts +0 -1
  196. package/dist/types/puzzles/implementations/square1/index.d.ts +0 -1
  197. package/dist/types/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.json.d.ts +1 -2
  198. package/dist/types/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.svg.d.ts +0 -1
  199. package/dist/types/puzzles/index.d.ts +1 -2
  200. package/dist/types/puzzles/stickerings/appearance.d.ts +6 -7
  201. package/dist/types/puzzles/stickerings/cube-stickerings.d.ts +0 -1
  202. package/dist/types/puzzles/stickerings/fto-stickerings.d.ts +0 -1
  203. package/dist/types/puzzles/stickerings/global-custom-stickering-hack.d.ts +0 -1
  204. package/dist/types/puzzles/stickerings/megaminx-stickerings.d.ts +0 -1
  205. package/dist/types/scramble/index.d.ts +0 -1
  206. package/dist/types/search/esm-test-worker.d.ts +0 -1
  207. package/dist/types/search/index.d.ts +0 -1
  208. package/dist/types/search/inside/api.d.ts +6 -7
  209. package/dist/types/search/inside/api.spec.d.ts +0 -1
  210. package/dist/types/search/inside/entry.d.ts +0 -1
  211. package/dist/types/search/inside/inside-worker.d.ts +0 -1
  212. package/dist/types/search/inside/module-entry-path-getter.d.ts +1 -0
  213. package/dist/types/search/inside/module-entry.d.ts +1 -0
  214. package/dist/types/search/inside/solve/addOrientationSuffix.d.ts +0 -1
  215. package/dist/types/search/inside/solve/parseSGS.d.ts +3 -4
  216. package/dist/types/search/inside/solve/puzzles/2x2x2.d.ts +3 -4
  217. package/dist/types/search/inside/solve/puzzles/2x2x2.sgs.json.d.ts +0 -1
  218. package/dist/types/search/inside/solve/puzzles/3x3x3/convert.d.ts +2 -3
  219. package/dist/types/search/inside/solve/puzzles/3x3x3/filter.d.ts +4 -4
  220. package/dist/types/search/inside/solve/puzzles/3x3x3/index.d.ts +3 -4
  221. package/dist/types/search/inside/solve/puzzles/3x3x3/legacy-sgs.d.ts +0 -1
  222. package/dist/types/search/inside/solve/puzzles/3x3x3-inefficient.sgs.json.d.ts +0 -1
  223. package/dist/types/search/inside/solve/puzzles/4x4x4.d.ts +2 -2
  224. package/dist/types/search/inside/solve/puzzles/5x5x5.d.ts +0 -1
  225. package/dist/types/search/inside/solve/puzzles/big-cubes.d.ts +0 -1
  226. package/dist/types/search/inside/solve/puzzles/clock.d.ts +0 -1
  227. package/dist/types/search/inside/solve/puzzles/fto.d.ts +5 -0
  228. package/dist/types/search/inside/solve/puzzles/fto.sgs.json.d.ts +2 -0
  229. package/dist/types/search/inside/solve/puzzles/megaminx.d.ts +2 -3
  230. package/dist/types/search/inside/solve/puzzles/megaminx.sgs.json.d.ts +2 -3
  231. package/dist/types/search/inside/solve/puzzles/pyraminx.d.ts +3 -4
  232. package/dist/types/search/inside/solve/puzzles/pyraminx.sgs.json.d.ts +0 -1
  233. package/dist/types/search/inside/solve/puzzles/sgs-defs.spec.d.ts +0 -1
  234. package/dist/types/search/inside/solve/puzzles/skewb.d.ts +3 -4
  235. package/dist/types/search/inside/solve/puzzles/skewb.sgs.json.d.ts +2 -3
  236. package/dist/types/search/inside/solve/puzzles/sq1.d.ts +0 -1
  237. package/dist/types/search/inside/solve/puzzles/wca-minx.d.ts +0 -1
  238. package/dist/types/search/inside/solve/tremble.d.ts +6 -6
  239. package/dist/types/search/instantiator.d.ts +1 -3
  240. package/dist/types/search/outside.d.ts +6 -7
  241. package/dist/types/search/worker-inside-generated-string.d.ts +1 -2
  242. package/dist/types/stream/index.d.ts +0 -1
  243. package/dist/types/stream/process/ReorientedStream.d.ts +1 -3
  244. package/dist/types/stream/proxy-event.d.ts +0 -1
  245. package/dist/types/stream/twizzle/TwizzleStream.d.ts +0 -1
  246. package/dist/types/stream/twizzle/stream-types.d.ts +0 -1
  247. package/dist/types/stream/websocket-proxy.d.ts +0 -1
  248. package/dist/types/twisty/controllers/AnimationTypes.d.ts +2 -3
  249. package/dist/types/twisty/controllers/RenderScheduler.d.ts +0 -1
  250. package/dist/types/twisty/controllers/TwistyAnimationController.d.ts +0 -1
  251. package/dist/types/twisty/controllers/TwistyPlayerController.d.ts +0 -1
  252. package/dist/types/twisty/controllers/easing.d.ts +0 -1
  253. package/dist/types/twisty/controllers/indexer/AlgDuration.d.ts +0 -1
  254. package/dist/types/twisty/controllers/indexer/AlgIndexer.d.ts +6 -6
  255. package/dist/types/twisty/controllers/indexer/SimpleAlgIndexer.d.ts +7 -7
  256. package/dist/types/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexer.d.ts +8 -8
  257. package/dist/types/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexerV2.d.ts +9 -9
  258. package/dist/types/twisty/controllers/indexer/simultaneous-moves/simul-moves.d.ts +0 -1
  259. package/dist/types/twisty/controllers/indexer/tree/AlgWalker.d.ts +36 -37
  260. package/dist/types/twisty/controllers/indexer/tree/TreeAlgIndexer.d.ts +7 -7
  261. package/dist/types/twisty/controllers/indexer/tree/chunkAlgs.d.ts +0 -1
  262. package/dist/types/twisty/controllers/stream/timeline-move-calculation-draft.d.ts +0 -1
  263. package/dist/types/twisty/heavy-code-imports/3d.d.ts +0 -1
  264. package/dist/types/twisty/heavy-code-imports/dynamic-entries/3d.d.ts +0 -1
  265. package/dist/types/twisty/index.d.ts +1 -2
  266. package/dist/types/twisty/model/PromiseFreshener.d.ts +0 -1
  267. package/dist/types/twisty/model/TwistyPlayerModel.d.ts +6 -7
  268. package/dist/types/twisty/model/UserVisibleErrorTracker.d.ts +0 -1
  269. package/dist/types/twisty/model/helpers.d.ts +0 -1
  270. package/dist/types/twisty/model/props/TwistyProp.d.ts +0 -1
  271. package/dist/types/twisty/model/props/TwistyProp.spec.d.ts +0 -1
  272. package/dist/types/twisty/model/props/TwistyPropDebugger.d.ts +0 -1
  273. package/dist/types/twisty/model/props/general/URLProp.d.ts +0 -1
  274. package/dist/types/twisty/model/props/puzzle/display/FoundationDisplayProp.d.ts +0 -1
  275. package/dist/types/twisty/model/props/puzzle/display/HintFaceletProp.d.ts +0 -1
  276. package/dist/types/twisty/model/props/puzzle/display/SpriteProp.d.ts +0 -1
  277. package/dist/types/twisty/model/props/puzzle/display/StickeringProp.d.ts +2 -1
  278. package/dist/types/twisty/model/props/puzzle/state/AlgProp.d.ts +0 -1
  279. package/dist/types/twisty/model/props/puzzle/state/AlgTransformationProp.d.ts +5 -8
  280. package/dist/types/twisty/model/props/puzzle/state/AnchoredStartProp.d.ts +5 -7
  281. package/dist/types/twisty/model/props/puzzle/state/CatchUpMoveProp.d.ts +0 -1
  282. package/dist/types/twisty/model/props/puzzle/state/CurrentLeavesSimplified.d.ts +0 -1
  283. package/dist/types/twisty/model/props/puzzle/state/{CurrentLeavesProp.d.ts → CurrentMoveInfoProp.d.ts} +2 -3
  284. package/dist/types/twisty/model/props/puzzle/state/CurrentStateProp.d.ts +14 -0
  285. package/dist/types/twisty/model/props/puzzle/state/IndexerConstructorProp.d.ts +7 -8
  286. package/dist/types/twisty/model/props/puzzle/state/IndexerConstructorRequestProp.d.ts +0 -1
  287. package/dist/types/twisty/model/props/puzzle/state/IndexerProp.d.ts +5 -6
  288. package/dist/types/twisty/model/props/puzzle/state/LegacyPositionProp.d.ts +2 -3
  289. package/dist/types/twisty/model/props/puzzle/state/MovePressInputProp.d.ts +6 -2
  290. package/dist/types/twisty/model/props/puzzle/state/NaiveMoveCountProp.d.ts +0 -1
  291. package/dist/types/twisty/model/props/puzzle/state/PuzzleAlgProp.d.ts +4 -5
  292. package/dist/types/twisty/model/props/puzzle/state/SetupAnchorProp.d.ts +0 -1
  293. package/dist/types/twisty/model/props/puzzle/structure/KPuzzleProp.d.ts +10 -0
  294. package/dist/types/twisty/model/props/puzzle/structure/PuzzleDescriptionProp.d.ts +0 -1
  295. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDProp.d.ts +0 -1
  296. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDRequestProp.d.ts +0 -1
  297. package/dist/types/twisty/model/props/puzzle/structure/PuzzleLoaderProp.d.ts +0 -1
  298. package/dist/types/twisty/model/props/timeline/CoarseTimelineInfoProp.d.ts +0 -1
  299. package/dist/types/twisty/model/props/timeline/DetailedTimelineInfoProp.d.ts +0 -1
  300. package/dist/types/twisty/model/props/timeline/PlayingInfoProp.d.ts +0 -1
  301. package/dist/types/twisty/model/props/timeline/TempoScaleProp.d.ts +0 -1
  302. package/dist/types/twisty/model/props/timeline/TimestampRequestProp.d.ts +0 -1
  303. package/dist/types/twisty/model/props/viewer/BackViewProp.d.ts +0 -1
  304. package/dist/types/twisty/model/props/viewer/BackgroundProp.d.ts +0 -1
  305. package/dist/types/twisty/model/props/viewer/ButtonAppearanceProp.d.ts +0 -1
  306. package/dist/types/twisty/model/props/viewer/ControlPanelProp.d.ts +0 -1
  307. package/dist/types/twisty/model/props/viewer/LatitudeLimit.d.ts +0 -1
  308. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesProp.d.ts +0 -1
  309. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesRequestProp.d.ts +0 -1
  310. package/dist/types/twisty/model/props/viewer/TimeRangeProp.d.ts +2 -3
  311. package/dist/types/twisty/model/props/viewer/ViewerLinkProp.d.ts +0 -1
  312. package/dist/types/twisty/model/props/viewer/VisualizationProp.d.ts +0 -1
  313. package/dist/types/twisty/model/props/viewer/VisualizationStrategyProp.d.ts +0 -1
  314. package/dist/types/twisty/views/2D/KPuzzleSVGWrapper.d.ts +17 -0
  315. package/dist/types/twisty/views/2D/Twisty2DPuzzle.css.d.ts +0 -1
  316. package/dist/types/twisty/views/2D/Twisty2DPuzzle.d.ts +4 -4
  317. package/dist/types/twisty/views/2D/Twisty2DPuzzleWrapper.d.ts +0 -1
  318. package/dist/types/twisty/views/2D/Twisty2DSceneWrapper.d.ts +0 -1
  319. package/dist/types/twisty/views/3D/DragTracker.d.ts +0 -1
  320. package/dist/types/twisty/views/3D/RendererPool.d.ts +0 -1
  321. package/dist/types/twisty/views/3D/TAU.d.ts +0 -1
  322. package/dist/types/twisty/views/3D/Twisty3DPuzzleWrapper.d.ts +0 -1
  323. package/dist/types/twisty/views/3D/Twisty3DRenderTarget.d.ts +0 -1
  324. package/dist/types/twisty/views/3D/Twisty3DScene.d.ts +0 -1
  325. package/dist/types/twisty/views/3D/Twisty3DSceneWrapper.d.ts +0 -1
  326. package/dist/types/twisty/views/3D/Twisty3DVantage.css.d.ts +0 -1
  327. package/dist/types/twisty/views/3D/Twisty3DVantage.d.ts +0 -1
  328. package/dist/types/twisty/views/3D/TwistyOrbitControls.d.ts +0 -1
  329. package/dist/types/twisty/views/3D/TwistyOrbitControls.spec.d.ts +0 -1
  330. package/dist/types/twisty/views/3D/puzzles/Cube3D.d.ts +4 -5
  331. package/dist/types/twisty/views/3D/puzzles/PG3D.d.ts +5 -6
  332. package/dist/types/twisty/views/3D/puzzles/Twisty3DPuzzle.d.ts +0 -1
  333. package/dist/types/twisty/views/ClassListManager.d.ts +0 -1
  334. package/dist/types/twisty/views/ManagedCustomElement.d.ts +0 -1
  335. package/dist/types/twisty/views/TwistyAlgEditor/LeafTokens.d.ts +0 -1
  336. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.css.d.ts +0 -1
  337. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.d.ts +0 -1
  338. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.spec.d.ts +0 -1
  339. package/dist/types/twisty/views/TwistyAlgEditor/model.d.ts +0 -1
  340. package/dist/types/twisty/views/TwistyAlgViewer.css.d.ts +0 -1
  341. package/dist/types/twisty/views/TwistyAlgViewer.d.ts +0 -1
  342. package/dist/types/twisty/views/TwistyPlayer.css.d.ts +0 -1
  343. package/dist/types/twisty/views/TwistyPlayer.d.ts +0 -1
  344. package/dist/types/twisty/views/TwistyPlayerSettable.d.ts +0 -1
  345. package/dist/types/twisty/views/TwistyViewerWrapper.css.d.ts +0 -1
  346. package/dist/types/twisty/views/canvas.d.ts +0 -1
  347. package/dist/types/twisty/views/control-panel/TwistyButtonsV2.css.d.ts +0 -1
  348. package/dist/types/twisty/views/control-panel/TwistyButtonsV2.d.ts +0 -1
  349. package/dist/types/twisty/views/control-panel/TwistyScrubber.css.d.ts +0 -1
  350. package/dist/types/twisty/views/control-panel/TwistyScrubberV2.d.ts +0 -1
  351. package/dist/types/twisty/views/control-panel/webkit-fullscreen.d.ts +0 -1
  352. package/dist/types/twisty/views/document.d.ts +0 -1
  353. package/dist/types/twisty/views/node-custom-element-shims.d.ts +0 -1
  354. package/dist/types/twisty/views/screenshot.d.ts +0 -1
  355. package/dist/types/twisty/views/stream/TwistyStreamSource.css.d.ts +0 -1
  356. package/dist/types/twisty/views/stream/TwistyStreamSource.d.ts +0 -1
  357. package/{src/cubing/search → dist/types}/vendor/comlink-everywhere/inside/index.d.ts +0 -0
  358. package/dist/types/{search/vendor → vendor}/comlink-everywhere/inside/node.d.ts +0 -1
  359. package/dist/types/{search/vendor → vendor}/comlink-everywhere/outside/index.d.ts +0 -1
  360. package/dist/types/{search/vendor → vendor}/comlink-everywhere/outside/node.d.ts +0 -1
  361. package/dist/types/{search/inside/solve/vendor → vendor}/cstimer/src/js/lib/mathlib.d.ts +0 -1
  362. package/dist/types/{search/inside/solve/vendor → vendor}/cstimer/src/js/scramble/scramble_444.d.ts +1 -2
  363. package/dist/types/{search/inside/solve/vendor → vendor}/min2phase/gwt.d.ts +0 -1
  364. package/dist/types/vendor/p-lazy/p-lazy.d.ts +0 -1
  365. package/dist/types/{search/inside/solve/vendor → vendor}/random-uint-below/get-random-values.d.ts +0 -1
  366. package/dist/types/{search/inside/solve/vendor → vendor}/random-uint-below/index.d.ts +1 -2
  367. package/dist/types/{search/inside/solve/vendor → vendor}/random-uint-below/random-choice.d.ts +0 -1
  368. package/dist/types/{search/inside/solve/vendor/random-uint-below/random-int.d.ts → vendor/random-uint-below/random53BitValue.d.ts} +0 -1
  369. package/dist/types/{search/inside/solve/vendor → vendor}/sq12phase/scramble_sq1.d.ts +0 -1
  370. package/dist/types/vendor/three/examples/jsm/libs/stats.modified.module.d.ts +0 -1
  371. package/dist/types/{bluetooth/smart-puzzle → vendor/unsafe-raw-aes}/unsafe-raw-aes.d.ts +0 -1
  372. package/kpuzzle/package.json +1 -3
  373. package/notation/package.json +1 -3
  374. package/package.json +11 -17
  375. package/protocol/package.json +1 -3
  376. package/puzzle-geometry/package.json +1 -3
  377. package/puzzles/package.json +1 -3
  378. package/scramble/package.json +1 -3
  379. package/search/package.json +1 -3
  380. package/stream/package.json +1 -3
  381. package/twisty/package.json +1 -3
  382. package/alg/index.d.ts +0 -1
  383. package/bluetooth/index.d.ts +0 -1
  384. package/dist/.DS_Store +0 -0
  385. package/dist/bin/puzzle-geometry-bin.js.map +0 -7
  386. package/dist/bundle-global/cubing.bundle-global.js +0 -7419
  387. package/dist/esm/2x2x2.kpuzzle.json-JOGUSQ4N.js.map +0 -7
  388. package/dist/esm/chunk-7KI3I3Y7.js +0 -1379
  389. package/dist/esm/chunk-7KI3I3Y7.js.map +0 -7
  390. package/dist/esm/chunk-DLN5QS4V.js.map +0 -7
  391. package/dist/esm/chunk-HXKINJ7U.js.map +0 -7
  392. package/dist/esm/chunk-X6JHXPDX.js +0 -2359
  393. package/dist/esm/chunk-X6JHXPDX.js.map +0 -7
  394. package/dist/esm/clock.kpuzzle.json-EKWRMHJM.js.map +0 -7
  395. package/dist/esm/index.d.ts +0 -1
  396. package/dist/esm/node-WEHVBEKP.js.map +0 -7
  397. package/dist/esm/sq1-hyperorbit.kpuzzle.json-N3FGCPML.js.map +0 -7
  398. package/dist/esm/worker-inside-generated-string-ZA6E6672.js +0 -2831
  399. package/dist/esm/worker-inside-generated-string-ZA6E6672.js.map +0 -7
  400. package/dist/types/alg/Alg.d.ts.map +0 -1
  401. package/dist/types/alg/Alg.spec.d.ts.map +0 -1
  402. package/dist/types/alg/AlgBuilder.d.ts.map +0 -1
  403. package/dist/types/alg/Serializable.d.ts.map +0 -1
  404. package/dist/types/alg/common.d.ts.map +0 -1
  405. package/dist/types/alg/debug.d.ts.map +0 -1
  406. package/dist/types/alg/example.d.ts.map +0 -1
  407. package/dist/types/alg/index.d.ts.map +0 -1
  408. package/dist/types/alg/is.d.ts.map +0 -1
  409. package/dist/types/alg/iteration.d.ts.map +0 -1
  410. package/dist/types/alg/keyboard.d.ts.map +0 -1
  411. package/dist/types/alg/limits.d.ts.map +0 -1
  412. package/dist/types/alg/operation.d.ts.map +0 -1
  413. package/dist/types/alg/operation.spec.d.ts.map +0 -1
  414. package/dist/types/alg/parse.d.ts.map +0 -1
  415. package/dist/types/alg/parse.spec.d.ts.map +0 -1
  416. package/dist/types/alg/test/alg-comparison.d.ts.map +0 -1
  417. package/dist/types/alg/test/alg.spec.d.ts.map +0 -1
  418. package/dist/types/alg/traversal.d.ts.map +0 -1
  419. package/dist/types/alg/units/QuantumWithAmount.d.ts.map +0 -1
  420. package/dist/types/alg/units/Unit.d.ts.map +0 -1
  421. package/dist/types/alg/units/containers/Commutator.d.ts.map +0 -1
  422. package/dist/types/alg/units/containers/Conjugate.d.ts.map +0 -1
  423. package/dist/types/alg/units/containers/Grouping.d.ts.map +0 -1
  424. package/dist/types/alg/units/index.d.ts.map +0 -1
  425. package/dist/types/alg/units/leaves/LineComment.d.ts.map +0 -1
  426. package/dist/types/alg/units/leaves/LineComment.spec.d.ts.map +0 -1
  427. package/dist/types/alg/units/leaves/Move.d.ts.map +0 -1
  428. package/dist/types/alg/units/leaves/Move.spec.d.ts.map +0 -1
  429. package/dist/types/alg/units/leaves/Newline.d.ts.map +0 -1
  430. package/dist/types/alg/units/leaves/Pause.d.ts.map +0 -1
  431. package/dist/types/alg/url.d.ts.map +0 -1
  432. package/dist/types/alg/url.spec.d.ts.map +0 -1
  433. package/dist/types/alg/validation.d.ts.map +0 -1
  434. package/dist/types/alg/warnOnce.d.ts.map +0 -1
  435. package/dist/types/bluetooth/connect/index.d.ts.map +0 -1
  436. package/dist/types/bluetooth/debug.d.ts.map +0 -1
  437. package/dist/types/bluetooth/index.d.ts.map +0 -1
  438. package/dist/types/bluetooth/keyboard.d.ts.map +0 -1
  439. package/dist/types/bluetooth/smart-puzzle/Heykube.d.ts.map +0 -1
  440. package/dist/types/bluetooth/smart-puzzle/bluetooth-puzzle.d.ts.map +0 -1
  441. package/dist/types/bluetooth/smart-puzzle/connect.d.ts.map +0 -1
  442. package/dist/types/bluetooth/smart-puzzle/endianness.d.ts.map +0 -1
  443. package/dist/types/bluetooth/smart-puzzle/gan.d.ts.map +0 -1
  444. package/dist/types/bluetooth/smart-puzzle/giiker.d.ts.map +0 -1
  445. package/dist/types/bluetooth/smart-puzzle/giiker.spec.d.ts.map +0 -1
  446. package/dist/types/bluetooth/smart-puzzle/gocube.d.ts.map +0 -1
  447. package/dist/types/bluetooth/smart-puzzle/unsafe-raw-aes.d.ts.map +0 -1
  448. package/dist/types/bluetooth/smart-robot/GanRobot.d.ts.map +0 -1
  449. package/dist/types/bluetooth/smart-robot/index.d.ts.map +0 -1
  450. package/dist/types/bluetooth/smart-timer/GanTimer.d.ts.map +0 -1
  451. package/dist/types/bluetooth/smart-timer/index.d.ts.map +0 -1
  452. package/dist/types/bluetooth/transformer.d.ts.map +0 -1
  453. package/dist/types/cubing.bundle-global.d.ts.map +0 -1
  454. package/dist/types/esm-test-worker.d.ts.map +0 -1
  455. package/dist/types/kpuzzle/3x3x3/3x3x3.kpuzzle.json.d.ts.map +0 -1
  456. package/dist/types/kpuzzle/3x3x3/3x3x3.kpuzzle.json.spec.d.ts.map +0 -1
  457. package/dist/types/kpuzzle/canon.spec.d.ts +0 -2
  458. package/dist/types/kpuzzle/canon.spec.d.ts.map +0 -1
  459. package/dist/types/kpuzzle/canonicalize.d.ts +0 -55
  460. package/dist/types/kpuzzle/canonicalize.d.ts.map +0 -1
  461. package/dist/types/kpuzzle/definition_types.d.ts +0 -19
  462. package/dist/types/kpuzzle/definition_types.d.ts.map +0 -1
  463. package/dist/types/kpuzzle/index.d.ts.map +0 -1
  464. package/dist/types/kpuzzle/kpuzzle.d.ts +0 -17
  465. package/dist/types/kpuzzle/kpuzzle.d.ts.map +0 -1
  466. package/dist/types/kpuzzle/kpuzzle.spec.d.ts +0 -2
  467. package/dist/types/kpuzzle/kpuzzle.spec.d.ts.map +0 -1
  468. package/dist/types/kpuzzle/move_notation.d.ts +0 -6
  469. package/dist/types/kpuzzle/move_notation.d.ts.map +0 -1
  470. package/dist/types/kpuzzle/parser/index.d.ts +0 -2
  471. package/dist/types/kpuzzle/parser/index.d.ts.map +0 -1
  472. package/dist/types/kpuzzle/parser/parser-peggy.d.ts +0 -15
  473. package/dist/types/kpuzzle/parser/parser-peggy.d.ts.map +0 -1
  474. package/dist/types/kpuzzle/parser/parser-shim.d.ts +0 -4
  475. package/dist/types/kpuzzle/parser/parser-shim.d.ts.map +0 -1
  476. package/dist/types/kpuzzle/parser/parser.d.ts +0 -1
  477. package/dist/types/kpuzzle/parser/parser.d.ts.map +0 -1
  478. package/dist/types/kpuzzle/prunetable.spec.d.ts +0 -2
  479. package/dist/types/kpuzzle/prunetable.spec.d.ts.map +0 -1
  480. package/dist/types/kpuzzle/pruningtable.d.ts +0 -16
  481. package/dist/types/kpuzzle/pruningtable.d.ts.map +0 -1
  482. package/dist/types/kpuzzle/puzzle-orientation.d.ts +0 -5
  483. package/dist/types/kpuzzle/puzzle-orientation.d.ts.map +0 -1
  484. package/dist/types/kpuzzle/svg.d.ts +0 -18
  485. package/dist/types/kpuzzle/svg.d.ts.map +0 -1
  486. package/dist/types/kpuzzle/transformations.d.ts +0 -13
  487. package/dist/types/kpuzzle/transformations.d.ts.map +0 -1
  488. package/dist/types/kpuzzle/transformations.spec.d.ts +0 -2
  489. package/dist/types/kpuzzle/transformations.spec.d.ts.map +0 -1
  490. package/dist/types/notation/CountAnimatedLeaves.d.ts.map +0 -1
  491. package/dist/types/notation/CountMoves.d.ts.map +0 -1
  492. package/dist/types/notation/index.d.ts.map +0 -1
  493. package/dist/types/protocol/binary/binary3x3x3.d.ts.map +0 -1
  494. package/dist/types/protocol/binary/binary3x3x3.spec.d.ts.map +0 -1
  495. package/dist/types/protocol/binary/hex.d.ts.map +0 -1
  496. package/dist/types/protocol/binary/hex.spec.d.ts.map +0 -1
  497. package/dist/types/protocol/binary/orbit-indexing.d.ts.map +0 -1
  498. package/dist/types/protocol/binary/orbit-indexing.spec.d.ts.map +0 -1
  499. package/dist/types/protocol/binary/puzzle-orientation.d.ts.map +0 -1
  500. package/dist/types/protocol/index.d.ts.map +0 -1
  501. package/dist/types/puzzle-geometry/FaceNameSwizzler.d.ts.map +0 -1
  502. package/dist/types/puzzle-geometry/Options.d.ts.map +0 -1
  503. package/dist/types/puzzle-geometry/PGPuzzles.d.ts.map +0 -1
  504. package/dist/types/puzzle-geometry/PGPuzzles.spec.d.ts.map +0 -1
  505. package/dist/types/puzzle-geometry/Perm.d.ts.map +0 -1
  506. package/dist/types/puzzle-geometry/PermOriSet.d.ts.map +0 -1
  507. package/dist/types/puzzle-geometry/PlatonicGenerator.d.ts.map +0 -1
  508. package/dist/types/puzzle-geometry/PuzzleGeometry.d.ts.map +0 -1
  509. package/dist/types/puzzle-geometry/Quat.d.ts.map +0 -1
  510. package/dist/types/puzzle-geometry/Quat.spec.d.ts.map +0 -1
  511. package/dist/types/puzzle-geometry/SchreierSims.d.ts.map +0 -1
  512. package/dist/types/puzzle-geometry/index.d.ts.map +0 -1
  513. package/dist/types/puzzle-geometry/interfaces.d.ts +0 -6
  514. package/dist/types/puzzle-geometry/interfaces.d.ts.map +0 -1
  515. package/dist/types/puzzle-geometry/notation-mapping/FTONotationMapper.d.ts.map +0 -1
  516. package/dist/types/puzzle-geometry/notation-mapping/FaceRenamingMapper.d.ts.map +0 -1
  517. package/dist/types/puzzle-geometry/notation-mapping/MegaminxScramblingNotationMapper.d.ts.map +0 -1
  518. package/dist/types/puzzle-geometry/notation-mapping/NotationMapper.d.ts.map +0 -1
  519. package/dist/types/puzzle-geometry/notation-mapping/NullMapper.d.ts.map +0 -1
  520. package/dist/types/puzzle-geometry/notation-mapping/NxNxNCubeMapper.d.ts.map +0 -1
  521. package/dist/types/puzzle-geometry/notation-mapping/PyraminxNotationMapper.d.ts.map +0 -1
  522. package/dist/types/puzzle-geometry/notation-mapping/SkewbNotationMapper.d.ts.map +0 -1
  523. package/dist/types/puzzle-geometry/notation-mapping/index.d.ts.map +0 -1
  524. package/dist/types/puzzle-geometry/orientcenters.spec.d.ts.map +0 -1
  525. package/dist/types/puzzles/PuzzleLoader.d.ts.map +0 -1
  526. package/dist/types/puzzles/async/async-pg3d.d.ts.map +0 -1
  527. package/dist/types/puzzles/customPGPuzzleLoader.d.ts.map +0 -1
  528. package/dist/types/puzzles/implementations/2x2x2/2x2x2.kpuzzle.json.d.ts.map +0 -1
  529. package/dist/types/puzzles/implementations/2x2x2/2x2x2.kpuzzle.svg.d.ts.map +0 -1
  530. package/dist/types/puzzles/implementations/2x2x2/index.d.ts.map +0 -1
  531. package/dist/types/puzzles/implementations/3x3x3/3x3x3-ll.kpuzzle.svg.d.ts.map +0 -1
  532. package/dist/types/puzzles/implementations/3x3x3/3x3x3.kpuzzle.svg.d.ts.map +0 -1
  533. package/dist/types/puzzles/implementations/3x3x3/index.d.ts.map +0 -1
  534. package/dist/types/puzzles/implementations/clock/clock.kpuzzle.json.d.ts.map +0 -1
  535. package/dist/types/puzzles/implementations/clock/clock.kpuzzle.svg.d.ts.map +0 -1
  536. package/dist/types/puzzles/implementations/clock/index.d.ts.map +0 -1
  537. package/dist/types/puzzles/implementations/fto/index.d.ts.map +0 -1
  538. package/dist/types/puzzles/implementations/megaminx/index.d.ts.map +0 -1
  539. package/dist/types/puzzles/implementations/pyraminx/index.d.ts.map +0 -1
  540. package/dist/types/puzzles/implementations/pyraminx/pyraminx.kpuzzle.json.d.ts.map +0 -1
  541. package/dist/types/puzzles/implementations/pyraminx/pyraminx.kpuzzle.svg.d.ts.map +0 -1
  542. package/dist/types/puzzles/implementations/square1/index.d.ts.map +0 -1
  543. package/dist/types/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.json.d.ts.map +0 -1
  544. package/dist/types/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.svg.d.ts.map +0 -1
  545. package/dist/types/puzzles/index.d.ts.map +0 -1
  546. package/dist/types/puzzles/stickerings/appearance.d.ts.map +0 -1
  547. package/dist/types/puzzles/stickerings/cube-stickerings.d.ts.map +0 -1
  548. package/dist/types/puzzles/stickerings/fto-stickerings.d.ts.map +0 -1
  549. package/dist/types/puzzles/stickerings/global-custom-stickering-hack.d.ts.map +0 -1
  550. package/dist/types/puzzles/stickerings/megaminx-stickerings.d.ts.map +0 -1
  551. package/dist/types/scramble/index.d.ts.map +0 -1
  552. package/dist/types/search/esm-test-worker.d.ts.map +0 -1
  553. package/dist/types/search/index.d.ts.map +0 -1
  554. package/dist/types/search/inside/api.d.ts.map +0 -1
  555. package/dist/types/search/inside/api.spec.d.ts.map +0 -1
  556. package/dist/types/search/inside/entry.d.ts.map +0 -1
  557. package/dist/types/search/inside/inside-worker.d.ts.map +0 -1
  558. package/dist/types/search/inside/solve/addOrientationSuffix.d.ts.map +0 -1
  559. package/dist/types/search/inside/solve/parseSGS.d.ts.map +0 -1
  560. package/dist/types/search/inside/solve/puzzles/2x2x2.d.ts.map +0 -1
  561. package/dist/types/search/inside/solve/puzzles/2x2x2.sgs.json.d.ts.map +0 -1
  562. package/dist/types/search/inside/solve/puzzles/3x3x3/convert.d.ts.map +0 -1
  563. package/dist/types/search/inside/solve/puzzles/3x3x3/filter.d.ts.map +0 -1
  564. package/dist/types/search/inside/solve/puzzles/3x3x3/index.d.ts.map +0 -1
  565. package/dist/types/search/inside/solve/puzzles/3x3x3/legacy-sgs.d.ts.map +0 -1
  566. package/dist/types/search/inside/solve/puzzles/3x3x3-inefficient.sgs.json.d.ts.map +0 -1
  567. package/dist/types/search/inside/solve/puzzles/4x4x4.d.ts.map +0 -1
  568. package/dist/types/search/inside/solve/puzzles/5x5x5.d.ts.map +0 -1
  569. package/dist/types/search/inside/solve/puzzles/big-cubes.d.ts.map +0 -1
  570. package/dist/types/search/inside/solve/puzzles/clock.d.ts.map +0 -1
  571. package/dist/types/search/inside/solve/puzzles/megaminx.d.ts.map +0 -1
  572. package/dist/types/search/inside/solve/puzzles/megaminx.sgs.json.d.ts.map +0 -1
  573. package/dist/types/search/inside/solve/puzzles/pyraminx.d.ts.map +0 -1
  574. package/dist/types/search/inside/solve/puzzles/pyraminx.sgs.json.d.ts.map +0 -1
  575. package/dist/types/search/inside/solve/puzzles/sgs-defs.spec.d.ts.map +0 -1
  576. package/dist/types/search/inside/solve/puzzles/skewb.d.ts.map +0 -1
  577. package/dist/types/search/inside/solve/puzzles/skewb.sgs.json.d.ts.map +0 -1
  578. package/dist/types/search/inside/solve/puzzles/sq1.d.ts.map +0 -1
  579. package/dist/types/search/inside/solve/puzzles/wca-minx.d.ts.map +0 -1
  580. package/dist/types/search/inside/solve/tremble.d.ts.map +0 -1
  581. package/dist/types/search/inside/solve/vendor/cstimer/src/js/lib/mathlib.d.ts.map +0 -1
  582. package/dist/types/search/inside/solve/vendor/cstimer/src/js/scramble/scramble_444.d.ts.map +0 -1
  583. package/dist/types/search/inside/solve/vendor/min2phase/gwt.d.ts.map +0 -1
  584. package/dist/types/search/inside/solve/vendor/random-uint-below/get-random-values.d.ts.map +0 -1
  585. package/dist/types/search/inside/solve/vendor/random-uint-below/index.d.ts.map +0 -1
  586. package/dist/types/search/inside/solve/vendor/random-uint-below/random-choice.d.ts.map +0 -1
  587. package/dist/types/search/inside/solve/vendor/random-uint-below/random-int.d.ts.map +0 -1
  588. package/dist/types/search/inside/solve/vendor/sq12phase/scramble_sq1.d.ts.map +0 -1
  589. package/dist/types/search/instantiator.d.ts.map +0 -1
  590. package/dist/types/search/outside.d.ts.map +0 -1
  591. package/dist/types/search/vendor/comlink-everywhere/inside/index.d.ts +0 -2
  592. package/dist/types/search/vendor/comlink-everywhere/inside/index.d.ts.map +0 -1
  593. package/dist/types/search/vendor/comlink-everywhere/inside/node.d.ts.map +0 -1
  594. package/dist/types/search/vendor/comlink-everywhere/outside/index.d.ts.map +0 -1
  595. package/dist/types/search/vendor/comlink-everywhere/outside/node.d.ts.map +0 -1
  596. package/dist/types/search/worker-inside-generated-string.d.ts.map +0 -1
  597. package/dist/types/stream/index.d.ts.map +0 -1
  598. package/dist/types/stream/process/ReorientedStream.d.ts.map +0 -1
  599. package/dist/types/stream/proxy-event.d.ts.map +0 -1
  600. package/dist/types/stream/twizzle/TwizzleStream.d.ts.map +0 -1
  601. package/dist/types/stream/twizzle/stream-types.d.ts.map +0 -1
  602. package/dist/types/stream/websocket-proxy.d.ts.map +0 -1
  603. package/dist/types/twisty/controllers/AnimationTypes.d.ts.map +0 -1
  604. package/dist/types/twisty/controllers/RenderScheduler.d.ts.map +0 -1
  605. package/dist/types/twisty/controllers/TwistyAnimationController.d.ts.map +0 -1
  606. package/dist/types/twisty/controllers/TwistyPlayerController.d.ts.map +0 -1
  607. package/dist/types/twisty/controllers/easing.d.ts.map +0 -1
  608. package/dist/types/twisty/controllers/indexer/AlgDuration.d.ts.map +0 -1
  609. package/dist/types/twisty/controllers/indexer/AlgIndexer.d.ts.map +0 -1
  610. package/dist/types/twisty/controllers/indexer/SimpleAlgIndexer.d.ts.map +0 -1
  611. package/dist/types/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexer.d.ts.map +0 -1
  612. package/dist/types/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexerV2.d.ts.map +0 -1
  613. package/dist/types/twisty/controllers/indexer/simultaneous-moves/simul-moves.d.ts.map +0 -1
  614. package/dist/types/twisty/controllers/indexer/tree/AlgWalker.d.ts.map +0 -1
  615. package/dist/types/twisty/controllers/indexer/tree/TreeAlgIndexer.d.ts.map +0 -1
  616. package/dist/types/twisty/controllers/indexer/tree/chunkAlgs.d.ts.map +0 -1
  617. package/dist/types/twisty/controllers/stream/timeline-move-calculation-draft.d.ts.map +0 -1
  618. package/dist/types/twisty/heavy-code-imports/3d.d.ts.map +0 -1
  619. package/dist/types/twisty/heavy-code-imports/dynamic-entries/3d.d.ts.map +0 -1
  620. package/dist/types/twisty/index.d.ts.map +0 -1
  621. package/dist/types/twisty/model/PromiseFreshener.d.ts.map +0 -1
  622. package/dist/types/twisty/model/TwistyPlayerModel.d.ts.map +0 -1
  623. package/dist/types/twisty/model/UserVisibleErrorTracker.d.ts.map +0 -1
  624. package/dist/types/twisty/model/helpers.d.ts.map +0 -1
  625. package/dist/types/twisty/model/props/TwistyProp.d.ts.map +0 -1
  626. package/dist/types/twisty/model/props/TwistyProp.spec.d.ts.map +0 -1
  627. package/dist/types/twisty/model/props/TwistyPropDebugger.d.ts.map +0 -1
  628. package/dist/types/twisty/model/props/general/URLProp.d.ts.map +0 -1
  629. package/dist/types/twisty/model/props/puzzle/display/FoundationDisplayProp.d.ts.map +0 -1
  630. package/dist/types/twisty/model/props/puzzle/display/HintFaceletProp.d.ts.map +0 -1
  631. package/dist/types/twisty/model/props/puzzle/display/SpriteProp.d.ts.map +0 -1
  632. package/dist/types/twisty/model/props/puzzle/display/StickeringProp.d.ts.map +0 -1
  633. package/dist/types/twisty/model/props/puzzle/state/AlgProp.d.ts.map +0 -1
  634. package/dist/types/twisty/model/props/puzzle/state/AlgTransformationProp.d.ts.map +0 -1
  635. package/dist/types/twisty/model/props/puzzle/state/AnchoredStartProp.d.ts.map +0 -1
  636. package/dist/types/twisty/model/props/puzzle/state/CatchUpMoveProp.d.ts.map +0 -1
  637. package/dist/types/twisty/model/props/puzzle/state/CurrentLeavesProp.d.ts.map +0 -1
  638. package/dist/types/twisty/model/props/puzzle/state/CurrentLeavesSimplified.d.ts.map +0 -1
  639. package/dist/types/twisty/model/props/puzzle/state/CurrentTransformationProp.d.ts +0 -15
  640. package/dist/types/twisty/model/props/puzzle/state/CurrentTransformationProp.d.ts.map +0 -1
  641. package/dist/types/twisty/model/props/puzzle/state/IndexerConstructorProp.d.ts.map +0 -1
  642. package/dist/types/twisty/model/props/puzzle/state/IndexerConstructorRequestProp.d.ts.map +0 -1
  643. package/dist/types/twisty/model/props/puzzle/state/IndexerProp.d.ts.map +0 -1
  644. package/dist/types/twisty/model/props/puzzle/state/LegacyPositionProp.d.ts.map +0 -1
  645. package/dist/types/twisty/model/props/puzzle/state/MovePressInputProp.d.ts.map +0 -1
  646. package/dist/types/twisty/model/props/puzzle/state/NaiveMoveCountProp.d.ts.map +0 -1
  647. package/dist/types/twisty/model/props/puzzle/state/PuzzleAlgProp.d.ts.map +0 -1
  648. package/dist/types/twisty/model/props/puzzle/state/SetupAnchorProp.d.ts.map +0 -1
  649. package/dist/types/twisty/model/props/puzzle/structure/PuzzleDefProp.d.ts +0 -11
  650. package/dist/types/twisty/model/props/puzzle/structure/PuzzleDefProp.d.ts.map +0 -1
  651. package/dist/types/twisty/model/props/puzzle/structure/PuzzleDescriptionProp.d.ts.map +0 -1
  652. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDProp.d.ts.map +0 -1
  653. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDRequestProp.d.ts.map +0 -1
  654. package/dist/types/twisty/model/props/puzzle/structure/PuzzleLoaderProp.d.ts.map +0 -1
  655. package/dist/types/twisty/model/props/timeline/CoarseTimelineInfoProp.d.ts.map +0 -1
  656. package/dist/types/twisty/model/props/timeline/DetailedTimelineInfoProp.d.ts.map +0 -1
  657. package/dist/types/twisty/model/props/timeline/PlayingInfoProp.d.ts.map +0 -1
  658. package/dist/types/twisty/model/props/timeline/TempoScaleProp.d.ts.map +0 -1
  659. package/dist/types/twisty/model/props/timeline/TimestampRequestProp.d.ts.map +0 -1
  660. package/dist/types/twisty/model/props/viewer/BackViewProp.d.ts.map +0 -1
  661. package/dist/types/twisty/model/props/viewer/BackgroundProp.d.ts.map +0 -1
  662. package/dist/types/twisty/model/props/viewer/ButtonAppearanceProp.d.ts.map +0 -1
  663. package/dist/types/twisty/model/props/viewer/ControlPanelProp.d.ts.map +0 -1
  664. package/dist/types/twisty/model/props/viewer/LatitudeLimit.d.ts.map +0 -1
  665. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesProp.d.ts.map +0 -1
  666. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesRequestProp.d.ts.map +0 -1
  667. package/dist/types/twisty/model/props/viewer/TimeRangeProp.d.ts.map +0 -1
  668. package/dist/types/twisty/model/props/viewer/ViewerLinkProp.d.ts.map +0 -1
  669. package/dist/types/twisty/model/props/viewer/VisualizationProp.d.ts.map +0 -1
  670. package/dist/types/twisty/model/props/viewer/VisualizationStrategyProp.d.ts.map +0 -1
  671. package/dist/types/twisty/views/2D/Twisty2DPuzzle.css.d.ts.map +0 -1
  672. package/dist/types/twisty/views/2D/Twisty2DPuzzle.d.ts.map +0 -1
  673. package/dist/types/twisty/views/2D/Twisty2DPuzzleWrapper.d.ts.map +0 -1
  674. package/dist/types/twisty/views/2D/Twisty2DSceneWrapper.d.ts.map +0 -1
  675. package/dist/types/twisty/views/3D/DragTracker.d.ts.map +0 -1
  676. package/dist/types/twisty/views/3D/RendererPool.d.ts.map +0 -1
  677. package/dist/types/twisty/views/3D/TAU.d.ts.map +0 -1
  678. package/dist/types/twisty/views/3D/Twisty3DPuzzleWrapper.d.ts.map +0 -1
  679. package/dist/types/twisty/views/3D/Twisty3DRenderTarget.d.ts.map +0 -1
  680. package/dist/types/twisty/views/3D/Twisty3DScene.d.ts.map +0 -1
  681. package/dist/types/twisty/views/3D/Twisty3DSceneWrapper.d.ts.map +0 -1
  682. package/dist/types/twisty/views/3D/Twisty3DVantage.css.d.ts.map +0 -1
  683. package/dist/types/twisty/views/3D/Twisty3DVantage.d.ts.map +0 -1
  684. package/dist/types/twisty/views/3D/TwistyOrbitControls.d.ts.map +0 -1
  685. package/dist/types/twisty/views/3D/TwistyOrbitControls.spec.d.ts.map +0 -1
  686. package/dist/types/twisty/views/3D/puzzles/Cube3D.d.ts.map +0 -1
  687. package/dist/types/twisty/views/3D/puzzles/KPuzzleWrapper.d.ts +0 -48
  688. package/dist/types/twisty/views/3D/puzzles/KPuzzleWrapper.d.ts.map +0 -1
  689. package/dist/types/twisty/views/3D/puzzles/PG3D.d.ts.map +0 -1
  690. package/dist/types/twisty/views/3D/puzzles/Twisty3DPuzzle.d.ts.map +0 -1
  691. package/dist/types/twisty/views/ClassListManager.d.ts.map +0 -1
  692. package/dist/types/twisty/views/ManagedCustomElement.d.ts.map +0 -1
  693. package/dist/types/twisty/views/TwistyAlgEditor/LeafTokens.d.ts.map +0 -1
  694. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.css.d.ts.map +0 -1
  695. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.d.ts.map +0 -1
  696. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.spec.d.ts.map +0 -1
  697. package/dist/types/twisty/views/TwistyAlgEditor/model.d.ts.map +0 -1
  698. package/dist/types/twisty/views/TwistyAlgViewer.css.d.ts.map +0 -1
  699. package/dist/types/twisty/views/TwistyAlgViewer.d.ts.map +0 -1
  700. package/dist/types/twisty/views/TwistyPlayer.css.d.ts.map +0 -1
  701. package/dist/types/twisty/views/TwistyPlayer.d.ts.map +0 -1
  702. package/dist/types/twisty/views/TwistyPlayerSettable.d.ts.map +0 -1
  703. package/dist/types/twisty/views/TwistyViewerWrapper.css.d.ts.map +0 -1
  704. package/dist/types/twisty/views/canvas.d.ts.map +0 -1
  705. package/dist/types/twisty/views/control-panel/TwistyButtonsV2.css.d.ts.map +0 -1
  706. package/dist/types/twisty/views/control-panel/TwistyButtonsV2.d.ts.map +0 -1
  707. package/dist/types/twisty/views/control-panel/TwistyScrubber.css.d.ts.map +0 -1
  708. package/dist/types/twisty/views/control-panel/TwistyScrubberV2.d.ts.map +0 -1
  709. package/dist/types/twisty/views/control-panel/webkit-fullscreen.d.ts.map +0 -1
  710. package/dist/types/twisty/views/document.d.ts.map +0 -1
  711. package/dist/types/twisty/views/node-custom-element-shims.d.ts.map +0 -1
  712. package/dist/types/twisty/views/screenshot.d.ts.map +0 -1
  713. package/dist/types/twisty/views/stream/TwistyStreamSource.css.d.ts.map +0 -1
  714. package/dist/types/twisty/views/stream/TwistyStreamSource.d.ts.map +0 -1
  715. package/dist/types/vendor/p-lazy/p-lazy.d.ts.map +0 -1
  716. package/dist/types/vendor/three/examples/jsm/libs/stats.modified.module.d.ts.map +0 -1
  717. package/docs/.DS_Store +0 -0
  718. package/docs/CNAME +0 -1
  719. package/docs/cubing/.DS_Store +0 -0
  720. package/docs/cubing/alg/index.html +0 -174
  721. package/docs/cubing/api/index.html +0 -158
  722. package/docs/cubing/index.html +0 -151
  723. package/docs/cubing/scramble/index.html +0 -138
  724. package/docs/cubing/twisty/index.html +0 -329
  725. package/docs/favicon.ico +0 -0
  726. package/docs/index.html +0 -20
  727. package/docs/main.css +0 -192
  728. package/kpuzzle/index.d.ts +0 -1
  729. package/notation/index.d.ts +0 -1
  730. package/protocol/index.d.ts +0 -1
  731. package/puzzle-geometry/index.d.ts +0 -1
  732. package/puzzles/index.d.ts +0 -1
  733. package/scramble/index.d.ts +0 -1
  734. package/search/index.d.ts +0 -1
  735. package/src/cubing/.DS_Store +0 -0
  736. package/src/cubing/alg/Alg.spec.ts +0 -10
  737. package/src/cubing/alg/Alg.ts +0 -290
  738. package/src/cubing/alg/AlgBuilder.ts +0 -33
  739. package/src/cubing/alg/Serializable.ts +0 -29
  740. package/src/cubing/alg/common.ts +0 -59
  741. package/src/cubing/alg/debug.ts +0 -27
  742. package/src/cubing/alg/example.ts +0 -152
  743. package/src/cubing/alg/index.ts +0 -21
  744. package/src/cubing/alg/is.ts +0 -38
  745. package/src/cubing/alg/iteration.ts +0 -45
  746. package/src/cubing/alg/keyboard.ts +0 -48
  747. package/src/cubing/alg/limits.ts +0 -4
  748. package/src/cubing/alg/operation.spec.ts +0 -48
  749. package/src/cubing/alg/operation.ts +0 -36
  750. package/src/cubing/alg/parse.spec.ts +0 -75
  751. package/src/cubing/alg/parse.ts +0 -408
  752. package/src/cubing/alg/test/alg-comparison.ts +0 -23
  753. package/src/cubing/alg/test/alg.spec.ts +0 -348
  754. package/src/cubing/alg/traversal.ts +0 -284
  755. package/src/cubing/alg/units/QuantumWithAmount.ts +0 -55
  756. package/src/cubing/alg/units/Unit.ts +0 -11
  757. package/src/cubing/alg/units/containers/Commutator.ts +0 -85
  758. package/src/cubing/alg/units/containers/Conjugate.ts +0 -53
  759. package/src/cubing/alg/units/containers/Grouping.ts +0 -116
  760. package/src/cubing/alg/units/index.ts +0 -8
  761. package/src/cubing/alg/units/leaves/LineComment.spec.ts +0 -35
  762. package/src/cubing/alg/units/leaves/LineComment.ts +0 -48
  763. package/src/cubing/alg/units/leaves/Move.spec.ts +0 -15
  764. package/src/cubing/alg/units/leaves/Move.ts +0 -265
  765. package/src/cubing/alg/units/leaves/Newline.ts +0 -24
  766. package/src/cubing/alg/units/leaves/Pause.ts +0 -24
  767. package/src/cubing/alg/url.spec.ts +0 -10
  768. package/src/cubing/alg/url.ts +0 -133
  769. package/src/cubing/alg/validation.ts +0 -62
  770. package/src/cubing/alg/warnOnce.ts +0 -7
  771. package/src/cubing/bluetooth/connect/index.ts +0 -93
  772. package/src/cubing/bluetooth/debug.ts +0 -18
  773. package/src/cubing/bluetooth/docs/gan-robot.md +0 -60
  774. package/src/cubing/bluetooth/docs/gan356i.md +0 -309
  775. package/src/cubing/bluetooth/index.ts +0 -19
  776. package/src/cubing/bluetooth/keyboard.ts +0 -55
  777. package/src/cubing/bluetooth/smart-puzzle/Heykube.ts +0 -165
  778. package/src/cubing/bluetooth/smart-puzzle/bluetooth-puzzle.ts +0 -95
  779. package/src/cubing/bluetooth/smart-puzzle/connect.ts +0 -19
  780. package/src/cubing/bluetooth/smart-puzzle/endianness.ts +0 -15
  781. package/src/cubing/bluetooth/smart-puzzle/gan.ts +0 -481
  782. package/src/cubing/bluetooth/smart-puzzle/giiker.spec.ts +0 -28
  783. package/src/cubing/bluetooth/smart-puzzle/giiker.ts +0 -277
  784. package/src/cubing/bluetooth/smart-puzzle/gocube.ts +0 -167
  785. package/src/cubing/bluetooth/smart-puzzle/unsafe-raw-aes.ts +0 -66
  786. package/src/cubing/bluetooth/smart-robot/GanRobot.ts +0 -311
  787. package/src/cubing/bluetooth/smart-robot/index.ts +0 -13
  788. package/src/cubing/bluetooth/smart-timer/GanTimer.ts +0 -141
  789. package/src/cubing/bluetooth/smart-timer/index.ts +0 -13
  790. package/src/cubing/bluetooth/transformer.ts +0 -74
  791. package/src/cubing/esm-test-worker.js +0 -5
  792. package/src/cubing/kpuzzle/3x3x3/3x3x3.kpuzzle.json.spec.ts +0 -40
  793. package/src/cubing/kpuzzle/3x3x3/3x3x3.kpuzzle.json.ts +0 -339
  794. package/src/cubing/kpuzzle/canon.spec.ts +0 -48
  795. package/src/cubing/kpuzzle/canonicalize.ts +0 -325
  796. package/src/cubing/kpuzzle/definition_types.ts +0 -23
  797. package/src/cubing/kpuzzle/index.ts +0 -33
  798. package/src/cubing/kpuzzle/kpuzzle.spec.ts +0 -12
  799. package/src/cubing/kpuzzle/kpuzzle.ts +0 -124
  800. package/src/cubing/kpuzzle/move_notation.ts +0 -9
  801. package/src/cubing/kpuzzle/parser/index.ts +0 -1
  802. package/src/cubing/kpuzzle/parser/parser-peggy.js +0 -1221
  803. package/src/cubing/kpuzzle/parser/parser-peggy.peggy +0 -72
  804. package/src/cubing/kpuzzle/parser/parser-shim.ts +0 -11
  805. package/src/cubing/kpuzzle/parser/parser.js +0 -0
  806. package/src/cubing/kpuzzle/prunetable.spec.ts +0 -19
  807. package/src/cubing/kpuzzle/pruningtable.ts +0 -99
  808. package/src/cubing/kpuzzle/puzzle-orientation.ts +0 -34
  809. package/src/cubing/kpuzzle/svg.ts +0 -290
  810. package/src/cubing/kpuzzle/transformations.spec.ts +0 -75
  811. package/src/cubing/kpuzzle/transformations.ts +0 -258
  812. package/src/cubing/notation/CountAnimatedLeaves.ts +0 -56
  813. package/src/cubing/notation/CountMoves.ts +0 -89
  814. package/src/cubing/notation/index.ts +0 -4
  815. package/src/cubing/protocol/binary/binary3x3x3.spec.ts +0 -143
  816. package/src/cubing/protocol/binary/binary3x3x3.ts +0 -226
  817. package/src/cubing/protocol/binary/hex.spec.ts +0 -17
  818. package/src/cubing/protocol/binary/hex.ts +0 -12
  819. package/src/cubing/protocol/binary/orbit-indexing.spec.ts +0 -49
  820. package/src/cubing/protocol/binary/orbit-indexing.ts +0 -68
  821. package/src/cubing/protocol/binary/puzzle-orientation.ts +0 -69
  822. package/src/cubing/protocol/index.ts +0 -12
  823. package/src/cubing/puzzle-geometry/FaceNameSwizzler.ts +0 -148
  824. package/src/cubing/puzzle-geometry/Options.ts +0 -179
  825. package/src/cubing/puzzle-geometry/PGPuzzles.spec.ts +0 -127
  826. package/src/cubing/puzzle-geometry/PGPuzzles.ts +0 -80
  827. package/src/cubing/puzzle-geometry/Perm.ts +0 -154
  828. package/src/cubing/puzzle-geometry/PermOriSet.ts +0 -765
  829. package/src/cubing/puzzle-geometry/PlatonicGenerator.ts +0 -146
  830. package/src/cubing/puzzle-geometry/PuzzleGeometry.ts +0 -3009
  831. package/src/cubing/puzzle-geometry/Quat.spec.ts +0 -10
  832. package/src/cubing/puzzle-geometry/Quat.ts +0 -325
  833. package/src/cubing/puzzle-geometry/SchreierSims.ts +0 -144
  834. package/src/cubing/puzzle-geometry/index.ts +0 -17
  835. package/src/cubing/puzzle-geometry/interfaces.ts +0 -6
  836. package/src/cubing/puzzle-geometry/notation-mapping/FTONotationMapper.ts +0 -38
  837. package/src/cubing/puzzle-geometry/notation-mapping/FaceRenamingMapper.ts +0 -59
  838. package/src/cubing/puzzle-geometry/notation-mapping/MegaminxScramblingNotationMapper.ts +0 -50
  839. package/src/cubing/puzzle-geometry/notation-mapping/NotationMapper.ts +0 -6
  840. package/src/cubing/puzzle-geometry/notation-mapping/NullMapper.ts +0 -12
  841. package/src/cubing/puzzle-geometry/notation-mapping/NxNxNCubeMapper.ts +0 -77
  842. package/src/cubing/puzzle-geometry/notation-mapping/PyraminxNotationMapper.ts +0 -121
  843. package/src/cubing/puzzle-geometry/notation-mapping/SkewbNotationMapper.ts +0 -103
  844. package/src/cubing/puzzle-geometry/notation-mapping/index.ts +0 -13
  845. package/src/cubing/puzzle-geometry/orientcenters.spec.ts +0 -55
  846. package/src/cubing/puzzles/PuzzleLoader.ts +0 -20
  847. package/src/cubing/puzzles/async/async-pg3d.ts +0 -73
  848. package/src/cubing/puzzles/customPGPuzzleLoader.ts +0 -60
  849. package/src/cubing/puzzles/implementations/2x2x2/2x2x2.kpuzzle.json.ts +0 -92
  850. package/src/cubing/puzzles/implementations/2x2x2/2x2x2.kpuzzle.svg.ts +0 -45
  851. package/src/cubing/puzzles/implementations/2x2x2/index.ts +0 -25
  852. package/src/cubing/puzzles/implementations/2x2x2/svg/2x2x2.kpuzzle.svg +0 -45
  853. package/src/cubing/puzzles/implementations/3x3x3/3x3x3-ll.kpuzzle.svg.ts +0 -108
  854. package/src/cubing/puzzles/implementations/3x3x3/3x3x3.kpuzzle.svg.ts +0 -128
  855. package/src/cubing/puzzles/implementations/3x3x3/index.ts +0 -33
  856. package/src/cubing/puzzles/implementations/3x3x3/src/3x3x3-ll.kpuzzle.svg +0 -108
  857. package/src/cubing/puzzles/implementations/3x3x3/src/3x3x3.kpuzzle.svg +0 -128
  858. package/src/cubing/puzzles/implementations/TODO/svg/alg/3x3x3.kpuzzle.original.svg +0 -128
  859. package/src/cubing/puzzles/implementations/TODO/svg/alg/3x3x3.kpuzzle.outlined.svg +0 -486
  860. package/src/cubing/puzzles/implementations/TODO/svg/alg/3x3x3.kpuzzle.spaced.svg +0 -128
  861. package/src/cubing/puzzles/implementations/clock/clock.kpuzzle.json.ts +0 -241
  862. package/src/cubing/puzzles/implementations/clock/clock.kpuzzle.svg.ts +0 -369
  863. package/src/cubing/puzzles/implementations/clock/index.ts +0 -14
  864. package/src/cubing/puzzles/implementations/clock/src/clock.kpuzzle.svg +0 -369
  865. package/src/cubing/puzzles/implementations/fto/index.ts +0 -28
  866. package/src/cubing/puzzles/implementations/megaminx/index.ts +0 -20
  867. package/src/cubing/puzzles/implementations/pyraminx/index.ts +0 -18
  868. package/src/cubing/puzzles/implementations/pyraminx/pyraminx.kpuzzle.json.ts +0 -84
  869. package/src/cubing/puzzles/implementations/pyraminx/pyraminx.kpuzzle.svg.ts +0 -88
  870. package/src/cubing/puzzles/implementations/pyraminx/src/pyraminx.kpuzzle.svg +0 -87
  871. package/src/cubing/puzzles/implementations/square1/index.ts +0 -14
  872. package/src/cubing/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.json.ts +0 -62
  873. package/src/cubing/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.svg.ts +0 -295
  874. package/src/cubing/puzzles/implementations/square1/src/sq1-hyperorbit.kpuzzle.svg +0 -295
  875. package/src/cubing/puzzles/implementations/square1/src/sq1-simple.svg +0 -60
  876. package/src/cubing/puzzles/index.ts +0 -92
  877. package/src/cubing/puzzles/stickerings/appearance.ts +0 -292
  878. package/src/cubing/puzzles/stickerings/cube-stickerings.ts +0 -286
  879. package/src/cubing/puzzles/stickerings/fto-stickerings.ts +0 -105
  880. package/src/cubing/puzzles/stickerings/global-custom-stickering-hack.ts +0 -61
  881. package/src/cubing/puzzles/stickerings/megaminx-stickerings.ts +0 -26
  882. package/src/cubing/scramble/index.ts +0 -1
  883. package/src/cubing/search/.gitignore +0 -1
  884. package/src/cubing/search/esm-test-worker.js +0 -14
  885. package/src/cubing/search/index.ts +0 -12
  886. package/src/cubing/search/inside/api.spec.ts +0 -37
  887. package/src/cubing/search/inside/api.ts +0 -171
  888. package/src/cubing/search/inside/entry.js +0 -4
  889. package/src/cubing/search/inside/inside-worker.ts +0 -13
  890. package/src/cubing/search/inside/solve/addOrientationSuffix.ts +0 -17
  891. package/src/cubing/search/inside/solve/parseSGS.ts +0 -119
  892. package/src/cubing/search/inside/solve/puzzles/2x2x2.ts +0 -92
  893. package/src/cubing/search/inside/solve/puzzles/3x3x3/convert.ts +0 -137
  894. package/src/cubing/search/inside/solve/puzzles/3x3x3/filter.ts +0 -60
  895. package/src/cubing/search/inside/solve/puzzles/3x3x3/index.ts +0 -57
  896. package/src/cubing/search/inside/solve/puzzles/3x3x3/legacy-sgs.ts +0 -291
  897. package/src/cubing/search/inside/solve/puzzles/3x3x3-inefficient.sgs.json.ts +0 -272
  898. package/src/cubing/search/inside/solve/puzzles/4x4x4.ts +0 -16
  899. package/src/cubing/search/inside/solve/puzzles/5x5x5.ts +0 -12
  900. package/src/cubing/search/inside/solve/puzzles/FTO.sgs +0 -264
  901. package/src/cubing/search/inside/solve/puzzles/big-cubes.ts +0 -78
  902. package/src/cubing/search/inside/solve/puzzles/clock.ts +0 -48
  903. package/src/cubing/search/inside/solve/puzzles/megaminx.ts +0 -51
  904. package/src/cubing/search/inside/solve/puzzles/pyraminx.ts +0 -48
  905. package/src/cubing/search/inside/solve/puzzles/sgs-defs.spec.ts +0 -27
  906. package/src/cubing/search/inside/solve/puzzles/skewb.sgs.json.ts +0 -113
  907. package/src/cubing/search/inside/solve/puzzles/skewb.ts +0 -65
  908. package/src/cubing/search/inside/solve/puzzles/sq1.ts +0 -6
  909. package/src/cubing/search/inside/solve/puzzles/wca-minx.ts +0 -32
  910. package/src/cubing/search/inside/solve/tremble.ts +0 -212
  911. package/src/cubing/search/inside/solve/vendor/cstimer/LICENSE +0 -674
  912. package/src/cubing/search/inside/solve/vendor/cstimer/src/js/lib/mathlib.ts +0 -54
  913. package/src/cubing/search/inside/solve/vendor/min2phase/gwt.d.ts +0 -2
  914. package/src/cubing/search/inside/solve/vendor/random-uint-below/get-random-values.ts +0 -38
  915. package/src/cubing/search/inside/solve/vendor/random-uint-below/index.ts +0 -12
  916. package/src/cubing/search/inside/solve/vendor/random-uint-below/random-choice.ts +0 -9
  917. package/src/cubing/search/inside/solve/vendor/random-uint-below/random-int.ts +0 -64
  918. package/src/cubing/search/instantiator.ts +0 -60
  919. package/src/cubing/search/outside.ts +0 -110
  920. package/src/cubing/search/vendor/comlink-everywhere/comlink-everywhere.webloc +0 -8
  921. package/src/cubing/search/vendor/comlink-everywhere/inside/index.js +0 -16
  922. package/src/cubing/search/vendor/comlink-everywhere/inside/node.js +0 -6
  923. package/src/cubing/search/vendor/comlink-everywhere/outside/index.d.ts +0 -6
  924. package/src/cubing/search/vendor/comlink-everywhere/outside/index.js +0 -31
  925. package/src/cubing/search/vendor/comlink-everywhere/outside/node.js +0 -41
  926. package/src/cubing/search/worker-inside-generated-string.js +0 -1
  927. package/src/cubing/stream/index.ts +0 -12
  928. package/src/cubing/stream/process/ReorientedStream.ts +0 -93
  929. package/src/cubing/stream/proxy-event.ts +0 -16
  930. package/src/cubing/stream/twizzle/TwizzleStream.ts +0 -53
  931. package/src/cubing/stream/twizzle/stream-types.ts +0 -45
  932. package/src/cubing/stream/websocket-proxy.ts +0 -73
  933. package/src/cubing/twisty/.DS_Store +0 -0
  934. package/src/cubing/twisty/controllers/.DS_Store +0 -0
  935. package/src/cubing/twisty/controllers/AnimationTypes.ts +0 -50
  936. package/src/cubing/twisty/controllers/RenderScheduler.ts +0 -28
  937. package/src/cubing/twisty/controllers/TwistyAnimationController.ts +0 -325
  938. package/src/cubing/twisty/controllers/TwistyPlayerController.ts +0 -38
  939. package/src/cubing/twisty/controllers/animation/.DS_Store +0 -0
  940. package/src/cubing/twisty/controllers/easing.ts +0 -3
  941. package/src/cubing/twisty/controllers/indexer/.DS_Store +0 -0
  942. package/src/cubing/twisty/controllers/indexer/AlgDuration.ts +0 -94
  943. package/src/cubing/twisty/controllers/indexer/AlgIndexer.ts +0 -87
  944. package/src/cubing/twisty/controllers/indexer/SimpleAlgIndexer.ts +0 -76
  945. package/src/cubing/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexer.ts +0 -181
  946. package/src/cubing/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexerV2.ts +0 -243
  947. package/src/cubing/twisty/controllers/indexer/simultaneous-moves/simul-moves.ts +0 -193
  948. package/src/cubing/twisty/controllers/indexer/tree/AlgWalker.ts +0 -439
  949. package/src/cubing/twisty/controllers/indexer/tree/TreeAlgIndexer.ts +0 -97
  950. package/src/cubing/twisty/controllers/indexer/tree/chunkAlgs.ts +0 -81
  951. package/src/cubing/twisty/controllers/stream/timeline-move-calculation-draft.spec.ts.TODO +0 -59
  952. package/src/cubing/twisty/controllers/stream/timeline-move-calculation-draft.ts +0 -162
  953. package/src/cubing/twisty/heavy-code-imports/.DS_Store +0 -0
  954. package/src/cubing/twisty/heavy-code-imports/3d.ts +0 -18
  955. package/src/cubing/twisty/heavy-code-imports/dynamic-entries/3d.ts +0 -31
  956. package/src/cubing/twisty/index.ts +0 -24
  957. package/src/cubing/twisty/model/.DS_Store +0 -0
  958. package/src/cubing/twisty/model/PromiseFreshener.ts +0 -49
  959. package/src/cubing/twisty/model/TwistyPlayerModel.ts +0 -254
  960. package/src/cubing/twisty/model/UserVisibleErrorTracker.ts +0 -22
  961. package/src/cubing/twisty/model/helpers.ts +0 -47
  962. package/src/cubing/twisty/model/props/.DS_Store +0 -0
  963. package/src/cubing/twisty/model/props/TwistyProp.spec.ts +0 -38
  964. package/src/cubing/twisty/model/props/TwistyProp.ts +0 -366
  965. package/src/cubing/twisty/model/props/TwistyPropDebugger.ts +0 -370
  966. package/src/cubing/twisty/model/props/general/URLProp.ts +0 -14
  967. package/src/cubing/twisty/model/props/puzzle/.DS_Store +0 -0
  968. package/src/cubing/twisty/model/props/puzzle/display/FoundationDisplayProp.ts +0 -9
  969. package/src/cubing/twisty/model/props/puzzle/display/HintFaceletProp.ts +0 -15
  970. package/src/cubing/twisty/model/props/puzzle/display/SpriteProp.ts +0 -43
  971. package/src/cubing/twisty/model/props/puzzle/display/StickeringProp.ts +0 -54
  972. package/src/cubing/twisty/model/props/puzzle/state/AlgProp.ts +0 -91
  973. package/src/cubing/twisty/model/props/puzzle/state/AlgTransformationProp.ts +0 -28
  974. package/src/cubing/twisty/model/props/puzzle/state/AnchoredStartProp.ts +0 -44
  975. package/src/cubing/twisty/model/props/puzzle/state/CatchUpMoveProp.ts +0 -17
  976. package/src/cubing/twisty/model/props/puzzle/state/CurrentLeavesProp.ts +0 -109
  977. package/src/cubing/twisty/model/props/puzzle/state/CurrentLeavesSimplified.ts +0 -48
  978. package/src/cubing/twisty/model/props/puzzle/state/CurrentTransformationProp.ts +0 -46
  979. package/src/cubing/twisty/model/props/puzzle/state/IndexerConstructorProp.ts +0 -53
  980. package/src/cubing/twisty/model/props/puzzle/state/IndexerConstructorRequestProp.ts +0 -15
  981. package/src/cubing/twisty/model/props/puzzle/state/IndexerProp.ts +0 -24
  982. package/src/cubing/twisty/model/props/puzzle/state/LegacyPositionProp.ts +0 -22
  983. package/src/cubing/twisty/model/props/puzzle/state/MovePressInputProp.ts +0 -9
  984. package/src/cubing/twisty/model/props/puzzle/state/NaiveMoveCountProp.ts +0 -20
  985. package/src/cubing/twisty/model/props/puzzle/state/PuzzleAlgProp.ts +0 -28
  986. package/src/cubing/twisty/model/props/puzzle/state/SetupAnchorProp.ts +0 -14
  987. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleDefProp.ts +0 -14
  988. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleDescriptionProp.ts +0 -14
  989. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleIDProp.ts +0 -12
  990. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleIDRequestProp.ts +0 -36
  991. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleLoaderProp.ts +0 -38
  992. package/src/cubing/twisty/model/props/timeline/CoarseTimelineInfoProp.ts +0 -45
  993. package/src/cubing/twisty/model/props/timeline/DetailedTimelineInfoProp.ts +0 -78
  994. package/src/cubing/twisty/model/props/timeline/PlayingInfoProp.ts +0 -48
  995. package/src/cubing/twisty/model/props/timeline/TempoScaleProp.ts +0 -13
  996. package/src/cubing/twisty/model/props/timeline/TimestampRequestProp.ts +0 -38
  997. package/src/cubing/twisty/model/props/viewer/BackViewProp.ts +0 -16
  998. package/src/cubing/twisty/model/props/viewer/BackgroundProp.ts +0 -15
  999. package/src/cubing/twisty/model/props/viewer/ButtonAppearanceProp.ts +0 -86
  1000. package/src/cubing/twisty/model/props/viewer/ControlPanelProp.ts +0 -14
  1001. package/src/cubing/twisty/model/props/viewer/LatitudeLimit.ts +0 -11
  1002. package/src/cubing/twisty/model/props/viewer/OrbitCoordinatesProp.ts +0 -127
  1003. package/src/cubing/twisty/model/props/viewer/OrbitCoordinatesRequestProp.ts +0 -69
  1004. package/src/cubing/twisty/model/props/viewer/TimeRangeProp.ts +0 -15
  1005. package/src/cubing/twisty/model/props/viewer/ViewerLinkProp.ts +0 -14
  1006. package/src/cubing/twisty/model/props/viewer/VisualizationProp.ts +0 -17
  1007. package/src/cubing/twisty/model/props/viewer/VisualizationStrategyProp.ts +0 -45
  1008. package/src/cubing/twisty/old/.DS_Store +0 -0
  1009. package/src/cubing/twisty/old/animation/.DS_Store +0 -0
  1010. package/src/cubing/twisty/old/dom/.DS_Store +0 -0
  1011. package/src/cubing/twisty/views/.DS_Store +0 -0
  1012. package/src/cubing/twisty/views/2D/Twisty2DPuzzle.css.ts +0 -26
  1013. package/src/cubing/twisty/views/2D/Twisty2DPuzzle.ts +0 -146
  1014. package/src/cubing/twisty/views/2D/Twisty2DPuzzleWrapper.ts +0 -52
  1015. package/src/cubing/twisty/views/2D/Twisty2DSceneWrapper.ts +0 -77
  1016. package/src/cubing/twisty/views/3D/.DS_Store +0 -0
  1017. package/src/cubing/twisty/views/3D/DragTracker.ts +0 -184
  1018. package/src/cubing/twisty/views/3D/RendererPool.ts +0 -54
  1019. package/src/cubing/twisty/views/3D/TAU.ts +0 -2
  1020. package/src/cubing/twisty/views/3D/Twisty3DPuzzleWrapper.ts +0 -214
  1021. package/src/cubing/twisty/views/3D/Twisty3DRenderTarget.ts +0 -5
  1022. package/src/cubing/twisty/views/3D/Twisty3DScene.ts +0 -42
  1023. package/src/cubing/twisty/views/3D/Twisty3DSceneWrapper.ts +0 -189
  1024. package/src/cubing/twisty/views/3D/Twisty3DVantage.css.ts +0 -32
  1025. package/src/cubing/twisty/views/3D/Twisty3DVantage.ts +0 -312
  1026. package/src/cubing/twisty/views/3D/TwistyOrbitControls.spec.ts +0 -213
  1027. package/src/cubing/twisty/views/3D/TwistyOrbitControls.ts +0 -176
  1028. package/src/cubing/twisty/views/3D/puzzles/Cube3D.ts +0 -966
  1029. package/src/cubing/twisty/views/3D/puzzles/KPuzzleWrapper.ts +0 -142
  1030. package/src/cubing/twisty/views/3D/puzzles/PG3D.ts +0 -1078
  1031. package/src/cubing/twisty/views/3D/puzzles/Twisty3DPuzzle.ts +0 -6
  1032. package/src/cubing/twisty/views/ClassListManager.ts +0 -34
  1033. package/src/cubing/twisty/views/ManagedCustomElement.ts +0 -76
  1034. package/src/cubing/twisty/views/TwistyAlgEditor/LeafTokens.ts +0 -116
  1035. package/src/cubing/twisty/views/TwistyAlgEditor/TwistyAlgEditor.css.ts +0 -72
  1036. package/src/cubing/twisty/views/TwistyAlgEditor/TwistyAlgEditor.spec.ts +0 -57
  1037. package/src/cubing/twisty/views/TwistyAlgEditor/TwistyAlgEditor.ts +0 -368
  1038. package/src/cubing/twisty/views/TwistyAlgEditor/model.ts +0 -179
  1039. package/src/cubing/twisty/views/TwistyAlgViewer.css.ts +0 -25
  1040. package/src/cubing/twisty/views/TwistyAlgViewer.ts +0 -502
  1041. package/src/cubing/twisty/views/TwistyPlayer.css.ts +0 -73
  1042. package/src/cubing/twisty/views/TwistyPlayer.ts +0 -362
  1043. package/src/cubing/twisty/views/TwistyPlayerSettable.ts +0 -115
  1044. package/src/cubing/twisty/views/TwistyViewerWrapper.css.ts +0 -41
  1045. package/src/cubing/twisty/views/canvas.ts +0 -9
  1046. package/src/cubing/twisty/views/control-panel/TwistyButtonsV2.css.ts +0 -127
  1047. package/src/cubing/twisty/views/control-panel/TwistyButtonsV2.ts +0 -156
  1048. package/src/cubing/twisty/views/control-panel/TwistyScrubber.css.ts +0 -48
  1049. package/src/cubing/twisty/views/control-panel/TwistyScrubberV2.ts +0 -145
  1050. package/src/cubing/twisty/views/control-panel/webkit-fullscreen.ts +0 -44
  1051. package/src/cubing/twisty/views/document.ts +0 -4
  1052. package/src/cubing/twisty/views/node-custom-element-shims.ts +0 -30
  1053. package/src/cubing/twisty/views/screenshot.ts +0 -90
  1054. package/src/cubing/twisty/views/stream/TwistyStreamSource.css.ts +0 -17
  1055. package/src/cubing/twisty/views/stream/TwistyStreamSource.ts +0 -155
  1056. package/src/cubing/vendor/p-lazy/license +0 -9
  1057. package/src/cubing/vendor/p-lazy/p-lazy.ts +0 -52
  1058. package/src/cubing/vendor/p-lazy/readme.md +0 -54
  1059. package/src/cubing/vendor/three/examples/jsm/libs/stats.modified.module.ts +0 -179
  1060. package/stream/index.d.ts +0 -1
  1061. package/twisty/index.d.ts +0 -1
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/cubing/kpuzzle/combine.ts", "../../src/cubing/kpuzzle/KState.ts", "../../src/cubing/kpuzzle/KTransformation.ts", "../../src/cubing/kpuzzle/calculate.ts", "../../src/cubing/kpuzzle/construct.ts", "../../src/cubing/kpuzzle/KPuzzle.ts", "../../src/cubing/kpuzzle/3x3x3/3x3x3.kpuzzle.json.ts", "../../src/cubing/kpuzzle/index.ts"],
4
+ "sourcesContent": ["import { isOrbitTransformationDataIdentityUncached } from \"./calculate\";\nimport type {\n KPuzzleDefinition,\n KStateData,\n KTransformationData,\n} from \"./KPuzzleDefinition\";\n\nexport function combineTransformationData(\n definition: KPuzzleDefinition,\n transformationData1: KTransformationData,\n transformationData2: KTransformationData,\n): KTransformationData {\n const newTransformationData = {} as KTransformationData;\n const def = definition;\n for (const orbitName in def.orbits) {\n const orbitDefinition = def.orbits[orbitName];\n const o1 = transformationData1[orbitName];\n const o2 = transformationData2[orbitName];\n if (\n isOrbitTransformationDataIdentityUncached(\n orbitDefinition.orientations,\n o2,\n )\n ) {\n // common case for big cubes\n newTransformationData[orbitName] = o1;\n } else if (\n isOrbitTransformationDataIdentityUncached(\n orbitDefinition.orientations,\n o1,\n )\n ) {\n newTransformationData[orbitName] = o2;\n } else {\n const newPerm = new Array(orbitDefinition.numPieces);\n if (orbitDefinition.orientations === 1) {\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n newPerm[idx] = o1.permutation[o2.permutation[idx]];\n }\n newTransformationData[orbitName] = {\n permutation: newPerm,\n orientation: o1.orientation,\n };\n } else {\n const newOri = new Array(orbitDefinition.numPieces);\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n newOri[idx] =\n (o1.orientation[o2.permutation[idx]] + o2.orientation[idx]) %\n orbitDefinition.orientations;\n newPerm[idx] = o1.permutation[o2.permutation[idx]];\n }\n newTransformationData[orbitName] = {\n permutation: newPerm,\n orientation: newOri,\n };\n }\n }\n }\n return newTransformationData;\n}\n\nexport function applyTransformationDataToStateData(\n definition: KPuzzleDefinition,\n stateData: KStateData,\n transformationData: KTransformationData,\n): KStateData {\n const newStateData = {} as KStateData;\n const def = definition;\n for (const orbitName in def.orbits) {\n const orbitDefinition = def.orbits[orbitName];\n const o1 = stateData[orbitName];\n const o2 = transformationData[orbitName];\n if (\n isOrbitTransformationDataIdentityUncached(\n orbitDefinition.orientations,\n o2,\n )\n ) {\n // common case for big cubes\n newStateData[orbitName] = o1;\n } else {\n const newPieces = new Array(orbitDefinition.numPieces);\n if (orbitDefinition.orientations === 1) {\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n newPieces[idx] = o1.pieces[o2.permutation[idx]];\n }\n newStateData[orbitName] = {\n pieces: newPieces,\n orientation: o1.orientation,\n };\n } else {\n const newOri = new Array(orbitDefinition.numPieces);\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n newOri[idx] =\n (o1.orientation[o2.permutation[idx]] + o2.orientation[idx]) %\n orbitDefinition.orientations;\n newPieces[idx] = o1.pieces[o2.permutation[idx]];\n }\n newStateData[orbitName] = {\n pieces: newPieces,\n orientation: newOri,\n };\n }\n }\n }\n return newStateData;\n}\n", "import type { KPuzzle, KTransformationData } from \".\";\nimport type { Alg, Move } from \"../alg\";\nimport { applyTransformationDataToStateData } from \"./combine\";\nimport type { KTransformationSource } from \"./KPuzzle\";\nimport type { KStateData, KTransformationOrbitData } from \"./KPuzzleDefinition\";\nimport { KTransformation } from \"./KTransformation\";\n\nexport class KState {\n constructor(\n public readonly kpuzzle: KPuzzle,\n public readonly stateData: KStateData,\n ) {}\n\n static fromTransformation(transformation: KTransformation): KState {\n const newStateData = applyTransformationDataToStateData(\n transformation.kpuzzle.definition,\n transformation.kpuzzle.definition.startStateData,\n transformation.transformationData,\n );\n return new KState(transformation.kpuzzle, newStateData);\n }\n\n // Convenience function\n // @deprecated\n apply(source: KTransformationSource): KState {\n return this.applyTransformation(this.kpuzzle.toTransformation(source));\n }\n\n applyTransformation(transformation: KTransformation): KState {\n if (transformation.isIdentityTransformation()) {\n return new KState(this.kpuzzle, this.stateData);\n }\n const newStateData = applyTransformationDataToStateData(\n this.kpuzzle.definition,\n this.stateData,\n transformation.transformationData,\n );\n return new KState(this.kpuzzle, newStateData);\n }\n\n applyMove(move: Move | string): KState {\n return this.applyTransformation(this.kpuzzle.moveToTransformation(move));\n }\n\n applyAlg(alg: Alg | string): KState {\n return this.applyTransformation(this.kpuzzle.algToTransformation(alg));\n }\n\n // @deprecated\n experimentalToTransformation(): KTransformation | null {\n if (!this.kpuzzle.canConvertStateToUniqueTransformation()) {\n return null;\n }\n const transformationData: KTransformationData = {};\n for (const [orbitName, stateOrbitData] of Object.entries(this.stateData)) {\n const transformationOrbit: KTransformationOrbitData = {\n permutation: stateOrbitData.pieces,\n orientation: stateOrbitData.orientation,\n };\n transformationData[orbitName] = transformationOrbit;\n }\n return new KTransformation(this.kpuzzle, transformationData);\n }\n}\n", "import type { Alg, Move } from \"../alg\";\nimport {\n invertTransformation,\n isTransformationDataIdentical,\n repeatTransformationUncached,\n transformationRepetitionOrder,\n} from \"./calculate\";\nimport { combineTransformationData } from \"./combine\";\nimport type { KPuzzle, KTransformationSource } from \"./KPuzzle\";\nimport type { KTransformationData } from \"./KPuzzleDefinition\";\nimport { KState } from \"./KState\";\n\nexport class KTransformation {\n constructor(\n public readonly kpuzzle: KPuzzle,\n public readonly transformationData: KTransformationData,\n ) {}\n\n invert(): KTransformation {\n return new KTransformation(\n this.kpuzzle,\n invertTransformation(this.kpuzzle, this.transformationData),\n );\n }\n\n // For optimizations, we want to make it cheap to rely on optimizations when a\n // transformation is an identity. Here, we try to make it cheaper by:\n // - only calculating when needed, and\n // - caching the result.\n #cachedIsIdentity: boolean | undefined; // TODO: is `null` worse here?\n isIdentityTransformation(): boolean {\n return (this.#cachedIsIdentity ??= this.isIdentical(\n this.kpuzzle.identityTransformation(),\n ));\n }\n\n isIdentical(t2: KTransformation): boolean {\n return isTransformationDataIdentical(\n this.kpuzzle,\n this.transformationData,\n t2.transformationData,\n );\n }\n\n // Convenience function\n // @deprecated\n apply(source: KTransformationSource): KTransformation {\n return this.applyTransformation(this.kpuzzle.toTransformation(source));\n }\n\n applyTransformation(t2: KTransformation): KTransformation {\n if (this.kpuzzle !== t2.kpuzzle) {\n throw new Error(\n `Tried to apply a transformation for a KPuzzle (${t2.kpuzzle.name()}) to a different KPuzzle (${this.kpuzzle.name()}).`,\n );\n }\n\n if (this.isIdentityTransformation()) {\n return new KTransformation(this.kpuzzle, t2.transformationData);\n }\n if (t2.isIdentityTransformation()) {\n return new KTransformation(this.kpuzzle, this.transformationData);\n }\n\n return new KTransformation(\n this.kpuzzle,\n combineTransformationData(\n this.kpuzzle.definition,\n this.transformationData,\n t2.transformationData,\n ),\n );\n }\n\n applyMove(move: Move | string): KTransformation {\n return this.applyTransformation(this.kpuzzle.moveToTransformation(move));\n }\n\n applyAlg(alg: Alg | string): KTransformation {\n return this.applyTransformation(this.kpuzzle.algToTransformation(alg));\n }\n\n // Convenience. Useful for chaining.\n toKState(): KState {\n return KState.fromTransformation(this);\n }\n\n repetitionOrder(): number {\n return transformationRepetitionOrder(this.kpuzzle.definition, this);\n }\n\n selfMultiply(amount: number): KTransformation {\n return new KTransformation(\n this.kpuzzle,\n repeatTransformationUncached(\n this.kpuzzle,\n this.transformationData,\n amount,\n ),\n );\n }\n}\n", "import type { KPuzzleDefinition } from \".\";\nimport {\n Alg,\n Commutator,\n Conjugate,\n Grouping,\n LineComment,\n Move,\n Newline,\n Pause,\n TraversalDownUp,\n} from \"../alg\";\nimport { combineTransformationData } from \"./combine\";\nimport type { KPuzzle } from \"./KPuzzle\";\nimport type {\n KOrbitDefinition,\n KTransformationOrbitData,\n KTransformationData,\n} from \"./KPuzzleDefinition\";\nimport { KTransformation } from \"./KTransformation\";\n\nexport function isOrbitTransformationDataIdentityUncached(\n numOrientations: number,\n orbitTransformationData: KTransformationOrbitData,\n): boolean {\n // TODO\n // if (o === lasto) {\n // return true;\n // }\n const { permutation } = orbitTransformationData;\n const numPieces = permutation.length;\n for (let idx = 0; idx < numPieces; idx++) {\n if (permutation[idx] !== idx) {\n return false;\n }\n }\n if (numOrientations > 1) {\n const { orientation } = orbitTransformationData;\n for (let idx = 0; idx < numPieces; idx++) {\n if (orientation[idx] !== 0) {\n return false;\n }\n }\n }\n // lasto = o; // TODO\n return true;\n}\n\nexport function isOrbitTransformationDataIdentical(\n orbitDefinition: KOrbitDefinition,\n orbitTransformationData1: KTransformationOrbitData,\n orbitTransformationData2: KTransformationOrbitData,\n options: {\n ignoreOrientation?: boolean;\n ignorePermutation?: boolean;\n } = {},\n): boolean {\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n if (\n !options?.ignoreOrientation &&\n orbitTransformationData1.orientation[idx] !==\n orbitTransformationData2.orientation[idx]\n ) {\n return false;\n }\n if (\n !options?.ignorePermutation &&\n orbitTransformationData1.permutation[idx] !==\n orbitTransformationData2.permutation[idx]\n ) {\n return false;\n }\n }\n return true;\n}\n\nexport function isTransformationDataIdentical(\n kpuzzle: KPuzzle,\n transformationData1: KTransformationData,\n transformationData2: KTransformationData,\n): boolean {\n for (const [orbitName, orbitDefinition] of Object.entries(\n kpuzzle.definition.orbits,\n )) {\n if (\n !isOrbitTransformationDataIdentical(\n orbitDefinition,\n transformationData1[orbitName],\n transformationData2[orbitName],\n )\n ) {\n return false;\n }\n }\n return true;\n}\n\nexport function invertTransformation(\n kpuzzle: KPuzzle,\n transformationData: KTransformationData,\n): KTransformationData {\n const newTransformationData: KTransformationData = {};\n for (const orbitName in kpuzzle.definition.orbits) {\n const orbitDefinition: KOrbitDefinition =\n kpuzzle.definition.orbits[orbitName];\n const orbitTransformationData = transformationData[orbitName];\n if (\n isOrbitTransformationDataIdentityUncached(\n orbitDefinition.orientations,\n orbitTransformationData,\n )\n ) {\n newTransformationData[orbitName] = orbitTransformationData;\n } else if (orbitDefinition.orientations === 1) {\n const newPerm = new Array(orbitDefinition.numPieces);\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n newPerm[orbitTransformationData.permutation[idx]] = idx;\n }\n newTransformationData[orbitName] = {\n permutation: newPerm,\n orientation: orbitTransformationData.orientation,\n };\n } else {\n const newPerm = new Array(orbitDefinition.numPieces);\n const newOri = new Array(orbitDefinition.numPieces);\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n const fromIdx = orbitTransformationData.permutation[idx];\n newPerm[fromIdx] = idx;\n newOri[fromIdx] =\n (orbitDefinition.orientations -\n orbitTransformationData.orientation[idx] +\n orbitDefinition.orientations) %\n orbitDefinition.orientations;\n }\n newTransformationData[orbitName] = {\n permutation: newPerm,\n orientation: newOri,\n };\n }\n }\n return newTransformationData;\n}\n\nexport function repeatTransformationUncached(\n kpuzzle: KPuzzle,\n transformationData: KTransformationData,\n amount: number,\n): KTransformationData {\n // This is used for move construction, so we optimize for the quantum move case.\n if (amount === 1) {\n return transformationData;\n }\n if (amount < 0) {\n return repeatTransformationUncached(\n kpuzzle,\n invertTransformation(kpuzzle, transformationData),\n -amount,\n );\n }\n if (amount === 0) {\n // TODO\n const { transformationData } = kpuzzle.identityTransformation();\n return transformationData;\n }\n let halfish = transformationData;\n if (amount !== 2) {\n halfish = repeatTransformationUncached(\n kpuzzle,\n transformationData,\n Math.floor(amount / 2),\n );\n }\n const twiceHalfish = combineTransformationData(\n kpuzzle.definition,\n halfish,\n halfish,\n );\n if (amount % 2 === 0) {\n return twiceHalfish;\n } else {\n return combineTransformationData(\n kpuzzle.definition,\n transformationData,\n twiceHalfish,\n );\n }\n}\n\nclass AlgToTransformationTraversal extends TraversalDownUp<\n KPuzzle,\n KTransformation\n> {\n traverseAlg(alg: Alg, kpuzzle: KPuzzle): KTransformation {\n let transformation = kpuzzle.identityTransformation();\n for (const unit of alg.units()) {\n transformation = transformation.applyTransformation(\n this.traverseUnit(unit, kpuzzle),\n );\n }\n return transformation;\n }\n traverseGrouping(grouping: Grouping, kpuzzle: KPuzzle): KTransformation {\n const algTransformation = this.traverseAlg(grouping.alg, kpuzzle);\n return new KTransformation(\n kpuzzle,\n repeatTransformationUncached(\n kpuzzle,\n algTransformation.transformationData,\n grouping.amount,\n ),\n );\n }\n traverseMove(move: Move, kpuzzle: KPuzzle): KTransformation {\n return kpuzzle.moveToTransformation(move);\n }\n traverseCommutator(\n commutator: Commutator,\n kpuzzle: KPuzzle,\n ): KTransformation {\n const aTransformation = this.traverseAlg(commutator.A, kpuzzle);\n const bTransformation = this.traverseAlg(commutator.B, kpuzzle);\n return aTransformation\n .applyTransformation(bTransformation)\n .applyTransformation(aTransformation.invert())\n .applyTransformation(bTransformation.invert());\n }\n traverseConjugate(conjugate: Conjugate, kpuzzle: KPuzzle): KTransformation {\n const aTransformation = this.traverseAlg(conjugate.A, kpuzzle);\n const bTransformation = this.traverseAlg(conjugate.B, kpuzzle);\n return aTransformation\n .applyTransformation(bTransformation)\n .applyTransformation(aTransformation.invert());\n }\n traversePause(_: Pause, kpuzzle: KPuzzle): KTransformation {\n return kpuzzle.identityTransformation();\n }\n traverseNewline(_: Newline, kpuzzle: KPuzzle): KTransformation {\n return kpuzzle.identityTransformation();\n }\n traverseLineComment(_: LineComment, kpuzzle: KPuzzle): KTransformation {\n return kpuzzle.identityTransformation();\n }\n}\n\nconst algToTransformationInstance = new AlgToTransformationTraversal();\nexport const algToTransformation = algToTransformationInstance.traverseAlg.bind(\n algToTransformationInstance,\n) as (alg: Alg, kpuzzle: KPuzzle) => KTransformation;\n\nexport function canConvertStateToUniqueTransformationUncached(\n definition: KPuzzleDefinition,\n): boolean {\n for (const [orbitName, orbitDefinition] of Object.entries(definition)) {\n const pieces = new Array(orbitDefinition.numPieces).fill(false);\n for (const piece of this.definition.startStateData[orbitName].pieces) {\n pieces[piece] = true;\n }\n for (const piece of pieces) {\n if (!piece) {\n return false;\n }\n }\n }\n return true;\n}\n\nfunction gcd(a: number, b: number): number {\n if (b) {\n return gcd(b, a % b);\n }\n return a;\n}\n\n/* calculate the order of a particular transformation. */\nexport function transformationRepetitionOrder(\n def: KPuzzleDefinition,\n t: KTransformation,\n): number {\n let r: number = 1;\n for (const orbitName in def.orbits) {\n const oDef = def.orbits[orbitName];\n const o = t.transformationData[orbitName];\n const d = new Array(oDef.numPieces);\n for (let idx = 0; idx < oDef.numPieces; idx++) {\n if (!d[idx]) {\n let w = idx;\n let om = 0;\n let pm = 0;\n for (;;) {\n d[w] = true;\n om = om + o.orientation[w];\n pm = pm + 1;\n w = o.permutation[w];\n if (w === idx) {\n break;\n }\n }\n if (om !== 0) {\n pm = (pm * oDef.orientations) / gcd(oDef.orientations, om);\n }\n r = (r * pm) / gcd(r, pm);\n }\n }\n }\n return r;\n}\n", "import type { Move } from \"../alg\";\nimport { repeatTransformationUncached } from \"./calculate\";\nimport type { KPuzzle } from \"./KPuzzle\";\nimport type {\n KPuzzleDefinition,\n KTransformationData,\n KTransformationOrbitData,\n} from \"./KPuzzleDefinition\";\n\nconst FREEZE: boolean = false;\n\nconst identityOrbitCache = new Map<number, KTransformationOrbitData>();\nfunction constructIdentityOrbitTransformation(\n numPieces: number,\n): KTransformationOrbitData {\n const cached = identityOrbitCache.get(numPieces);\n if (cached) {\n return cached;\n }\n\n const newPermutation = new Array(numPieces);\n const newOrientation = new Array(numPieces);\n for (let i = 0; i < numPieces; i++) {\n newPermutation[i] = i;\n newOrientation[i] = 0;\n }\n const orbitTransformation = {\n permutation: newPermutation,\n orientation: newOrientation,\n };\n if (FREEZE) {\n Object.freeze(newPermutation); // TODO\n Object.freeze(newOrientation); // TODO\n Object.freeze(orbitTransformation); // TODO\n }\n identityOrbitCache.set(numPieces, orbitTransformation);\n return orbitTransformation;\n}\n\nexport function constructIdentityTransformationDataUncached(\n definition: KPuzzleDefinition,\n): KTransformationData {\n const transformation = {} as KTransformationData;\n for (const [orbitName, orbitDefinition] of Object.entries(\n definition.orbits,\n )) {\n transformation[orbitName] = constructIdentityOrbitTransformation(\n orbitDefinition.numPieces,\n );\n }\n if (FREEZE) {\n Object.freeze(transformation); // TODO\n }\n return transformation;\n}\n\nexport function moveToTransformationUncached(\n kpuzzle: KPuzzle,\n move: Move,\n): KTransformationData {\n const quantumKey = move.quantum.toString();\n const quantumMoveDefinition = kpuzzle.definition.moves[quantumKey] as\n | KTransformationData\n | undefined;\n\n if (quantumMoveDefinition) {\n return repeatTransformationUncached(\n kpuzzle,\n quantumMoveDefinition,\n move.amount,\n );\n }\n\n // Handle e.g. `y2` if `y2` is defined.\n // Note: this doesn't handle multiples.\n const moveDefinition = kpuzzle.definition.moves[move.toString()];\n if (moveDefinition) {\n return moveDefinition;\n }\n\n // Handle e.g. `y2'` if `y2` is defined.\n // Note: this doesn't handle multiples.\n const inverseMoveDefinition =\n kpuzzle.definition.moves[move.invert().toString()];\n if (inverseMoveDefinition) {\n return repeatTransformationUncached(kpuzzle, inverseMoveDefinition, -1);\n }\n\n throw new Error(`Invalid move for KPuzzle (${kpuzzle.name()}): ${move}`);\n}\n", "import { Alg, Move } from \"../alg\";\nimport type { PGNotation } from \"../puzzle-geometry/PuzzleGeometry\";\nimport { algToTransformation } from \"./calculate\";\nimport {\n constructIdentityTransformationDataUncached,\n moveToTransformationUncached,\n} from \"./construct\";\nimport type {\n KPuzzleDefinition,\n KTransformationData,\n} from \"./KPuzzleDefinition\";\nimport { KState } from \"./KState\";\nimport { KTransformation } from \"./KTransformation\";\n\nexport type KTransformationSource = Alg | Move | string | KTransformation;\n\nexport class KPuzzle {\n private experimentalPGNotation: PGNotation | undefined;\n constructor(\n public readonly definition: KPuzzleDefinition,\n options?: {\n experimentalPGNotation?: PGNotation;\n },\n ) {\n this.experimentalPGNotation = options?.experimentalPGNotation;\n }\n\n name(): string {\n return this.definition.name; // TODO\n }\n\n #cachedIdentityTransformationData: KTransformationData | null = null;\n identityTransformation(): KTransformation {\n // TODO: Can we safely cache the `KTransformation` itself?\n // TODO: construct so the `KTransformation` already caches that it's the identity.\n return new KTransformation(\n this,\n (this.#cachedIdentityTransformationData ??=\n constructIdentityTransformationDataUncached(this.definition)),\n );\n }\n\n #moveToTransformationDataCache = new Map<string, KTransformationData>();\n moveToTransformation(move: Move | string): KTransformation {\n if (typeof move === \"string\") {\n move = new Move(move);\n }\n const cacheKey = move.toString();\n const cachedTransformationData: KTransformationData | undefined =\n this.#moveToTransformationDataCache.get(cacheKey);\n if (cachedTransformationData) {\n return new KTransformation(this, cachedTransformationData);\n }\n\n // if (this.experimentalPGUnswizzle) {\n // const unswizzledFamily = this.experimentalPGUnswizzle(move);\n // if (unswizzledFamily === \"\") {\n // throw new Error(`could not unswizzle to internal move: ${move}`);\n // }\n // console.log(\"premapped\", move.toString(), unswizzledFamily);\n // move = move.modified({ family: unswizzledFamily });\n // console.log(\"remapped\", move.toString(), unswizzledFamily);\n // }\n\n // if (this.experimentalPGNotationMapper) {\n // const internalMove =\n // this.experimentalPGNotationMapper.notationToInternal(move);\n // if (!internalMove) {\n // throw new Error(`could not map to internal move: ${move}`);\n // }\n // console.log(\"remapped\", move.toString(), internalMove.toString());\n // move = internalMove;\n // }\n\n if (this.experimentalPGNotation) {\n const transformationData = this.experimentalPGNotation.lookupMove(move);\n if (!transformationData) {\n throw new Error(`could not map to internal move: ${move}`);\n }\n this.#moveToTransformationDataCache.set(cacheKey, transformationData);\n return new KTransformation(this, transformationData);\n }\n\n const transformationData = moveToTransformationUncached(this, move);\n this.#moveToTransformationDataCache.set(cacheKey, transformationData);\n return new KTransformation(this, transformationData);\n }\n\n algToTransformation(alg: Alg | string): KTransformation {\n if (typeof alg === \"string\") {\n alg = new Alg(alg);\n }\n return algToTransformation(alg, this);\n }\n\n // @deprecated\n toTransformation(source: KTransformationSource): KTransformation {\n if (typeof source === \"string\") {\n return this.algToTransformation(source);\n } else if ((source as Alg | null)?.is?.(Alg)) {\n return this.algToTransformation(source as Alg);\n } else if ((source as Move | null)?.is?.(Move)) {\n return this.moveToTransformation(source as Move);\n } else {\n return source as KTransformation;\n }\n }\n\n startState(): KState {\n return new KState(this, this.definition.startStateData);\n }\n\n #cachedCanConvertStateToUniqueTransformation: boolean | undefined;\n // TODO: Handle incomplete start state data\n canConvertStateToUniqueTransformation(): boolean {\n return (this.#cachedCanConvertStateToUniqueTransformation ??=\n ((): boolean => {\n for (const [orbitName, orbitDefinition] of Object.entries(\n this.definition.orbits,\n )) {\n const pieces = new Array(orbitDefinition.numPieces).fill(false);\n for (const piece of this.definition.startStateData[orbitName]\n .pieces) {\n pieces[piece] = true;\n }\n for (const piece of pieces) {\n if (!piece) {\n return false;\n }\n }\n }\n return true;\n })());\n }\n\n // TODO: Remove completely with v0.25\n // @deprecated\n get state(): never {\n throw new Error(\"KPuzzle is now a different (stateless) class.\");\n }\n\n // TODO: Remove completely with v0.25\n // @deprecated\n reset(): never {\n throw new Error(\"KPuzzle is now a different (stateless) class.\");\n }\n\n // TODO: Remove completely with v0.25\n // @deprecated\n applyMove(_move: Move): never {\n throw new Error(\n \"KPuzzle is now a different class. Try `.moveToTransformation()` to get the transformation for a move.\",\n );\n }\n\n // TODO: Remove completely with v0.25\n // @deprecated\n applyAlg(_alg: Alg): never {\n throw new Error(\n \"KPuzzle is now a different class. Try `.algToTransformation()` to get the transformation for an alg.\",\n );\n }\n}\n", "// TODO: This file is here to avoid dependency loops, but it should eventually\n// move back into `cubing/puzzles`. We currently have a few functions that are\n// hardcoded to require synchronous access to this definition, and we need to\n// find a better way to do that.\n\n// TODO: this would be a raw `.json` file, but Parcel runs into an error from\n\nimport type { KPuzzleDefinition } from \"../KPuzzleDefinition\";\n\n// using that as both a sync and async import. Probably https://github.com/parcel-bundler/parcel/issues/2546\nexport const cube3x3x3KPuzzleDefinition: KPuzzleDefinition = {\n name: \"3x3x3\",\n orbits: {\n EDGES: { numPieces: 12, orientations: 2 },\n CORNERS: { numPieces: 8, orientations: 3 },\n CENTERS: { numPieces: 6, orientations: 4 },\n },\n startStateData: {\n EDGES: {\n pieces: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n pieces: [0, 1, 2, 3, 4, 5, 6, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n pieces: [0, 1, 2, 3, 4, 5],\n orientation: [0, 0, 0, 0, 0, 0],\n },\n },\n moves: {\n U: {\n EDGES: {\n permutation: [1, 2, 3, 0, 4, 5, 6, 7, 8, 9, 10, 11],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [1, 2, 3, 0, 4, 5, 6, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 1, 2, 3, 4, 5],\n orientation: [1, 0, 0, 0, 0, 0],\n },\n },\n y: {\n EDGES: {\n permutation: [1, 2, 3, 0, 5, 6, 7, 4, 10, 8, 11, 9],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [1, 2, 3, 0, 7, 4, 5, 6],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 2, 3, 4, 1, 5],\n orientation: [1, 0, 0, 0, 0, 3],\n },\n },\n x: {\n EDGES: {\n permutation: [4, 8, 0, 9, 6, 10, 2, 11, 5, 7, 1, 3],\n orientation: [1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [4, 0, 3, 5, 7, 6, 2, 1],\n orientation: [2, 1, 2, 1, 1, 2, 1, 2],\n },\n CENTERS: {\n permutation: [2, 1, 5, 3, 0, 4],\n orientation: [0, 3, 0, 1, 2, 2],\n },\n },\n L: {\n EDGES: {\n permutation: [0, 1, 2, 11, 4, 5, 6, 9, 8, 3, 10, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [0, 1, 6, 2, 4, 3, 5, 7],\n orientation: [0, 0, 2, 1, 0, 2, 1, 0],\n },\n CENTERS: {\n permutation: [0, 1, 2, 3, 4, 5],\n orientation: [0, 1, 0, 0, 0, 0],\n },\n },\n F: {\n EDGES: {\n permutation: [9, 1, 2, 3, 8, 5, 6, 7, 0, 4, 10, 11],\n orientation: [1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0],\n },\n CORNERS: {\n permutation: [3, 1, 2, 5, 0, 4, 6, 7],\n orientation: [1, 0, 0, 2, 2, 1, 0, 0],\n },\n CENTERS: {\n permutation: [0, 1, 2, 3, 4, 5],\n orientation: [0, 0, 1, 0, 0, 0],\n },\n },\n R: {\n EDGES: {\n permutation: [0, 8, 2, 3, 4, 10, 6, 7, 5, 9, 1, 11],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [4, 0, 2, 3, 7, 5, 6, 1],\n orientation: [2, 1, 0, 0, 1, 0, 0, 2],\n },\n CENTERS: {\n permutation: [0, 1, 2, 3, 4, 5],\n orientation: [0, 0, 0, 1, 0, 0],\n },\n },\n B: {\n EDGES: {\n permutation: [0, 1, 10, 3, 4, 5, 11, 7, 8, 9, 6, 2],\n orientation: [0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1],\n },\n CORNERS: {\n permutation: [0, 7, 1, 3, 4, 5, 2, 6],\n orientation: [0, 2, 1, 0, 0, 0, 2, 1],\n },\n CENTERS: {\n permutation: [0, 1, 2, 3, 4, 5],\n orientation: [0, 0, 0, 0, 1, 0],\n },\n },\n D: {\n EDGES: {\n permutation: [0, 1, 2, 3, 7, 4, 5, 6, 8, 9, 10, 11],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [0, 1, 2, 3, 5, 6, 7, 4],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 1, 2, 3, 4, 5],\n orientation: [0, 0, 0, 0, 0, 1],\n },\n },\n z: {\n EDGES: {\n permutation: [9, 3, 11, 7, 8, 1, 10, 5, 0, 4, 2, 6],\n orientation: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [3, 2, 6, 5, 0, 4, 7, 1],\n orientation: [1, 2, 1, 2, 2, 1, 2, 1],\n },\n CENTERS: {\n permutation: [1, 5, 2, 0, 4, 3],\n orientation: [1, 1, 1, 1, 3, 1],\n },\n },\n M: {\n EDGES: {\n permutation: [2, 1, 6, 3, 0, 5, 4, 7, 8, 9, 10, 11],\n orientation: [1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [0, 1, 2, 3, 4, 5, 6, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [4, 1, 0, 3, 5, 2],\n orientation: [2, 0, 0, 0, 2, 0],\n },\n },\n E: {\n EDGES: {\n permutation: [0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 8, 10],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [0, 1, 2, 3, 4, 5, 6, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 4, 1, 2, 3, 5],\n orientation: [0, 0, 0, 0, 0, 0],\n },\n },\n S: {\n EDGES: {\n permutation: [0, 3, 2, 7, 4, 1, 6, 5, 8, 9, 10, 11],\n orientation: [0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [0, 1, 2, 3, 4, 5, 6, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [1, 5, 2, 0, 4, 3],\n orientation: [1, 1, 0, 1, 0, 1],\n },\n },\n u: {\n EDGES: {\n permutation: [1, 2, 3, 0, 4, 5, 6, 7, 10, 8, 11, 9],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [1, 2, 3, 0, 4, 5, 6, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 2, 3, 4, 1, 5],\n orientation: [1, 0, 0, 0, 0, 0],\n },\n },\n l: {\n EDGES: {\n permutation: [2, 1, 6, 11, 0, 5, 4, 9, 8, 3, 10, 7],\n orientation: [1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [0, 1, 6, 2, 4, 3, 5, 7],\n orientation: [0, 0, 2, 1, 0, 2, 1, 0],\n },\n CENTERS: {\n permutation: [4, 1, 0, 3, 5, 2],\n orientation: [2, 1, 0, 0, 2, 0],\n },\n },\n f: {\n EDGES: {\n permutation: [9, 3, 2, 7, 8, 1, 6, 5, 0, 4, 10, 11],\n orientation: [1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0],\n },\n CORNERS: {\n permutation: [3, 1, 2, 5, 0, 4, 6, 7],\n orientation: [1, 0, 0, 2, 2, 1, 0, 0],\n },\n CENTERS: {\n permutation: [1, 5, 2, 0, 4, 3],\n orientation: [1, 1, 1, 1, 0, 1],\n },\n },\n r: {\n EDGES: {\n permutation: [4, 8, 0, 3, 6, 10, 2, 7, 5, 9, 1, 11],\n orientation: [1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [4, 0, 2, 3, 7, 5, 6, 1],\n orientation: [2, 1, 0, 0, 1, 0, 0, 2],\n },\n CENTERS: {\n permutation: [2, 1, 5, 3, 0, 4],\n orientation: [0, 0, 0, 1, 2, 2],\n },\n },\n b: {\n EDGES: {\n permutation: [0, 5, 10, 1, 4, 7, 11, 3, 8, 9, 6, 2],\n orientation: [0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1],\n },\n CORNERS: {\n permutation: [0, 7, 1, 3, 4, 5, 2, 6],\n orientation: [0, 2, 1, 0, 0, 0, 2, 1],\n },\n CENTERS: {\n permutation: [3, 0, 2, 5, 4, 1],\n orientation: [3, 3, 0, 3, 1, 3],\n },\n },\n d: {\n EDGES: {\n permutation: [0, 1, 2, 3, 7, 4, 5, 6, 9, 11, 8, 10],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [0, 1, 2, 3, 5, 6, 7, 4],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 4, 1, 2, 3, 5],\n orientation: [0, 0, 0, 0, 0, 1],\n },\n },\n },\n};\n\ncube3x3x3KPuzzleDefinition.moves[\"Uw\"] = cube3x3x3KPuzzleDefinition.moves[\"u\"];\ncube3x3x3KPuzzleDefinition.moves[\"Lw\"] = cube3x3x3KPuzzleDefinition.moves[\"l\"];\ncube3x3x3KPuzzleDefinition.moves[\"Fw\"] = cube3x3x3KPuzzleDefinition.moves[\"f\"];\ncube3x3x3KPuzzleDefinition.moves[\"Rw\"] = cube3x3x3KPuzzleDefinition.moves[\"r\"];\ncube3x3x3KPuzzleDefinition.moves[\"Bw\"] = cube3x3x3KPuzzleDefinition.moves[\"b\"];\ncube3x3x3KPuzzleDefinition.moves[\"Dw\"] = cube3x3x3KPuzzleDefinition.moves[\"d\"];\n\ncube3x3x3KPuzzleDefinition.moves[\"Rv\"] = cube3x3x3KPuzzleDefinition.moves[\"x\"];\ncube3x3x3KPuzzleDefinition.moves[\"Uv\"] = cube3x3x3KPuzzleDefinition.moves[\"y\"];\ncube3x3x3KPuzzleDefinition.moves[\"Fv\"] = cube3x3x3KPuzzleDefinition.moves[\"z\"];\ncube3x3x3KPuzzleDefinition.moves[\"Lv\"] = {\n EDGES: {\n permutation: [2, 10, 6, 11, 0, 8, 4, 9, 1, 3, 5, 7],\n orientation: [1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [1, 7, 6, 2, 0, 3, 5, 4],\n orientation: [2, 1, 2, 1, 1, 2, 1, 2],\n },\n CENTERS: {\n permutation: [4, 1, 0, 3, 5, 2],\n orientation: [2, 1, 0, 3, 2, 0],\n },\n};\ncube3x3x3KPuzzleDefinition.moves[\"Dv\"] = {\n EDGES: {\n permutation: [3, 0, 1, 2, 7, 4, 5, 6, 9, 11, 8, 10],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [3, 0, 1, 2, 5, 6, 7, 4],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 4, 1, 2, 3, 5],\n orientation: [3, 0, 0, 0, 0, 1],\n },\n};\ncube3x3x3KPuzzleDefinition.moves[\"Bv\"] = {\n EDGES: {\n permutation: [8, 5, 10, 1, 9, 7, 11, 3, 4, 0, 6, 2],\n orientation: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [4, 7, 1, 0, 5, 3, 2, 6],\n orientation: [1, 2, 1, 2, 2, 1, 2, 1],\n },\n CENTERS: {\n permutation: [3, 0, 2, 5, 4, 1],\n orientation: [3, 3, 3, 3, 1, 3],\n },\n};\n", "export { KPuzzle } from \"./KPuzzle\";\nexport type { KTransformation } from \"./KTransformation\";\nexport {\n KPuzzleDefinition,\n KTransformationData,\n KStateData,\n} from \"./KPuzzleDefinition\";\nexport { KState } from \"./KState\";\n\nimport { KPuzzle } from \"./KPuzzle\";\nimport { cube3x3x3KPuzzleDefinition } from \"./3x3x3/3x3x3.kpuzzle.json\";\nexport const experimental3x3x3KPuzzle = new KPuzzle(cube3x3x3KPuzzleDefinition);\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,30 +1,36 @@
1
- import type { KPuzzleDefinition } from "../../../../kpuzzle";
2
- import { getPuzzleGeometryByName } from "../../../../puzzle-geometry";
3
- import { parseSGS, SGSCachedData } from "../parseSGS";
1
+ import {
2
+ parseSGS
3
+ } from "./chunk-27KJGD3S.js";
4
+ import {
5
+ PGNotation,
6
+ getPuzzleGeometryByName
7
+ } from "./chunk-J2U2GRS4.js";
8
+ import {
9
+ KPuzzle
10
+ } from "./chunk-TNRZDNGH.js";
4
11
 
5
- async function megaminxDefWithoutMO(): Promise<KPuzzleDefinition> {
6
- return getPuzzleGeometryByName("megaminx", {
12
+ // src/cubing/search/inside/solve/puzzles/megaminx.sgs.json.ts
13
+ async function megaminxKPuzzleWithoutMO() {
14
+ const pg = getPuzzleGeometryByName("megaminx", {
7
15
  allMoves: true,
8
- addRotations: true,
9
- }).writekpuzzle(true);
16
+ addRotations: true
17
+ });
18
+ const kpuzzle = new KPuzzle(pg.getKPuzzleDefinition(true), {
19
+ experimentalPGNotation: new PGNotation(pg, pg.getOrbitsDef(true))
20
+ });
21
+ kpuzzle.definition.name = "megaminx";
22
+ return kpuzzle;
10
23
  }
11
-
12
- // TODO: Implement a general lazy Promise/ Promise cache wrapper
13
- let defCache: Promise<KPuzzleDefinition> | null = null;
14
- export async function cachedMegaminxDefWithoutMO(): Promise<KPuzzleDefinition> {
15
- return (defCache ??= megaminxDefWithoutMO());
24
+ var defCache = null;
25
+ async function cachedMegaminxKPuzzleWithoutMO() {
26
+ return defCache ?? (defCache = megaminxKPuzzleWithoutMO());
16
27
  }
17
-
18
- let cachedData: Promise<SGSCachedData> | null = null;
19
- export async function cachedSGSDataMegaminx() {
20
- return (cachedData ??= sgsDataMegaminx());
28
+ var cachedData = null;
29
+ async function cachedSGSDataMegaminx() {
30
+ return cachedData ?? (cachedData = sgsDataMegaminx());
21
31
  }
22
-
23
- // TODO: Reduce info.
24
- export async function sgsDataMegaminx(): Promise<SGSCachedData> {
25
- return parseSGS(
26
- await cachedMegaminxDefWithoutMO(),
27
- `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
32
+ async function sgsDataMegaminx() {
33
+ return parseSGS(await cachedMegaminxKPuzzleWithoutMO(), `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
28
34
 
29
35
  Alg Rv
30
36
  Alg Rv2
@@ -1544,6 +1550,12 @@ Alg L' BL2 L2' F' L2 BL2' L2' F L2'
1544
1550
  Alg U BL2' U R U' BL2 U' L U2 R' U2' L'
1545
1551
  Alg U BR U' L2 F L' U BR' U' L F' L2'
1546
1552
  Alg U L' BL2 L' FL' L BL2' L U' L2' FL L2
1547
- Alg U BR2' U R' U2' L U2 R U' BR2 U' L'`,
1548
- );
1553
+ Alg U BR2' U R' U2' L U2 R U' BR2 U' L'`);
1549
1554
  }
1555
+
1556
+ export {
1557
+ cachedMegaminxKPuzzleWithoutMO,
1558
+ cachedSGSDataMegaminx,
1559
+ sgsDataMegaminx
1560
+ };
1561
+ //# sourceMappingURL=chunk-YN7E5RGM.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/cubing/search/inside/solve/puzzles/megaminx.sgs.json.ts"],
4
+ "sourcesContent": ["import { KPuzzle } from \"../../../../kpuzzle\";\nimport {\n ExperimentalPGNotation,\n getPuzzleGeometryByName,\n} from \"../../../../puzzle-geometry\";\nimport { parseSGS, SGSCachedData } from \"../parseSGS\";\n\nasync function megaminxKPuzzleWithoutMO(): Promise<KPuzzle> {\n const pg = getPuzzleGeometryByName(\"megaminx\", {\n allMoves: true,\n addRotations: true,\n });\n const kpuzzle = new KPuzzle(pg.getKPuzzleDefinition(true), {\n experimentalPGNotation: new ExperimentalPGNotation(\n pg,\n pg.getOrbitsDef(true),\n ),\n });\n kpuzzle.definition.name = \"megaminx\";\n return kpuzzle;\n}\n\n// TODO: Implement a general lazy Promise/ Promise cache wrapper\nlet defCache: Promise<KPuzzle> | null = null;\nexport async function cachedMegaminxKPuzzleWithoutMO(): Promise<KPuzzle> {\n return (defCache ??= megaminxKPuzzleWithoutMO());\n}\n\nlet cachedData: Promise<SGSCachedData> | null = null;\nexport async function cachedSGSDataMegaminx() {\n return (cachedData ??= sgsDataMegaminx());\n}\n\n// TODO: Reduce info.\nexport async function sgsDataMegaminx(): Promise<SGSCachedData> {\n return parseSGS(\n await cachedMegaminxKPuzzleWithoutMO(),\n `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'`,\n );\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;AAOA,0CAA4D;AAC1D,QAAM,KAAK,wBAAwB,YAAY;AAAA,IAC7C,UAAU;AAAA,IACV,cAAc;AAAA;AAEhB,QAAM,UAAU,IAAI,QAAQ,GAAG,qBAAqB,OAAO;AAAA,IACzD,wBAAwB,IAAI,WAC1B,IACA,GAAG,aAAa;AAAA;AAGpB,UAAQ,WAAW,OAAO;AAC1B,SAAO;AAAA;AAIT,IAAI,WAAoC;AACxC,gDAAyE;AACvE,SAAQ,wBAAa;AAAA;AAGvB,IAAI,aAA4C;AAChD,uCAA8C;AAC5C,SAAQ,4BAAe;AAAA;AAIzB,iCAAgE;AAC9D,SAAO,SACL,MAAM,kCACN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;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
+ }
@@ -1,11 +1,7 @@
1
1
  import {
2
- cube3x3x3KPuzzle,
3
- transformationForMove
4
- } from "./chunk-X6JHXPDX.js";
5
- import {
6
- Move,
7
- experimentalIs
8
- } from "./chunk-EWRBHQFX.js";
2
+ KPuzzle,
3
+ experimental3x3x3KPuzzle
4
+ } from "./chunk-TNRZDNGH.js";
9
5
 
10
6
  // src/cubing/puzzles/customPGPuzzleLoader.ts
11
7
  async function descAsyncGetPuzzleGeometry(desc) {
@@ -16,17 +12,25 @@ async function descAsyncGetPuzzleGeometry(desc) {
16
12
  addRotations: true
17
13
  });
18
14
  }
19
- async function dsecAsyncGetDef(desc) {
20
- return (await descAsyncGetPuzzleGeometry(desc)).writekpuzzle(true);
15
+ async function asyncGetKPuzzle(desc) {
16
+ const pg = await descAsyncGetPuzzleGeometry(desc);
17
+ const kpuzzleDefinition = pg.getKPuzzleDefinition(true);
18
+ kpuzzleDefinition.name = `description: ${desc}`;
19
+ const puzzleGeometry = await import("./puzzle-geometry/index.js");
20
+ const pgNotation = new puzzleGeometry.ExperimentalPGNotation(pg, pg.getOrbitsDef(true));
21
+ return new KPuzzle(kpuzzleDefinition, {
22
+ experimentalPGNotation: pgNotation
23
+ });
21
24
  }
22
25
  var nextCustomID = 1;
23
26
  function customPGPuzzleLoader(desc, info) {
24
27
  const customID = nextCustomID++;
28
+ let cachedKPuzzle = null;
25
29
  const puzzleLoader = {
26
30
  id: `custom-${customID}`,
27
31
  fullName: info?.fullName ?? `Custom Puzzle (instance #${customID})`,
28
- def: async () => {
29
- return dsecAsyncGetDef(desc);
32
+ kpuzzle: async () => {
33
+ return cachedKPuzzle ?? (cachedKPuzzle = asyncGetKPuzzle(desc));
30
34
  },
31
35
  svg: async () => {
32
36
  const pg = await descAsyncGetPuzzleGeometry(desc);
@@ -77,9 +81,9 @@ var PieceStickering;
77
81
  PieceStickering2["OrientationWithoutPermutation"] = "OrientationWithoutPermutation";
78
82
  })(PieceStickering || (PieceStickering = {}));
79
83
  var PieceAnnotation = class {
80
- constructor(def, defaultValue) {
84
+ constructor(kpuzzle, defaultValue) {
81
85
  this.stickerings = new Map();
82
- for (const [orbitName, orbitDef] of Object.entries(def.orbits)) {
86
+ for (const [orbitName, orbitDef] of Object.entries(kpuzzle.definition.orbits)) {
83
87
  this.stickerings.set(orbitName, new Array(orbitDef.numPieces).fill(defaultValue));
84
88
  }
85
89
  }
@@ -139,8 +143,8 @@ function getPieceAppearance(pieceStickering) {
139
143
  }
140
144
  }
141
145
  var PuzzleStickering = class extends PieceAnnotation {
142
- constructor(def) {
143
- super(def, PieceStickering.Regular);
146
+ constructor(kpuzzle) {
147
+ super(kpuzzle, PieceStickering.Regular);
144
148
  }
145
149
  set(pieceSet, pieceStickering) {
146
150
  for (const [orbitName, pieces] of this.stickerings.entries()) {
@@ -168,12 +172,12 @@ var PuzzleStickering = class extends PieceAnnotation {
168
172
  }
169
173
  };
170
174
  var StickeringManager = class {
171
- constructor(def) {
172
- this.def = def;
175
+ constructor(kpuzzle) {
176
+ this.kpuzzle = kpuzzle;
173
177
  }
174
178
  and(pieceSets) {
175
- const newPieceSet = new PieceAnnotation(this.def, false);
176
- for (const [orbitName, orbitDef] of Object.entries(this.def.orbits)) {
179
+ const newPieceSet = new PieceAnnotation(this.kpuzzle, false);
180
+ for (const [orbitName, orbitDef] of Object.entries(this.kpuzzle.definition.orbits)) {
177
181
  pieceLoop:
178
182
  for (let i2 = 0; i2 < orbitDef.numPieces; i2++) {
179
183
  newPieceSet.stickerings.get(orbitName)[i2] = true;
@@ -188,8 +192,8 @@ var StickeringManager = class {
188
192
  return newPieceSet;
189
193
  }
190
194
  or(pieceSets) {
191
- const newPieceSet = new PieceAnnotation(this.def, false);
192
- for (const [orbitName, orbitDef] of Object.entries(this.def.orbits)) {
195
+ const newPieceSet = new PieceAnnotation(this.kpuzzle, false);
196
+ for (const [orbitName, orbitDef] of Object.entries(this.kpuzzle.definition.orbits)) {
193
197
  pieceLoop:
194
198
  for (let i2 = 0; i2 < orbitDef.numPieces; i2++) {
195
199
  newPieceSet.stickerings.get(orbitName)[i2] = false;
@@ -204,8 +208,8 @@ var StickeringManager = class {
204
208
  return newPieceSet;
205
209
  }
206
210
  not(pieceSet) {
207
- const newPieceSet = new PieceAnnotation(this.def, false);
208
- for (const [orbitName, orbitDef] of Object.entries(this.def.orbits)) {
211
+ const newPieceSet = new PieceAnnotation(this.kpuzzle, false);
212
+ for (const [orbitName, orbitDef] of Object.entries(this.kpuzzle.definition.orbits)) {
209
213
  for (let i2 = 0; i2 < orbitDef.numPieces; i2++) {
210
214
  newPieceSet.stickerings.get(orbitName)[i2] = !pieceSet.stickerings.get(orbitName)[i2];
211
215
  }
@@ -216,11 +220,11 @@ var StickeringManager = class {
216
220
  return this.and(this.moves([]));
217
221
  }
218
222
  move(moveSource) {
219
- const transformation = transformationForMove(this.def, experimentalIs(moveSource, Move) ? moveSource : Move.fromString(moveSource));
220
- const newPieceSet = new PieceAnnotation(this.def, false);
221
- for (const [orbitName, orbitDef] of Object.entries(this.def.orbits)) {
223
+ const transformation = this.kpuzzle.moveToTransformation(moveSource);
224
+ const newPieceSet = new PieceAnnotation(this.kpuzzle, false);
225
+ for (const [orbitName, orbitDef] of Object.entries(this.kpuzzle.definition.orbits)) {
222
226
  for (let i2 = 0; i2 < orbitDef.numPieces; i2++) {
223
- if (transformation[orbitName].permutation[i2] !== i2 || transformation[orbitName].orientation[i2] !== 0) {
227
+ if (transformation.transformationData[orbitName].permutation[i2] !== i2 || transformation.transformationData[orbitName].orientation[i2] !== 0) {
224
228
  newPieceSet.stickerings.get(orbitName)[i2] = true;
225
229
  }
226
230
  }
@@ -254,7 +258,7 @@ function setGlobalCustomStickerer(stickerer) {
254
258
  function useGlobalCustomStickerer(puzzleStickering, m) {
255
259
  globalCustomStickerer(puzzleStickering, m);
256
260
  }
257
- if (typeof location !== "undefined" && new URL(location.href).searchParams.get("global-custom-stickerer") === "true") {
261
+ if (globalThis.location && new URL(location.href).searchParams.get("global-custom-stickerer") === "true") {
258
262
  window.setGlobalCustomStickerer = setGlobalCustomStickerer;
259
263
  window.PieceStickering = PieceStickering;
260
264
  console.log("Global custom stickerer enabled! (using: global-custom-stickerer=true)");
@@ -263,9 +267,9 @@ if (typeof location !== "undefined" && new URL(location.href).searchParams.get("
263
267
 
264
268
  // src/cubing/puzzles/stickerings/cube-stickerings.ts
265
269
  async function cubeAppearance(puzzleLoader, stickering) {
266
- const def = await puzzleLoader.def();
267
- const puzzleStickering = new PuzzleStickering(def);
268
- const m = new StickeringManager(def);
270
+ const kpuzzle = await puzzleLoader.kpuzzle();
271
+ const puzzleStickering = new PuzzleStickering(kpuzzle);
272
+ const m = new StickeringManager(kpuzzle);
269
273
  const LL = () => m.move("U");
270
274
  const orUD = () => m.or(m.moves(["U", "D"]));
271
275
  const E = () => m.not(orUD());
@@ -378,6 +382,16 @@ async function cubeAppearance(puzzleLoader, stickering) {
378
382
  puzzleStickering.set(CORNERS(), PieceStickering.Ignored);
379
383
  puzzleStickering.set(EDGES(), PieceStickering.OrientationWithoutPermutation);
380
384
  break;
385
+ case "EOline":
386
+ puzzleStickering.set(CORNERS(), PieceStickering.Ignored);
387
+ puzzleStickering.set(EDGES(), PieceStickering.OrientationWithoutPermutation);
388
+ puzzleStickering.set(m.and(m.moves(["D", "M"])), PieceStickering.Regular);
389
+ break;
390
+ case "EOcross":
391
+ puzzleStickering.set(EDGES(), PieceStickering.OrientationWithoutPermutation);
392
+ puzzleStickering.set(m.move("D"), PieceStickering.Regular);
393
+ puzzleStickering.set(CORNERS(), PieceStickering.Ignored);
394
+ break;
381
395
  case "CMLL":
382
396
  puzzleStickering.set(F2L(), PieceStickering.Dim);
383
397
  puzzleStickering.set(L6E(), PieceStickering.Ignored);
@@ -451,6 +465,8 @@ async function cubeStickerings() {
451
465
  "VLS",
452
466
  "LS",
453
467
  "EO",
468
+ "EOline",
469
+ "EOcross",
454
470
  "CMLL",
455
471
  "L6E",
456
472
  "L6EO",
@@ -467,6 +483,14 @@ async function cubeStickerings() {
467
483
  ];
468
484
  }
469
485
 
486
+ // src/cubing/puzzles/async/lazy-cached-kpuzzle.ts
487
+ function lazyKPuzzle(getKPuzzle) {
488
+ let cachedKPuzzlePromise = null;
489
+ return () => {
490
+ return cachedKPuzzlePromise ?? (cachedKPuzzlePromise = getKPuzzle());
491
+ };
492
+ }
493
+
470
494
  // src/cubing/puzzles/async/async-pg3d.ts
471
495
  async function asyncGetPuzzleGeometry(puzzleName) {
472
496
  const puzzleGeometry = await import("./puzzle-geometry/index.js");
@@ -476,16 +500,24 @@ async function asyncGetPuzzleGeometry(puzzleName) {
476
500
  addRotations: true
477
501
  });
478
502
  }
479
- async function asyncGetDef(puzzleName) {
480
- return (await asyncGetPuzzleGeometry(puzzleName)).writekpuzzle(true);
503
+ async function asyncGetKPuzzle2(puzzleName) {
504
+ const pg = await asyncGetPuzzleGeometry(puzzleName);
505
+ const kpuzzleDefinition = pg.getKPuzzleDefinition(true);
506
+ kpuzzleDefinition.name = puzzleName;
507
+ const puzzleGeometry = await import("./puzzle-geometry/index.js");
508
+ const pgNotation = new puzzleGeometry.ExperimentalPGNotation(pg, pg.getOrbitsDef(true));
509
+ return new KPuzzle(kpuzzleDefinition, {
510
+ experimentalPGNotation: pgNotation
511
+ });
512
+ }
513
+ function asyncLazyKPuzzleGetter(puzzleName) {
514
+ return lazyKPuzzle(() => asyncGetKPuzzle2(puzzleName));
481
515
  }
482
516
  function genericPGPuzzleLoader(id, fullName, info) {
483
517
  const puzzleLoader = {
484
518
  id,
485
519
  fullName,
486
- def: async () => {
487
- return asyncGetDef(id);
488
- },
520
+ kpuzzle: asyncLazyKPuzzleGetter(id),
489
521
  svg: async () => {
490
522
  const pg = await asyncGetPuzzleGeometry(id);
491
523
  return pg.generatesvg();
@@ -513,9 +545,7 @@ function cubePGPuzzleLoader(id, fullName, info) {
513
545
  var cube2x2x2 = {
514
546
  id: "2x2x2",
515
547
  fullName: "2\xD72\xD72 Cube",
516
- def: async () => {
517
- return (await import("./2x2x2.kpuzzle.json-JOGUSQ4N.js")).cube2x2x2KPuzzle;
518
- },
548
+ kpuzzle: lazyKPuzzle(async () => new KPuzzle((await import("./2x2x2.kpuzzle.json-U5KOZCMU.js")).cube2x2x2KPuzzleDefinition)),
519
549
  svg: async () => {
520
550
  return (await import("./2x2x2.kpuzzle.svg-CQF2FTV7.js")).default;
521
551
  },
@@ -532,8 +562,8 @@ var cube3x3x3 = {
532
562
  fullName: "3\xD73\xD73 Cube",
533
563
  inventedBy: ["Ern\u0151 Rubik"],
534
564
  inventionYear: 1974,
535
- def: async () => {
536
- return cube3x3x3KPuzzle;
565
+ kpuzzle: async () => {
566
+ return experimental3x3x3KPuzzle;
537
567
  },
538
568
  svg: async () => {
539
569
  return (await import("./3x3x3.kpuzzle.svg-ERSSH66P.js")).default;
@@ -554,9 +584,7 @@ var clock = {
554
584
  fullName: "Clock",
555
585
  inventedBy: ["Christopher C. Wiggs", "Christopher J. Taylor"],
556
586
  inventionYear: 1988,
557
- def: async () => {
558
- return (await import("./clock.kpuzzle.json-EKWRMHJM.js")).clockKPuzzle;
559
- },
587
+ kpuzzle: lazyKPuzzle(async () => new KPuzzle((await import("./clock.kpuzzle.json-J3YBOI3G.js")).clockKPuzzleDefinition)),
560
588
  svg: async () => {
561
589
  return (await import("./clock.kpuzzle.svg-B7TMN3SY.js")).default;
562
590
  }
@@ -564,9 +592,9 @@ var clock = {
564
592
 
565
593
  // src/cubing/puzzles/stickerings/fto-stickerings.ts
566
594
  async function ftoStickering(puzzleLoader, stickering) {
567
- const def = await puzzleLoader.def();
568
- const puzzleStickering = new PuzzleStickering(def);
569
- const m = new StickeringManager(def);
595
+ const kpuzzle = await puzzleLoader.kpuzzle();
596
+ const puzzleStickering = new PuzzleStickering(kpuzzle);
597
+ const m = new StickeringManager(kpuzzle);
570
598
  const experimentalFTO_FC = () => m.and([m.move("U"), m.not(m.or(m.moves(["F", "BL", "BR"])))]);
571
599
  const experimentalFTO_F2T = () => m.and([m.move("U"), m.not(m.move("F"))]);
572
600
  const experimentalFTO_SC = () => m.or([
@@ -633,9 +661,7 @@ var fto = {
633
661
  fullName: "Face-Turning Octahedron",
634
662
  inventedBy: ["Karl Rohrbach", "David Pitcher"],
635
663
  inventionYear: 1983,
636
- def: async () => {
637
- return asyncGetDef("FTO");
638
- },
664
+ kpuzzle: asyncLazyKPuzzleGetter("FTO"),
639
665
  svg: async () => {
640
666
  const pg = await asyncGetPuzzleGeometry("FTO");
641
667
  return pg.generatesvg();
@@ -676,9 +702,7 @@ var pyraminx = {
676
702
  fullName: "Pyraminx",
677
703
  inventedBy: ["Uwe Meffert"],
678
704
  inventionYear: 1970,
679
- def: async () => {
680
- return asyncGetDef("pyraminx");
681
- },
705
+ kpuzzle: asyncLazyKPuzzleGetter("pyraminx"),
682
706
  svg: async () => {
683
707
  return (await import("./pyraminx.kpuzzle.svg-QBBMZVDY.js")).default;
684
708
  },
@@ -693,9 +717,7 @@ var square1 = {
693
717
  fullName: "Square-1",
694
718
  inventedBy: ["Karel Hr\u0161el", "Vojtech Kopsk\xFD"],
695
719
  inventionYear: 1990,
696
- def: async () => {
697
- return (await import("./sq1-hyperorbit.kpuzzle.json-N3FGCPML.js")).sq1HyperOrbitKPuzzle;
698
- },
720
+ kpuzzle: lazyKPuzzle(async () => new KPuzzle((await import("./sq1-hyperorbit.kpuzzle.json-AWDGN4ZW.js")).sq1HyperOrbitKPuzzleDefinition)),
699
721
  svg: async () => {
700
722
  return (await import("./sq1-hyperorbit.kpuzzle.svg-ID57EER7.js")).default;
701
723
  }
@@ -759,4 +781,4 @@ export {
759
781
  puzzles,
760
782
  wcaEventInfo
761
783
  };
762
- //# sourceMappingURL=chunk-HXKINJ7U.js.map
784
+ //# sourceMappingURL=chunk-ZLIK3DZT.js.map