Name | cube-solver JSON |
Version |
1.1.3
JSON |
| download |
home_page | None |
Summary | Rubik's Cube Solver |
upload_time | 2025-07-09 11:50:04 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.9 |
license | None |
keywords |
rubik
cube
solver
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
===========
Cube Solver
===========
.. image:: https://img.shields.io/pypi/v/cube-solver.svg
:target: https://pypi.python.org/pypi/cube-solver
.. image:: https://readthedocs.org/projects/cube-solver/badge/?version=latest
:target: https://cube-solver.readthedocs.io/en/latest/?version=latest
:alt: Documentation Status
Rubik's Cube Solver
* Free software: MIT License
* GitHub repo: https://github.com/itsdaveba/cube-solver
* Documentation: https://cube-solver.readthedocs.io
Features
--------
* Command-line interface
* Transition and pruning tables
* C extension module for table generation
* Thistlethwaite and Kociemba solver algorithms
============
Installation
============
Stable release
--------------
To install **Cube Solver**, run the following command in your terminal:
.. code-block:: console
$ pip install cube-solver
This is the preferred method to install **Cube Solver**, as it will always install the most recent stable release.
=====
Usage
=====
After installation, you can use the ``cube`` command straight away:
.. code-block:: console
$ cube --help
To perform a maneuver to a cube, use the ``maneuver`` subcommand:
.. code-block:: console
$ cube maneuver --help # maneuver subcommand help
$ cube maneuver "R U R' U'" # apply maneuver
---------
| W W O |
| W W G |
| W W G |
---------------------------------
| B O O | G G Y | R R W | B R R |
| O O O | G G W | B R R | B B B |
| O O O | G G G | W R R | B B B |
---------------------------------
| Y Y R |
| Y Y Y |
| Y Y Y |
---------
Cube: WWOWWGWWGBOOOOOOOOGGYGGWGGGRRWBRRWRRBRRBBBBBBYYRYYYYYY
To generate a scramble, use the ``scramble`` subcommand:
.. code-block:: console
$ cube scramble --help # scramble subcommand help
$ cube scramble # scramble of length 25
L' U' B' L' D2 R' D B L D R2 F D2 F L2 F2 B' R' F' B U' R L2 D B2
$ cube scramble --length 30 # scramble of length 30
F' L2 B' R D' L D2 F2 B L' F B' U' L' U' F2 B2 D' R B R D' L2 D L2 B2 L' U' L F'
$ cube scramble --wca # scramble following WCA rules (uses the Kociemba solver)
R2 U' F2 U' R2 B2 U2 F2 D' B2 U' F2 D2 R2 B' R' D' L' R B D' R' B2
To solve a cube, use the ``solve`` subcommand.
The first time you solve a cube with a specific algorithm,
the required tables will be generated. This process takes around 5 minutes.
The cube string representation must contain characters from `{'W', 'G', 'R', 'Y', 'B', 'O'}`,
representing the colors ``WHITE``, ``GREEN``, ``RED``, ``YELLOW``, ``BLUE``, and ``ORANGE``, respectively.
The order of the string representation is:
.. code-block:: console
------------
| 01 02 03 |
| 04 05 06 |
| 07 08 09 |
---------------------------------------------
| 10 11 12 | 19 20 21 | 28 29 30 | 37 38 39 |
| 13 14 15 | 22 23 24 | 31 32 33 | 40 41 42 |
| 16 17 18 | 25 26 27 | 34 35 36 | 43 44 45 |
---------------------------------------------
| 46 47 48 |
| 49 50 51 |
| 52 53 54 |
------------
.. code-block:: console
$ cube solve --help # solve subcommand help
$ cube solve RGWWWWWWRWOOOOOOOOGGGGGWGGWYBBRRRRRRORBBBBBBBYYGYYYYYY # solve cube representation
R U R' U'
$ cube solve --scramble "U R U' R'" # solve scramble
R U R' U'
$ cube solve --random --verbose # solve random cube
---------
| W O Y |
| W W G |
| O R Y |
---------------------------------
| R O W | B G G | O W B | R G G |
| O O B | O G G | Y R W | R B Y |
| B R W | B R O | W W G | R Y Y |
---------------------------------
| R B G |
| Y Y B |
| O B Y |
---------
Cube: WOYWWGORYROWOOBBRWBGGOGGBROOWBYRWWWGRGGRBYRYYRBGYYBOBY
Solution: U2 D2 F' D' L' B' U2 B2 R U F2 D B2 R2 D F2 B2 R2 D F2 L2 U2 L2 U' (24)
$ cube solve --random --verbose --verbose --algorithm kociemba # Kociemba algorithm (default)
---------
| W G W |
| B W G |
| O R O |
---------------------------------
| O Y G | W B B | Y R G | R W B |
| G O Y | R G B | O R W | R B Y |
| G Y Y | R O B | R B G | R O O |
---------------------------------
| B G W |
| O Y W |
| Y W Y |
---------
Cube: WGWBWGOROOYGGOYGYYWBBRGBROBYRGORWRBGRWBRBYROOBGWOYWYWY
Solution: ["D L2 B L B U2 D2 B' L", "U' R2 D' R2 B2 D2 R2 U' F2 D2 R2 D' R2 D' B2"] (24)
$ cube solve --random --verbose --verbose --algorithm thistle # Thistlethwaite algorithm
---------
| B Y R |
| B W B |
| W B B |
---------------------------------
| O O R | B W O | W R W | G R Y |
| G O W | R G G | R R W | G B O |
| G Y Y | G O Y | R O O | W Y O |
---------------------------------
| R Y B |
| B Y W |
| Y G G |
---------
Cube: BYRBWBWBBOORGOWGYYBWORGGGOYWRWRRWROOGRYGBOWYORYBBYWYGG
Solution: ["B' R2 D F", "U R U R' L' U2 D L", "U' R2 U F2 L2 F2 B2 U", 'R2 F2 D2 F2 R2 U2 R2'] (27)
$ cube solve --scramble "L2 U R D' B2 D2 F B D" --optimal --verbose # find the optimal solution
---------
| B O Y |
| W W G |
| B O G |
---------------------------------
| W G Y | O B R | W R B | R G O |
| W O Y | O G R | W R B | R B O |
| G W O | W B R | W Y Y | G G O |
---------------------------------
| G Y B |
| B Y R |
| Y Y R |
---------
Cube: BOYWWGBOGWGYWOYGWOOBROGRWBRWRBWRBWYYRGORBOGGOGYBBYRYYR
INFO: Solution: D' F' B' U2 F2 D L L2 F2 D2 L2 F2 U D L2 B2 D L2 (18)
INFO: Solution: D' F' B' U2 F2 D L' F2 D2 L2 F2 U D L2 B2 D L2 (17)
INFO: Solution: D' F' B' D2 B2 D R R2 U' L2 (10)
INFO: Solution: D' F' B' D2 B2 D R' U' L2 (9)
Optimal: D' F' B' D2 B2 D R' U' L2 (9)
$ cube solve --random --optimal --verbose --timeout 10 # stop search after 10 seconds
---------
| B W G |
| O W Y |
| R R R |
---------------------------------
| W B G | Y G B | W O W | O B O |
| W O B | Y G W | R R R | Y B G |
| Y Y W | R W O | G R Y | R G O |
---------------------------------
| G O Y |
| G Y B |
| B O B |
---------
Cube: BWGOWYRRRWBGWOBYYWYGBYGWRWOWOWRRRGRYOBOYBGRGOGOYGYBBOB
INFO: Solution: U2 R' B U2 L' F' U F2 L R2 U L2 U F2 B2 U2 L2 D L2 B2 D (21)
INFO: Solution: U B' L2 F D' R L F' R U' B' U' B2 D2 R2 B2 D F2 U2 F2 (20)
Suboptimal: U B' L2 F D' R L F' R U' B' U' B2 D2 R2 B2 D F2 U2 F2 (20)
To use **Cube Solver** in a Python project:
.. code-block:: python
from cube_solver import Cube, Maneuver, Kociemba
scramble = Maneuver.random()
print(f"Scramble: {scramble}")
cube = Cube(scramble)
print(cube)
print(f"Cube: {repr(cube)}")
solver = Kociemba()
solution = solver.solve(cube)
assert solution is not None
assert solution == scramble.inverse
print(f"Solution: {solution} ({len(solution)})")
=======
Credits
=======
This package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
Raw data
{
"_id": null,
"home_page": null,
"name": "cube-solver",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": "Dave Barragan <itsdaveba@gmail.com>",
"keywords": "rubik, cube, solver",
"author": null,
"author_email": "Dave Barragan <itsdaveba@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/59/27/567673e1a7031190d45f327b42dcf6d9823883a2669448e9b025f94b885e/cube_solver-1.1.3.tar.gz",
"platform": null,
"description": "===========\nCube Solver\n===========\n\n.. image:: https://img.shields.io/pypi/v/cube-solver.svg\n :target: https://pypi.python.org/pypi/cube-solver\n\n.. image:: https://readthedocs.org/projects/cube-solver/badge/?version=latest\n :target: https://cube-solver.readthedocs.io/en/latest/?version=latest\n :alt: Documentation Status\n\n\nRubik's Cube Solver\n\n* Free software: MIT License\n* GitHub repo: https://github.com/itsdaveba/cube-solver\n* Documentation: https://cube-solver.readthedocs.io\n\n\nFeatures\n--------\n\n* Command-line interface\n* Transition and pruning tables\n* C extension module for table generation\n* Thistlethwaite and Kociemba solver algorithms\n\n\n============\nInstallation\n============\n\nStable release\n--------------\n\nTo install **Cube Solver**, run the following command in your terminal:\n\n.. code-block:: console\n\n $ pip install cube-solver\n\nThis is the preferred method to install **Cube Solver**, as it will always install the most recent stable release.\n\n\n=====\nUsage\n=====\n\nAfter installation, you can use the ``cube`` command straight away:\n\n.. code-block:: console\n\n $ cube --help\n\nTo perform a maneuver to a cube, use the ``maneuver`` subcommand:\n\n.. code-block:: console\n\n $ cube maneuver --help # maneuver subcommand help\n $ cube maneuver \"R U R' U'\" # apply maneuver\n ---------\n | W W O |\n | W W G |\n | W W G |\n ---------------------------------\n | B O O | G G Y | R R W | B R R |\n | O O O | G G W | B R R | B B B |\n | O O O | G G G | W R R | B B B |\n ---------------------------------\n | Y Y R |\n | Y Y Y |\n | Y Y Y |\n ---------\n Cube: WWOWWGWWGBOOOOOOOOGGYGGWGGGRRWBRRWRRBRRBBBBBBYYRYYYYYY\n\nTo generate a scramble, use the ``scramble`` subcommand:\n\n.. code-block:: console\n\n $ cube scramble --help # scramble subcommand help\n $ cube scramble # scramble of length 25\n L' U' B' L' D2 R' D B L D R2 F D2 F L2 F2 B' R' F' B U' R L2 D B2\n\n $ cube scramble --length 30 # scramble of length 30\n F' L2 B' R D' L D2 F2 B L' F B' U' L' U' F2 B2 D' R B R D' L2 D L2 B2 L' U' L F'\n\n $ cube scramble --wca # scramble following WCA rules (uses the Kociemba solver)\n R2 U' F2 U' R2 B2 U2 F2 D' B2 U' F2 D2 R2 B' R' D' L' R B D' R' B2\n\nTo solve a cube, use the ``solve`` subcommand.\nThe first time you solve a cube with a specific algorithm,\nthe required tables will be generated. This process takes around 5 minutes.\n\nThe cube string representation must contain characters from `{'W', 'G', 'R', 'Y', 'B', 'O'}`,\nrepresenting the colors ``WHITE``, ``GREEN``, ``RED``, ``YELLOW``, ``BLUE``, and ``ORANGE``, respectively.\nThe order of the string representation is:\n\n.. code-block:: console\n\n ------------\n | 01 02 03 |\n | 04 05 06 |\n | 07 08 09 |\n ---------------------------------------------\n | 10 11 12 | 19 20 21 | 28 29 30 | 37 38 39 |\n | 13 14 15 | 22 23 24 | 31 32 33 | 40 41 42 |\n | 16 17 18 | 25 26 27 | 34 35 36 | 43 44 45 |\n ---------------------------------------------\n | 46 47 48 |\n | 49 50 51 |\n | 52 53 54 |\n ------------\n\n\n.. code-block:: console\n\n $ cube solve --help # solve subcommand help\n $ cube solve RGWWWWWWRWOOOOOOOOGGGGGWGGWYBBRRRRRRORBBBBBBBYYGYYYYYY # solve cube representation\n R U R' U'\n\n $ cube solve --scramble \"U R U' R'\" # solve scramble\n R U R' U'\n\n $ cube solve --random --verbose # solve random cube\n ---------\n | W O Y |\n | W W G |\n | O R Y |\n ---------------------------------\n | R O W | B G G | O W B | R G G |\n | O O B | O G G | Y R W | R B Y |\n | B R W | B R O | W W G | R Y Y |\n ---------------------------------\n | R B G |\n | Y Y B |\n | O B Y |\n ---------\n Cube: WOYWWGORYROWOOBBRWBGGOGGBROOWBYRWWWGRGGRBYRYYRBGYYBOBY\n Solution: U2 D2 F' D' L' B' U2 B2 R U F2 D B2 R2 D F2 B2 R2 D F2 L2 U2 L2 U' (24)\n\n $ cube solve --random --verbose --verbose --algorithm kociemba # Kociemba algorithm (default)\n ---------\n | W G W |\n | B W G |\n | O R O |\n ---------------------------------\n | O Y G | W B B | Y R G | R W B |\n | G O Y | R G B | O R W | R B Y |\n | G Y Y | R O B | R B G | R O O |\n ---------------------------------\n | B G W |\n | O Y W |\n | Y W Y |\n ---------\n Cube: WGWBWGOROOYGGOYGYYWBBRGBROBYRGORWRBGRWBRBYROOBGWOYWYWY\n Solution: [\"D L2 B L B U2 D2 B' L\", \"U' R2 D' R2 B2 D2 R2 U' F2 D2 R2 D' R2 D' B2\"] (24)\n\n $ cube solve --random --verbose --verbose --algorithm thistle # Thistlethwaite algorithm\n ---------\n | B Y R |\n | B W B |\n | W B B |\n ---------------------------------\n | O O R | B W O | W R W | G R Y |\n | G O W | R G G | R R W | G B O |\n | G Y Y | G O Y | R O O | W Y O |\n ---------------------------------\n | R Y B |\n | B Y W |\n | Y G G |\n ---------\n Cube: BYRBWBWBBOORGOWGYYBWORGGGOYWRWRRWROOGRYGBOWYORYBBYWYGG\n Solution: [\"B' R2 D F\", \"U R U R' L' U2 D L\", \"U' R2 U F2 L2 F2 B2 U\", 'R2 F2 D2 F2 R2 U2 R2'] (27)\n\n $ cube solve --scramble \"L2 U R D' B2 D2 F B D\" --optimal --verbose # find the optimal solution\n ---------\n | B O Y |\n | W W G |\n | B O G |\n ---------------------------------\n | W G Y | O B R | W R B | R G O |\n | W O Y | O G R | W R B | R B O |\n | G W O | W B R | W Y Y | G G O |\n ---------------------------------\n | G Y B |\n | B Y R |\n | Y Y R |\n ---------\n Cube: BOYWWGBOGWGYWOYGWOOBROGRWBRWRBWRBWYYRGORBOGGOGYBBYRYYR\n INFO: Solution: D' F' B' U2 F2 D L L2 F2 D2 L2 F2 U D L2 B2 D L2 (18)\n INFO: Solution: D' F' B' U2 F2 D L' F2 D2 L2 F2 U D L2 B2 D L2 (17)\n INFO: Solution: D' F' B' D2 B2 D R R2 U' L2 (10)\n INFO: Solution: D' F' B' D2 B2 D R' U' L2 (9)\n Optimal: D' F' B' D2 B2 D R' U' L2 (9)\n\n $ cube solve --random --optimal --verbose --timeout 10 # stop search after 10 seconds\n ---------\n | B W G |\n | O W Y |\n | R R R |\n ---------------------------------\n | W B G | Y G B | W O W | O B O |\n | W O B | Y G W | R R R | Y B G |\n | Y Y W | R W O | G R Y | R G O |\n ---------------------------------\n | G O Y |\n | G Y B |\n | B O B |\n ---------\n Cube: BWGOWYRRRWBGWOBYYWYGBYGWRWOWOWRRRGRYOBOYBGRGOGOYGYBBOB\n INFO: Solution: U2 R' B U2 L' F' U F2 L R2 U L2 U F2 B2 U2 L2 D L2 B2 D (21)\n INFO: Solution: U B' L2 F D' R L F' R U' B' U' B2 D2 R2 B2 D F2 U2 F2 (20)\n Suboptimal: U B' L2 F D' R L F' R U' B' U' B2 D2 R2 B2 D F2 U2 F2 (20)\n\nTo use **Cube Solver** in a Python project:\n\n.. code-block:: python\n\n from cube_solver import Cube, Maneuver, Kociemba\n\n scramble = Maneuver.random()\n print(f\"Scramble: {scramble}\")\n\n cube = Cube(scramble)\n print(cube)\n print(f\"Cube: {repr(cube)}\")\n\n solver = Kociemba()\n solution = solver.solve(cube)\n assert solution is not None\n assert solution == scramble.inverse\n print(f\"Solution: {solution} ({len(solution)})\")\n\n\n=======\nCredits\n=======\n\nThis package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage\n",
"bugtrack_url": null,
"license": null,
"summary": "Rubik's Cube Solver",
"version": "1.1.3",
"project_urls": {
"changelog": "https://github.com/itsdaveba/cube-solver/blob/main/HISTORY.rst",
"documentation": "https://cube-solver.readthedocs.io",
"issues": "https://github.com/itsdaveba/cube-solver/issues",
"source": "https://github.com/itsdaveba/cube-solver"
},
"split_keywords": [
"rubik",
" cube",
" solver"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "a55dee69b70f477113998fd8eae2759ca5c540c2f31a9bc0e8c64ef460b3284a",
"md5": "44fae75f09dfbb7821577183c75533fa",
"sha256": "49d5f5aa4bd45dc9d185b98815ead1b9ee8397d5fd49e5d81431558576d68ff6"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp310-cp310-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "44fae75f09dfbb7821577183c75533fa",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 61423,
"upload_time": "2025-07-09T11:49:15",
"upload_time_iso_8601": "2025-07-09T11:49:15.152802Z",
"url": "https://files.pythonhosted.org/packages/a5/5d/ee69b70f477113998fd8eae2759ca5c540c2f31a9bc0e8c64ef460b3284a/cube_solver-1.1.3-cp310-cp310-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e8da6d83975097f6f98e5ec95dce975bb9eaa63ac67c44777bfbcdf0436b7ee2",
"md5": "725b07fdddcc61d6fb25951e61b7822a",
"sha256": "6d1e16a3a74ad4cb206c85ee5367c190abb4f8eaccdcee0e2178a117419d9736"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "725b07fdddcc61d6fb25951e61b7822a",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 61141,
"upload_time": "2025-07-09T11:49:16",
"upload_time_iso_8601": "2025-07-09T11:49:16.603966Z",
"url": "https://files.pythonhosted.org/packages/e8/da/6d83975097f6f98e5ec95dce975bb9eaa63ac67c44777bfbcdf0436b7ee2/cube_solver-1.1.3-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "cab06988b33bb20eb0a0bd2dc9afa959826e4d52e1ac0edb9800fc7a7715d15b",
"md5": "b3b12ec0ce334cf2c546b8b27d2e458d",
"sha256": "a6a431a55322f0aa36d188dfe05db609173c43dfa2e8d8a5bf5414a6455c8ab1"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"has_sig": false,
"md5_digest": "b3b12ec0ce334cf2c546b8b27d2e458d",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 85645,
"upload_time": "2025-07-09T11:49:18",
"upload_time_iso_8601": "2025-07-09T11:49:18.096512Z",
"url": "https://files.pythonhosted.org/packages/ca/b0/6988b33bb20eb0a0bd2dc9afa959826e4d52e1ac0edb9800fc7a7715d15b/cube_solver-1.1.3-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f575243b6b9d427a4d404ee344383a7c7423ce1a5bc7acb34cd8519ff4c2386f",
"md5": "f8dde39d64410614f4cd7e1eac7e31b5",
"sha256": "a453dd23c7641fccc835b922206798f3b2b47881734e1709698f4239f4ecac61"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "f8dde39d64410614f4cd7e1eac7e31b5",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 86184,
"upload_time": "2025-07-09T11:49:19",
"upload_time_iso_8601": "2025-07-09T11:49:19.877790Z",
"url": "https://files.pythonhosted.org/packages/f5/75/243b6b9d427a4d404ee344383a7c7423ce1a5bc7acb34cd8519ff4c2386f/cube_solver-1.1.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "a36b2826b7761d123b238fc8fe48555dc25d722b18bd304260106c6ca37ca736",
"md5": "f7d904de56c34aee5802627d3148eb38",
"sha256": "625bffc3c394985cb45c3bbc95aae685e00308973e1fa759068a681aa54539c7"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp310-cp310-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "f7d904de56c34aee5802627d3148eb38",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 84865,
"upload_time": "2025-07-09T11:49:21",
"upload_time_iso_8601": "2025-07-09T11:49:21.213796Z",
"url": "https://files.pythonhosted.org/packages/a3/6b/2826b7761d123b238fc8fe48555dc25d722b18bd304260106c6ca37ca736/cube_solver-1.1.3-cp310-cp310-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "71809b3ed49707688e0a64620e6b6d161823ba0c10dc54c95f71a11b5f5bbfe3",
"md5": "aa37e2dcb3a820e55d749232e5a4b2aa",
"sha256": "daadfe081d0ddec34f1b69a88507b943b622b86218584c3ee5682c24490d9050"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp310-cp310-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "aa37e2dcb3a820e55d749232e5a4b2aa",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 85146,
"upload_time": "2025-07-09T11:49:22",
"upload_time_iso_8601": "2025-07-09T11:49:22.643616Z",
"url": "https://files.pythonhosted.org/packages/71/80/9b3ed49707688e0a64620e6b6d161823ba0c10dc54c95f71a11b5f5bbfe3/cube_solver-1.1.3-cp310-cp310-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "2985e738d0b388eb13f4bbf40d573d0fa129d97df3ad285a06d9b44d06680a4b",
"md5": "090f1cfc6a5c673ce33054997a3437bd",
"sha256": "e5870a501676d136e047f873f6e1005f9661742fa40d8dfd4f0d0e232ad7e452"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp310-cp310-win32.whl",
"has_sig": false,
"md5_digest": "090f1cfc6a5c673ce33054997a3437bd",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 60085,
"upload_time": "2025-07-09T11:49:23",
"upload_time_iso_8601": "2025-07-09T11:49:23.995936Z",
"url": "https://files.pythonhosted.org/packages/29/85/e738d0b388eb13f4bbf40d573d0fa129d97df3ad285a06d9b44d06680a4b/cube_solver-1.1.3-cp310-cp310-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "630af7aa89e38cd8a1a38178de0294ca264b2a624cb8c88ab79b1aafcf1923ff",
"md5": "0f79b6b2d3f3814687ea848b14ab5270",
"sha256": "ac4f0074b00f3105f094af2bbdf3f6ec39f05e5b02efce1eb7c414ec298e5663"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "0f79b6b2d3f3814687ea848b14ab5270",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 61293,
"upload_time": "2025-07-09T11:49:25",
"upload_time_iso_8601": "2025-07-09T11:49:25.014245Z",
"url": "https://files.pythonhosted.org/packages/63/0a/f7aa89e38cd8a1a38178de0294ca264b2a624cb8c88ab79b1aafcf1923ff/cube_solver-1.1.3-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "7f892d65faa95cadeccfb58a356d5a54231dda5f2641b4f18b5cbb2bbb6e988f",
"md5": "e312056c2cfdf9bcdfb832d2e4135edd",
"sha256": "826e7b1d204a11051e129bf341041654fd16ab414d456f20db52cbfb391caf37"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp311-cp311-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "e312056c2cfdf9bcdfb832d2e4135edd",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 61422,
"upload_time": "2025-07-09T11:49:25",
"upload_time_iso_8601": "2025-07-09T11:49:25.973616Z",
"url": "https://files.pythonhosted.org/packages/7f/89/2d65faa95cadeccfb58a356d5a54231dda5f2641b4f18b5cbb2bbb6e988f/cube_solver-1.1.3-cp311-cp311-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "6ad49d83b543157899896bbb4fa5b10b18cbf8cea5f3fc220fdd5fa6a9bc4588",
"md5": "578fc566d22c07eed355481a8d341842",
"sha256": "b77bd408e168da5b91a1d18940d6709da3d39d7ff9f7bb118d12a37045f47b94"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "578fc566d22c07eed355481a8d341842",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 61142,
"upload_time": "2025-07-09T11:49:27",
"upload_time_iso_8601": "2025-07-09T11:49:27.119184Z",
"url": "https://files.pythonhosted.org/packages/6a/d4/9d83b543157899896bbb4fa5b10b18cbf8cea5f3fc220fdd5fa6a9bc4588/cube_solver-1.1.3-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "37825a82fd7b1b4711f0160ffcd80b521592f319f83d38982e7ccd8ba830f93c",
"md5": "deff4b32a3bc900a12287a5d8f3dd346",
"sha256": "94b24b2d4325c067bad726610de2307518cb8211d3513349a0de158d185f6697"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"has_sig": false,
"md5_digest": "deff4b32a3bc900a12287a5d8f3dd346",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 85813,
"upload_time": "2025-07-09T11:49:28",
"upload_time_iso_8601": "2025-07-09T11:49:28.689409Z",
"url": "https://files.pythonhosted.org/packages/37/82/5a82fd7b1b4711f0160ffcd80b521592f319f83d38982e7ccd8ba830f93c/cube_solver-1.1.3-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ec178e42c4b0ed2a9c26c9d4907b1a8b0ee2d677fb4159e2114d14ec6c731e96",
"md5": "7355ff4d9c4bb90a527fd165f9cd7d8e",
"sha256": "9110f5acba9fffe775a523965396d96eeca4ccaec5786e608a455b73a5e93f8a"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "7355ff4d9c4bb90a527fd165f9cd7d8e",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 86327,
"upload_time": "2025-07-09T11:49:30",
"upload_time_iso_8601": "2025-07-09T11:49:30.115050Z",
"url": "https://files.pythonhosted.org/packages/ec/17/8e42c4b0ed2a9c26c9d4907b1a8b0ee2d677fb4159e2114d14ec6c731e96/cube_solver-1.1.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e8791e18426cbecac65280c8f0901b39cd7f47b89b0736ccb33ea6246ef13886",
"md5": "0413554c45f130b66c6a61bd7bf1efff",
"sha256": "9ea6fdbebf0166228ee494e2e29e7c8b73bcadcfde841850ca1f7ba537312bac"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp311-cp311-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "0413554c45f130b66c6a61bd7bf1efff",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 85043,
"upload_time": "2025-07-09T11:49:31",
"upload_time_iso_8601": "2025-07-09T11:49:31.128382Z",
"url": "https://files.pythonhosted.org/packages/e8/79/1e18426cbecac65280c8f0901b39cd7f47b89b0736ccb33ea6246ef13886/cube_solver-1.1.3-cp311-cp311-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d83f9af65c20b30eba1adc116dedc66396763270f606178db2067c9ed1135b73",
"md5": "7e64c875cc94ec9ccccf3964b32e0a30",
"sha256": "d3c3d0bd9a8b4b1cffdd76a67b394b3e6292a53edce5935e93b34abf70c451fd"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp311-cp311-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "7e64c875cc94ec9ccccf3964b32e0a30",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 85274,
"upload_time": "2025-07-09T11:49:32",
"upload_time_iso_8601": "2025-07-09T11:49:32.513349Z",
"url": "https://files.pythonhosted.org/packages/d8/3f/9af65c20b30eba1adc116dedc66396763270f606178db2067c9ed1135b73/cube_solver-1.1.3-cp311-cp311-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e74c3476a92ef30df57e138b3d68cb9e2a49d5692fabd78ede5516fd5b9c4cb2",
"md5": "3cb84eb443b2316864e84ec5307251d6",
"sha256": "0750780023fd6531866cc9f04f48f0756a2d7762026bf55b38a38da73d211a4e"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp311-cp311-win32.whl",
"has_sig": false,
"md5_digest": "3cb84eb443b2316864e84ec5307251d6",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 60085,
"upload_time": "2025-07-09T11:49:33",
"upload_time_iso_8601": "2025-07-09T11:49:33.588993Z",
"url": "https://files.pythonhosted.org/packages/e7/4c/3476a92ef30df57e138b3d68cb9e2a49d5692fabd78ede5516fd5b9c4cb2/cube_solver-1.1.3-cp311-cp311-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "adff4e67de7c220c875b0b25e110c385508350dbbb7e1b3ee6ac069935b5965b",
"md5": "1db6fb4b55605d2b029cc143da32223b",
"sha256": "18d876f300451838cac3a5df21f894d3aca95016aa5a42c481cbd045a2ea19cb"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "1db6fb4b55605d2b029cc143da32223b",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 61290,
"upload_time": "2025-07-09T11:49:35",
"upload_time_iso_8601": "2025-07-09T11:49:35.016707Z",
"url": "https://files.pythonhosted.org/packages/ad/ff/4e67de7c220c875b0b25e110c385508350dbbb7e1b3ee6ac069935b5965b/cube_solver-1.1.3-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ea725962b6dca2dbced9d7bfc5ba4161c4a64708623ddd3efa22c382752e79d9",
"md5": "8db891f2c13792939febda8380c5d802",
"sha256": "0b3b9cdab2550e046e5a6957975bb795b12ed8a0f7fbb37489b1a2df1e1060e1"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp312-cp312-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "8db891f2c13792939febda8380c5d802",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 61466,
"upload_time": "2025-07-09T11:49:36",
"upload_time_iso_8601": "2025-07-09T11:49:36.501469Z",
"url": "https://files.pythonhosted.org/packages/ea/72/5962b6dca2dbced9d7bfc5ba4161c4a64708623ddd3efa22c382752e79d9/cube_solver-1.1.3-cp312-cp312-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "936fbb18dd06f6b7192c4d1814fae4519e2b168dc6fff57b3ba318cfeb4d919c",
"md5": "c333a22babbed55042f2b4b5fbf474a1",
"sha256": "041e44c2e9731ad63df04ff8784ae4552e8d6d723d9c056eda18d59317572cac"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "c333a22babbed55042f2b4b5fbf474a1",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 61154,
"upload_time": "2025-07-09T11:49:37",
"upload_time_iso_8601": "2025-07-09T11:49:37.989700Z",
"url": "https://files.pythonhosted.org/packages/93/6f/bb18dd06f6b7192c4d1814fae4519e2b168dc6fff57b3ba318cfeb4d919c/cube_solver-1.1.3-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "39ae46cef7a5a7a0a6c99fcef7836aead52ec56a7594e84dd3bd5c5672a0f0ef",
"md5": "514326c7d83b05106f6a953be400a300",
"sha256": "fc24056d661d693da91bf8d742a1a12c7177b9fb4d45be4cc69df4c97b6e528b"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"has_sig": false,
"md5_digest": "514326c7d83b05106f6a953be400a300",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 86257,
"upload_time": "2025-07-09T11:49:39",
"upload_time_iso_8601": "2025-07-09T11:49:39.363709Z",
"url": "https://files.pythonhosted.org/packages/39/ae/46cef7a5a7a0a6c99fcef7836aead52ec56a7594e84dd3bd5c5672a0f0ef/cube_solver-1.1.3-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "da4f187d92937c6f40cf24bd31955081387de5b7dba0141269be2f61743a192a",
"md5": "52757a85c74844ef4d83f448c853398d",
"sha256": "1a095d55755f1e00e4b5191a27f245374b216f7a10ce91045c63a2c48c7ceaa7"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "52757a85c74844ef4d83f448c853398d",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 86779,
"upload_time": "2025-07-09T11:49:40",
"upload_time_iso_8601": "2025-07-09T11:49:40.431653Z",
"url": "https://files.pythonhosted.org/packages/da/4f/187d92937c6f40cf24bd31955081387de5b7dba0141269be2f61743a192a/cube_solver-1.1.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f2e754a3dfbacac066c77eff44a184ae86bad33654e256ce6efff1e7b0450ab2",
"md5": "554b25dc9e183fa1eb827d36d37eb544",
"sha256": "f93c762e445b3426e3708667cdef321e1e610d1bce89fb6a09d86386eb5fdab0"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp312-cp312-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "554b25dc9e183fa1eb827d36d37eb544",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 85389,
"upload_time": "2025-07-09T11:49:41",
"upload_time_iso_8601": "2025-07-09T11:49:41.469761Z",
"url": "https://files.pythonhosted.org/packages/f2/e7/54a3dfbacac066c77eff44a184ae86bad33654e256ce6efff1e7b0450ab2/cube_solver-1.1.3-cp312-cp312-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ed8883e2914668c6475f77a1a57f7da845a983bd1d63155aa0470c29d9a19d77",
"md5": "4fff8749b9cdb46ee5ea12a0990a6b28",
"sha256": "b7b1a6154262e7c1ae04967d672be954d783f41c8682aa23854ce5b7beb56b78"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp312-cp312-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "4fff8749b9cdb46ee5ea12a0990a6b28",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 85710,
"upload_time": "2025-07-09T11:49:42",
"upload_time_iso_8601": "2025-07-09T11:49:42.937919Z",
"url": "https://files.pythonhosted.org/packages/ed/88/83e2914668c6475f77a1a57f7da845a983bd1d63155aa0470c29d9a19d77/cube_solver-1.1.3-cp312-cp312-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "00948b2d7ba1e195e8b1cc736282ac37187b84824f1cc740deb75e4a4b1d1132",
"md5": "d5bcff1de87b88ec6e0cb044067e5bdf",
"sha256": "11c2263c86e6fdcfea9135903d70ef784f9e42c60fbe2879a06bad17ad88035c"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp312-cp312-win32.whl",
"has_sig": false,
"md5_digest": "d5bcff1de87b88ec6e0cb044067e5bdf",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 60145,
"upload_time": "2025-07-09T11:49:44",
"upload_time_iso_8601": "2025-07-09T11:49:44.026899Z",
"url": "https://files.pythonhosted.org/packages/00/94/8b2d7ba1e195e8b1cc736282ac37187b84824f1cc740deb75e4a4b1d1132/cube_solver-1.1.3-cp312-cp312-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e5129920e65d8212ad0e7c4e33716d14036f19b9dbcc1f9f977735df70d8076c",
"md5": "41ad2e9fd7e0ed01a4715801dc1617fc",
"sha256": "b1c73f3186800f78e947bdb3b07e85f490ab0cfab26529ab8324c421899348e9"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "41ad2e9fd7e0ed01a4715801dc1617fc",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 61350,
"upload_time": "2025-07-09T11:49:45",
"upload_time_iso_8601": "2025-07-09T11:49:45.393908Z",
"url": "https://files.pythonhosted.org/packages/e5/12/9920e65d8212ad0e7c4e33716d14036f19b9dbcc1f9f977735df70d8076c/cube_solver-1.1.3-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "6d5af2be5481e5492f697a2616f8304cd73407f0fecd637ba5f21805da00f609",
"md5": "8f6d31bc124d0e9640a0fed413872a8c",
"sha256": "59edef6147d8f5ec58a68fcf85f36d03766271f4769cd3d34206e5e0a465c6e7"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp313-cp313-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "8f6d31bc124d0e9640a0fed413872a8c",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 61452,
"upload_time": "2025-07-09T11:49:46",
"upload_time_iso_8601": "2025-07-09T11:49:46.408975Z",
"url": "https://files.pythonhosted.org/packages/6d/5a/f2be5481e5492f697a2616f8304cd73407f0fecd637ba5f21805da00f609/cube_solver-1.1.3-cp313-cp313-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "19fca34d92b87ac8b608cb9c8a318211b995127b6649a18c07b4434372e63b9c",
"md5": "9cc3bb2e87a1341f7e2e9fddc9d45f85",
"sha256": "73544d53bff8ac2201343b7405b299e0dd2c6806c514167cbea8a7d001b460ca"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp313-cp313-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "9cc3bb2e87a1341f7e2e9fddc9d45f85",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 61161,
"upload_time": "2025-07-09T11:49:47",
"upload_time_iso_8601": "2025-07-09T11:49:47.596453Z",
"url": "https://files.pythonhosted.org/packages/19/fc/a34d92b87ac8b608cb9c8a318211b995127b6649a18c07b4434372e63b9c/cube_solver-1.1.3-cp313-cp313-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "5b1b138ee77a66c59c0585dc020e1b5c47cd984fa0e02d90d84a41077bb26981",
"md5": "45b13a6d5ad13a398d4558026b235e23",
"sha256": "323de0782a57214842f1699ff85fd8e6436b6ae05fc75a9677febb7e8e5b9861"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"has_sig": false,
"md5_digest": "45b13a6d5ad13a398d4558026b235e23",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 86282,
"upload_time": "2025-07-09T11:49:48",
"upload_time_iso_8601": "2025-07-09T11:49:48.753082Z",
"url": "https://files.pythonhosted.org/packages/5b/1b/138ee77a66c59c0585dc020e1b5c47cd984fa0e02d90d84a41077bb26981/cube_solver-1.1.3-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "271988b15cb7dce67e4f1d4c26251a5b72718f688f942e73d5e9e816163e82bf",
"md5": "4812e71d7488c49f35df843061af8752",
"sha256": "bc3998d1a4c06cf1b22845cf0ffc126f6478850df0502f4a0cbb038dcbac34f1"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "4812e71d7488c49f35df843061af8752",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 86802,
"upload_time": "2025-07-09T11:49:49",
"upload_time_iso_8601": "2025-07-09T11:49:49.823043Z",
"url": "https://files.pythonhosted.org/packages/27/19/88b15cb7dce67e4f1d4c26251a5b72718f688f942e73d5e9e816163e82bf/cube_solver-1.1.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "70d83de1171d4a0336a8d6921d1cc710306b2ca702735c5e615ce1f1af206eff",
"md5": "11b3f6f842f9408a246ea477ad354f5d",
"sha256": "45eb14c12b2de7d5016c98a913b0520d9d4053e1bb918f39a8082e4a62619bdf"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp313-cp313-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "11b3f6f842f9408a246ea477ad354f5d",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 85447,
"upload_time": "2025-07-09T11:49:50",
"upload_time_iso_8601": "2025-07-09T11:49:50.828896Z",
"url": "https://files.pythonhosted.org/packages/70/d8/3de1171d4a0336a8d6921d1cc710306b2ca702735c5e615ce1f1af206eff/cube_solver-1.1.3-cp313-cp313-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "7708f843f814d21fadeccf4fa64dc5cde746bfb6486859b777fd06d046da2b1d",
"md5": "1ef029287406cbcd8c89e3901fdde1f7",
"sha256": "beae802a466e88de8f93296920ecd0acda202b3e17cae4b9d8af5a86da1cb637"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp313-cp313-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "1ef029287406cbcd8c89e3901fdde1f7",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 85751,
"upload_time": "2025-07-09T11:49:52",
"upload_time_iso_8601": "2025-07-09T11:49:52.491193Z",
"url": "https://files.pythonhosted.org/packages/77/08/f843f814d21fadeccf4fa64dc5cde746bfb6486859b777fd06d046da2b1d/cube_solver-1.1.3-cp313-cp313-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "cdc4751f62aaabfa1727a97bfdb163be07324f9c7f8c615cfcb870c204c9420d",
"md5": "28e24b2964047eb3a6dd0584be3f2f03",
"sha256": "099be6aafd3db5514b283245ace775a57cd4b79ff2137119db16538a110c6b19"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp313-cp313-win32.whl",
"has_sig": false,
"md5_digest": "28e24b2964047eb3a6dd0584be3f2f03",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 60142,
"upload_time": "2025-07-09T11:49:53",
"upload_time_iso_8601": "2025-07-09T11:49:53.505153Z",
"url": "https://files.pythonhosted.org/packages/cd/c4/751f62aaabfa1727a97bfdb163be07324f9c7f8c615cfcb870c204c9420d/cube_solver-1.1.3-cp313-cp313-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0d30cb191e87ca6acc7e5ca8d9518658da88839dcf11e4ab3a33957dc0bb5a67",
"md5": "5681cf24592e9fc85a9f3dec7e25e51b",
"sha256": "bd9bd47bcb2d46479cf3066e9c2c490d2fc13325a29c38c6c5c635b3a62457ea"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp313-cp313-win_amd64.whl",
"has_sig": false,
"md5_digest": "5681cf24592e9fc85a9f3dec7e25e51b",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 61345,
"upload_time": "2025-07-09T11:49:54",
"upload_time_iso_8601": "2025-07-09T11:49:54.531979Z",
"url": "https://files.pythonhosted.org/packages/0d/30/cb191e87ca6acc7e5ca8d9518658da88839dcf11e4ab3a33957dc0bb5a67/cube_solver-1.1.3-cp313-cp313-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ddc03d28ffa137c60cc0efdf42e64f7a063331fbef6d4d24081e095f3cf0e3c6",
"md5": "8ffaf35fa9806187b5e54fa76dfe4463",
"sha256": "95be85b6f9bc50afc82f11cdefb98eafa62a7e5c7f317daa6cbbe27862dffaf6"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp39-cp39-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "8ffaf35fa9806187b5e54fa76dfe4463",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 61416,
"upload_time": "2025-07-09T11:49:55",
"upload_time_iso_8601": "2025-07-09T11:49:55.820623Z",
"url": "https://files.pythonhosted.org/packages/dd/c0/3d28ffa137c60cc0efdf42e64f7a063331fbef6d4d24081e095f3cf0e3c6/cube_solver-1.1.3-cp39-cp39-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0d32de3ec5394d556f382fa7d134c3d2faaf5778aafbee54811352aaa968ade1",
"md5": "eb19af094b0233937c37489c3fd1f0a7",
"sha256": "8ebadb731d9dfbd48fbfae71d41cf20588454da2d2c5e3261048dfec997b92d4"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp39-cp39-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "eb19af094b0233937c37489c3fd1f0a7",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 61138,
"upload_time": "2025-07-09T11:49:56",
"upload_time_iso_8601": "2025-07-09T11:49:56.810709Z",
"url": "https://files.pythonhosted.org/packages/0d/32/de3ec5394d556f382fa7d134c3d2faaf5778aafbee54811352aaa968ade1/cube_solver-1.1.3-cp39-cp39-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "eb8f218ee252841e14283ada74cc25f2e9b23ab9b76983ee708c7c72763b145a",
"md5": "3e87cb8fabe01685180ffc4b311ed8a6",
"sha256": "14b624b812db250f1403a2677266e1eccd618133b0dee8c0894fe4de3cfe8aa8"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"has_sig": false,
"md5_digest": "3e87cb8fabe01685180ffc4b311ed8a6",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 85510,
"upload_time": "2025-07-09T11:49:57",
"upload_time_iso_8601": "2025-07-09T11:49:57.933866Z",
"url": "https://files.pythonhosted.org/packages/eb/8f/218ee252841e14283ada74cc25f2e9b23ab9b76983ee708c7c72763b145a/cube_solver-1.1.3-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "a8dec559357544eaad30b7ab1240355d94673b15b3dc790b99d99e46a9671104",
"md5": "79ea30d19a8d71c8505baa0e857d9c6f",
"sha256": "70b76c85221a734297347ad5a78717b6ea8563cdef3eea0081a12a925e92ac9f"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "79ea30d19a8d71c8505baa0e857d9c6f",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 86010,
"upload_time": "2025-07-09T11:49:59",
"upload_time_iso_8601": "2025-07-09T11:49:59.202722Z",
"url": "https://files.pythonhosted.org/packages/a8/de/c559357544eaad30b7ab1240355d94673b15b3dc790b99d99e46a9671104/cube_solver-1.1.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "fd809f1c926e65e0bba95443c705bba22206061daf87d8de4bcce3319cebc843",
"md5": "afb7893edb2da4d2cd9b5d692bc21d77",
"sha256": "9e7ba2493f6c7a8a7a2c4ee10519ab1327ecc130a265f800eb1fd618002e9d78"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp39-cp39-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "afb7893edb2da4d2cd9b5d692bc21d77",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 84724,
"upload_time": "2025-07-09T11:50:00",
"upload_time_iso_8601": "2025-07-09T11:50:00.366731Z",
"url": "https://files.pythonhosted.org/packages/fd/80/9f1c926e65e0bba95443c705bba22206061daf87d8de4bcce3319cebc843/cube_solver-1.1.3-cp39-cp39-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "6285d4a07b7805723ee114036ca6c04c487b0a5816968b5337fc61c2fd84d219",
"md5": "f18f3a10834d7533f5d9402d768a1497",
"sha256": "04925030475fec868116cb499c81dffd33c7a17e5b000688f0442791da8582ed"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp39-cp39-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "f18f3a10834d7533f5d9402d768a1497",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 85017,
"upload_time": "2025-07-09T11:50:01",
"upload_time_iso_8601": "2025-07-09T11:50:01.385942Z",
"url": "https://files.pythonhosted.org/packages/62/85/d4a07b7805723ee114036ca6c04c487b0a5816968b5337fc61c2fd84d219/cube_solver-1.1.3-cp39-cp39-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e8fc5a94f199f808141510d818497df5c21b565f8ca07d1bb89419fd51cc4654",
"md5": "100e2d87d6d20a00660eac1c96b0b357",
"sha256": "4d87565795d1f283d6d31f7838d29aa496bee01fcfe55287d72edb87bf695e7d"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp39-cp39-win32.whl",
"has_sig": false,
"md5_digest": "100e2d87d6d20a00660eac1c96b0b357",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 60083,
"upload_time": "2025-07-09T11:50:02",
"upload_time_iso_8601": "2025-07-09T11:50:02.553482Z",
"url": "https://files.pythonhosted.org/packages/e8/fc/5a94f199f808141510d818497df5c21b565f8ca07d1bb89419fd51cc4654/cube_solver-1.1.3-cp39-cp39-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b34513760a9df25261ab1056289a70406b01ac398d18d04539fd50d622d201fa",
"md5": "58e19d2cb7e49f9986c1a1adf40108eb",
"sha256": "f10444417bf445e955d5a30163b31a397659fea077f7e56861cefa7a18a7c170"
},
"downloads": -1,
"filename": "cube_solver-1.1.3-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "58e19d2cb7e49f9986c1a1adf40108eb",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 61284,
"upload_time": "2025-07-09T11:50:03",
"upload_time_iso_8601": "2025-07-09T11:50:03.530853Z",
"url": "https://files.pythonhosted.org/packages/b3/45/13760a9df25261ab1056289a70406b01ac398d18d04539fd50d622d201fa/cube_solver-1.1.3-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "5927567673e1a7031190d45f327b42dcf6d9823883a2669448e9b025f94b885e",
"md5": "9b9e945aeecd74dfaf758d82cb977944",
"sha256": "020521c641f1975fcfeaf8b92cfe5f35286988490a7ff9a5c5c656740bfd177b"
},
"downloads": -1,
"filename": "cube_solver-1.1.3.tar.gz",
"has_sig": false,
"md5_digest": "9b9e945aeecd74dfaf758d82cb977944",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 62652,
"upload_time": "2025-07-09T11:50:04",
"upload_time_iso_8601": "2025-07-09T11:50:04.801355Z",
"url": "https://files.pythonhosted.org/packages/59/27/567673e1a7031190d45f327b42dcf6d9823883a2669448e9b025f94b885e/cube_solver-1.1.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-09 11:50:04",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "itsdaveba",
"github_project": "cube-solver",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "cube-solver"
}