cubing 0.21.1 → 0.22.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (528) hide show
  1. package/README.md +4 -7
  2. package/{src/cubing/kpuzzle → dist}/.DS_Store +0 -0
  3. package/dist/bin/order.js +16675 -0
  4. package/dist/bin/order.js.map +7 -0
  5. package/dist/bin/puzzle-geometry-bin.js +13 -9
  6. package/dist/bin/puzzle-geometry-bin.js.map +2 -2
  7. package/dist/bundle-global/cubing.bundle-global.js +555 -298
  8. package/dist/esm/3d-M7GBIT3X.js +21 -0
  9. package/dist/esm/3d-M7GBIT3X.js.map +7 -0
  10. package/dist/esm/alg/index.js +1 -1
  11. package/dist/esm/bluetooth/index.js +10 -8
  12. package/dist/esm/bluetooth/index.js.map +3 -3
  13. package/dist/esm/{chunk-RE7MIN5R.js → chunk-4IUYLRHT.js} +2 -2
  14. package/dist/esm/{chunk-RE7MIN5R.js.map → chunk-4IUYLRHT.js.map} +0 -0
  15. package/dist/esm/{chunk-CSVAFZSB.js → chunk-6BZSKSG7.js} +724 -735
  16. package/dist/esm/chunk-6BZSKSG7.js.map +7 -0
  17. package/dist/esm/{chunk-BU5PUJK3.js → chunk-EWRBHQFX.js} +1 -1
  18. package/dist/esm/{chunk-BU5PUJK3.js.map → chunk-EWRBHQFX.js.map} +1 -1
  19. package/dist/esm/{chunk-APIIMJG6.js → chunk-GF76PWEV.js} +450 -1052
  20. package/dist/esm/chunk-GF76PWEV.js.map +7 -0
  21. package/dist/esm/{chunk-MUQMBH2S.js → chunk-R3HRHYIW.js} +16 -4
  22. package/dist/esm/chunk-R3HRHYIW.js.map +7 -0
  23. package/dist/esm/{chunk-YV3RT5PX.js → chunk-X6JHXPDX.js} +2 -2
  24. package/dist/esm/{chunk-YV3RT5PX.js.map → chunk-X6JHXPDX.js.map} +0 -0
  25. package/dist/esm/esm-test-worker.js +2 -2
  26. package/dist/esm/esm-test-worker.js.map +2 -2
  27. package/dist/esm/kpuzzle/index.js +2 -2
  28. package/dist/esm/{node-WEHVBEKP.js → node-HFBX5WHK.js} +2 -2
  29. package/dist/esm/{node-WEHVBEKP.js.map → node-HFBX5WHK.js.map} +1 -1
  30. package/dist/esm/{node-BSAQKO3G.js → node-SP4L2AKI.js} +2 -2
  31. package/dist/esm/{node-BSAQKO3G.js.map → node-SP4L2AKI.js.map} +1 -1
  32. package/dist/esm/notation/index.js +2 -2
  33. package/dist/esm/protocol/index.js +2 -2
  34. package/dist/esm/puzzle-geometry/index.js +14 -10
  35. package/dist/esm/puzzle-geometry/index.js.map +2 -2
  36. package/dist/esm/puzzles/index.js +3 -3
  37. package/dist/esm/scramble/index.js +4 -4
  38. package/dist/esm/search/index.js +4 -4
  39. package/dist/esm/stream/index.js +1 -1
  40. package/dist/esm/twisty/index.js +729 -2346
  41. package/dist/esm/twisty/index.js.map +3 -3
  42. package/dist/esm/worker-inside-generated-string-RQYYANYQ.js +3107 -0
  43. package/dist/esm/worker-inside-generated-string-RQYYANYQ.js.map +7 -0
  44. package/dist/types/alg/index.d.ts +1 -0
  45. package/dist/types/alg/index.d.ts.map +1 -1
  46. package/dist/types/alg/units/leaves/Move.d.ts +1 -1
  47. package/dist/types/alg/units/leaves/Move.d.ts.map +1 -1
  48. package/dist/types/bluetooth/smart-puzzle/gan.d.ts.map +1 -1
  49. package/dist/types/cubing.bundle-global.d.ts +1 -24
  50. package/dist/types/cubing.bundle-global.d.ts.map +1 -1
  51. package/dist/types/cubing.bundle-global.exports.d.ts +25 -0
  52. package/dist/types/cubing.bundle-global.exports.d.ts.map +1 -0
  53. package/dist/types/puzzle-geometry/PGPuzzles.spec.d.ts +3 -0
  54. package/dist/types/puzzle-geometry/PGPuzzles.spec.d.ts.map +1 -1
  55. package/dist/types/puzzle-geometry/PuzzleGeometry.d.ts +7 -3
  56. package/dist/types/puzzle-geometry/PuzzleGeometry.d.ts.map +1 -1
  57. package/dist/types/puzzle-geometry/index.d.ts +1 -1
  58. package/dist/types/puzzle-geometry/index.d.ts.map +1 -1
  59. package/dist/types/puzzles/index.d.ts +1 -1
  60. package/dist/types/puzzles/index.d.ts.map +1 -1
  61. package/dist/types/puzzles/stickerings/cube-stickerings.d.ts.map +1 -1
  62. package/dist/types/search/inside/api.d.ts.map +1 -1
  63. package/dist/types/search/inside/solve/puzzles/4x4x4.d.ts +1 -1
  64. package/dist/types/search/inside/solve/puzzles/4x4x4.d.ts.map +1 -1
  65. package/dist/types/search/inside/solve/puzzles/fto.d.ts +6 -0
  66. package/dist/types/search/inside/solve/puzzles/fto.d.ts.map +1 -0
  67. package/dist/types/search/inside/solve/puzzles/fto.sgs.json.d.ts +5 -0
  68. package/dist/types/search/inside/solve/puzzles/fto.sgs.json.d.ts.map +1 -0
  69. package/dist/types/search/inside/solve/tremble.d.ts.map +1 -1
  70. package/dist/types/search/worker-inside-generated-string.d.ts +1 -1
  71. package/dist/types/search/worker-inside-generated-string.d.ts.map +1 -1
  72. package/dist/types/twisty/{old/animation/cursor/CursorTypes.d.ts → controllers/AnimationTypes.d.ts} +10 -3
  73. package/dist/types/twisty/controllers/AnimationTypes.d.ts.map +1 -0
  74. package/dist/types/twisty/{old/animation → controllers}/RenderScheduler.d.ts +0 -0
  75. package/dist/types/twisty/controllers/RenderScheduler.d.ts.map +1 -0
  76. package/dist/types/twisty/controllers/TwistyAnimationController.d.ts +1 -1
  77. package/dist/types/twisty/controllers/TwistyAnimationController.d.ts.map +1 -1
  78. package/dist/types/twisty/{old/animation → controllers}/easing.d.ts +0 -0
  79. package/dist/types/twisty/controllers/easing.d.ts.map +1 -0
  80. package/dist/types/twisty/{old/animation → controllers}/indexer/AlgDuration.d.ts +2 -2
  81. package/dist/types/twisty/controllers/indexer/AlgDuration.d.ts.map +1 -0
  82. package/dist/types/twisty/{old/animation → controllers}/indexer/AlgIndexer.d.ts +3 -3
  83. package/dist/types/twisty/controllers/indexer/AlgIndexer.d.ts.map +1 -0
  84. package/dist/types/twisty/{old/animation → controllers}/indexer/SimpleAlgIndexer.d.ts +3 -3
  85. package/dist/types/twisty/controllers/indexer/SimpleAlgIndexer.d.ts.map +1 -0
  86. package/dist/types/twisty/{old/animation → controllers}/indexer/simultaneous-moves/SimultaneousMoveIndexer.d.ts +3 -3
  87. package/dist/types/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexer.d.ts.map +1 -0
  88. package/dist/types/twisty/{old/animation → controllers}/indexer/simultaneous-moves/SimultaneousMoveIndexerV2.d.ts +3 -3
  89. package/dist/types/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexerV2.d.ts.map +1 -0
  90. package/dist/types/twisty/{old/animation → controllers}/indexer/simultaneous-moves/simul-moves.d.ts +2 -2
  91. package/dist/types/twisty/controllers/indexer/simultaneous-moves/simul-moves.d.ts.map +1 -0
  92. package/dist/types/twisty/{old/animation → controllers}/indexer/tree/AlgWalker.d.ts +2 -2
  93. package/dist/types/twisty/controllers/indexer/tree/AlgWalker.d.ts.map +1 -0
  94. package/dist/types/twisty/{old/animation → controllers}/indexer/tree/TreeAlgIndexer.d.ts +3 -3
  95. package/dist/types/twisty/controllers/indexer/tree/TreeAlgIndexer.d.ts.map +1 -0
  96. package/dist/types/twisty/controllers/indexer/tree/chunkAlgs.d.ts +3 -0
  97. package/dist/types/twisty/controllers/indexer/tree/chunkAlgs.d.ts.map +1 -0
  98. package/dist/types/twisty/{old/animation → controllers}/stream/timeline-move-calculation-draft.d.ts +2 -2
  99. package/dist/types/twisty/controllers/stream/timeline-move-calculation-draft.d.ts.map +1 -0
  100. package/dist/types/twisty/heavy-code-imports/dynamic-entries/3d.d.ts +1 -2
  101. package/dist/types/twisty/heavy-code-imports/dynamic-entries/3d.d.ts.map +1 -1
  102. package/dist/types/twisty/index.d.ts +9 -12
  103. package/dist/types/twisty/index.d.ts.map +1 -1
  104. package/dist/types/twisty/model/TwistyPlayerModel.d.ts +11 -0
  105. package/dist/types/twisty/model/TwistyPlayerModel.d.ts.map +1 -1
  106. package/dist/types/twisty/model/props/TwistyPropDebugger.d.ts +1 -1
  107. package/dist/types/twisty/model/props/TwistyPropDebugger.d.ts.map +1 -1
  108. package/dist/types/twisty/model/props/puzzle/display/FoundationDisplayProp.d.ts +6 -0
  109. package/dist/types/twisty/model/props/puzzle/display/FoundationDisplayProp.d.ts.map +1 -0
  110. package/dist/types/twisty/model/props/puzzle/display/HintFaceletProp.d.ts +5 -1
  111. package/dist/types/twisty/model/props/puzzle/display/HintFaceletProp.d.ts.map +1 -1
  112. package/dist/types/twisty/model/props/puzzle/display/StickeringProp.d.ts +46 -1
  113. package/dist/types/twisty/model/props/puzzle/display/StickeringProp.d.ts.map +1 -1
  114. package/dist/types/twisty/model/props/puzzle/state/AnchoredStartProp.d.ts +2 -2
  115. package/dist/types/twisty/model/props/puzzle/state/AnchoredStartProp.d.ts.map +1 -1
  116. package/dist/types/twisty/model/props/puzzle/state/CurrentLeavesProp.d.ts +1 -1
  117. package/dist/types/twisty/model/props/puzzle/state/CurrentLeavesProp.d.ts.map +1 -1
  118. package/dist/types/twisty/model/props/puzzle/state/CurrentLeavesSimplified.d.ts +1 -1
  119. package/dist/types/twisty/model/props/puzzle/state/CurrentLeavesSimplified.d.ts.map +1 -1
  120. package/dist/types/twisty/model/props/puzzle/state/CurrentTransformationProp.d.ts +1 -1
  121. package/dist/types/twisty/model/props/puzzle/state/CurrentTransformationProp.d.ts.map +1 -1
  122. package/dist/types/twisty/model/props/puzzle/state/IndexerConstructorProp.d.ts +5 -2
  123. package/dist/types/twisty/model/props/puzzle/state/IndexerConstructorProp.d.ts.map +1 -1
  124. package/dist/types/twisty/model/props/puzzle/state/IndexerProp.d.ts +2 -2
  125. package/dist/types/twisty/model/props/puzzle/state/IndexerProp.d.ts.map +1 -1
  126. package/dist/types/twisty/model/props/puzzle/state/LegacyPositionProp.d.ts +2 -2
  127. package/dist/types/twisty/model/props/puzzle/state/LegacyPositionProp.d.ts.map +1 -1
  128. package/dist/types/twisty/model/props/puzzle/state/MovePressInputProp.d.ts +11 -0
  129. package/dist/types/twisty/model/props/puzzle/state/MovePressInputProp.d.ts.map +1 -0
  130. package/dist/types/twisty/model/props/puzzle/state/NaiveMoveCountProp.d.ts +10 -0
  131. package/dist/types/twisty/model/props/puzzle/state/NaiveMoveCountProp.d.ts.map +1 -0
  132. package/dist/types/twisty/model/props/puzzle/state/SetupAnchorProp.d.ts +5 -1
  133. package/dist/types/twisty/model/props/puzzle/state/SetupAnchorProp.d.ts.map +1 -1
  134. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDProp.d.ts +1 -1
  135. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDProp.d.ts.map +1 -1
  136. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDRequestProp.d.ts +19 -1
  137. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDRequestProp.d.ts.map +1 -1
  138. package/dist/types/twisty/model/props/puzzle/structure/PuzzleLoaderProp.d.ts +1 -1
  139. package/dist/types/twisty/model/props/puzzle/structure/PuzzleLoaderProp.d.ts.map +1 -1
  140. package/dist/types/twisty/model/props/timeline/DetailedTimelineInfoProp.d.ts +2 -3
  141. package/dist/types/twisty/model/props/timeline/DetailedTimelineInfoProp.d.ts.map +1 -1
  142. package/dist/types/twisty/model/props/timeline/PlayingInfoProp.d.ts +1 -1
  143. package/dist/types/twisty/model/props/timeline/PlayingInfoProp.d.ts.map +1 -1
  144. package/dist/types/twisty/model/props/timeline/TimestampRequestProp.d.ts +1 -1
  145. package/dist/types/twisty/model/props/timeline/TimestampRequestProp.d.ts.map +1 -1
  146. package/dist/types/twisty/model/props/viewer/BackViewProp.d.ts +6 -1
  147. package/dist/types/twisty/model/props/viewer/BackViewProp.d.ts.map +1 -1
  148. package/dist/types/twisty/model/props/viewer/BackgroundProp.d.ts +5 -1
  149. package/dist/types/twisty/model/props/viewer/BackgroundProp.d.ts.map +1 -1
  150. package/dist/types/twisty/model/props/viewer/ControlPanelProp.d.ts +5 -1
  151. package/dist/types/twisty/model/props/viewer/ControlPanelProp.d.ts.map +1 -1
  152. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesProp.d.ts +18 -5
  153. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesProp.d.ts.map +1 -1
  154. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesRequestProp.d.ts +6 -6
  155. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesRequestProp.d.ts.map +1 -1
  156. package/dist/types/twisty/model/props/viewer/TimeRangeProp.d.ts +2 -2
  157. package/dist/types/twisty/model/props/viewer/TimeRangeProp.d.ts.map +1 -1
  158. package/dist/types/twisty/model/props/viewer/ViewerLinkProp.d.ts +5 -1
  159. package/dist/types/twisty/model/props/viewer/ViewerLinkProp.d.ts.map +1 -1
  160. package/dist/types/twisty/model/props/viewer/VisualizationProp.d.ts +7 -1
  161. package/dist/types/twisty/model/props/viewer/VisualizationProp.d.ts.map +1 -1
  162. package/dist/types/twisty/model/props/viewer/VisualizationStrategyProp.d.ts +1 -1
  163. package/dist/types/twisty/model/props/viewer/VisualizationStrategyProp.d.ts.map +1 -1
  164. package/dist/types/twisty/views/2D/Twisty2DPuzzle.css.d.ts +3 -0
  165. package/dist/types/twisty/views/2D/Twisty2DPuzzle.css.d.ts.map +1 -0
  166. package/dist/types/twisty/views/2D/Twisty2DPuzzle.d.ts +4 -6
  167. package/dist/types/twisty/views/2D/Twisty2DPuzzle.d.ts.map +1 -1
  168. package/dist/types/twisty/views/2D/Twisty2DPuzzleWrapper.d.ts +1 -1
  169. package/dist/types/twisty/views/2D/Twisty2DPuzzleWrapper.d.ts.map +1 -1
  170. package/dist/types/twisty/views/2D/Twisty2DSceneWrapper.d.ts +2 -2
  171. package/dist/types/twisty/views/2D/Twisty2DSceneWrapper.d.ts.map +1 -1
  172. package/dist/types/twisty/views/3D/DragTracker.d.ts +28 -0
  173. package/dist/types/twisty/views/3D/DragTracker.d.ts.map +1 -0
  174. package/dist/types/twisty/views/3D/RendererPool.d.ts.map +1 -1
  175. package/dist/types/twisty/views/3D/Twisty3DPuzzleWrapper.d.ts +6 -1
  176. package/dist/types/twisty/views/3D/Twisty3DPuzzleWrapper.d.ts.map +1 -1
  177. package/dist/types/twisty/views/3D/Twisty3DSceneWrapper.d.ts +9 -4
  178. package/dist/types/twisty/views/3D/Twisty3DSceneWrapper.d.ts.map +1 -1
  179. package/dist/types/twisty/views/3D/Twisty3DVantage.css.d.ts +3 -0
  180. package/dist/types/twisty/views/3D/Twisty3DVantage.css.d.ts.map +1 -0
  181. package/dist/types/twisty/views/3D/Twisty3DVantage.d.ts +12 -8
  182. package/dist/types/twisty/views/3D/Twisty3DVantage.d.ts.map +1 -1
  183. package/dist/types/twisty/views/3D/TwistyOrbitControls.d.ts +24 -0
  184. package/dist/types/twisty/views/3D/TwistyOrbitControls.d.ts.map +1 -0
  185. package/dist/types/twisty/views/3D/TwistyOrbitControls.spec.d.ts +5 -0
  186. package/dist/types/twisty/views/3D/TwistyOrbitControls.spec.d.ts.map +1 -0
  187. package/dist/types/twisty/views/3D/puzzles/Cube3D.d.ts +4 -4
  188. package/dist/types/twisty/views/3D/puzzles/Cube3D.d.ts.map +1 -1
  189. package/dist/types/twisty/views/3D/puzzles/PG3D.d.ts +17 -10
  190. package/dist/types/twisty/views/3D/puzzles/PG3D.d.ts.map +1 -1
  191. package/dist/types/twisty/views/3D/puzzles/Twisty3DPuzzle.d.ts +1 -1
  192. package/dist/types/twisty/views/3D/puzzles/Twisty3DPuzzle.d.ts.map +1 -1
  193. package/dist/types/twisty/{old/dom/element → views}/ClassListManager.d.ts +0 -0
  194. package/dist/types/twisty/views/ClassListManager.d.ts.map +1 -0
  195. package/dist/types/twisty/{old/dom/element → views}/ManagedCustomElement.d.ts +0 -0
  196. package/dist/types/twisty/views/ManagedCustomElement.d.ts.map +1 -0
  197. package/dist/types/twisty/views/TwistyAlgEditor/LeafTokens.d.ts +1 -1
  198. package/dist/types/twisty/views/TwistyAlgEditor/LeafTokens.d.ts.map +1 -1
  199. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.css.d.ts +1 -1
  200. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.css.d.ts.map +1 -1
  201. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.d.ts +2 -1
  202. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.d.ts.map +1 -1
  203. package/dist/types/twisty/views/TwistyAlgViewer.css.d.ts +1 -1
  204. package/dist/types/twisty/views/TwistyAlgViewer.css.d.ts.map +1 -1
  205. package/dist/types/twisty/views/TwistyAlgViewer.d.ts +2 -2
  206. package/dist/types/twisty/views/TwistyAlgViewer.d.ts.map +1 -1
  207. package/dist/types/twisty/views/TwistyPlayer.css.d.ts +3 -0
  208. package/dist/types/twisty/views/TwistyPlayer.css.d.ts.map +1 -0
  209. package/dist/types/twisty/views/TwistyPlayer.d.ts +7 -3
  210. package/dist/types/twisty/views/TwistyPlayer.d.ts.map +1 -1
  211. package/dist/types/twisty/views/TwistyPlayerSettable.d.ts +7 -4
  212. package/dist/types/twisty/views/TwistyPlayerSettable.d.ts.map +1 -1
  213. package/dist/types/twisty/views/TwistyViewerWrapper.css.d.ts +3 -0
  214. package/dist/types/twisty/views/TwistyViewerWrapper.css.d.ts.map +1 -0
  215. package/dist/types/twisty/{old/dom/viewers → views}/canvas.d.ts +0 -0
  216. package/dist/types/twisty/views/canvas.d.ts.map +1 -0
  217. package/dist/types/twisty/views/control-panel/TwistyButtonsV2.css.d.ts +4 -0
  218. package/dist/types/twisty/views/control-panel/TwistyButtonsV2.css.d.ts.map +1 -0
  219. package/dist/types/twisty/views/control-panel/TwistyButtonsV2.d.ts +1 -1
  220. package/dist/types/twisty/views/control-panel/TwistyButtonsV2.d.ts.map +1 -1
  221. package/dist/types/twisty/views/control-panel/TwistyScrubber.css.d.ts +3 -0
  222. package/dist/types/twisty/{old/dom/controls → views/control-panel}/TwistyScrubber.css.d.ts.map +1 -1
  223. package/dist/types/twisty/views/control-panel/TwistyScrubberV2.d.ts +1 -1
  224. package/dist/types/twisty/views/control-panel/TwistyScrubberV2.d.ts.map +1 -1
  225. package/dist/types/twisty/{old/dom/element → views}/node-custom-element-shims.d.ts +0 -0
  226. package/dist/types/twisty/views/node-custom-element-shims.d.ts.map +1 -0
  227. package/dist/types/twisty/views/stream/TwistyStreamSource.css.d.ts +3 -0
  228. package/dist/types/twisty/views/stream/TwistyStreamSource.css.d.ts.map +1 -0
  229. package/dist/types/twisty/{old/dom → views}/stream/TwistyStreamSource.d.ts +1 -1
  230. package/dist/types/twisty/views/stream/TwistyStreamSource.d.ts.map +1 -0
  231. package/dist/types/{search/vendor → vendor}/comlink-everywhere/inside/index.d.ts +0 -0
  232. package/dist/types/vendor/comlink-everywhere/inside/index.d.ts.map +1 -0
  233. package/dist/types/{search/vendor → vendor}/comlink-everywhere/inside/node.d.ts +0 -0
  234. package/dist/types/vendor/comlink-everywhere/inside/node.d.ts.map +1 -0
  235. package/dist/types/{search/vendor → vendor}/comlink-everywhere/outside/index.d.ts +0 -0
  236. package/dist/types/vendor/comlink-everywhere/outside/index.d.ts.map +1 -0
  237. package/dist/types/{search/vendor → vendor}/comlink-everywhere/outside/node.d.ts +0 -0
  238. package/dist/types/vendor/comlink-everywhere/outside/node.d.ts.map +1 -0
  239. package/dist/types/{search/inside/solve/vendor → vendor}/cstimer/src/js/lib/mathlib.d.ts +0 -0
  240. package/dist/types/vendor/cstimer/src/js/lib/mathlib.d.ts.map +1 -0
  241. package/dist/types/{search/inside/solve/vendor → vendor}/cstimer/src/js/scramble/scramble_444.d.ts +1 -1
  242. package/dist/types/vendor/cstimer/src/js/scramble/scramble_444.d.ts.map +1 -0
  243. package/dist/types/{search/inside/solve/vendor → vendor}/min2phase/gwt.d.ts +0 -0
  244. package/dist/types/vendor/min2phase/gwt.d.ts.map +1 -0
  245. package/dist/types/{search/inside/solve/vendor → vendor}/random-uint-below/get-random-values.d.ts +0 -0
  246. package/dist/types/vendor/random-uint-below/get-random-values.d.ts.map +1 -0
  247. package/dist/types/{search/inside/solve/vendor → vendor}/random-uint-below/index.d.ts +1 -1
  248. package/dist/types/vendor/random-uint-below/index.d.ts.map +1 -0
  249. package/dist/types/{search/inside/solve/vendor → vendor}/random-uint-below/random-choice.d.ts +0 -0
  250. package/dist/types/vendor/random-uint-below/random-choice.d.ts.map +1 -0
  251. package/dist/types/{search/inside/solve/vendor/random-uint-below/random-int.d.ts → vendor/random-uint-below/random53BitValue.d.ts} +1 -1
  252. package/dist/types/vendor/random-uint-below/random53BitValue.d.ts.map +1 -0
  253. package/dist/types/{search/inside/solve/vendor → vendor}/sq12phase/scramble_sq1.d.ts +0 -0
  254. package/dist/types/vendor/sq12phase/scramble_sq1.d.ts.map +1 -0
  255. package/dist/types/{bluetooth/smart-puzzle → vendor/unsafe-raw-aes}/unsafe-raw-aes.d.ts +0 -0
  256. package/dist/types/vendor/unsafe-raw-aes/unsafe-raw-aes.d.ts.map +1 -0
  257. package/docs/.DS_Store +0 -0
  258. package/docs/cubing/.DS_Store +0 -0
  259. package/docs/cubing/api/index.html +11 -52
  260. package/docs/cubing/index.html +67 -27
  261. package/docs/main.css +7 -6
  262. package/package.json +8 -9
  263. package/src/cubing/.DS_Store +0 -0
  264. package/src/cubing/alg/index.ts +1 -0
  265. package/src/cubing/alg/units/leaves/Move.ts +1 -1
  266. package/src/cubing/bluetooth/smart-puzzle/gan.ts +4 -1
  267. package/src/cubing/bluetooth/smart-timer/GanTimer.ts +1 -1
  268. package/src/cubing/cubing.bundle-global.exports.ts +25 -0
  269. package/src/cubing/cubing.bundle-global.ts +3 -27
  270. package/src/cubing/puzzle-geometry/PGPuzzles.spec.ts +4 -0
  271. package/src/cubing/puzzle-geometry/PuzzleGeometry.ts +20 -8
  272. package/src/cubing/puzzle-geometry/index.ts +2 -2
  273. package/src/cubing/puzzles/.DS_Store +0 -0
  274. package/src/cubing/puzzles/implementations/.DS_Store +0 -0
  275. package/src/cubing/puzzles/index.ts +1 -1
  276. package/src/cubing/puzzles/stickerings/cube-stickerings.ts +18 -0
  277. package/src/cubing/puzzles/stickerings/global-custom-stickering-hack.ts +1 -1
  278. package/src/cubing/search/.DS_Store +0 -0
  279. package/src/cubing/search/esm-test-worker.js +1 -1
  280. package/src/cubing/search/inside/.DS_Store +0 -0
  281. package/src/cubing/search/inside/api.ts +3 -0
  282. package/src/cubing/search/inside/entry.js +1 -1
  283. package/src/cubing/search/inside/inside-worker.ts +1 -1
  284. package/src/cubing/search/inside/solve/.DS_Store +0 -0
  285. package/src/cubing/search/inside/solve/addOrientationSuffix.ts +1 -1
  286. package/src/cubing/{alg → search/inside/solve/puzzles}/.DS_Store +0 -0
  287. package/src/cubing/search/inside/solve/puzzles/2x2x2.ts +1 -1
  288. package/src/cubing/search/inside/solve/puzzles/3x3x3/index.ts +2 -2
  289. package/src/cubing/search/inside/solve/puzzles/4x4x4.ts +2 -2
  290. package/src/cubing/search/inside/solve/puzzles/big-cubes.ts +1 -1
  291. package/src/cubing/search/inside/solve/puzzles/clock.ts +1 -1
  292. package/src/cubing/search/inside/solve/puzzles/{FTO.sgs → fto.sgs.json.ts} +116 -80
  293. package/src/cubing/search/inside/solve/puzzles/fto.ts +58 -0
  294. package/src/cubing/search/inside/solve/puzzles/sq1.ts +1 -1
  295. package/src/cubing/search/inside/solve/puzzles/wca-minx.ts +1 -1
  296. package/src/cubing/search/inside/solve/tremble.ts +2 -1
  297. package/src/cubing/search/inside/solve/vendor/.DS_Store +0 -0
  298. package/src/cubing/search/instantiator.ts +1 -1
  299. package/src/cubing/search/worker-inside-generated-string.js +1 -1
  300. package/src/cubing/twisty/.DS_Store +0 -0
  301. package/src/cubing/{alg/units → twisty/controllers}/.DS_Store +0 -0
  302. package/src/cubing/twisty/{old/animation/cursor/CursorTypes.ts → controllers/AnimationTypes.ts} +11 -2
  303. package/src/cubing/twisty/{old/animation → controllers}/RenderScheduler.ts +0 -0
  304. package/src/cubing/twisty/controllers/TwistyAnimationController.ts +4 -4
  305. package/src/cubing/twisty/controllers/animation/.DS_Store +0 -0
  306. package/src/cubing/twisty/{old/animation → controllers}/easing.ts +0 -0
  307. package/src/cubing/{stream → twisty/controllers/indexer}/.DS_Store +0 -0
  308. package/src/cubing/twisty/{old/animation → controllers}/indexer/AlgDuration.ts +2 -2
  309. package/src/cubing/twisty/{old/animation → controllers}/indexer/AlgIndexer.ts +4 -4
  310. package/src/cubing/twisty/{old/animation → controllers}/indexer/SimpleAlgIndexer.ts +4 -4
  311. package/src/cubing/twisty/{old/animation → controllers}/indexer/simultaneous-moves/SimultaneousMoveIndexer.ts +3 -3
  312. package/src/cubing/twisty/{old/animation → controllers}/indexer/simultaneous-moves/SimultaneousMoveIndexerV2.ts +3 -3
  313. package/src/cubing/twisty/{old/animation → controllers}/indexer/simultaneous-moves/simul-moves.ts +2 -2
  314. package/src/cubing/twisty/{old/animation → controllers}/indexer/tree/AlgWalker.ts +4 -4
  315. package/src/cubing/twisty/{old/animation → controllers}/indexer/tree/TreeAlgIndexer.ts +3 -3
  316. package/src/cubing/twisty/{old/animation → controllers}/indexer/tree/chunkAlgs.ts +2 -2
  317. package/src/cubing/twisty/{old/animation → controllers}/stream/timeline-move-calculation-draft.spec.ts.TODO +0 -0
  318. package/src/cubing/twisty/{old/animation → controllers}/stream/timeline-move-calculation-draft.ts +2 -2
  319. package/src/cubing/twisty/heavy-code-imports/.DS_Store +0 -0
  320. package/src/cubing/twisty/heavy-code-imports/dynamic-entries/3d.ts +2 -12
  321. package/src/cubing/twisty/index.ts +12 -19
  322. package/src/cubing/twisty/model/.DS_Store +0 -0
  323. package/src/cubing/twisty/model/TwistyPlayerModel.ts +38 -7
  324. package/src/cubing/twisty/model/props/.DS_Store +0 -0
  325. package/src/cubing/twisty/model/props/TwistyPropDebugger.ts +3 -3
  326. package/src/cubing/twisty/model/props/puzzle/.DS_Store +0 -0
  327. package/src/cubing/twisty/model/props/puzzle/display/FoundationDisplayProp.ts +9 -0
  328. package/src/cubing/twisty/model/props/puzzle/display/HintFaceletProp.ts +6 -1
  329. package/src/cubing/twisty/model/props/puzzle/display/StickeringProp.ts +49 -1
  330. package/src/cubing/twisty/model/props/puzzle/state/AlgTransformationProp.ts +1 -1
  331. package/src/cubing/twisty/model/props/puzzle/state/AnchoredStartProp.ts +2 -2
  332. package/src/cubing/twisty/model/props/puzzle/state/CurrentLeavesProp.ts +2 -2
  333. package/src/cubing/twisty/model/props/puzzle/state/CurrentLeavesSimplified.ts +1 -1
  334. package/src/cubing/twisty/model/props/puzzle/state/CurrentTransformationProp.ts +1 -1
  335. package/src/cubing/twisty/model/props/puzzle/state/IndexerConstructorProp.ts +12 -5
  336. package/src/cubing/twisty/model/props/puzzle/state/IndexerProp.ts +2 -2
  337. package/src/cubing/twisty/model/props/puzzle/state/LegacyPositionProp.ts +2 -2
  338. package/src/cubing/twisty/model/props/puzzle/state/MovePressInputProp.ts +14 -0
  339. package/src/cubing/twisty/model/props/puzzle/state/NaiveMoveCountProp.ts +20 -0
  340. package/src/cubing/twisty/model/props/puzzle/state/SetupAnchorProp.ts +7 -1
  341. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleIDProp.ts +1 -1
  342. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleIDRequestProp.ts +20 -1
  343. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleLoaderProp.ts +1 -1
  344. package/src/cubing/twisty/model/props/timeline/DetailedTimelineInfoProp.ts +5 -3
  345. package/src/cubing/twisty/model/props/timeline/PlayingInfoProp.ts +1 -4
  346. package/src/cubing/twisty/model/props/timeline/TimestampRequestProp.ts +1 -1
  347. package/src/cubing/twisty/model/props/viewer/BackViewProp.ts +7 -1
  348. package/src/cubing/twisty/model/props/viewer/BackgroundProp.ts +6 -1
  349. package/src/cubing/twisty/model/props/viewer/ControlPanelProp.ts +5 -1
  350. package/src/cubing/twisty/model/props/viewer/OrbitCoordinatesProp.ts +83 -12
  351. package/src/cubing/twisty/model/props/viewer/OrbitCoordinatesRequestProp.ts +8 -8
  352. package/src/cubing/twisty/model/props/viewer/TimeRangeProp.ts +2 -2
  353. package/src/cubing/twisty/model/props/viewer/ViewerLinkProp.ts +5 -1
  354. package/src/cubing/twisty/model/props/viewer/VisualizationProp.ts +8 -1
  355. package/src/cubing/twisty/model/props/viewer/VisualizationStrategyProp.ts +1 -1
  356. package/src/cubing/twisty/old/.DS_Store +0 -0
  357. package/src/cubing/twisty/old/animation/.DS_Store +0 -0
  358. package/src/cubing/twisty/old/dom/.DS_Store +0 -0
  359. package/src/cubing/twisty/views/.DS_Store +0 -0
  360. package/src/cubing/twisty/{old/dom/viewers/Twisty2DSVGView.css.ts → views/2D/Twisty2DPuzzle.css.ts} +1 -1
  361. package/src/cubing/twisty/views/2D/Twisty2DPuzzle.ts +8 -12
  362. package/src/cubing/twisty/views/2D/Twisty2DPuzzleWrapper.ts +1 -1
  363. package/src/cubing/twisty/views/2D/Twisty2DSceneWrapper.ts +4 -4
  364. package/src/cubing/{bluetooth → twisty/views/3D}/.DS_Store +0 -0
  365. package/src/cubing/twisty/views/3D/DragTracker.ts +184 -0
  366. package/src/cubing/twisty/views/3D/RendererPool.ts +2 -1
  367. package/src/cubing/twisty/views/3D/Twisty3DPuzzleWrapper.ts +51 -5
  368. package/src/cubing/twisty/views/3D/Twisty3DSceneWrapper.ts +51 -10
  369. package/src/cubing/twisty/{old/dom/viewers/Twisty3DCanvas.css.ts → views/3D/Twisty3DVantage.css.ts} +2 -2
  370. package/src/cubing/twisty/views/3D/Twisty3DVantage.ts +103 -35
  371. package/src/cubing/twisty/views/3D/TwistyOrbitControls.spec.ts +213 -0
  372. package/src/cubing/twisty/views/3D/TwistyOrbitControls.ts +176 -0
  373. package/src/cubing/twisty/views/3D/puzzles/Cube3D.ts +5 -9
  374. package/src/cubing/twisty/views/3D/puzzles/PG3D.ts +127 -37
  375. package/src/cubing/twisty/views/3D/puzzles/Twisty3DPuzzle.ts +1 -1
  376. package/src/cubing/twisty/{old/dom/element → views}/ClassListManager.ts +0 -0
  377. package/src/cubing/twisty/{old/dom/element → views}/ManagedCustomElement.ts +0 -0
  378. package/src/cubing/twisty/views/TwistyAlgEditor/LeafTokens.ts +1 -1
  379. package/src/cubing/twisty/views/TwistyAlgEditor/TwistyAlgEditor.css.ts +1 -1
  380. package/src/cubing/twisty/views/TwistyAlgEditor/TwistyAlgEditor.ts +11 -4
  381. package/src/cubing/twisty/views/TwistyAlgViewer.css.ts +1 -1
  382. package/src/cubing/twisty/views/TwistyAlgViewer.ts +4 -4
  383. package/src/cubing/twisty/{old/dom → views}/TwistyPlayer.css.ts +4 -1
  384. package/src/cubing/twisty/views/TwistyPlayer.ts +16 -25
  385. package/src/cubing/twisty/views/TwistyPlayerSettable.ts +14 -10
  386. package/src/cubing/twisty/{old/dom/viewers → views}/TwistyViewerWrapper.css.ts +1 -1
  387. package/src/cubing/twisty/{old/dom/viewers → views}/canvas.ts +0 -0
  388. package/src/cubing/twisty/{old/dom/controls/buttons.css.ts → views/control-panel/TwistyButtonsV2.css.ts} +1 -1
  389. package/src/cubing/twisty/views/control-panel/TwistyButtonsV2.ts +5 -8
  390. package/src/cubing/twisty/{old/dom/controls → views/control-panel}/TwistyScrubber.css.ts +1 -1
  391. package/src/cubing/twisty/views/control-panel/TwistyScrubberV2.ts +3 -3
  392. package/src/cubing/twisty/{old/dom/element → views}/node-custom-element-shims.ts +2 -2
  393. package/src/cubing/twisty/{old/dom → views}/stream/TwistyStreamSource.css.ts +1 -1
  394. package/src/cubing/twisty/{old/dom → views}/stream/TwistyStreamSource.ts +9 -9
  395. package/src/cubing/vendor/.DS_Store +0 -0
  396. package/src/cubing/{twisty/old/animation/indexer → vendor/comlink-everywhere}/.DS_Store +0 -0
  397. package/src/cubing/{search/vendor → vendor}/comlink-everywhere/comlink-everywhere.webloc +0 -0
  398. package/src/cubing/{search/vendor → vendor}/comlink-everywhere/inside/index.d.ts +0 -0
  399. package/src/cubing/{search/vendor → vendor}/comlink-everywhere/inside/index.js +0 -0
  400. package/src/cubing/{search/vendor → vendor}/comlink-everywhere/inside/node.js +0 -0
  401. package/src/cubing/{search/vendor → vendor}/comlink-everywhere/outside/index.d.ts +0 -0
  402. package/src/cubing/{search/vendor → vendor}/comlink-everywhere/outside/index.js +0 -0
  403. package/src/cubing/{search/vendor → vendor}/comlink-everywhere/outside/node.js +0 -0
  404. package/src/cubing/vendor/cstimer/.DS_Store +0 -0
  405. package/src/cubing/{search/inside/solve/vendor → vendor}/cstimer/LICENSE +0 -0
  406. package/src/cubing/{search/inside/solve/vendor → vendor}/cstimer/src/js/lib/mathlib.ts +0 -0
  407. package/src/cubing/{search/inside/solve/vendor → vendor}/cstimer/src/js/scramble/scramble_444.ts +3 -3
  408. package/src/cubing/{search/inside/solve/vendor → vendor}/min2phase/gwt.d.ts +0 -0
  409. package/src/cubing/{search/inside/solve/vendor → vendor}/min2phase/gwt.js +0 -0
  410. package/src/cubing/vendor/random-uint-below/get-random-values.ts +23 -0
  411. package/src/cubing/{search/inside/solve/vendor → vendor}/random-uint-below/index.ts +2 -2
  412. package/src/cubing/{search/inside/solve/vendor → vendor}/random-uint-below/random-choice.ts +1 -1
  413. package/src/cubing/{search/inside/solve/vendor/random-uint-below/random-int.ts → vendor/random-uint-below/random53BitValue.ts} +0 -0
  414. package/src/cubing/{search/inside/solve/vendor → vendor}/sq12phase/scramble_sq1.js +0 -0
  415. package/src/cubing/{bluetooth/smart-puzzle → vendor/unsafe-raw-aes}/unsafe-raw-aes.ts +18 -20
  416. package/dist/esm/3d-B25DP5PE.js +0 -39
  417. package/dist/esm/3d-B25DP5PE.js.map +0 -7
  418. package/dist/esm/chunk-APIIMJG6.js.map +0 -7
  419. package/dist/esm/chunk-CSVAFZSB.js.map +0 -7
  420. package/dist/esm/chunk-MUQMBH2S.js.map +0 -7
  421. package/dist/esm/worker-inside-generated-string-KDZOUGJF.js +0 -2831
  422. package/dist/esm/worker-inside-generated-string-KDZOUGJF.js.map +0 -7
  423. package/dist/types/bluetooth/smart-puzzle/unsafe-raw-aes.d.ts.map +0 -1
  424. package/dist/types/search/inside/solve/vendor/cstimer/src/js/lib/mathlib.d.ts.map +0 -1
  425. package/dist/types/search/inside/solve/vendor/cstimer/src/js/scramble/scramble_444.d.ts.map +0 -1
  426. package/dist/types/search/inside/solve/vendor/min2phase/gwt.d.ts.map +0 -1
  427. package/dist/types/search/inside/solve/vendor/random-uint-below/get-random-values.d.ts.map +0 -1
  428. package/dist/types/search/inside/solve/vendor/random-uint-below/index.d.ts.map +0 -1
  429. package/dist/types/search/inside/solve/vendor/random-uint-below/random-choice.d.ts.map +0 -1
  430. package/dist/types/search/inside/solve/vendor/random-uint-below/random-int.d.ts.map +0 -1
  431. package/dist/types/search/inside/solve/vendor/sq12phase/scramble_sq1.d.ts.map +0 -1
  432. package/dist/types/search/vendor/comlink-everywhere/inside/index.d.ts.map +0 -1
  433. package/dist/types/search/vendor/comlink-everywhere/inside/node.d.ts.map +0 -1
  434. package/dist/types/search/vendor/comlink-everywhere/outside/index.d.ts.map +0 -1
  435. package/dist/types/search/vendor/comlink-everywhere/outside/node.d.ts.map +0 -1
  436. package/dist/types/twisty/old/animation/RenderScheduler.d.ts.map +0 -1
  437. package/dist/types/twisty/old/animation/Timeline.d.ts +0 -72
  438. package/dist/types/twisty/old/animation/Timeline.d.ts.map +0 -1
  439. package/dist/types/twisty/old/animation/cursor/AlgCursor.d.ts +0 -53
  440. package/dist/types/twisty/old/animation/cursor/AlgCursor.d.ts.map +0 -1
  441. package/dist/types/twisty/old/animation/cursor/CursorTypes.d.ts.map +0 -1
  442. package/dist/types/twisty/old/animation/easing.d.ts.map +0 -1
  443. package/dist/types/twisty/old/animation/indexer/AlgDuration.d.ts.map +0 -1
  444. package/dist/types/twisty/old/animation/indexer/AlgIndexer.d.ts.map +0 -1
  445. package/dist/types/twisty/old/animation/indexer/SimpleAlgIndexer.d.ts.map +0 -1
  446. package/dist/types/twisty/old/animation/indexer/simultaneous-moves/SimultaneousMoveIndexer.d.ts.map +0 -1
  447. package/dist/types/twisty/old/animation/indexer/simultaneous-moves/SimultaneousMoveIndexerV2.d.ts.map +0 -1
  448. package/dist/types/twisty/old/animation/indexer/simultaneous-moves/simul-moves.d.ts.map +0 -1
  449. package/dist/types/twisty/old/animation/indexer/tree/AlgWalker.d.ts.map +0 -1
  450. package/dist/types/twisty/old/animation/indexer/tree/TreeAlgIndexer.d.ts.map +0 -1
  451. package/dist/types/twisty/old/animation/indexer/tree/chunkAlgs.d.ts +0 -3
  452. package/dist/types/twisty/old/animation/indexer/tree/chunkAlgs.d.ts.map +0 -1
  453. package/dist/types/twisty/old/animation/stream/timeline-move-calculation-draft.d.ts.map +0 -1
  454. package/dist/types/twisty/old/dom/TwistyAlgViewerV1.css.d.ts +0 -3
  455. package/dist/types/twisty/old/dom/TwistyAlgViewerV1.css.d.ts.map +0 -1
  456. package/dist/types/twisty/old/dom/TwistyAlgViewerV1.d.ts +0 -52
  457. package/dist/types/twisty/old/dom/TwistyAlgViewerV1.d.ts.map +0 -1
  458. package/dist/types/twisty/old/dom/TwistyPlayer.css.d.ts +0 -3
  459. package/dist/types/twisty/old/dom/TwistyPlayer.css.d.ts.map +0 -1
  460. package/dist/types/twisty/old/dom/TwistyPlayer.d.ts +0 -92
  461. package/dist/types/twisty/old/dom/TwistyPlayer.d.ts.map +0 -1
  462. package/dist/types/twisty/old/dom/TwistyPlayer.spec.d.ts +0 -5
  463. package/dist/types/twisty/old/dom/TwistyPlayer.spec.d.ts.map +0 -1
  464. package/dist/types/twisty/old/dom/TwistyPlayerConfig.d.ts +0 -165
  465. package/dist/types/twisty/old/dom/TwistyPlayerConfig.d.ts.map +0 -1
  466. package/dist/types/twisty/old/dom/controls/TwistyControlElement.d.ts +0 -2
  467. package/dist/types/twisty/old/dom/controls/TwistyControlElement.d.ts.map +0 -1
  468. package/dist/types/twisty/old/dom/controls/TwistyScrubber.css.d.ts +0 -3
  469. package/dist/types/twisty/old/dom/controls/TwistyScrubber.d.ts +0 -14
  470. package/dist/types/twisty/old/dom/controls/TwistyScrubber.d.ts.map +0 -1
  471. package/dist/types/twisty/old/dom/controls/buttons.css.d.ts +0 -4
  472. package/dist/types/twisty/old/dom/controls/buttons.css.d.ts.map +0 -1
  473. package/dist/types/twisty/old/dom/controls/buttons.d.ts +0 -40
  474. package/dist/types/twisty/old/dom/controls/buttons.d.ts.map +0 -1
  475. package/dist/types/twisty/old/dom/controls/buttons.spec.d.ts +0 -5
  476. package/dist/types/twisty/old/dom/controls/buttons.spec.d.ts.map +0 -1
  477. package/dist/types/twisty/old/dom/element/ClassListManager.d.ts.map +0 -1
  478. package/dist/types/twisty/old/dom/element/ElementConfig.d.ts +0 -49
  479. package/dist/types/twisty/old/dom/element/ElementConfig.d.ts.map +0 -1
  480. package/dist/types/twisty/old/dom/element/ManagedCustomElement.d.ts.map +0 -1
  481. package/dist/types/twisty/old/dom/element/node-custom-element-shims.d.ts.map +0 -1
  482. package/dist/types/twisty/old/dom/stream/TwistyStreamSource.css.d.ts +0 -3
  483. package/dist/types/twisty/old/dom/stream/TwistyStreamSource.css.d.ts.map +0 -1
  484. package/dist/types/twisty/old/dom/stream/TwistyStreamSource.d.ts.map +0 -1
  485. package/dist/types/twisty/old/dom/viewers/Twisty2DSVG.d.ts +0 -26
  486. package/dist/types/twisty/old/dom/viewers/Twisty2DSVG.d.ts.map +0 -1
  487. package/dist/types/twisty/old/dom/viewers/Twisty2DSVGView.css.d.ts +0 -3
  488. package/dist/types/twisty/old/dom/viewers/Twisty2DSVGView.css.d.ts.map +0 -1
  489. package/dist/types/twisty/old/dom/viewers/Twisty3DCanvas.css.d.ts +0 -3
  490. package/dist/types/twisty/old/dom/viewers/Twisty3DCanvas.css.d.ts.map +0 -1
  491. package/dist/types/twisty/old/dom/viewers/Twisty3DCanvas.d.ts +0 -41
  492. package/dist/types/twisty/old/dom/viewers/Twisty3DCanvas.d.ts.map +0 -1
  493. package/dist/types/twisty/old/dom/viewers/TwistyOrbitControls.d.ts +0 -59
  494. package/dist/types/twisty/old/dom/viewers/TwistyOrbitControls.d.ts.map +0 -1
  495. package/dist/types/twisty/old/dom/viewers/TwistyViewerElement.d.ts +0 -4
  496. package/dist/types/twisty/old/dom/viewers/TwistyViewerElement.d.ts.map +0 -1
  497. package/dist/types/twisty/old/dom/viewers/TwistyViewerWrapper.css.d.ts +0 -3
  498. package/dist/types/twisty/old/dom/viewers/TwistyViewerWrapper.css.d.ts.map +0 -1
  499. package/dist/types/twisty/old/dom/viewers/TwistyViewerWrapper.d.ts +0 -18
  500. package/dist/types/twisty/old/dom/viewers/TwistyViewerWrapper.d.ts.map +0 -1
  501. package/dist/types/twisty/old/dom/viewers/canvas.d.ts.map +0 -1
  502. package/dist/types/twisty/views/3D/TwistyOrbitControlsV2.d.ts +0 -41
  503. package/dist/types/twisty/views/3D/TwistyOrbitControlsV2.d.ts.map +0 -1
  504. package/dist/types/twisty/views/3D/TwistyOrbitControlsV2.spec.d.ts +0 -5
  505. package/dist/types/twisty/views/3D/TwistyOrbitControlsV2.spec.d.ts.map +0 -1
  506. package/dist/types/twisty/views/3D/puzzles/TwistyTestBox.d.ts +0 -9
  507. package/dist/types/twisty/views/3D/puzzles/TwistyTestBox.d.ts.map +0 -1
  508. package/src/cubing/search/inside/solve/vendor/random-uint-below/get-random-values.ts +0 -38
  509. package/src/cubing/twisty/old/animation/Timeline.ts +0 -378
  510. package/src/cubing/twisty/old/animation/cursor/AlgCursor.ts +0 -252
  511. package/src/cubing/twisty/old/dom/TwistyAlgViewerV1.css.ts +0 -25
  512. package/src/cubing/twisty/old/dom/TwistyAlgViewerV1.ts +0 -516
  513. package/src/cubing/twisty/old/dom/TwistyPlayer.spec.ts +0 -25
  514. package/src/cubing/twisty/old/dom/TwistyPlayer.ts +0 -927
  515. package/src/cubing/twisty/old/dom/TwistyPlayerConfig.ts +0 -378
  516. package/src/cubing/twisty/old/dom/controls/TwistyControlElement.ts +0 -1
  517. package/src/cubing/twisty/old/dom/controls/TwistyScrubber.ts +0 -53
  518. package/src/cubing/twisty/old/dom/controls/buttons.spec.ts +0 -37
  519. package/src/cubing/twisty/old/dom/controls/buttons.ts +0 -326
  520. package/src/cubing/twisty/old/dom/element/ElementConfig.ts +0 -180
  521. package/src/cubing/twisty/old/dom/viewers/Twisty2DSVG.ts +0 -118
  522. package/src/cubing/twisty/old/dom/viewers/Twisty3DCanvas.ts +0 -256
  523. package/src/cubing/twisty/old/dom/viewers/TwistyOrbitControls.ts +0 -420
  524. package/src/cubing/twisty/old/dom/viewers/TwistyViewerElement.ts +0 -5
  525. package/src/cubing/twisty/old/dom/viewers/TwistyViewerWrapper.ts +0 -45
  526. package/src/cubing/twisty/views/3D/TwistyOrbitControlsV2.spec.ts +0 -209
  527. package/src/cubing/twisty/views/3D/TwistyOrbitControlsV2.ts +0 -270
  528. package/src/cubing/twisty/views/3D/puzzles/TwistyTestBox.ts +0 -22
@@ -1,38 +1,27 @@
1
1
  import {
2
2
  puzzles
3
- } from "./chunk-MUQMBH2S.js";
3
+ } from "./chunk-R3HRHYIW.js";
4
4
  import {
5
5
  KPuzzle,
6
6
  areOrbitTransformationsEquivalent
7
- } from "./chunk-YV3RT5PX.js";
7
+ } from "./chunk-X6JHXPDX.js";
8
8
  import {
9
9
  Alg,
10
10
  Move
11
- } from "./chunk-BU5PUJK3.js";
11
+ } from "./chunk-EWRBHQFX.js";
12
12
 
13
- // src/cubing/search/inside/solve/vendor/random-uint-below/get-random-values.ts
13
+ // src/cubing/vendor/random-uint-below/get-random-values.ts
14
14
  var cryptoPromise = null;
15
15
  async function getRandomValuesFactory() {
16
- const hasWebCrypto = typeof crypto !== "undefined" && typeof crypto.getRandomValues !== "undefined";
17
- if (hasWebCrypto) {
18
- return crypto.getRandomValues.bind(crypto);
16
+ if (!globalThis?.crypto?.getRandomValues) {
17
+ const nodeWebcrypto = (await (cryptoPromise ?? (cryptoPromise = import("crypto")))).webcrypto;
18
+ return nodeWebcrypto.getRandomValues;
19
19
  } else {
20
- const nodeCrypto = await (cryptoPromise ?? (cryptoPromise = import("crypto")));
21
- return (arr) => {
22
- if (!(arr instanceof Uint32Array)) {
23
- throw new Error("The getRandomValues() shim only takes unsigned 32-bit int arrays");
24
- }
25
- const bytes = nodeCrypto.randomBytes(arr.length * 4);
26
- const uint32_list = [];
27
- for (let i = 0; i < arr.length; i++) {
28
- uint32_list.push((bytes[i * 4 + 0] << 24) + (bytes[i * 4 + 1] << 16) + (bytes[i * 4 + 2] << 8) + (bytes[i * 4 + 3] << 0));
29
- }
30
- arr.set(uint32_list);
31
- };
20
+ return crypto.getRandomValues.bind(crypto);
32
21
  }
33
22
  }
34
23
 
35
- // src/cubing/search/inside/solve/vendor/random-uint-below/random-int.ts
24
+ // src/cubing/vendor/random-uint-below/random53BitValue.ts
36
25
  var MAX_JS_PRECISE_INT = 9007199254740992;
37
26
  var UPPER_HALF_MULTIPLIER = 2097152;
38
27
  var LOWER_HALF_DIVIDER = 2048;
@@ -66,13 +55,13 @@ async function randomUIntBelowFactory() {
66
55
  return randomUIntBelow;
67
56
  }
68
57
 
69
- // src/cubing/search/inside/solve/vendor/random-uint-below/random-choice.ts
58
+ // src/cubing/vendor/random-uint-below/random-choice.ts
70
59
  async function randomChoiceFactory() {
71
60
  const randomUIntBelow = await randomUIntBelowFactory();
72
61
  return (arr) => arr[randomUIntBelow(arr.length)];
73
62
  }
74
63
 
75
- // src/cubing/search/inside/solve/vendor/random-uint-below/index.ts
64
+ // src/cubing/vendor/random-uint-below/index.ts
76
65
  var randomUIntBelowPromise = randomUIntBelowFactory();
77
66
 
78
67
  // src/cubing/search/inside/solve/puzzles/clock.ts
@@ -140,12 +129,12 @@ async function randomMegaminxScrambleString() {
140
129
  return chunks.join("\n");
141
130
  }
142
131
 
143
- // src/cubing/search/vendor/comlink-everywhere/outside/index.js
132
+ // src/cubing/vendor/comlink-everywhere/outside/index.js
144
133
  import { wrap } from "comlink";
145
134
  var useNodeWorkarounds = typeof globalThis.Worker === "undefined" && typeof globalThis.WorkerNavigator === "undefined";
146
135
  async function workerFileConstructor() {
147
136
  if (useNodeWorkarounds) {
148
- return await (await import("./node-WEHVBEKP.js")).NodeWorkerWrapper();
137
+ return await (await import("./node-HFBX5WHK.js")).NodeWorkerWrapper();
149
138
  } else {
150
139
  return globalThis.Worker;
151
140
  }
@@ -153,7 +142,7 @@ async function workerFileConstructor() {
153
142
  async function constructWorkerFromString(stringSource, options) {
154
143
  let worker;
155
144
  if (useNodeWorkarounds) {
156
- const constructor = await (await import("./node-WEHVBEKP.js")).NodeWorkerStringWrapper();
145
+ const constructor = await (await import("./node-HFBX5WHK.js")).NodeWorkerStringWrapper();
157
146
  const worker2 = new constructor(stringSource);
158
147
  return worker2;
159
148
  } else {
@@ -192,7 +181,7 @@ async function relativeURLWorkerTest() {
192
181
  }
193
182
  }
194
183
  async function instantiateWorker() {
195
- const { workerSource } = await import("./worker-inside-generated-string-KDZOUGJF.js");
184
+ const { workerSource } = await import("./worker-inside-generated-string-RQYYANYQ.js");
196
185
  const worker = await constructWorkerFromString(workerSource);
197
186
  if (TEST_RELATIVE_URL_WORKER) {
198
187
  relativeURLWorkerTest();
@@ -247,239 +236,564 @@ function setDebug(options) {
247
236
  }
248
237
  }
249
238
 
250
- // src/cubing/search/inside/solve/vendor/min2phase/gwt.js
251
- var $intern_3 = { 3: 1 };
252
- var $intern_9 = 4194303;
253
- var $intern_10 = 1048575;
254
- var $intern_11 = 524288;
255
- var $intern_26 = { 11: 1, 3: 1 };
256
- var $intern_27 = { 17: 1, 3: 1 };
257
- var $intern_28 = 14540032;
258
- var $intern_30 = { 10: 1, 3: 1 };
259
- var _;
260
- var prototypesByTypeId_0 = {};
261
- function typeMarkerFn() {
262
- }
263
- function portableObjCreate(obj) {
264
- function F() {
265
- }
266
- F.prototype = obj || {};
267
- return new F();
268
- }
269
- function maybeGetClassLiteralFromPlaceHolder_0(entry) {
270
- return entry instanceof Array ? entry[0] : null;
271
- }
272
- function defineClass(typeId, superTypeId, castableTypeMap) {
273
- var prototypesByTypeId = prototypesByTypeId_0;
274
- var createSubclassPrototype = createSubclassPrototype_0;
275
- var maybeGetClassLiteralFromPlaceHolder = maybeGetClassLiteralFromPlaceHolder_0;
276
- var prototype_0 = prototypesByTypeId[typeId];
277
- var clazz = maybeGetClassLiteralFromPlaceHolder(prototype_0);
278
- if (prototype_0 && !clazz) {
279
- _ = prototype_0;
280
- } else {
281
- _ = prototypesByTypeId[typeId] = !superTypeId ? {} : createSubclassPrototype(superTypeId);
282
- _.castableTypeMap$ = castableTypeMap;
283
- _.constructor = _;
284
- !superTypeId && (_.typeMarker$ = typeMarkerFn);
285
- }
286
- for (var i = 3; i < arguments.length; ++i) {
287
- arguments[i].prototype = _;
288
- }
289
- clazz && (_.___clazz$ = clazz);
290
- }
291
- function createSubclassPrototype_0(superTypeId) {
292
- var prototypesByTypeId = prototypesByTypeId_0;
293
- return portableObjCreate(prototypesByTypeId[superTypeId]);
294
- }
295
- function Object_0() {
296
- }
297
- defineClass(1, null, {}, Object_0);
298
- function narrow_byte(x_0) {
299
- return x_0 << 24 >> 24;
300
- }
301
- function Class() {
302
- this.typeName = null;
303
- this.simpleName = null;
304
- this.packageName = null;
305
- this.compoundName = null;
306
- this.canonicalName = null;
307
- this.typeId = null;
308
- this.arrayLiterals = null;
309
- }
310
- function createClassObject(packageName, compoundClassName) {
311
- var clazz;
312
- clazz = new Class();
313
- clazz.packageName = packageName;
314
- clazz.compoundName = compoundClassName;
315
- return clazz;
316
- }
317
- function createForClass(packageName, compoundClassName, typeId) {
318
- var clazz;
319
- clazz = createClassObject(packageName, compoundClassName);
320
- maybeSetClassLiteral(typeId, clazz);
321
- return clazz;
322
- }
323
- function createForInterface(packageName, compoundClassName) {
324
- var clazz;
325
- clazz = createClassObject(packageName, compoundClassName);
326
- clazz.modifiers = 2;
327
- return clazz;
328
- }
329
- function createForPrimitive(className, primitiveTypeId) {
330
- var clazz;
331
- clazz = createClassObject("", className);
332
- clazz.typeId = primitiveTypeId;
333
- clazz.modifiers = 1;
334
- return clazz;
335
- }
336
- function getClassLiteralForArray_0(leafClass, dimensions) {
337
- var arrayLiterals = leafClass.arrayLiterals = leafClass.arrayLiterals || [];
338
- return arrayLiterals[dimensions] || (arrayLiterals[dimensions] = leafClass.createClassLiteralForArray(dimensions));
339
- }
340
- function getPrototypeForClass(clazz) {
341
- if (clazz.isPrimitive()) {
342
- return null;
343
- }
344
- var typeId = clazz.typeId;
345
- var prototype_0 = prototypesByTypeId_0[typeId];
346
- return prototype_0;
347
- }
348
- function maybeSetClassLiteral(typeId, clazz) {
349
- if (!typeId) {
350
- return;
351
- }
352
- clazz.typeId = typeId;
353
- var prototype_0 = getPrototypeForClass(clazz);
354
- if (!prototype_0) {
355
- prototypesByTypeId_0[typeId] = [clazz];
356
- return;
357
- }
358
- prototype_0.___clazz$ = clazz;
359
- }
360
- defineClass(79, 1, {}, Class);
361
- _.createClassLiteralForArray = function createClassLiteralForArray(dimensions) {
362
- var clazz;
363
- clazz = new Class();
364
- clazz.modifiers = 4;
365
- dimensions > 1 ? clazz.componentType = getClassLiteralForArray_0(this, dimensions - 1) : clazz.componentType = this;
366
- return clazz;
367
- };
368
- _.isPrimitive = function isPrimitive() {
369
- return (this.modifiers & 1) != 0;
370
- };
371
- function getClassLiteralForArray(clazz, dimensions) {
372
- return getClassLiteralForArray_0(clazz, dimensions);
373
- }
374
- function initDim(leafClassLiteral, castableTypeMap, elementTypeId, length_0, elementTypeCategory, dimensions) {
375
- var result;
376
- result = initializeArrayElementsWithDefaults(elementTypeCategory, length_0);
377
- initValues(getClassLiteralForArray(leafClassLiteral, dimensions), castableTypeMap, elementTypeId, elementTypeCategory, result);
378
- return result;
379
- }
380
- function initDims(leafClassLiteral, castableTypeMapExprs, elementTypeIds, leafElementTypeCategory, dimExprs, count) {
381
- return initDims_0(leafClassLiteral, castableTypeMapExprs, elementTypeIds, leafElementTypeCategory, dimExprs, 0, count);
382
- }
383
- function initDims_0(leafClassLiteral, castableTypeMapExprs, elementTypeIds, leafElementTypeCategory, dimExprs, index_0, count) {
384
- var elementTypeCategory, i, isLastDim, length_0, result;
385
- length_0 = dimExprs[index_0];
386
- isLastDim = index_0 == count - 1;
387
- elementTypeCategory = isLastDim ? leafElementTypeCategory : 0;
388
- result = initializeArrayElementsWithDefaults(elementTypeCategory, length_0);
389
- initValues(getClassLiteralForArray(leafClassLiteral, count - index_0), castableTypeMapExprs[index_0], elementTypeIds[index_0], elementTypeCategory, result);
390
- if (!isLastDim) {
391
- ++index_0;
392
- for (i = 0; i < length_0; ++i) {
393
- result[i] = initDims_0(leafClassLiteral, castableTypeMapExprs, elementTypeIds, leafElementTypeCategory, dimExprs, index_0, count);
239
+ // src/cubing/search/inside/solve/puzzles/3x3x3/convert.ts
240
+ var reidEdgeOrder = "UF UR UB UL DF DR DB DL FR FL BR BL".split(" ");
241
+ var reidCornerOrder = "UFR URB UBL ULF DRF DFL DLB DBR".split(" ");
242
+ var centerOrder = "U L F R B D".split(" ");
243
+
244
+ // src/cubing/search/inside/solve/puzzles/3x3x3/filter.ts
245
+ function isEquivalentTranformationIgnoringCENTERS(def, t1, t2) {
246
+ for (const orbitName in def.orbits) {
247
+ if (!areOrbitTransformationsEquivalent(def, orbitName, t1, t2, {
248
+ ignoreOrientation: orbitName === "CENTERS"
249
+ })) {
250
+ return false;
394
251
  }
395
252
  }
396
- return result;
397
- }
398
- function initValues(arrayClass, castableTypeMap, elementTypeId, elementTypeCategory, array) {
399
- array.___clazz$ = arrayClass;
400
- array.castableTypeMap$ = castableTypeMap;
401
- array.typeMarker$ = typeMarkerFn;
402
- array.__elementTypeId$ = elementTypeId;
403
- array.__elementTypeCategory$ = elementTypeCategory;
404
- return array;
405
- }
406
- function initializeArrayElementsWithDefaults(elementTypeCategory, length_0) {
407
- var array = new Array(length_0);
408
- var initValue;
409
- switch (elementTypeCategory) {
410
- case 6:
411
- initValue = { l: 0, m: 0, h: 0 };
412
- break;
413
- case 7:
414
- initValue = 0;
415
- break;
416
- case 8:
417
- initValue = false;
418
- break;
419
- default:
420
- return array;
421
- }
422
- for (var i = 0; i < length_0; ++i) {
423
- array[i] = initValue;
424
- }
425
- return array;
426
- }
427
- function create(value_0) {
428
- var a0, a1, a2;
429
- a0 = value_0 & $intern_9;
430
- a1 = value_0 >> 22 & $intern_9;
431
- a2 = value_0 < 0 ? $intern_10 : 0;
432
- return create0(a0, a1, a2);
433
- }
434
- function create0(l, m, h) {
435
- return { l, m, h };
436
- }
437
- function and(a, b) {
438
- return { l: a.l & b.l, m: a.m & b.m, h: a.h & b.h };
253
+ return true;
439
254
  }
440
- function fromInt(value_0) {
441
- var rebase, result;
442
- if (value_0 > -129 && value_0 < 128) {
443
- rebase = value_0 + 128;
444
- boxedValues == null && (boxedValues = initDim(Lcom_google_gwt_lang_LongLibBase$LongEmul_2_classLit, $intern_3, 293, 256, 0, 1));
445
- result = boxedValues[rebase];
446
- !result && (result = boxedValues[rebase] = create(value_0));
447
- return result;
255
+ function passesFilter(def, state) {
256
+ const kpuzzle = new KPuzzle(def);
257
+ if (isEquivalentTranformationIgnoringCENTERS(def, kpuzzle.state, state)) {
258
+ return false;
448
259
  }
449
- return create(value_0);
450
- }
451
- function or(a, b) {
452
- return { l: a.l | b.l, m: a.m | b.m, h: a.h | b.h };
453
- }
454
- function shl(a, n) {
455
- var res0, res1, res2;
456
- n &= 63;
457
- if (n < 22) {
458
- res0 = a.l << n;
459
- res1 = a.m << n | a.l >> 22 - n;
460
- res2 = a.h << n | a.m >> 22 - n;
461
- } else if (n < 44) {
462
- res0 = 0;
463
- res1 = a.l << n - 22;
464
- res2 = a.m << n - 22 | a.l >> 44 - n;
465
- } else {
466
- res0 = 0;
467
- res1 = 0;
468
- res2 = a.l << n - 44;
260
+ for (const face of "ULFRBD") {
261
+ for (let amount = 1; amount < 4; amount++) {
262
+ kpuzzle.reset();
263
+ kpuzzle.applyMove(new Move(face, amount));
264
+ if (isEquivalentTranformationIgnoringCENTERS(def, kpuzzle.state, state)) {
265
+ return false;
266
+ }
267
+ }
469
268
  }
470
- return { l: res0 & $intern_9, m: res1 & $intern_9, h: res2 & $intern_10 };
269
+ return true;
471
270
  }
472
- function shr(a, n) {
473
- var a2, negative, res0, res1, res2;
474
- n &= 63;
475
- a2 = a.h;
476
- negative = (a2 & $intern_11) != 0;
477
- negative && (a2 |= -1048576);
478
- if (n < 22) {
479
- res2 = a2 >> n;
480
- res1 = a.m >> n | a2 << 22 - n;
481
- res0 = a.l >> n | a.m << 22 - n;
482
- } else if (n < 44) {
271
+
272
+ // src/cubing/search/inside/solve/puzzles/3x3x3/legacy-sgs.ts
273
+ var sgs3x3x3 = [
274
+ [
275
+ "R U'",
276
+ "R2 B",
277
+ "D2 B2",
278
+ "D' L B'",
279
+ "R' U'",
280
+ "B",
281
+ "D B2",
282
+ "R' B",
283
+ "L' U",
284
+ "L2 B'",
285
+ "B2",
286
+ "D L B'",
287
+ "L U",
288
+ "B'",
289
+ "U'",
290
+ "R B",
291
+ "D' B2",
292
+ "L B'",
293
+ "U2",
294
+ "U L' B'",
295
+ "",
296
+ "U' L' B'",
297
+ "U",
298
+ "L' B'"
299
+ ],
300
+ [
301
+ "F2 L2",
302
+ "F' L'",
303
+ "R' F L2",
304
+ "D' L2",
305
+ "F L2",
306
+ "F2 L'",
307
+ "R' F' L'",
308
+ "R2 F L2",
309
+ "R2 F2 L'",
310
+ "L2",
311
+ "F L'",
312
+ "D' L",
313
+ "D2 L2",
314
+ "R2 F' L'",
315
+ "D L",
316
+ "",
317
+ "L2 F L'",
318
+ "L F' L2",
319
+ "L F L'",
320
+ "F' L2",
321
+ "L'",
322
+ "D L2",
323
+ "D F L'",
324
+ "L"
325
+ ],
326
+ [
327
+ "R B U2 B'",
328
+ "R2 B U' B'",
329
+ "F2 B U B'",
330
+ "F B2 L' B2",
331
+ "B2 L B2",
332
+ "B U' B'",
333
+ "R2 B U2 B'",
334
+ "R' B U' B'",
335
+ "B2 L' B2",
336
+ "F B U B'",
337
+ "B2 U' B2",
338
+ "B' L B",
339
+ "L F' B D' B'",
340
+ "B' U' B2 D B'",
341
+ "B U2 B'",
342
+ "R B U' B'",
343
+ "B2 L2 B2",
344
+ "D' B' L B",
345
+ "B U B'",
346
+ "F' B2 L' B2",
347
+ "",
348
+ "B2 L' B' U' B'"
349
+ ],
350
+ [
351
+ "U F2 L2 U'",
352
+ "F' U L' U'",
353
+ "F2 U L' U'",
354
+ "U F L2 U'",
355
+ "U2 B2 U2",
356
+ "R' U' B U",
357
+ "D2 U L U'",
358
+ "D U2 B' U2",
359
+ "U L2 U'",
360
+ "F U L' U'",
361
+ "D U L U'",
362
+ "U2 B' U2",
363
+ "",
364
+ "U2 B' U' L' U'",
365
+ "U2 L' U2",
366
+ "U' B U",
367
+ "U L U'",
368
+ "D' U2 B' U2",
369
+ "U L' U'",
370
+ "U2 B U2"
371
+ ],
372
+ [
373
+ "R' D' F2",
374
+ "F'",
375
+ "F2",
376
+ "D R F'",
377
+ "R D' F2",
378
+ "R2 F'",
379
+ "D' F2",
380
+ "R F'",
381
+ "F2 R' D' F2",
382
+ "F",
383
+ "D2 F2",
384
+ "D' R F'",
385
+ "R2 D' F2",
386
+ "R' F'",
387
+ "D F2",
388
+ "D2 R F'",
389
+ "",
390
+ "F R' D' F2"
391
+ ],
392
+ [
393
+ "R' D2 F' D F",
394
+ "R F2 R2 F2",
395
+ "R2 F' D2 F",
396
+ "F' R2 D2 F",
397
+ "L D' L'",
398
+ "D F' D2 F",
399
+ "F2 R2 F2",
400
+ "R F' D2 F",
401
+ "F' R2 D' F",
402
+ "F' R' D2 F",
403
+ "F2 R' F2",
404
+ "L D L'",
405
+ "F' R D' F",
406
+ "F2 R F2",
407
+ "F' D2 F",
408
+ "",
409
+ "L D2 R D' L'",
410
+ "F' D2 F' R F2",
411
+ "D2 R2 F2 R2 F2",
412
+ "D F' D' F",
413
+ "F' D F"
414
+ ],
415
+ [
416
+ "U F2 U'",
417
+ "R U F' U'",
418
+ "D R U F2 U'",
419
+ "U F U'",
420
+ "R2 U F2 U'",
421
+ "R' U F' U'",
422
+ "R U F2 U'",
423
+ "R2 U F' U'",
424
+ "",
425
+ "U L D L' F U'",
426
+ "F2 D' R D F2",
427
+ "D2 U F U'",
428
+ "R' U F2 U'",
429
+ "U F' U'",
430
+ "F2 D2 R D2 F2",
431
+ "D U F U'"
432
+ ],
433
+ [
434
+ "R2",
435
+ "R' B' D B",
436
+ "D R'",
437
+ "F' R2 F",
438
+ "",
439
+ "R B' D B",
440
+ "R'",
441
+ "B' D B",
442
+ "D' R'",
443
+ "D2 F' R2 F",
444
+ "R",
445
+ "R2 B' D B",
446
+ "D2 R'",
447
+ "B' D' B"
448
+ ],
449
+ [
450
+ "R2 D' R2",
451
+ "F' R' F R",
452
+ "R D' R2 D R'",
453
+ "D2 R2 D2 R2",
454
+ "R' D' F' R F",
455
+ "U F D F' U'",
456
+ "",
457
+ "R2 D2 B R' B' R'",
458
+ "R' F D' F2 R F",
459
+ "R2 D R2",
460
+ "F2 U F U' F",
461
+ "R' D F' R F",
462
+ "D R2 D2 R2",
463
+ "U F D' F' U'",
464
+ "D R' D2 F' R F",
465
+ "R2 D2 R2",
466
+ "U F D2 F' U'",
467
+ "R' D2 F' R F"
468
+ ],
469
+ [
470
+ "B R B'",
471
+ "F D F' B R2 B'",
472
+ "D B R2 B'",
473
+ "D2 B R' B'",
474
+ "B R2 B'",
475
+ "D B R' B'",
476
+ "D' B R2 B'",
477
+ "B R' B'",
478
+ "",
479
+ "B R2 B' D B R' B'",
480
+ "D2 B R2 B'",
481
+ "D' B R' B'"
482
+ ],
483
+ [
484
+ "",
485
+ "R' D R F D2 F'",
486
+ "R' D R",
487
+ "D F D' F'",
488
+ "R F' R' F",
489
+ "F D' F'",
490
+ "R' D' R",
491
+ "F D2 F'",
492
+ "R' D2 R",
493
+ "F D F'"
494
+ ],
495
+ [
496
+ "",
497
+ "F2 D2 R F' R' D2 F' D2 F'",
498
+ "F2 D2 F' D' F D' F' D2 F'",
499
+ "F2 D F2 D F2 D2 F2",
500
+ "D2 F L D2 L' D2 F'",
501
+ "D F D2 L D2 L' F'",
502
+ "R' D B' D2 B D' R",
503
+ "R' D2 B' D2 B R",
504
+ "F D2 F' D F D F'",
505
+ "F D' L D2 L' D F'",
506
+ "B D' F D B' D' F'",
507
+ "F D2 L D2 L' F'",
508
+ "F D' L D L' D F'",
509
+ "F L D2 L' D2 F'",
510
+ "R' B' D2 B D2 R"
511
+ ],
512
+ [
513
+ "D'",
514
+ "F L D L' D' F'",
515
+ "D2",
516
+ "L B D B' D' L'",
517
+ "D",
518
+ "B' L' D' L D B",
519
+ "",
520
+ "D F L D L' D' F'"
521
+ ],
522
+ [
523
+ "F' D2 F D F' D F",
524
+ "F' D' R' D R F",
525
+ "F' R' D' R D F",
526
+ "B D R D' R' B'",
527
+ "",
528
+ "D B' D' L' D L B"
529
+ ],
530
+ [
531
+ "D F D F' D F D2 F'",
532
+ "F' U2 B' R' B U2 F' L F' L' F'",
533
+ "",
534
+ "D2 L D L2 F L F2 D F"
535
+ ],
536
+ [
537
+ "L B' L' F L B L' F'",
538
+ "F2 U F' D2 F U' F' D2 F'",
539
+ "D' F' D B D' F D B'",
540
+ "F L2 F R2 F' L2 F R2 F2",
541
+ "D B D' F' D B' D' F",
542
+ "R F L F' R' F L' F'",
543
+ "",
544
+ "D2 B L' U2 L B' D2 B L' U2 L B'",
545
+ "D2 F R' U2 R F' D2 F R' U2 R F'",
546
+ "R F L' F' R' F L F'",
547
+ "D F D' B' D F' D' B",
548
+ "L2 F2 L' B2 L F2 L' B2 L'"
549
+ ],
550
+ [
551
+ "L B R' B' L' B R B'",
552
+ "R' B R F' R' B' R F",
553
+ "L D2 L U L' D2 L U' L2",
554
+ "",
555
+ "D2 B' D2 F D' L2 F L2 F' D2 B D' F'",
556
+ "D2 F' R' F R2 B' D2 B D2 R' F D2 F'",
557
+ "L B L' F L B' L' F'",
558
+ "F' D2 F' U' F D2 F' U F2",
559
+ "D' B' D F D' B D F'"
560
+ ],
561
+ ["", "D2 F' L U2 L' F D2 F' L U2 L' F", "D2 B' R U2 R' B D2 B' R U2 R' B"]
562
+ ];
563
+
564
+ // src/cubing/vendor/min2phase/gwt.js
565
+ var $intern_3 = { 3: 1 };
566
+ var $intern_9 = 4194303;
567
+ var $intern_10 = 1048575;
568
+ var $intern_11 = 524288;
569
+ var $intern_26 = { 11: 1, 3: 1 };
570
+ var $intern_27 = { 17: 1, 3: 1 };
571
+ var $intern_28 = 14540032;
572
+ var $intern_30 = { 10: 1, 3: 1 };
573
+ var _;
574
+ var prototypesByTypeId_0 = {};
575
+ function typeMarkerFn() {
576
+ }
577
+ function portableObjCreate(obj) {
578
+ function F() {
579
+ }
580
+ F.prototype = obj || {};
581
+ return new F();
582
+ }
583
+ function maybeGetClassLiteralFromPlaceHolder_0(entry) {
584
+ return entry instanceof Array ? entry[0] : null;
585
+ }
586
+ function defineClass(typeId, superTypeId, castableTypeMap) {
587
+ var prototypesByTypeId = prototypesByTypeId_0;
588
+ var createSubclassPrototype = createSubclassPrototype_0;
589
+ var maybeGetClassLiteralFromPlaceHolder = maybeGetClassLiteralFromPlaceHolder_0;
590
+ var prototype_0 = prototypesByTypeId[typeId];
591
+ var clazz = maybeGetClassLiteralFromPlaceHolder(prototype_0);
592
+ if (prototype_0 && !clazz) {
593
+ _ = prototype_0;
594
+ } else {
595
+ _ = prototypesByTypeId[typeId] = !superTypeId ? {} : createSubclassPrototype(superTypeId);
596
+ _.castableTypeMap$ = castableTypeMap;
597
+ _.constructor = _;
598
+ !superTypeId && (_.typeMarker$ = typeMarkerFn);
599
+ }
600
+ for (var i = 3; i < arguments.length; ++i) {
601
+ arguments[i].prototype = _;
602
+ }
603
+ clazz && (_.___clazz$ = clazz);
604
+ }
605
+ function createSubclassPrototype_0(superTypeId) {
606
+ var prototypesByTypeId = prototypesByTypeId_0;
607
+ return portableObjCreate(prototypesByTypeId[superTypeId]);
608
+ }
609
+ function Object_0() {
610
+ }
611
+ defineClass(1, null, {}, Object_0);
612
+ function narrow_byte(x_0) {
613
+ return x_0 << 24 >> 24;
614
+ }
615
+ function Class() {
616
+ this.typeName = null;
617
+ this.simpleName = null;
618
+ this.packageName = null;
619
+ this.compoundName = null;
620
+ this.canonicalName = null;
621
+ this.typeId = null;
622
+ this.arrayLiterals = null;
623
+ }
624
+ function createClassObject(packageName, compoundClassName) {
625
+ var clazz;
626
+ clazz = new Class();
627
+ clazz.packageName = packageName;
628
+ clazz.compoundName = compoundClassName;
629
+ return clazz;
630
+ }
631
+ function createForClass(packageName, compoundClassName, typeId) {
632
+ var clazz;
633
+ clazz = createClassObject(packageName, compoundClassName);
634
+ maybeSetClassLiteral(typeId, clazz);
635
+ return clazz;
636
+ }
637
+ function createForInterface(packageName, compoundClassName) {
638
+ var clazz;
639
+ clazz = createClassObject(packageName, compoundClassName);
640
+ clazz.modifiers = 2;
641
+ return clazz;
642
+ }
643
+ function createForPrimitive(className, primitiveTypeId) {
644
+ var clazz;
645
+ clazz = createClassObject("", className);
646
+ clazz.typeId = primitiveTypeId;
647
+ clazz.modifiers = 1;
648
+ return clazz;
649
+ }
650
+ function getClassLiteralForArray_0(leafClass, dimensions) {
651
+ var arrayLiterals = leafClass.arrayLiterals = leafClass.arrayLiterals || [];
652
+ return arrayLiterals[dimensions] || (arrayLiterals[dimensions] = leafClass.createClassLiteralForArray(dimensions));
653
+ }
654
+ function getPrototypeForClass(clazz) {
655
+ if (clazz.isPrimitive()) {
656
+ return null;
657
+ }
658
+ var typeId = clazz.typeId;
659
+ var prototype_0 = prototypesByTypeId_0[typeId];
660
+ return prototype_0;
661
+ }
662
+ function maybeSetClassLiteral(typeId, clazz) {
663
+ if (!typeId) {
664
+ return;
665
+ }
666
+ clazz.typeId = typeId;
667
+ var prototype_0 = getPrototypeForClass(clazz);
668
+ if (!prototype_0) {
669
+ prototypesByTypeId_0[typeId] = [clazz];
670
+ return;
671
+ }
672
+ prototype_0.___clazz$ = clazz;
673
+ }
674
+ defineClass(79, 1, {}, Class);
675
+ _.createClassLiteralForArray = function createClassLiteralForArray(dimensions) {
676
+ var clazz;
677
+ clazz = new Class();
678
+ clazz.modifiers = 4;
679
+ dimensions > 1 ? clazz.componentType = getClassLiteralForArray_0(this, dimensions - 1) : clazz.componentType = this;
680
+ return clazz;
681
+ };
682
+ _.isPrimitive = function isPrimitive() {
683
+ return (this.modifiers & 1) != 0;
684
+ };
685
+ function getClassLiteralForArray(clazz, dimensions) {
686
+ return getClassLiteralForArray_0(clazz, dimensions);
687
+ }
688
+ function initDim(leafClassLiteral, castableTypeMap, elementTypeId, length_0, elementTypeCategory, dimensions) {
689
+ var result;
690
+ result = initializeArrayElementsWithDefaults(elementTypeCategory, length_0);
691
+ initValues(getClassLiteralForArray(leafClassLiteral, dimensions), castableTypeMap, elementTypeId, elementTypeCategory, result);
692
+ return result;
693
+ }
694
+ function initDims(leafClassLiteral, castableTypeMapExprs, elementTypeIds, leafElementTypeCategory, dimExprs, count) {
695
+ return initDims_0(leafClassLiteral, castableTypeMapExprs, elementTypeIds, leafElementTypeCategory, dimExprs, 0, count);
696
+ }
697
+ function initDims_0(leafClassLiteral, castableTypeMapExprs, elementTypeIds, leafElementTypeCategory, dimExprs, index_0, count) {
698
+ var elementTypeCategory, i, isLastDim, length_0, result;
699
+ length_0 = dimExprs[index_0];
700
+ isLastDim = index_0 == count - 1;
701
+ elementTypeCategory = isLastDim ? leafElementTypeCategory : 0;
702
+ result = initializeArrayElementsWithDefaults(elementTypeCategory, length_0);
703
+ initValues(getClassLiteralForArray(leafClassLiteral, count - index_0), castableTypeMapExprs[index_0], elementTypeIds[index_0], elementTypeCategory, result);
704
+ if (!isLastDim) {
705
+ ++index_0;
706
+ for (i = 0; i < length_0; ++i) {
707
+ result[i] = initDims_0(leafClassLiteral, castableTypeMapExprs, elementTypeIds, leafElementTypeCategory, dimExprs, index_0, count);
708
+ }
709
+ }
710
+ return result;
711
+ }
712
+ function initValues(arrayClass, castableTypeMap, elementTypeId, elementTypeCategory, array) {
713
+ array.___clazz$ = arrayClass;
714
+ array.castableTypeMap$ = castableTypeMap;
715
+ array.typeMarker$ = typeMarkerFn;
716
+ array.__elementTypeId$ = elementTypeId;
717
+ array.__elementTypeCategory$ = elementTypeCategory;
718
+ return array;
719
+ }
720
+ function initializeArrayElementsWithDefaults(elementTypeCategory, length_0) {
721
+ var array = new Array(length_0);
722
+ var initValue;
723
+ switch (elementTypeCategory) {
724
+ case 6:
725
+ initValue = { l: 0, m: 0, h: 0 };
726
+ break;
727
+ case 7:
728
+ initValue = 0;
729
+ break;
730
+ case 8:
731
+ initValue = false;
732
+ break;
733
+ default:
734
+ return array;
735
+ }
736
+ for (var i = 0; i < length_0; ++i) {
737
+ array[i] = initValue;
738
+ }
739
+ return array;
740
+ }
741
+ function create(value_0) {
742
+ var a0, a1, a2;
743
+ a0 = value_0 & $intern_9;
744
+ a1 = value_0 >> 22 & $intern_9;
745
+ a2 = value_0 < 0 ? $intern_10 : 0;
746
+ return create0(a0, a1, a2);
747
+ }
748
+ function create0(l, m, h) {
749
+ return { l, m, h };
750
+ }
751
+ function and(a, b) {
752
+ return { l: a.l & b.l, m: a.m & b.m, h: a.h & b.h };
753
+ }
754
+ function fromInt(value_0) {
755
+ var rebase, result;
756
+ if (value_0 > -129 && value_0 < 128) {
757
+ rebase = value_0 + 128;
758
+ boxedValues == null && (boxedValues = initDim(Lcom_google_gwt_lang_LongLibBase$LongEmul_2_classLit, $intern_3, 293, 256, 0, 1));
759
+ result = boxedValues[rebase];
760
+ !result && (result = boxedValues[rebase] = create(value_0));
761
+ return result;
762
+ }
763
+ return create(value_0);
764
+ }
765
+ function or(a, b) {
766
+ return { l: a.l | b.l, m: a.m | b.m, h: a.h | b.h };
767
+ }
768
+ function shl(a, n) {
769
+ var res0, res1, res2;
770
+ n &= 63;
771
+ if (n < 22) {
772
+ res0 = a.l << n;
773
+ res1 = a.m << n | a.l >> 22 - n;
774
+ res2 = a.h << n | a.m >> 22 - n;
775
+ } else if (n < 44) {
776
+ res0 = 0;
777
+ res1 = a.l << n - 22;
778
+ res2 = a.m << n - 22 | a.l >> 44 - n;
779
+ } else {
780
+ res0 = 0;
781
+ res1 = 0;
782
+ res2 = a.l << n - 44;
783
+ }
784
+ return { l: res0 & $intern_9, m: res1 & $intern_9, h: res2 & $intern_10 };
785
+ }
786
+ function shr(a, n) {
787
+ var a2, negative, res0, res1, res2;
788
+ n &= 63;
789
+ a2 = a.h;
790
+ negative = (a2 & $intern_11) != 0;
791
+ negative && (a2 |= -1048576);
792
+ if (n < 22) {
793
+ res2 = a2 >> n;
794
+ res1 = a.m >> n | a2 << 22 - n;
795
+ res0 = a.l >> n | a.m << 22 - n;
796
+ } else if (n < 44) {
483
797
  res2 = negative ? $intern_10 : 0;
484
798
  res1 = a2 >> n - 22;
485
799
  res0 = a.m >> n - 22 | a2 << 44 - n;
@@ -860,497 +1174,172 @@ function Search() {
860
1174
  for (i0 = 0; i0 < 21; i0++) {
861
1175
  this.nodeUD[i0] = new CoordCube();
862
1176
  this.nodeRL[i0] = new CoordCube();
863
- this.nodeFB[i0] = new CoordCube();
864
- this.phase1Cubie[i0] = new CubieCube();
865
- }
866
- for (i1 = 0; i1 < 6; i1++) {
867
- this.urfCubieCube[i1] = new CubieCube();
868
- this.urfCoordCube[i1] = new CoordCube();
869
- }
870
- for (i = 0; i < 20; i++) {
871
- this.preMoveCubes[i + 1] = new CubieCube();
872
- }
873
- }
874
- defineClass(72, 1, {}, Search);
875
- _.allowShorter = false;
876
- _.conjMask = 0;
877
- _.depth1 = 0;
878
- _.isRec = false;
879
- _.length1 = 0;
880
- _.maxDep2 = 0;
881
- _.maxPreMoves = 0;
882
- _.preMoveLen = 0;
883
- _.probe = { l: 0, m: 0, h: 0 };
884
- _.probeMax = { l: 0, m: 0, h: 0 };
885
- _.probeMin = { l: 0, m: 0, h: 0 };
886
- _.selfSym = { l: 0, m: 0, h: 0 };
887
- _.solLen = 0;
888
- _.urfIdx = 0;
889
- _.valid1 = 0;
890
- _.verbose = 0;
891
- var $clinit_Util_ran = false;
892
- function $clinit_Util() {
893
- if ($clinit_Util_ran) {
894
- return;
895
- }
896
- $clinit_Util_ran = true;
897
- var i, i0, i1, ix, j, jx;
898
- cornerFacelet = initValues(getClassLiteralForArray(B_classLit, 2), $intern_3, 10, 0, [
899
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [8, 9, 20]),
900
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [6, 18, 38]),
901
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [0, 36, 47]),
902
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [2, 45, 11]),
903
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [29, 26, 15]),
904
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [27, 44, 24]),
905
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [33, 53, 42]),
906
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [35, 17, 51])
907
- ]);
908
- edgeFacelet = initValues(getClassLiteralForArray(B_classLit, 2), $intern_3, 10, 0, [
909
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [5, 10]),
910
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [7, 19]),
911
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [3, 37]),
912
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [1, 46]),
913
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [32, 16]),
914
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [28, 25]),
915
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [30, 43]),
916
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [34, 52]),
917
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [23, 12]),
918
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [21, 41]),
919
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [50, 39]),
920
- initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [48, 14])
921
- ]);
922
- Cnk = initDims(I_classLit, [$intern_3, $intern_27], [17, 0], 7, [13, 13], 2);
923
- move2str = initValues(getClassLiteralForArray(Ljava_lang_String_2_classLit, 1), $intern_3, 2, 4, [
924
- "U ",
925
- "U2",
926
- "U'",
927
- "R ",
928
- "R2",
929
- "R'",
930
- "F ",
931
- "F2",
932
- "F'",
933
- "D ",
934
- "D2",
935
- "D'",
936
- "L ",
937
- "L2",
938
- "L'",
939
- "B ",
940
- "B2",
941
- "B'"
942
- ]);
943
- ud2std = initValues(getClassLiteralForArray(I_classLit, 1), $intern_27, 0, 7, [0, 1, 2, 4, 7, 9, 10, 11, 13, 16, 3, 5, 6, 8, 12, 14, 15, 17]);
944
- std2ud = initDim(I_classLit, $intern_27, 0, 18, 7, 1);
945
- ckmv2bit = initDim(I_classLit, $intern_27, 0, 11, 7, 1);
946
- for (i0 = 0; i0 < 18; i0++) {
947
- std2ud[ud2std[i0]] = i0;
948
- }
949
- for (i1 = 0; i1 < 10; i1++) {
950
- ix = ~~(ud2std[i1] / 3);
951
- ckmv2bit[i1] = 0;
952
- for (j = 0; j < 10; j++) {
953
- jx = ~~(ud2std[j] / 3);
954
- ckmv2bit[i1] |= (ix == jx || ix % 3 == jx % 3 && ix >= jx ? 1 : 0) << j;
955
- }
956
- }
957
- ckmv2bit[10] = 0;
958
- for (i = 0; i < 13; i++) {
959
- Cnk[i][0] = Cnk[i][i] = 1;
960
- for (j = 1; j < i; j++) {
961
- Cnk[i][j] = Cnk[i - 1][j - 1] + Cnk[i - 1][j];
962
- }
963
- }
964
- }
965
- function getNPerm(arr, n, isEdge) {
966
- $clinit_Util();
967
- var i, idx, v, val;
968
- idx = 0;
969
- val = { l: 1323536, m: 2777561, h: 1043915 };
970
- for (i = 0; i < n - 1; i++) {
971
- v = getVal(arr[i], isEdge) << 2;
972
- idx = (n - i) * idx + toInt(and(shr(val, v), { l: 15, m: 0, h: 0 }));
973
- val = sub_0(val, shl({ l: 1118480, m: 279620, h: 69905 }, v));
974
- }
975
- return idx;
976
- }
977
- function getVal(val0, isEdge) {
978
- return isEdge ? val0 >> 1 : val0 & 7;
979
- }
980
- function setNPerm(arr, idx, n, isEdge) {
981
- $clinit_Util();
982
- var extract, i, m, p, v, val;
983
- val = { l: 1323536, m: 2777561, h: 1043915 };
984
- extract = { l: 0, m: 0, h: 0 };
985
- for (p = 2; p <= n; p++) {
986
- extract = or(shl(extract, 4), fromInt(idx % p));
987
- idx = ~~(idx / p);
1177
+ this.nodeFB[i0] = new CoordCube();
1178
+ this.phase1Cubie[i0] = new CubieCube();
988
1179
  }
989
- for (i = 0; i < n - 1; i++) {
990
- v = (toInt(extract) & 15) << 2;
991
- extract = shr(extract, 4);
992
- arr[i] = setVal(arr[i], toInt(and(shr(val, v), { l: 15, m: 0, h: 0 })), isEdge);
993
- m = sub_0(shl({ l: 1, m: 0, h: 0 }, v), { l: 1, m: 0, h: 0 });
994
- val = or(and(val, m), and(shr(val, 4), {
995
- l: ~m.l & $intern_9,
996
- m: ~m.m & $intern_9,
997
- h: ~m.h & $intern_10
998
- }));
1180
+ for (i1 = 0; i1 < 6; i1++) {
1181
+ this.urfCubieCube[i1] = new CubieCube();
1182
+ this.urfCoordCube[i1] = new CoordCube();
1183
+ }
1184
+ for (i = 0; i < 20; i++) {
1185
+ this.preMoveCubes[i + 1] = new CubieCube();
999
1186
  }
1000
- arr[n - 1] = setVal(arr[n - 1], toInt(and(val, { l: 15, m: 0, h: 0 })), isEdge);
1001
- }
1002
- function setVal(val0, val, isEdge) {
1003
- return (isEdge ? val << 1 | val0 & 1 : val | val0 & -8) << 24 >> 24;
1004
- }
1005
- var Cnk;
1006
- var ckmv2bit;
1007
- var cornerFacelet;
1008
- var edgeFacelet;
1009
- var move2str;
1010
- var std2ud;
1011
- var ud2std;
1012
- function Util$Solution() {
1013
- this.moves = initDim(I_classLit, $intern_27, 0, 31, 7, 1);
1014
1187
  }
1015
- defineClass(150, 1, {}, Util$Solution);
1188
+ defineClass(72, 1, {}, Search);
1189
+ _.allowShorter = false;
1190
+ _.conjMask = 0;
1016
1191
  _.depth1 = 0;
1017
- _.length_0 = 0;
1192
+ _.isRec = false;
1193
+ _.length1 = 0;
1194
+ _.maxDep2 = 0;
1195
+ _.maxPreMoves = 0;
1196
+ _.preMoveLen = 0;
1197
+ _.probe = { l: 0, m: 0, h: 0 };
1198
+ _.probeMax = { l: 0, m: 0, h: 0 };
1199
+ _.probeMin = { l: 0, m: 0, h: 0 };
1200
+ _.selfSym = { l: 0, m: 0, h: 0 };
1201
+ _.solLen = 0;
1018
1202
  _.urfIdx = 0;
1203
+ _.valid1 = 0;
1019
1204
  _.verbose = 0;
1020
- var I_classLit = createForPrimitive("int", "I");
1021
- createForClass("com.google.gwt.lang", "CollapsedPropertyHolder", 252);
1022
- createForClass("com.google.gwt.lang", "JavaClassHierarchySetupUtil", 254);
1023
- var Lcom_google_gwt_lang_LongLibBase$LongEmul_2_classLit = createForClass("com.google.gwt.lang", "LongLibBase/LongEmul", null);
1024
- createForClass("com.google.gwt.lang", "ModuleUtils", 257);
1025
- var B_classLit = createForPrimitive("byte", "B");
1026
- var J_classLit = createForPrimitive("long", "J");
1027
- var C_classLit = createForPrimitive("char", "C");
1028
- createForClass("com.google.gwt.user.client.rpc", "XsrfToken", null), createForInterface("java.util", "Map/Entry");
1029
-
1030
- // src/cubing/search/inside/solve/puzzles/3x3x3/convert.ts
1031
- var reidEdgeOrder = "UF UR UB UL DF DR DB DL FR FL BR BL".split(" ");
1032
- var reidCornerOrder = "UFR URB UBL ULF DRF DFL DLB DBR".split(" ");
1033
- var centerOrder = "U L F R B D".split(" ");
1034
-
1035
- // src/cubing/search/inside/solve/puzzles/3x3x3/filter.ts
1036
- function isEquivalentTranformationIgnoringCENTERS(def, t1, t2) {
1037
- for (const orbitName in def.orbits) {
1038
- if (!areOrbitTransformationsEquivalent(def, orbitName, t1, t2, {
1039
- ignoreOrientation: orbitName === "CENTERS"
1040
- })) {
1041
- return false;
1042
- }
1043
- }
1044
- return true;
1045
- }
1046
- function passesFilter(def, state) {
1047
- const kpuzzle = new KPuzzle(def);
1048
- if (isEquivalentTranformationIgnoringCENTERS(def, kpuzzle.state, state)) {
1049
- return false;
1050
- }
1051
- for (const face of "ULFRBD") {
1052
- for (let amount = 1; amount < 4; amount++) {
1053
- kpuzzle.reset();
1054
- kpuzzle.applyMove(new Move(face, amount));
1055
- if (isEquivalentTranformationIgnoringCENTERS(def, kpuzzle.state, state)) {
1056
- return false;
1057
- }
1058
- }
1205
+ var $clinit_Util_ran = false;
1206
+ function $clinit_Util() {
1207
+ if ($clinit_Util_ran) {
1208
+ return;
1059
1209
  }
1060
- return true;
1061
- }
1062
-
1063
- // src/cubing/search/inside/solve/puzzles/3x3x3/legacy-sgs.ts
1064
- var sgs3x3x3 = [
1065
- [
1066
- "R U'",
1067
- "R2 B",
1068
- "D2 B2",
1069
- "D' L B'",
1070
- "R' U'",
1071
- "B",
1072
- "D B2",
1073
- "R' B",
1074
- "L' U",
1075
- "L2 B'",
1076
- "B2",
1077
- "D L B'",
1078
- "L U",
1079
- "B'",
1080
- "U'",
1081
- "R B",
1082
- "D' B2",
1083
- "L B'",
1084
- "U2",
1085
- "U L' B'",
1086
- "",
1087
- "U' L' B'",
1088
- "U",
1089
- "L' B'"
1090
- ],
1091
- [
1092
- "F2 L2",
1093
- "F' L'",
1094
- "R' F L2",
1095
- "D' L2",
1096
- "F L2",
1097
- "F2 L'",
1098
- "R' F' L'",
1099
- "R2 F L2",
1100
- "R2 F2 L'",
1101
- "L2",
1102
- "F L'",
1103
- "D' L",
1104
- "D2 L2",
1105
- "R2 F' L'",
1106
- "D L",
1107
- "",
1108
- "L2 F L'",
1109
- "L F' L2",
1110
- "L F L'",
1111
- "F' L2",
1112
- "L'",
1113
- "D L2",
1114
- "D F L'",
1115
- "L"
1116
- ],
1117
- [
1118
- "R B U2 B'",
1119
- "R2 B U' B'",
1120
- "F2 B U B'",
1121
- "F B2 L' B2",
1122
- "B2 L B2",
1123
- "B U' B'",
1124
- "R2 B U2 B'",
1125
- "R' B U' B'",
1126
- "B2 L' B2",
1127
- "F B U B'",
1128
- "B2 U' B2",
1129
- "B' L B",
1130
- "L F' B D' B'",
1131
- "B' U' B2 D B'",
1132
- "B U2 B'",
1133
- "R B U' B'",
1134
- "B2 L2 B2",
1135
- "D' B' L B",
1136
- "B U B'",
1137
- "F' B2 L' B2",
1138
- "",
1139
- "B2 L' B' U' B'"
1140
- ],
1141
- [
1142
- "U F2 L2 U'",
1143
- "F' U L' U'",
1144
- "F2 U L' U'",
1145
- "U F L2 U'",
1146
- "U2 B2 U2",
1147
- "R' U' B U",
1148
- "D2 U L U'",
1149
- "D U2 B' U2",
1150
- "U L2 U'",
1151
- "F U L' U'",
1152
- "D U L U'",
1153
- "U2 B' U2",
1154
- "",
1155
- "U2 B' U' L' U'",
1156
- "U2 L' U2",
1157
- "U' B U",
1158
- "U L U'",
1159
- "D' U2 B' U2",
1160
- "U L' U'",
1161
- "U2 B U2"
1162
- ],
1163
- [
1164
- "R' D' F2",
1165
- "F'",
1166
- "F2",
1167
- "D R F'",
1168
- "R D' F2",
1169
- "R2 F'",
1170
- "D' F2",
1171
- "R F'",
1172
- "F2 R' D' F2",
1173
- "F",
1174
- "D2 F2",
1175
- "D' R F'",
1176
- "R2 D' F2",
1177
- "R' F'",
1178
- "D F2",
1179
- "D2 R F'",
1180
- "",
1181
- "F R' D' F2"
1182
- ],
1183
- [
1184
- "R' D2 F' D F",
1185
- "R F2 R2 F2",
1186
- "R2 F' D2 F",
1187
- "F' R2 D2 F",
1188
- "L D' L'",
1189
- "D F' D2 F",
1190
- "F2 R2 F2",
1191
- "R F' D2 F",
1192
- "F' R2 D' F",
1193
- "F' R' D2 F",
1194
- "F2 R' F2",
1195
- "L D L'",
1196
- "F' R D' F",
1197
- "F2 R F2",
1198
- "F' D2 F",
1199
- "",
1200
- "L D2 R D' L'",
1201
- "F' D2 F' R F2",
1202
- "D2 R2 F2 R2 F2",
1203
- "D F' D' F",
1204
- "F' D F"
1205
- ],
1206
- [
1207
- "U F2 U'",
1208
- "R U F' U'",
1209
- "D R U F2 U'",
1210
- "U F U'",
1211
- "R2 U F2 U'",
1212
- "R' U F' U'",
1213
- "R U F2 U'",
1214
- "R2 U F' U'",
1215
- "",
1216
- "U L D L' F U'",
1217
- "F2 D' R D F2",
1218
- "D2 U F U'",
1219
- "R' U F2 U'",
1220
- "U F' U'",
1221
- "F2 D2 R D2 F2",
1222
- "D U F U'"
1223
- ],
1224
- [
1210
+ $clinit_Util_ran = true;
1211
+ var i, i0, i1, ix, j, jx;
1212
+ cornerFacelet = initValues(getClassLiteralForArray(B_classLit, 2), $intern_3, 10, 0, [
1213
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [8, 9, 20]),
1214
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [6, 18, 38]),
1215
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [0, 36, 47]),
1216
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [2, 45, 11]),
1217
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [29, 26, 15]),
1218
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [27, 44, 24]),
1219
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [33, 53, 42]),
1220
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [35, 17, 51])
1221
+ ]);
1222
+ edgeFacelet = initValues(getClassLiteralForArray(B_classLit, 2), $intern_3, 10, 0, [
1223
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [5, 10]),
1224
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [7, 19]),
1225
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [3, 37]),
1226
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [1, 46]),
1227
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [32, 16]),
1228
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [28, 25]),
1229
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [30, 43]),
1230
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [34, 52]),
1231
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [23, 12]),
1232
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [21, 41]),
1233
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [50, 39]),
1234
+ initValues(getClassLiteralForArray(B_classLit, 1), $intern_30, 0, 7, [48, 14])
1235
+ ]);
1236
+ Cnk = initDims(I_classLit, [$intern_3, $intern_27], [17, 0], 7, [13, 13], 2);
1237
+ move2str = initValues(getClassLiteralForArray(Ljava_lang_String_2_classLit, 1), $intern_3, 2, 4, [
1238
+ "U ",
1239
+ "U2",
1240
+ "U'",
1241
+ "R ",
1225
1242
  "R2",
1226
- "R' B' D B",
1227
- "D R'",
1228
- "F' R2 F",
1229
- "",
1230
- "R B' D B",
1231
1243
  "R'",
1232
- "B' D B",
1233
- "D' R'",
1234
- "D2 F' R2 F",
1235
- "R",
1236
- "R2 B' D B",
1237
- "D2 R'",
1238
- "B' D' B"
1239
- ],
1240
- [
1241
- "R2 D' R2",
1242
- "F' R' F R",
1243
- "R D' R2 D R'",
1244
- "D2 R2 D2 R2",
1245
- "R' D' F' R F",
1246
- "U F D F' U'",
1247
- "",
1248
- "R2 D2 B R' B' R'",
1249
- "R' F D' F2 R F",
1250
- "R2 D R2",
1251
- "F2 U F U' F",
1252
- "R' D F' R F",
1253
- "D R2 D2 R2",
1254
- "U F D' F' U'",
1255
- "D R' D2 F' R F",
1256
- "R2 D2 R2",
1257
- "U F D2 F' U'",
1258
- "R' D2 F' R F"
1259
- ],
1260
- [
1261
- "B R B'",
1262
- "F D F' B R2 B'",
1263
- "D B R2 B'",
1264
- "D2 B R' B'",
1265
- "B R2 B'",
1266
- "D B R' B'",
1267
- "D' B R2 B'",
1268
- "B R' B'",
1269
- "",
1270
- "B R2 B' D B R' B'",
1271
- "D2 B R2 B'",
1272
- "D' B R' B'"
1273
- ],
1274
- [
1275
- "",
1276
- "R' D R F D2 F'",
1277
- "R' D R",
1278
- "D F D' F'",
1279
- "R F' R' F",
1280
- "F D' F'",
1281
- "R' D' R",
1282
- "F D2 F'",
1283
- "R' D2 R",
1284
- "F D F'"
1285
- ],
1286
- [
1287
- "",
1288
- "F2 D2 R F' R' D2 F' D2 F'",
1289
- "F2 D2 F' D' F D' F' D2 F'",
1290
- "F2 D F2 D F2 D2 F2",
1291
- "D2 F L D2 L' D2 F'",
1292
- "D F D2 L D2 L' F'",
1293
- "R' D B' D2 B D' R",
1294
- "R' D2 B' D2 B R",
1295
- "F D2 F' D F D F'",
1296
- "F D' L D2 L' D F'",
1297
- "B D' F D B' D' F'",
1298
- "F D2 L D2 L' F'",
1299
- "F D' L D L' D F'",
1300
- "F L D2 L' D2 F'",
1301
- "R' B' D2 B D2 R"
1302
- ],
1303
- [
1304
- "D'",
1305
- "F L D L' D' F'",
1244
+ "F ",
1245
+ "F2",
1246
+ "F'",
1247
+ "D ",
1306
1248
  "D2",
1307
- "L B D B' D' L'",
1308
- "D",
1309
- "B' L' D' L D B",
1310
- "",
1311
- "D F L D L' D' F'"
1312
- ],
1313
- [
1314
- "F' D2 F D F' D F",
1315
- "F' D' R' D R F",
1316
- "F' R' D' R D F",
1317
- "B D R D' R' B'",
1318
- "",
1319
- "D B' D' L' D L B"
1320
- ],
1321
- [
1322
- "D F D F' D F D2 F'",
1323
- "F' U2 B' R' B U2 F' L F' L' F'",
1324
- "",
1325
- "D2 L D L2 F L F2 D F"
1326
- ],
1327
- [
1328
- "L B' L' F L B L' F'",
1329
- "F2 U F' D2 F U' F' D2 F'",
1330
- "D' F' D B D' F D B'",
1331
- "F L2 F R2 F' L2 F R2 F2",
1332
- "D B D' F' D B' D' F",
1333
- "R F L F' R' F L' F'",
1334
- "",
1335
- "D2 B L' U2 L B' D2 B L' U2 L B'",
1336
- "D2 F R' U2 R F' D2 F R' U2 R F'",
1337
- "R F L' F' R' F L F'",
1338
- "D F D' B' D F' D' B",
1339
- "L2 F2 L' B2 L F2 L' B2 L'"
1340
- ],
1341
- [
1342
- "L B R' B' L' B R B'",
1343
- "R' B R F' R' B' R F",
1344
- "L D2 L U L' D2 L U' L2",
1345
- "",
1346
- "D2 B' D2 F D' L2 F L2 F' D2 B D' F'",
1347
- "D2 F' R' F R2 B' D2 B D2 R' F D2 F'",
1348
- "L B L' F L B' L' F'",
1349
- "F' D2 F' U' F D2 F' U F2",
1350
- "D' B' D F D' B D F'"
1351
- ],
1352
- ["", "D2 F' L U2 L' F D2 F' L U2 L' F", "D2 B' R U2 R' B D2 B' R U2 R' B"]
1353
- ];
1249
+ "D'",
1250
+ "L ",
1251
+ "L2",
1252
+ "L'",
1253
+ "B ",
1254
+ "B2",
1255
+ "B'"
1256
+ ]);
1257
+ ud2std = initValues(getClassLiteralForArray(I_classLit, 1), $intern_27, 0, 7, [0, 1, 2, 4, 7, 9, 10, 11, 13, 16, 3, 5, 6, 8, 12, 14, 15, 17]);
1258
+ std2ud = initDim(I_classLit, $intern_27, 0, 18, 7, 1);
1259
+ ckmv2bit = initDim(I_classLit, $intern_27, 0, 11, 7, 1);
1260
+ for (i0 = 0; i0 < 18; i0++) {
1261
+ std2ud[ud2std[i0]] = i0;
1262
+ }
1263
+ for (i1 = 0; i1 < 10; i1++) {
1264
+ ix = ~~(ud2std[i1] / 3);
1265
+ ckmv2bit[i1] = 0;
1266
+ for (j = 0; j < 10; j++) {
1267
+ jx = ~~(ud2std[j] / 3);
1268
+ ckmv2bit[i1] |= (ix == jx || ix % 3 == jx % 3 && ix >= jx ? 1 : 0) << j;
1269
+ }
1270
+ }
1271
+ ckmv2bit[10] = 0;
1272
+ for (i = 0; i < 13; i++) {
1273
+ Cnk[i][0] = Cnk[i][i] = 1;
1274
+ for (j = 1; j < i; j++) {
1275
+ Cnk[i][j] = Cnk[i - 1][j - 1] + Cnk[i - 1][j];
1276
+ }
1277
+ }
1278
+ }
1279
+ function getNPerm(arr, n, isEdge) {
1280
+ $clinit_Util();
1281
+ var i, idx, v, val;
1282
+ idx = 0;
1283
+ val = { l: 1323536, m: 2777561, h: 1043915 };
1284
+ for (i = 0; i < n - 1; i++) {
1285
+ v = getVal(arr[i], isEdge) << 2;
1286
+ idx = (n - i) * idx + toInt(and(shr(val, v), { l: 15, m: 0, h: 0 }));
1287
+ val = sub_0(val, shl({ l: 1118480, m: 279620, h: 69905 }, v));
1288
+ }
1289
+ return idx;
1290
+ }
1291
+ function getVal(val0, isEdge) {
1292
+ return isEdge ? val0 >> 1 : val0 & 7;
1293
+ }
1294
+ function setNPerm(arr, idx, n, isEdge) {
1295
+ $clinit_Util();
1296
+ var extract, i, m, p, v, val;
1297
+ val = { l: 1323536, m: 2777561, h: 1043915 };
1298
+ extract = { l: 0, m: 0, h: 0 };
1299
+ for (p = 2; p <= n; p++) {
1300
+ extract = or(shl(extract, 4), fromInt(idx % p));
1301
+ idx = ~~(idx / p);
1302
+ }
1303
+ for (i = 0; i < n - 1; i++) {
1304
+ v = (toInt(extract) & 15) << 2;
1305
+ extract = shr(extract, 4);
1306
+ arr[i] = setVal(arr[i], toInt(and(shr(val, v), { l: 15, m: 0, h: 0 })), isEdge);
1307
+ m = sub_0(shl({ l: 1, m: 0, h: 0 }, v), { l: 1, m: 0, h: 0 });
1308
+ val = or(and(val, m), and(shr(val, 4), {
1309
+ l: ~m.l & $intern_9,
1310
+ m: ~m.m & $intern_9,
1311
+ h: ~m.h & $intern_10
1312
+ }));
1313
+ }
1314
+ arr[n - 1] = setVal(arr[n - 1], toInt(and(val, { l: 15, m: 0, h: 0 })), isEdge);
1315
+ }
1316
+ function setVal(val0, val, isEdge) {
1317
+ return (isEdge ? val << 1 | val0 & 1 : val | val0 & -8) << 24 >> 24;
1318
+ }
1319
+ var Cnk;
1320
+ var ckmv2bit;
1321
+ var cornerFacelet;
1322
+ var edgeFacelet;
1323
+ var move2str;
1324
+ var std2ud;
1325
+ var ud2std;
1326
+ function Util$Solution() {
1327
+ this.moves = initDim(I_classLit, $intern_27, 0, 31, 7, 1);
1328
+ }
1329
+ defineClass(150, 1, {}, Util$Solution);
1330
+ _.depth1 = 0;
1331
+ _.length_0 = 0;
1332
+ _.urfIdx = 0;
1333
+ _.verbose = 0;
1334
+ var I_classLit = createForPrimitive("int", "I");
1335
+ createForClass("com.google.gwt.lang", "CollapsedPropertyHolder", 252);
1336
+ createForClass("com.google.gwt.lang", "JavaClassHierarchySetupUtil", 254);
1337
+ var Lcom_google_gwt_lang_LongLibBase$LongEmul_2_classLit = createForClass("com.google.gwt.lang", "LongLibBase/LongEmul", null);
1338
+ createForClass("com.google.gwt.lang", "ModuleUtils", 257);
1339
+ var B_classLit = createForPrimitive("byte", "B");
1340
+ var J_classLit = createForPrimitive("long", "J");
1341
+ var C_classLit = createForPrimitive("char", "C");
1342
+ createForClass("com.google.gwt.user.client.rpc", "XsrfToken", null), createForInterface("java.util", "Map/Entry");
1354
1343
 
1355
1344
  // src/cubing/search/inside/solve/puzzles/3x3x3/index.ts
1356
1345
  async function random333State() {
@@ -1376,4 +1365,4 @@ export {
1376
1365
  setDebug,
1377
1366
  random333State
1378
1367
  };
1379
- //# sourceMappingURL=chunk-CSVAFZSB.js.map
1368
+ //# sourceMappingURL=chunk-6BZSKSG7.js.map