Name | cube-solver JSON |
Version |
1.1.4
JSON |
| download |
home_page | None |
Summary | Rubik's Cube Solver |
upload_time | 2025-07-13 12:38:33 |
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/b1/93/9ba548676896a67825ae5f379ff80371315acca6dada423ba9e15fa7f76f/cube_solver-1.1.4.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.4",
"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": "79b352707efc319552cdeb41ca250f58f2e3a8e68b1e91559f1e3969824b0335",
"md5": "453cfb11bce68ce48bd133ccfebca10a",
"sha256": "186ba3500abef8e37e9fd7afa73028a5e8e38b23351e16a13db04ac27c6a5772"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp310-cp310-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "453cfb11bce68ce48bd133ccfebca10a",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 61410,
"upload_time": "2025-07-13T12:37:42",
"upload_time_iso_8601": "2025-07-13T12:37:42.077689Z",
"url": "https://files.pythonhosted.org/packages/79/b3/52707efc319552cdeb41ca250f58f2e3a8e68b1e91559f1e3969824b0335/cube_solver-1.1.4-cp310-cp310-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3c3a69b6412da32efd94adacbf70627e76b7771c6b6dac68654b0f781af9ad26",
"md5": "5a025d000f760d96618f24557ba1d46a",
"sha256": "d298097f7c5c925ee093e22eed9c86ec4099424fe188fce0ee6100151503d39f"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "5a025d000f760d96618f24557ba1d46a",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 61134,
"upload_time": "2025-07-13T12:37:43",
"upload_time_iso_8601": "2025-07-13T12:37:43.680389Z",
"url": "https://files.pythonhosted.org/packages/3c/3a/69b6412da32efd94adacbf70627e76b7771c6b6dac68654b0f781af9ad26/cube_solver-1.1.4-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c7f1cda7790b6fd371898bc0602175dbc3d93a9607514229b915f6dca872153d",
"md5": "9433596d28d59e4d49a27dbd581d478f",
"sha256": "15c2236acd9be6971b85caa8b434f92c5cb73500feebb725f7420150270e5b83"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"has_sig": false,
"md5_digest": "9433596d28d59e4d49a27dbd581d478f",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 85631,
"upload_time": "2025-07-13T12:37:45",
"upload_time_iso_8601": "2025-07-13T12:37:45.117493Z",
"url": "https://files.pythonhosted.org/packages/c7/f1/cda7790b6fd371898bc0602175dbc3d93a9607514229b915f6dca872153d/cube_solver-1.1.4-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": "2af5ae39681e034f8d7c1e89843291ff64cd4dbd89328d74873a57f8e5db3e98",
"md5": "d55b47b8aea804afccaef92d49475883",
"sha256": "f426bec0ba4f10618dd487ebf3d77d9ccb0ab8f3849a242137600ec2a4e62f97"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "d55b47b8aea804afccaef92d49475883",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 86177,
"upload_time": "2025-07-13T12:37:47",
"upload_time_iso_8601": "2025-07-13T12:37:47.085207Z",
"url": "https://files.pythonhosted.org/packages/2a/f5/ae39681e034f8d7c1e89843291ff64cd4dbd89328d74873a57f8e5db3e98/cube_solver-1.1.4-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "88696906871f9bb04b0169e1da9421ded03879d79347bb31080158c052de6393",
"md5": "f9ff955de0d03fcd5b379d81a8d41dca",
"sha256": "6f463c0134ec8575348adc408d86f037b66409e54a385aeac50f50a9b53554b0"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp310-cp310-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "f9ff955de0d03fcd5b379d81a8d41dca",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 84852,
"upload_time": "2025-07-13T12:37:48",
"upload_time_iso_8601": "2025-07-13T12:37:48.411698Z",
"url": "https://files.pythonhosted.org/packages/88/69/6906871f9bb04b0169e1da9421ded03879d79347bb31080158c052de6393/cube_solver-1.1.4-cp310-cp310-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3326ed9067f899064f923b3f15d14fb344f09d17c2ef577bcdb0dd9c5420e099",
"md5": "94716f0f078d493051abad0aa82a7b53",
"sha256": "45aad0a7dabdcdff251af69902f45ac90dff01b5efa4bc01cdb0e96afb5b5ff9"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp310-cp310-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "94716f0f078d493051abad0aa82a7b53",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 85135,
"upload_time": "2025-07-13T12:37:49",
"upload_time_iso_8601": "2025-07-13T12:37:49.850197Z",
"url": "https://files.pythonhosted.org/packages/33/26/ed9067f899064f923b3f15d14fb344f09d17c2ef577bcdb0dd9c5420e099/cube_solver-1.1.4-cp310-cp310-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0e4870d60812358c0cfc2ffd69affe25b7262daa91a765ae388a9c5d06f33aab",
"md5": "3b0d45702d906d0441fb28cdeaf8fbf1",
"sha256": "755a3a533bb742d0686bfdefd3941054d3948b5502edcabbe9f000b984780f15"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp310-cp310-win32.whl",
"has_sig": false,
"md5_digest": "3b0d45702d906d0441fb28cdeaf8fbf1",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 60082,
"upload_time": "2025-07-13T12:37:51",
"upload_time_iso_8601": "2025-07-13T12:37:51.227166Z",
"url": "https://files.pythonhosted.org/packages/0e/48/70d60812358c0cfc2ffd69affe25b7262daa91a765ae388a9c5d06f33aab/cube_solver-1.1.4-cp310-cp310-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "9828896cd153223b7f8c56b5d5fef53c6b5c527ef9a2aaec0f1733e55bc88360",
"md5": "c12b37ae978b58520b6a23fb964a41ad",
"sha256": "0c92266c69dfae8027a4d94b9bf93b5e5ad20cb089c0e783294a6b4772460bea"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "c12b37ae978b58520b6a23fb964a41ad",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 61289,
"upload_time": "2025-07-13T12:37:52",
"upload_time_iso_8601": "2025-07-13T12:37:52.616735Z",
"url": "https://files.pythonhosted.org/packages/98/28/896cd153223b7f8c56b5d5fef53c6b5c527ef9a2aaec0f1733e55bc88360/cube_solver-1.1.4-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "1d7c0323a69c601cadf3f3f8873c8bab56eeac57e1e3b676e0beae10e49f0f81",
"md5": "788d0512221a17bebc8a132f7701bcb5",
"sha256": "cfd350439a9c15bf99eb6ed8c9e8969285640d3ba5fb777ffe9d60866dcaf386"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp311-cp311-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "788d0512221a17bebc8a132f7701bcb5",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 61413,
"upload_time": "2025-07-13T12:37:53",
"upload_time_iso_8601": "2025-07-13T12:37:53.655329Z",
"url": "https://files.pythonhosted.org/packages/1d/7c/0323a69c601cadf3f3f8873c8bab56eeac57e1e3b676e0beae10e49f0f81/cube_solver-1.1.4-cp311-cp311-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "9044ea54b6c906d93d068f9d76e7dfe50b3d4bb6e5edd09d8f08f1d4d9fbceaf",
"md5": "b7db12fd2bbe0aa7d9e12477ceadcf82",
"sha256": "eb3c8039b529a80da57cb58384e4135a9adc0f90b80d0305e14384aa9d2f497d"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "b7db12fd2bbe0aa7d9e12477ceadcf82",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 61133,
"upload_time": "2025-07-13T12:37:55",
"upload_time_iso_8601": "2025-07-13T12:37:55.070547Z",
"url": "https://files.pythonhosted.org/packages/90/44/ea54b6c906d93d068f9d76e7dfe50b3d4bb6e5edd09d8f08f1d4d9fbceaf/cube_solver-1.1.4-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "439a5c88fe29018674d5c6a89fdab57caed84b5111f0963552bdd81163cdfba8",
"md5": "1ab812c379bb6fae3713287a2fa242d1",
"sha256": "dc7ed74cb7db9ce8555c786a7bdbf31bded4bf4d8832d6f0634ca579b848e018"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"has_sig": false,
"md5_digest": "1ab812c379bb6fae3713287a2fa242d1",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 85798,
"upload_time": "2025-07-13T12:37:56",
"upload_time_iso_8601": "2025-07-13T12:37:56.491446Z",
"url": "https://files.pythonhosted.org/packages/43/9a/5c88fe29018674d5c6a89fdab57caed84b5111f0963552bdd81163cdfba8/cube_solver-1.1.4-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": "8722416d00fb02021d16703517d996b7990314f456ccd23c16124c0df861b8ca",
"md5": "c6ade4b37bb8863a1845ffe1e316dd45",
"sha256": "f10d117578d90bb03b8767021bcc2a690f3fbb9ec6f4169537dd6ba41464b05d"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "c6ade4b37bb8863a1845ffe1e316dd45",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 86316,
"upload_time": "2025-07-13T12:37:57",
"upload_time_iso_8601": "2025-07-13T12:37:57.927437Z",
"url": "https://files.pythonhosted.org/packages/87/22/416d00fb02021d16703517d996b7990314f456ccd23c16124c0df861b8ca/cube_solver-1.1.4-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "9aec5dc2c4b225eee41cc7b484222d893a7d70830ac5aa253326e64476f0ceb2",
"md5": "c27995176911a277c5a54655aa279e4b",
"sha256": "91eedcdf7008843b3d08de65301d2e58b2edabdc03d9668f57eea6048247c818"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp311-cp311-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "c27995176911a277c5a54655aa279e4b",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 85027,
"upload_time": "2025-07-13T12:37:59",
"upload_time_iso_8601": "2025-07-13T12:37:59.457312Z",
"url": "https://files.pythonhosted.org/packages/9a/ec/5dc2c4b225eee41cc7b484222d893a7d70830ac5aa253326e64476f0ceb2/cube_solver-1.1.4-cp311-cp311-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d4bcc847af6ca07e839008d1e8b3eeb93d93ed63b96e975b04fc446dac3fff84",
"md5": "017017ba44c111a4e5687ba3f6e1bc5e",
"sha256": "53c143e094b056a6e78e3af463781e529fea01e0cea02a5b4b6ded9e9be37ade"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp311-cp311-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "017017ba44c111a4e5687ba3f6e1bc5e",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 85266,
"upload_time": "2025-07-13T12:38:00",
"upload_time_iso_8601": "2025-07-13T12:38:00.559582Z",
"url": "https://files.pythonhosted.org/packages/d4/bc/c847af6ca07e839008d1e8b3eeb93d93ed63b96e975b04fc446dac3fff84/cube_solver-1.1.4-cp311-cp311-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "88698dc7b7160651f88b0400bb288538159ea3da9728347bfe627e884e49b226",
"md5": "66a369dee6ea7a44074bb23cd4adc5d4",
"sha256": "e93d0094c12a31ad0605fb32504f6ca7910607357a0e653d9637302abb63e6db"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp311-cp311-win32.whl",
"has_sig": false,
"md5_digest": "66a369dee6ea7a44074bb23cd4adc5d4",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 60080,
"upload_time": "2025-07-13T12:38:02",
"upload_time_iso_8601": "2025-07-13T12:38:02.130751Z",
"url": "https://files.pythonhosted.org/packages/88/69/8dc7b7160651f88b0400bb288538159ea3da9728347bfe627e884e49b226/cube_solver-1.1.4-cp311-cp311-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "6bb2508944d404cefc0add016d69aa0d70c844c9471155146e5b3173c8e1959c",
"md5": "1882bfda04ff533401d4d00057867e11",
"sha256": "37ed688c2274cb4fcb9fe6a4da7b3dfb7d6a73d52bdce59a36d80c621b66423e"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "1882bfda04ff533401d4d00057867e11",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 61285,
"upload_time": "2025-07-13T12:38:03",
"upload_time_iso_8601": "2025-07-13T12:38:03.237736Z",
"url": "https://files.pythonhosted.org/packages/6b/b2/508944d404cefc0add016d69aa0d70c844c9471155146e5b3173c8e1959c/cube_solver-1.1.4-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "761779ea837d09b6aca3798dd4b320bcaa40f26586db63e55f4fda2aac329dcb",
"md5": "09bb668026cef2f4419642541856916f",
"sha256": "a1db59c7f876b200a5ee3f0098ad3b477dec2fa86996753e2f5b2d7dfb8d7482"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp312-cp312-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "09bb668026cef2f4419642541856916f",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 61451,
"upload_time": "2025-07-13T12:38:04",
"upload_time_iso_8601": "2025-07-13T12:38:04.703668Z",
"url": "https://files.pythonhosted.org/packages/76/17/79ea837d09b6aca3798dd4b320bcaa40f26586db63e55f4fda2aac329dcb/cube_solver-1.1.4-cp312-cp312-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b9ca3f1cd948dcba524693c71e86a699aa0755e41f0101acea3208f6bdbe7e3c",
"md5": "64adb25493c1cd9b9e57d56e6420d5e2",
"sha256": "dcba9607db903ce397335494721a9801f590a99199769ddc5834eb8df39732ce"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "64adb25493c1cd9b9e57d56e6420d5e2",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 61147,
"upload_time": "2025-07-13T12:38:05",
"upload_time_iso_8601": "2025-07-13T12:38:05.780222Z",
"url": "https://files.pythonhosted.org/packages/b9/ca/3f1cd948dcba524693c71e86a699aa0755e41f0101acea3208f6bdbe7e3c/cube_solver-1.1.4-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "dec5fbd542a8296ddfbfffcc60163b9b490c30005c9ba8ec9194d4711a74c9a4",
"md5": "1eb1b5c1ccf86e5b85a66bf748ed3d59",
"sha256": "779cd991707d5f32b489ec9fc437fee178f52585efb189d04e88ac1355130532"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"has_sig": false,
"md5_digest": "1eb1b5c1ccf86e5b85a66bf748ed3d59",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 86246,
"upload_time": "2025-07-13T12:38:06",
"upload_time_iso_8601": "2025-07-13T12:38:06.817726Z",
"url": "https://files.pythonhosted.org/packages/de/c5/fbd542a8296ddfbfffcc60163b9b490c30005c9ba8ec9194d4711a74c9a4/cube_solver-1.1.4-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": "369b405ff01c965008630faa5add5505886acc701b76b4aa7e3170ee1cadf6ed",
"md5": "b425404fdf667edf7a85f7964505bc99",
"sha256": "2a563a592ea81abc1aaba23f5fabb5fdfb5b5bb81998ec243123c8bb9c569bf1"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "b425404fdf667edf7a85f7964505bc99",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 86769,
"upload_time": "2025-07-13T12:38:07",
"upload_time_iso_8601": "2025-07-13T12:38:07.916409Z",
"url": "https://files.pythonhosted.org/packages/36/9b/405ff01c965008630faa5add5505886acc701b76b4aa7e3170ee1cadf6ed/cube_solver-1.1.4-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ace639fbda86fe67fdb2f43bab6469d1c5d8ae6e4506da59cf587a537b96fbc5",
"md5": "a4271704df42591bb3a5327a8109b5d4",
"sha256": "0945495379ba111da2f842f5e50d45109b96ea3acefab323efc352cdb6ad414e"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp312-cp312-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "a4271704df42591bb3a5327a8109b5d4",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 85378,
"upload_time": "2025-07-13T12:38:09",
"upload_time_iso_8601": "2025-07-13T12:38:09.411900Z",
"url": "https://files.pythonhosted.org/packages/ac/e6/39fbda86fe67fdb2f43bab6469d1c5d8ae6e4506da59cf587a537b96fbc5/cube_solver-1.1.4-cp312-cp312-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "71c5b3eed29cc275fb99c84d986f7da88ddfb39751d3ff788d0dde549bca0bfa",
"md5": "2c050a02393c31aa333128acbba97fcd",
"sha256": "958c196b1fbe2f0480bf325ba4de969ea8131aeb71f699d01fdd2af9678f1316"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp312-cp312-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "2c050a02393c31aa333128acbba97fcd",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 85698,
"upload_time": "2025-07-13T12:38:10",
"upload_time_iso_8601": "2025-07-13T12:38:10.992405Z",
"url": "https://files.pythonhosted.org/packages/71/c5/b3eed29cc275fb99c84d986f7da88ddfb39751d3ff788d0dde549bca0bfa/cube_solver-1.1.4-cp312-cp312-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c489ec9ef3c8acfcdceac0281628e92c908582fd9e5ebe12f1d981732c964877",
"md5": "a08bb5128a742f8b6162582f0e3fb115",
"sha256": "6c87e26e50c4965636bdac025c72fbafcfa23d39ba252589ff1eecf4e96df814"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp312-cp312-win32.whl",
"has_sig": false,
"md5_digest": "a08bb5128a742f8b6162582f0e3fb115",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 60141,
"upload_time": "2025-07-13T12:38:12",
"upload_time_iso_8601": "2025-07-13T12:38:12.146864Z",
"url": "https://files.pythonhosted.org/packages/c4/89/ec9ef3c8acfcdceac0281628e92c908582fd9e5ebe12f1d981732c964877/cube_solver-1.1.4-cp312-cp312-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "65b4eba70da1cccecdc093c804dd78cc53b8ccb5951e1dd49f48186343a22907",
"md5": "14cc95af966cffe7e6c48ab680bbff8a",
"sha256": "17c2cb13cfa5780a85efd442aa1bb8556a4507b47ca4fdb8cd26d72e5a6a4567"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "14cc95af966cffe7e6c48ab680bbff8a",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 61344,
"upload_time": "2025-07-13T12:38:13",
"upload_time_iso_8601": "2025-07-13T12:38:13.270752Z",
"url": "https://files.pythonhosted.org/packages/65/b4/eba70da1cccecdc093c804dd78cc53b8ccb5951e1dd49f48186343a22907/cube_solver-1.1.4-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "a800560b1ed07b026853fa8b44e2d48b2be547ab9b060169dcd4ad719ae4f4fa",
"md5": "6458c14a0c5dea6ac2c777e483708fa1",
"sha256": "64dfea05a5a48d239438c345e43987251f55db5401ca4f50b72ca242eca52257"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp313-cp313-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "6458c14a0c5dea6ac2c777e483708fa1",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 61445,
"upload_time": "2025-07-13T12:38:14",
"upload_time_iso_8601": "2025-07-13T12:38:14.481205Z",
"url": "https://files.pythonhosted.org/packages/a8/00/560b1ed07b026853fa8b44e2d48b2be547ab9b060169dcd4ad719ae4f4fa/cube_solver-1.1.4-cp313-cp313-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "731e104cac8fbaa48b08be656a37753f1c4a3adbaf8bbc408128de56bd9062e3",
"md5": "9c00bb84b01db9b0ab57d09e9f6ddf6c",
"sha256": "325833691eb9a114572d231ac99adcb9d658a52292bc4e328cba4e3111fbd88f"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp313-cp313-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "9c00bb84b01db9b0ab57d09e9f6ddf6c",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 61152,
"upload_time": "2025-07-13T12:38:15",
"upload_time_iso_8601": "2025-07-13T12:38:15.519704Z",
"url": "https://files.pythonhosted.org/packages/73/1e/104cac8fbaa48b08be656a37753f1c4a3adbaf8bbc408128de56bd9062e3/cube_solver-1.1.4-cp313-cp313-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "4fbed3c65a3cb7ee9e842c4962dae7da6a5b997183e09025d50c6a555f8afe73",
"md5": "6a30e07e3bc8f97e4192c781f341b185",
"sha256": "68ecd63c71e5a0f51be8036f5912d3dd91c7acff9272fdda108dd438023ae67e"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"has_sig": false,
"md5_digest": "6a30e07e3bc8f97e4192c781f341b185",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 86268,
"upload_time": "2025-07-13T12:38:16",
"upload_time_iso_8601": "2025-07-13T12:38:16.988503Z",
"url": "https://files.pythonhosted.org/packages/4f/be/d3c65a3cb7ee9e842c4962dae7da6a5b997183e09025d50c6a555f8afe73/cube_solver-1.1.4-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": "59d3307edd5a2a79edf401da1ef510b503763ef94b3d0d519fc3508054056e89",
"md5": "e01e2ac277493cffab98e33b9adcd038",
"sha256": "d0e6b6e3ccad33e592ea2ca18dd9118bf1293e14a5b7444c9b0fd9ea4a388ca1"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "e01e2ac277493cffab98e33b9adcd038",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 86792,
"upload_time": "2025-07-13T12:38:18",
"upload_time_iso_8601": "2025-07-13T12:38:18.114186Z",
"url": "https://files.pythonhosted.org/packages/59/d3/307edd5a2a79edf401da1ef510b503763ef94b3d0d519fc3508054056e89/cube_solver-1.1.4-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d92217df4d50bcd2d0fe215facbcb6420dc968765b73c5f7ba8b0865de66d73f",
"md5": "5e8ff4a3b2b92037f9a42539c4324811",
"sha256": "91c3a14d417af97f718aa20893ab9372c9e7fa8eee8cee9a36de2bad83b2d998"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp313-cp313-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "5e8ff4a3b2b92037f9a42539c4324811",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 85437,
"upload_time": "2025-07-13T12:38:19",
"upload_time_iso_8601": "2025-07-13T12:38:19.152964Z",
"url": "https://files.pythonhosted.org/packages/d9/22/17df4d50bcd2d0fe215facbcb6420dc968765b73c5f7ba8b0865de66d73f/cube_solver-1.1.4-cp313-cp313-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "06ed67203e92648d555799cc6d424e5aaed003541270de808ac1ef7759c4a33a",
"md5": "d95043aa2a3722c39b46e79c44fdb6af",
"sha256": "bb0ff537936cf04c6a46eeac9e05e6d0aca4a9ecccc99b5a12462558ba442eda"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp313-cp313-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "d95043aa2a3722c39b46e79c44fdb6af",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 85742,
"upload_time": "2025-07-13T12:38:20",
"upload_time_iso_8601": "2025-07-13T12:38:20.247112Z",
"url": "https://files.pythonhosted.org/packages/06/ed/67203e92648d555799cc6d424e5aaed003541270de808ac1ef7759c4a33a/cube_solver-1.1.4-cp313-cp313-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "9115d8600b361a5ab8c08cca2ab6d62bbe73ab73c57982427b472dc48f2e6deb",
"md5": "46c2f17a036a14085aff3a7a51f63f81",
"sha256": "324b70485e906cce7a10b70114acb43f1a2795f4632e48730d78b03612589e80"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp313-cp313-win32.whl",
"has_sig": false,
"md5_digest": "46c2f17a036a14085aff3a7a51f63f81",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 60139,
"upload_time": "2025-07-13T12:38:21",
"upload_time_iso_8601": "2025-07-13T12:38:21.294284Z",
"url": "https://files.pythonhosted.org/packages/91/15/d8600b361a5ab8c08cca2ab6d62bbe73ab73c57982427b472dc48f2e6deb/cube_solver-1.1.4-cp313-cp313-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "61f218c2d6268b1ba43e172d78f711d483ded6eca39964aeff655e41d84d6b98",
"md5": "e58a9dda258069660b84e716a28693c7",
"sha256": "131599b64fc04586a5de4dbf9ed8cd6a629875dc5218c8b19a05086853f924a9"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp313-cp313-win_amd64.whl",
"has_sig": false,
"md5_digest": "e58a9dda258069660b84e716a28693c7",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 61337,
"upload_time": "2025-07-13T12:38:22",
"upload_time_iso_8601": "2025-07-13T12:38:22.338428Z",
"url": "https://files.pythonhosted.org/packages/61/f2/18c2d6268b1ba43e172d78f711d483ded6eca39964aeff655e41d84d6b98/cube_solver-1.1.4-cp313-cp313-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "2e047dabe443313e01d3891b17203f533abad28b845947a2ce8d60df419b0ab9",
"md5": "f537c417bb90903c4bf06e5330b9fb23",
"sha256": "16d5827cfe0d644c104b59f1882d1b974ef96e64258ea767454604131ee14a39"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp39-cp39-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "f537c417bb90903c4bf06e5330b9fb23",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 61409,
"upload_time": "2025-07-13T12:38:23",
"upload_time_iso_8601": "2025-07-13T12:38:23.740586Z",
"url": "https://files.pythonhosted.org/packages/2e/04/7dabe443313e01d3891b17203f533abad28b845947a2ce8d60df419b0ab9/cube_solver-1.1.4-cp39-cp39-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "92d69302907fed074d058a27c8b58534f0bb2dc2dd8198b4c9779f3565dda01d",
"md5": "7ed3c3d4027720cbaf61e24bf933b875",
"sha256": "3ef145367423d7ee0c954137f3d8bf39dc3544bfb868317bcfc28eaf92810034"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp39-cp39-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "7ed3c3d4027720cbaf61e24bf933b875",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 61128,
"upload_time": "2025-07-13T12:38:24",
"upload_time_iso_8601": "2025-07-13T12:38:24.781580Z",
"url": "https://files.pythonhosted.org/packages/92/d6/9302907fed074d058a27c8b58534f0bb2dc2dd8198b4c9779f3565dda01d/cube_solver-1.1.4-cp39-cp39-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "777ef7dc05409871a95cd9e90841086895716568e3eb3811a82b3312496fb5df",
"md5": "6d27d6d8fd0ff306189dcebcbd5dc60e",
"sha256": "d55514e0498a35a940f108af4d8bddb8e9c1add2cacc2e9f7fd7c4a9434e58ba"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"has_sig": false,
"md5_digest": "6d27d6d8fd0ff306189dcebcbd5dc60e",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 85499,
"upload_time": "2025-07-13T12:38:26",
"upload_time_iso_8601": "2025-07-13T12:38:26.196852Z",
"url": "https://files.pythonhosted.org/packages/77/7e/f7dc05409871a95cd9e90841086895716568e3eb3811a82b3312496fb5df/cube_solver-1.1.4-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": "73a44eaccfa5f712a38bb554c7be2846d2cd55c3a8229ab2212fa7dd3aa67865",
"md5": "8abaf180d6b370a199c43e84130d5fc7",
"sha256": "d6f145577e8ed73c99646c14bfd623b4dbf654ae06220082c8f493f59618effb"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "8abaf180d6b370a199c43e84130d5fc7",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 85997,
"upload_time": "2025-07-13T12:38:27",
"upload_time_iso_8601": "2025-07-13T12:38:27.248752Z",
"url": "https://files.pythonhosted.org/packages/73/a4/4eaccfa5f712a38bb554c7be2846d2cd55c3a8229ab2212fa7dd3aa67865/cube_solver-1.1.4-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "663c400b36e7fa3efdcc3c1057a265118c1ee382182162ad456b055d0ee81124",
"md5": "a1e49d5d135c7d6d3f637fdf46602602",
"sha256": "9272edb4c16d9b157c4b5f5a0922cc7883f904e6926b3061c107e8ea3026ec47"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp39-cp39-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "a1e49d5d135c7d6d3f637fdf46602602",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 84714,
"upload_time": "2025-07-13T12:38:28",
"upload_time_iso_8601": "2025-07-13T12:38:28.290987Z",
"url": "https://files.pythonhosted.org/packages/66/3c/400b36e7fa3efdcc3c1057a265118c1ee382182162ad456b055d0ee81124/cube_solver-1.1.4-cp39-cp39-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e1b7257ed5f8664e1d81e4d3aeefdbc19257344882a08ad0f0b5e12d5de2b62e",
"md5": "53fcd1389c74d0c0a212130b1d96760d",
"sha256": "84862751e23f6e03d653e5b2e310e7aeb435169043931e2235c5d4e470eacb35"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp39-cp39-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "53fcd1389c74d0c0a212130b1d96760d",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 85005,
"upload_time": "2025-07-13T12:38:29",
"upload_time_iso_8601": "2025-07-13T12:38:29.730974Z",
"url": "https://files.pythonhosted.org/packages/e1/b7/257ed5f8664e1d81e4d3aeefdbc19257344882a08ad0f0b5e12d5de2b62e/cube_solver-1.1.4-cp39-cp39-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "93998497bc3e5e730d275e8a8671dd2917b0e0b24875e429b685548af16c173e",
"md5": "627cf5bb2ef9bc917a830eae45e5277c",
"sha256": "3cc91e146d775c3ca69875a74a63fe900c77eb31923c1e24df05ac4955cdc158"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp39-cp39-win32.whl",
"has_sig": false,
"md5_digest": "627cf5bb2ef9bc917a830eae45e5277c",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 60075,
"upload_time": "2025-07-13T12:38:30",
"upload_time_iso_8601": "2025-07-13T12:38:30.766618Z",
"url": "https://files.pythonhosted.org/packages/93/99/8497bc3e5e730d275e8a8671dd2917b0e0b24875e429b685548af16c173e/cube_solver-1.1.4-cp39-cp39-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "53ab4d8e6e8ef435cd8dbd6da3a4e44aa34e8104632e07089673a4b418b69521",
"md5": "a4a1ce5598a9477c9b056a48041433d0",
"sha256": "17f8b452e1100017c7735362b4b78a5d773b37ac2460f68db326ff33438dff90"
},
"downloads": -1,
"filename": "cube_solver-1.1.4-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "a4a1ce5598a9477c9b056a48041433d0",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 61280,
"upload_time": "2025-07-13T12:38:32",
"upload_time_iso_8601": "2025-07-13T12:38:32.206542Z",
"url": "https://files.pythonhosted.org/packages/53/ab/4d8e6e8ef435cd8dbd6da3a4e44aa34e8104632e07089673a4b418b69521/cube_solver-1.1.4-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b1939ba548676896a67825ae5f379ff80371315acca6dada423ba9e15fa7f76f",
"md5": "7de10977580e5bb7bbe718fac8316c0a",
"sha256": "5747697f1ba43077f32d4ffc06607d96722d7748a40afad4e277e68cd95eac21"
},
"downloads": -1,
"filename": "cube_solver-1.1.4.tar.gz",
"has_sig": false,
"md5_digest": "7de10977580e5bb7bbe718fac8316c0a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 62763,
"upload_time": "2025-07-13T12:38:33",
"upload_time_iso_8601": "2025-07-13T12:38:33.368059Z",
"url": "https://files.pythonhosted.org/packages/b1/93/9ba548676896a67825ae5f379ff80371315acca6dada423ba9e15fa7f76f/cube_solver-1.1.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-13 12:38:33",
"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"
}