evogym


Nameevogym JSON
Version 2.0.0 PyPI version JSON
download
home_pageNone
SummaryEvolution Gym: A benchmark for developing and evaluating soft robot co-design algorithms.
upload_time2024-07-09 02:29:48
maintainerNone
docs_urlNone
authorNone
requires_python<3.11,>=3.7
licenseMIT License Copyright (c) 2022 jagdeepsb Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords evolution gym evolution gym soft robotics benchmark co-design
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Evolution Gym

[![Build](https://github.com/EvolutionGym/evogym/actions/workflows/wheels.yml/badge.svg?branch=main)](https://github.com/EvolutionGym/evogym/actions/workflows/wheels.yml)
[![Test](https://github.com/EvolutionGym/evogym/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/EvolutionGym/evogym/actions/workflows/test.yml)

Evolution Gym is a large-scale benchmark for co-optimizing the design and control of soft robots. It provides a lightweight soft-body simulator wrapped with a gym-like interface for developing learning algorithms. EvoGym also includes a suite of 32 locomotion and manipulation tasks, detailed on our [website](https://evolutiongym.github.io/all-tasks). Task suite evaluations are described in our [NeurIPS 2021 paper](https://arxiv.org/pdf/2201.09863).

> [!NOTE]
> EvoGym has been recently updated! TLDR: requirements have been modernized (gym/gymnasium, numpy, etc.), and the library is now pip-installable.

[//]: # (<img src="https://github.com/EvolutionGym/evogym/raw/main/images/teaser-low-res.gif" alt="teaser" width="800"/>)
![teaser](https://github.com/EvolutionGym/evogym/raw/main/images/teaser-low-res.gif)

# Installation

EvoGym supports python `3.7` to `3.10` on most operating systems:

```shell
pip install evogym --upgrade
```

<!-- > [!CAUTION]
> This doesn't work yet -- coming soon! For now, you can install from test pypi:
> ```shell
> pip install "numpy<2.0.0" gymnasium
> pip install -i https://test.pypi.org/simple/ evogym
> ``` -->

On **Linux** install the following packages (or equivalent):

```shell
sudo apt-get install xorg-dev libglu1-mesa-dev
```

## From Source

If your platform is not supported, you may alternatively build from source:

### Requirements

* Python 3
* Linux, macOS, or Windows with [Visual Studios 2017](https://visualstudio.microsoft.com/vs/older-downloads/) build tools.
* [CMake](https://cmake.org/download/)

Clone the repo and submodules:

```shell
git clone --recurse-submodules https://github.com/EvolutionGym/evogym.git
```

On **Linux only**:

```shell
sudo apt-get install xorg-dev libglu1-mesa-dev
```

Finally, to install `evogym`, run the following in the environment of your choice:

```shell
pip install -e .
```

## Test Installation

If you have the repo cloned, `cd` to the `examples` folder and run the following script:

```shell
python gym_test.py
```

Alternatively, you can run the following snippet:

```python
import gymnasium as gym
import evogym.envs
from evogym import sample_robot


if __name__ == '__main__':

    body, connections = sample_robot((5,5))
    env = gym.make('Walker-v0', body=body, render_mode='human')
    env.reset()

    while True:
        action = env.action_space.sample()
        ob, reward, terminated, truncated, info = env.step(action)

        if terminated or truncated:
            env.reset()

    env.close()
```

This script creates a random `5x5` robot in the `Walking-v0` environment. The robot is taking random actions. A window should open with a visualization of the environment -- kill the process from the terminal to close it.

## Known Issues

### Linux and Conda

Error message: `libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/iris_dri.so`

Fix: `conda install -c conda-forge libstdcxx-ng`

# Usage

In addition to the resources below, you can find API documentation on our [website](https://evolutiongym.github.io/documentation).

## Tutorials

You can find tutorials for getting started with the codebase on our [website](https://evolutiongym.github.io/tutorials). Completed code from all tutorials is also available in the `tutorials` folder, along with a `README`. Tutorials are included for:
- Using the [evogym API](https://evolutiongym.github.io/tutorials/basic-api.html)
- Making a [custom evogym environment](https://evolutiongym.github.io/tutorials/new-env.html)
- Supported [rendering options](https://github.com/EvolutionGym/evogym/blob/main/tutorials/rendering_options.py)

## Examples

To run co-design and control optimization experiments in EvoGym, please see the `examples` folder and its `README`. Included are scripts for:
- Running PPO
- Running a Genetic Algorithm
- Running Bayesian Optimization
- Running CPPN-NEAT
- Visualizing results
- Saving results as gifs

Make sure you clone the repo with submodules:

```shell
git clone --recurse-submodules https://github.com/EvolutionGym/evogym.git
```

Install the necessary python requirements:
```shell
pip install -r requirements.txt
```

## Design Tool

The Design Tool provides a gui for creating Evolution Gym environments. Please see [this repo](https://github.com/EvolutionGym/evogym-design-tool).

[//]: # (<img src="https://github.com/EvolutionGym/evogym/raw/main/images/design-tool.gif" alt="design-tool" width="800"/>)
![design-tool](https://github.com/EvolutionGym/evogym/raw/main/images/design-tool.gif)

## Headless Mode

EvoGym runs in headless mode by default, and avoids initializing rendering libraries until necessary. If using a server without rendering capabilities, ensure that:

```python
# Envs are created with render_mode=None (None by default)
env = gym.make('Walker-v0', body=body, render_mode=None)
```

```python
# If using the low-level api, do not call EvoViewer.render()
world = EvoWorld.from_json(os.path.join('world_data', 'simple_environment.json'))
sim = EvoSim(world)
viewer = EvoViewer(sim)
viewer.render('img') # <-- Rendering libraries are initialized; do not call this
```

# Dev

Install the repo with submodules:

```shell
git clone --recurse-submodules https://github.com/EvolutionGym/evogym.git
```

Install the necessary python requirements. You will additionally need to install the dev requirements:
```shell
pip install -r requirements.txt
pip install -r requirements-dev.txt
```

## Run Tests

From within the `tests` directory run the full test suite:

```shell
cd tests
pytest -s -v -n auto
```

Or the lite test suite:


```shell
cd tests
pytest -s -v -n auto -m lite
```

# Citation

If you find our repository helpful to your research, please cite our paper:

```
@article{bhatia2021evolution,
  title={Evolution gym: A large-scale benchmark for evolving soft robots},
  author={Bhatia, Jagdeep and Jackson, Holly and Tian, Yunsheng and Xu, Jie and Matusik, Wojciech},
  journal={Advances in Neural Information Processing Systems},
  volume={34},
  year={2021}
}
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "evogym",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.11,>=3.7",
    "maintainer_email": null,
    "keywords": "evolution, gym, evolution gym, soft robotics, benchmark, co-design",
    "author": null,
    "author_email": "Jagdeep Singh Bhatia <jagdeep@mit.edu>",
    "download_url": "https://files.pythonhosted.org/packages/ac/50/baf8af98eb0a1282c93504a653f828c840f85b691f3bbd2e0fc74b75863b/evogym-2.0.0.tar.gz",
    "platform": null,
    "description": "# Evolution Gym\r\n\r\n[![Build](https://github.com/EvolutionGym/evogym/actions/workflows/wheels.yml/badge.svg?branch=main)](https://github.com/EvolutionGym/evogym/actions/workflows/wheels.yml)\r\n[![Test](https://github.com/EvolutionGym/evogym/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/EvolutionGym/evogym/actions/workflows/test.yml)\r\n\r\nEvolution Gym is a large-scale benchmark for co-optimizing the design and control of soft robots. It provides a lightweight soft-body simulator wrapped with a gym-like interface for developing learning algorithms. EvoGym also includes a suite of 32 locomotion and manipulation tasks, detailed on our [website](https://evolutiongym.github.io/all-tasks). Task suite evaluations are described in our [NeurIPS 2021 paper](https://arxiv.org/pdf/2201.09863).\r\n\r\n> [!NOTE]\r\n> EvoGym has been recently updated! TLDR: requirements have been modernized (gym/gymnasium, numpy, etc.), and the library is now pip-installable.\r\n\r\n[//]: # (<img src=\"https://github.com/EvolutionGym/evogym/raw/main/images/teaser-low-res.gif\" alt=\"teaser\" width=\"800\"/>)\r\n![teaser](https://github.com/EvolutionGym/evogym/raw/main/images/teaser-low-res.gif)\r\n\r\n# Installation\r\n\r\nEvoGym supports python `3.7` to `3.10` on most operating systems:\r\n\r\n```shell\r\npip install evogym --upgrade\r\n```\r\n\r\n<!-- > [!CAUTION]\r\n> This doesn't work yet -- coming soon! For now, you can install from test pypi:\r\n> ```shell\r\n> pip install \"numpy<2.0.0\" gymnasium\r\n> pip install -i https://test.pypi.org/simple/ evogym\r\n> ``` -->\r\n\r\nOn **Linux** install the following packages (or equivalent):\r\n\r\n```shell\r\nsudo apt-get install xorg-dev libglu1-mesa-dev\r\n```\r\n\r\n## From Source\r\n\r\nIf your platform is not supported, you may alternatively build from source:\r\n\r\n### Requirements\r\n\r\n* Python 3\r\n* Linux, macOS, or Windows with [Visual Studios 2017](https://visualstudio.microsoft.com/vs/older-downloads/) build tools.\r\n* [CMake](https://cmake.org/download/)\r\n\r\nClone the repo and submodules:\r\n\r\n```shell\r\ngit clone --recurse-submodules https://github.com/EvolutionGym/evogym.git\r\n```\r\n\r\nOn **Linux only**:\r\n\r\n```shell\r\nsudo apt-get install xorg-dev libglu1-mesa-dev\r\n```\r\n\r\nFinally, to install `evogym`, run the following in the environment of your choice:\r\n\r\n```shell\r\npip install -e .\r\n```\r\n\r\n## Test Installation\r\n\r\nIf you have the repo cloned, `cd` to the `examples` folder and run the following script:\r\n\r\n```shell\r\npython gym_test.py\r\n```\r\n\r\nAlternatively, you can run the following snippet:\r\n\r\n```python\r\nimport gymnasium as gym\r\nimport evogym.envs\r\nfrom evogym import sample_robot\r\n\r\n\r\nif __name__ == '__main__':\r\n\r\n    body, connections = sample_robot((5,5))\r\n    env = gym.make('Walker-v0', body=body, render_mode='human')\r\n    env.reset()\r\n\r\n    while True:\r\n        action = env.action_space.sample()\r\n        ob, reward, terminated, truncated, info = env.step(action)\r\n\r\n        if terminated or truncated:\r\n            env.reset()\r\n\r\n    env.close()\r\n```\r\n\r\nThis script creates a random `5x5` robot in the `Walking-v0` environment. The robot is taking random actions. A window should open with a visualization of the environment -- kill the process from the terminal to close it.\r\n\r\n## Known Issues\r\n\r\n### Linux and Conda\r\n\r\nError message: `libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/iris_dri.so`\r\n\r\nFix: `conda install -c conda-forge libstdcxx-ng`\r\n\r\n# Usage\r\n\r\nIn addition to the resources below, you can find API documentation on our [website](https://evolutiongym.github.io/documentation).\r\n\r\n## Tutorials\r\n\r\nYou can find tutorials for getting started with the codebase on our [website](https://evolutiongym.github.io/tutorials). Completed code from all tutorials is also available in the `tutorials` folder, along with a `README`. Tutorials are included for:\r\n- Using the [evogym API](https://evolutiongym.github.io/tutorials/basic-api.html)\r\n- Making a [custom evogym environment](https://evolutiongym.github.io/tutorials/new-env.html)\r\n- Supported [rendering options](https://github.com/EvolutionGym/evogym/blob/main/tutorials/rendering_options.py)\r\n\r\n## Examples\r\n\r\nTo run co-design and control optimization experiments in EvoGym, please see the `examples` folder and its `README`. Included are scripts for:\r\n- Running PPO\r\n- Running a Genetic Algorithm\r\n- Running Bayesian Optimization\r\n- Running CPPN-NEAT\r\n- Visualizing results\r\n- Saving results as gifs\r\n\r\nMake sure you clone the repo with submodules:\r\n\r\n```shell\r\ngit clone --recurse-submodules https://github.com/EvolutionGym/evogym.git\r\n```\r\n\r\nInstall the necessary python requirements:\r\n```shell\r\npip install -r requirements.txt\r\n```\r\n\r\n## Design Tool\r\n\r\nThe Design Tool provides a gui for creating Evolution Gym environments. Please see [this repo](https://github.com/EvolutionGym/evogym-design-tool).\r\n\r\n[//]: # (<img src=\"https://github.com/EvolutionGym/evogym/raw/main/images/design-tool.gif\" alt=\"design-tool\" width=\"800\"/>)\r\n![design-tool](https://github.com/EvolutionGym/evogym/raw/main/images/design-tool.gif)\r\n\r\n## Headless Mode\r\n\r\nEvoGym runs in headless mode by default, and avoids initializing rendering libraries until necessary. If using a server without rendering capabilities, ensure that:\r\n\r\n```python\r\n# Envs are created with render_mode=None (None by default)\r\nenv = gym.make('Walker-v0', body=body, render_mode=None)\r\n```\r\n\r\n```python\r\n# If using the low-level api, do not call EvoViewer.render()\r\nworld = EvoWorld.from_json(os.path.join('world_data', 'simple_environment.json'))\r\nsim = EvoSim(world)\r\nviewer = EvoViewer(sim)\r\nviewer.render('img') # <-- Rendering libraries are initialized; do not call this\r\n```\r\n\r\n# Dev\r\n\r\nInstall the repo with submodules:\r\n\r\n```shell\r\ngit clone --recurse-submodules https://github.com/EvolutionGym/evogym.git\r\n```\r\n\r\nInstall the necessary python requirements. You will additionally need to install the dev requirements:\r\n```shell\r\npip install -r requirements.txt\r\npip install -r requirements-dev.txt\r\n```\r\n\r\n## Run Tests\r\n\r\nFrom within the `tests` directory run the full test suite:\r\n\r\n```shell\r\ncd tests\r\npytest -s -v -n auto\r\n```\r\n\r\nOr the lite test suite:\r\n\r\n\r\n```shell\r\ncd tests\r\npytest -s -v -n auto -m lite\r\n```\r\n\r\n# Citation\r\n\r\nIf you find our repository helpful to your research, please cite our paper:\r\n\r\n```\r\n@article{bhatia2021evolution,\r\n  title={Evolution gym: A large-scale benchmark for evolving soft robots},\r\n  author={Bhatia, Jagdeep and Jackson, Holly and Tian, Yunsheng and Xu, Jie and Matusik, Wojciech},\r\n  journal={Advances in Neural Information Processing Systems},\r\n  volume={34},\r\n  year={2021}\r\n}\r\n```\r\n",
    "bugtrack_url": null,
    "license": "MIT License  Copyright (c) 2022 jagdeepsb  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
    "summary": "Evolution Gym: A benchmark for developing and evaluating soft robot co-design algorithms.",
    "version": "2.0.0",
    "project_urls": {
        "Documentation": "https://evolutiongym.github.io/",
        "Homepage": "https://github.com/EvolutionGym/evogym",
        "Issues": "https://github.com/EvolutionGym/evogym/issues"
    },
    "split_keywords": [
        "evolution",
        " gym",
        " evolution gym",
        " soft robotics",
        " benchmark",
        " co-design"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2e08e9d3288fdf90806882178f8c215a16b7ff0929fbe8df8ba5bad3090a185e",
                "md5": "9146bb09acce2f23891517685d8ea5f8",
                "sha256": "cd4c47d59fedc28c6ec9afb0db19e0f3ce32d1bf18e255805c906f4f85b3c2d9"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp310-cp310-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "9146bb09acce2f23891517685d8ea5f8",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": "<3.11,>=3.7",
            "size": 4670686,
            "upload_time": "2024-07-09T02:36:30",
            "upload_time_iso_8601": "2024-07-09T02:36:30.859268Z",
            "url": "https://files.pythonhosted.org/packages/2e/08/e9d3288fdf90806882178f8c215a16b7ff0929fbe8df8ba5bad3090a185e/evogym-2.0.0-cp310-cp310-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9e4671c3986443c2acc123102b3d2c7487269199fd767a2d5def3e5d4109b989",
                "md5": "597b84504cd9be0b9afbb6ec7047d09b",
                "sha256": "f74e19398e9cdcf108ff01fcfa08b8499031836321ba367ecb25609993c243f0"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "597b84504cd9be0b9afbb6ec7047d09b",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": "<3.11,>=3.7",
            "size": 4544029,
            "upload_time": "2024-07-09T02:36:33",
            "upload_time_iso_8601": "2024-07-09T02:36:33.182041Z",
            "url": "https://files.pythonhosted.org/packages/9e/46/71c3986443c2acc123102b3d2c7487269199fd767a2d5def3e5d4109b989/evogym-2.0.0-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "184055b23277fbb08d3a6202a80fcef1c1a14db20a913ccacab4d8b03e6789b1",
                "md5": "da21e90c80b41900cf91287ecbf25db1",
                "sha256": "9bb22424fc2604e15ed0ed81e3133593b44847387498cfc2417b584336c20780"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp310-cp310-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "da21e90c80b41900cf91287ecbf25db1",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": "<3.11,>=3.7",
            "size": 4773049,
            "upload_time": "2024-07-09T02:36:35",
            "upload_time_iso_8601": "2024-07-09T02:36:35.455379Z",
            "url": "https://files.pythonhosted.org/packages/18/40/55b23277fbb08d3a6202a80fcef1c1a14db20a913ccacab4d8b03e6789b1/evogym-2.0.0-cp310-cp310-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a5909a3d446c74579c95ae855bae7ba6be202c33e1097b3900cc296d226495f6",
                "md5": "f67a06bb509408c30ff167a0dacb80e5",
                "sha256": "e2c27e78f2bf90c151b8a7737d2ddfda6fbded74ac799fa8e4c84f7d51764c63"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "f67a06bb509408c30ff167a0dacb80e5",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": "<3.11,>=3.7",
            "size": 4380731,
            "upload_time": "2024-07-09T02:29:46",
            "upload_time_iso_8601": "2024-07-09T02:29:46.058425Z",
            "url": "https://files.pythonhosted.org/packages/a5/90/9a3d446c74579c95ae855bae7ba6be202c33e1097b3900cc296d226495f6/evogym-2.0.0-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "edaaed3c1007cba66e86eb637242ade170a32aff6d22e405db4b5433c81ca13d",
                "md5": "993fe1644b824845bda35dbfe68cf6fa",
                "sha256": "c7b62019d6ca5fc4966575fa2c544aa00d4d49f785bafec7db00e8cd6bdf2368"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp37-cp37m-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "993fe1644b824845bda35dbfe68cf6fa",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": "<3.11,>=3.7",
            "size": 4668082,
            "upload_time": "2024-07-09T02:36:38",
            "upload_time_iso_8601": "2024-07-09T02:36:38.274753Z",
            "url": "https://files.pythonhosted.org/packages/ed/aa/ed3c1007cba66e86eb637242ade170a32aff6d22e405db4b5433c81ca13d/evogym-2.0.0-cp37-cp37m-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4c6bf2aa5a09db16795353595b3b77d0ea10b6a6514acb15fa45a5fcfe9990e4",
                "md5": "1648fe1dab067dbde3c98edc67685a43",
                "sha256": "db73c1b95579ce649a333d3067549997625a3c2cdb8388ab74d196775278ddfe"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp37-cp37m-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "1648fe1dab067dbde3c98edc67685a43",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": "<3.11,>=3.7",
            "size": 4774264,
            "upload_time": "2024-07-09T02:36:40",
            "upload_time_iso_8601": "2024-07-09T02:36:40.313192Z",
            "url": "https://files.pythonhosted.org/packages/4c/6b/f2aa5a09db16795353595b3b77d0ea10b6a6514acb15fa45a5fcfe9990e4/evogym-2.0.0-cp37-cp37m-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1514ef4e97e825b8930057f97b63f647241cafb229551a2de86b7978ca7f92c7",
                "md5": "1f39c864d73612f0765a3715c0ddb7b2",
                "sha256": "368dd4bc63c72eca0a32c6a95c28f6077b49cccd5269bb4991bb65c2ceca7fd0"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp37-cp37m-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "1f39c864d73612f0765a3715c0ddb7b2",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": "<3.11,>=3.7",
            "size": 4382838,
            "upload_time": "2024-07-09T02:36:41",
            "upload_time_iso_8601": "2024-07-09T02:36:41.981011Z",
            "url": "https://files.pythonhosted.org/packages/15/14/ef4e97e825b8930057f97b63f647241cafb229551a2de86b7978ca7f92c7/evogym-2.0.0-cp37-cp37m-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ed425e2da7ddddb8bc462c435c435dc26ef6afc395e15f9cb211143fec74b5cf",
                "md5": "6d0ba568834fc8941e81f89f0bc1812a",
                "sha256": "6a23606b909bcbe376c721b3bb152c95fa8b7bb7cddf605e0c83464d8198a93d"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp38-cp38-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "6d0ba568834fc8941e81f89f0bc1812a",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": "<3.11,>=3.7",
            "size": 4670755,
            "upload_time": "2024-07-09T02:36:43",
            "upload_time_iso_8601": "2024-07-09T02:36:43.718013Z",
            "url": "https://files.pythonhosted.org/packages/ed/42/5e2da7ddddb8bc462c435c435dc26ef6afc395e15f9cb211143fec74b5cf/evogym-2.0.0-cp38-cp38-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1e73005d3d9dfd0706ee59cad8ad4f91634ee0871ef2c5410f91262668655b52",
                "md5": "c132922c6bcffb049b836010780b4abf",
                "sha256": "e8cfac906425e7c8df53cfbce3de365563e0bd2570593f95102bd5bafd14495a"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp38-cp38-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "c132922c6bcffb049b836010780b4abf",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": "<3.11,>=3.7",
            "size": 4543975,
            "upload_time": "2024-07-09T02:36:45",
            "upload_time_iso_8601": "2024-07-09T02:36:45.598516Z",
            "url": "https://files.pythonhosted.org/packages/1e/73/005d3d9dfd0706ee59cad8ad4f91634ee0871ef2c5410f91262668655b52/evogym-2.0.0-cp38-cp38-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4c742114eeaecbe5b81caf7b00f3228a741d03ab4ac9e5ce98b0b4e43f834232",
                "md5": "deb799cb4d6e14732d79139aa4b4f25e",
                "sha256": "3523cd347c5ce40dd84d4d22eefa314549e5ec21cb76d96ca84a9d0e6cbf4d99"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp38-cp38-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "deb799cb4d6e14732d79139aa4b4f25e",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": "<3.11,>=3.7",
            "size": 4773014,
            "upload_time": "2024-07-09T02:36:47",
            "upload_time_iso_8601": "2024-07-09T02:36:47.214581Z",
            "url": "https://files.pythonhosted.org/packages/4c/74/2114eeaecbe5b81caf7b00f3228a741d03ab4ac9e5ce98b0b4e43f834232/evogym-2.0.0-cp38-cp38-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "662626417ae5e3c00265295423b4c12ca800e3499e316d572ff76ecde0700c41",
                "md5": "39c322c13b2df1297f6c8d9563aa8506",
                "sha256": "16fce24bfa31c747a444f554284158be0ca4a9292e931c989d7950877d19e098"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp38-cp38-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "39c322c13b2df1297f6c8d9563aa8506",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": "<3.11,>=3.7",
            "size": 4384035,
            "upload_time": "2024-07-09T02:36:49",
            "upload_time_iso_8601": "2024-07-09T02:36:49.340900Z",
            "url": "https://files.pythonhosted.org/packages/66/26/26417ae5e3c00265295423b4c12ca800e3499e316d572ff76ecde0700c41/evogym-2.0.0-cp38-cp38-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "694918bc3a7f5ef5ed8c7e23f3a54012e1e9904ade553a4099fb5f88e7f2a84c",
                "md5": "6194e42a236abe20c586b4d9fe12f1c2",
                "sha256": "a72078f4df8d2b74f6f0d68341ac1c99334df1ede6bcd90b5f01b6e41a50d1e9"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp39-cp39-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "6194e42a236abe20c586b4d9fe12f1c2",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": "<3.11,>=3.7",
            "size": 4670832,
            "upload_time": "2024-07-09T02:36:51",
            "upload_time_iso_8601": "2024-07-09T02:36:51.382217Z",
            "url": "https://files.pythonhosted.org/packages/69/49/18bc3a7f5ef5ed8c7e23f3a54012e1e9904ade553a4099fb5f88e7f2a84c/evogym-2.0.0-cp39-cp39-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "34b1ede198f2da74b6da9294254ba19d66eab7acf6ad0fcba930c88fe69cc073",
                "md5": "a8e51639fd71006f2974051f6a239bc9",
                "sha256": "1b93f5660f8b7e27580f591ab7d386e4928af3a2e2c026ec1f3ca930e1e33fa6"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp39-cp39-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "a8e51639fd71006f2974051f6a239bc9",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": "<3.11,>=3.7",
            "size": 4544066,
            "upload_time": "2024-07-09T02:36:53",
            "upload_time_iso_8601": "2024-07-09T02:36:53.211906Z",
            "url": "https://files.pythonhosted.org/packages/34/b1/ede198f2da74b6da9294254ba19d66eab7acf6ad0fcba930c88fe69cc073/evogym-2.0.0-cp39-cp39-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cb9215e01ae5e2f015c7eea8871f05560395750667067d88966059fad382a0d0",
                "md5": "11c0521a070f41a1de92d5ff5e2ddc61",
                "sha256": "c6f706e1b9f72f134559357c1ea8f203f9d94c4cb962a491a3a8f6d89ad08d3e"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp39-cp39-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "11c0521a070f41a1de92d5ff5e2ddc61",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": "<3.11,>=3.7",
            "size": 4773419,
            "upload_time": "2024-07-09T02:36:55",
            "upload_time_iso_8601": "2024-07-09T02:36:55.599997Z",
            "url": "https://files.pythonhosted.org/packages/cb/92/15e01ae5e2f015c7eea8871f05560395750667067d88966059fad382a0d0/evogym-2.0.0-cp39-cp39-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a949e394373d437cbdc62e21cc704e8848b715cdeb434dacb5de80a083771add",
                "md5": "93d1b469a5cb79a6b4e7abc8f59cf228",
                "sha256": "1fb1a9ad07b4a04f92fe06172c2a4733cd5ab07cf3a3526118a9b5c7f8fff98a"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "93d1b469a5cb79a6b4e7abc8f59cf228",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": "<3.11,>=3.7",
            "size": 4384042,
            "upload_time": "2024-07-09T02:36:57",
            "upload_time_iso_8601": "2024-07-09T02:36:57.750980Z",
            "url": "https://files.pythonhosted.org/packages/a9/49/e394373d437cbdc62e21cc704e8848b715cdeb434dacb5de80a083771add/evogym-2.0.0-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "09ae20ad1deb958391161925d4e280db0f81600b6f516a98af3249b2321d125c",
                "md5": "2329368a7be36aac0294d966a236a9f9",
                "sha256": "51bebe2880979ec5a3d5abdd5ab00ac3f86bb1eddf95a980a8c487a3f15e2d6c"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl",
            "has_sig": false,
            "md5_digest": "2329368a7be36aac0294d966a236a9f9",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": "<3.11,>=3.7",
            "size": 4670023,
            "upload_time": "2024-07-09T02:36:59",
            "upload_time_iso_8601": "2024-07-09T02:36:59.425084Z",
            "url": "https://files.pythonhosted.org/packages/09/ae/20ad1deb958391161925d4e280db0f81600b6f516a98af3249b2321d125c/evogym-2.0.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9842f92fa724fa55a90dae3b45139cd056308a33fe41f10327fec85986f3a52d",
                "md5": "57d8eb1f3b8afa3e49a28874ee351730",
                "sha256": "693f334f3b286ed1e587ddd20f278846c66dbf51a73a970da208e200fe9a87fe"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "57d8eb1f3b8afa3e49a28874ee351730",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": "<3.11,>=3.7",
            "size": 4543486,
            "upload_time": "2024-07-09T02:37:01",
            "upload_time_iso_8601": "2024-07-09T02:37:01.820841Z",
            "url": "https://files.pythonhosted.org/packages/98/42/f92fa724fa55a90dae3b45139cd056308a33fe41f10327fec85986f3a52d/evogym-2.0.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7bbb11ad86a4cd504efbc9372ad572fe33e9b1044c2dd2c1b19f9431b8c134e1",
                "md5": "cb0df151d11e8e26f1d368b0f6a0fa6e",
                "sha256": "5b6cc8f13976fcc7ede46ae9701d13991e0fb0d40ba54c7ee2875e0621dfd22b"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "cb0df151d11e8e26f1d368b0f6a0fa6e",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": "<3.11,>=3.7",
            "size": 4772371,
            "upload_time": "2024-07-09T02:37:03",
            "upload_time_iso_8601": "2024-07-09T02:37:03.553768Z",
            "url": "https://files.pythonhosted.org/packages/7b/bb/11ad86a4cd504efbc9372ad572fe33e9b1044c2dd2c1b19f9431b8c134e1/evogym-2.0.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bf250a45261032e329b8f3729884b50f25feed499c8a3a92df6f06d6825d32ed",
                "md5": "9f4d2fbee3ab0990fd8b3a17d63e32a1",
                "sha256": "fbe9663361556c03aaf44d2090ab32cac0476f5c4a388998bd01f630d96f7d58"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp310-pypy310_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "9f4d2fbee3ab0990fd8b3a17d63e32a1",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": "<3.11,>=3.7",
            "size": 4382990,
            "upload_time": "2024-07-09T02:37:05",
            "upload_time_iso_8601": "2024-07-09T02:37:05.519733Z",
            "url": "https://files.pythonhosted.org/packages/bf/25/0a45261032e329b8f3729884b50f25feed499c8a3a92df6f06d6825d32ed/evogym-2.0.0-pp310-pypy310_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "07fcdc938bf0d70450284d2956d3d2cf1801f63e9dabcea43fd0954a7026eb7b",
                "md5": "a275b5c17d582c1042ba9e8636fac876",
                "sha256": "63cb54d5fef45e7db3553aed92ef0c2120d4cf592b5babfc19803f9be260d729"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a275b5c17d582c1042ba9e8636fac876",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": "<3.11,>=3.7",
            "size": 4668934,
            "upload_time": "2024-07-09T02:37:07",
            "upload_time_iso_8601": "2024-07-09T02:37:07.213829Z",
            "url": "https://files.pythonhosted.org/packages/07/fc/dc938bf0d70450284d2956d3d2cf1801f63e9dabcea43fd0954a7026eb7b/evogym-2.0.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f9e8b571643861e56e3db3424a7412579cc9e77c27b05e943a6603dffeda2e55",
                "md5": "c220a475f6f961e0fb2fe4b4b0f3bd54",
                "sha256": "efbad1158ff226bd4d42eea856f3aa5d95b658d7dbdac174fc2f4144ae30d0fa"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "c220a475f6f961e0fb2fe4b4b0f3bd54",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": "<3.11,>=3.7",
            "size": 4770824,
            "upload_time": "2024-07-09T02:37:08",
            "upload_time_iso_8601": "2024-07-09T02:37:08.953741Z",
            "url": "https://files.pythonhosted.org/packages/f9/e8/b571643861e56e3db3424a7412579cc9e77c27b05e943a6603dffeda2e55/evogym-2.0.0-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "01c54d25be91cb31e31857b834eca3b11bdba1a1b4540b404587a8c7b4c07a5b",
                "md5": "f1a5f949901854e01673e7547df71d4f",
                "sha256": "bed93caba9023af490d9d916dde81fbb40f75cd06a549d2f4e5b67222cb8fbb9"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp37-pypy37_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "f1a5f949901854e01673e7547df71d4f",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": "<3.11,>=3.7",
            "size": 4381323,
            "upload_time": "2024-07-09T02:37:10",
            "upload_time_iso_8601": "2024-07-09T02:37:10.555485Z",
            "url": "https://files.pythonhosted.org/packages/01/c5/4d25be91cb31e31857b834eca3b11bdba1a1b4540b404587a8c7b4c07a5b/evogym-2.0.0-pp37-pypy37_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2d3c7ac4ef802dc01d1a9097b745c378660eb6f863883e5b263a710d81d3930a",
                "md5": "1bd27d12feb19f08a48f78991a98908d",
                "sha256": "fdcfd380ace8e77f3c79d12d0569448a88b5418ff8d052b95d53b46942863308"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "1bd27d12feb19f08a48f78991a98908d",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": "<3.11,>=3.7",
            "size": 4670472,
            "upload_time": "2024-07-09T02:37:12",
            "upload_time_iso_8601": "2024-07-09T02:37:12.655605Z",
            "url": "https://files.pythonhosted.org/packages/2d/3c/7ac4ef802dc01d1a9097b745c378660eb6f863883e5b263a710d81d3930a/evogym-2.0.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "316c022a2bb454d6d5d99bfcb5b13084c120e89c7fca0e4fa7478fd22649615a",
                "md5": "8ce98af4352146b2862a1ef0f636a057",
                "sha256": "f6ea397cf52ac9a72b84506fc3f5fa972fefea25e3016627f2ef87f85cb79c4a"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "8ce98af4352146b2862a1ef0f636a057",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": "<3.11,>=3.7",
            "size": 4543571,
            "upload_time": "2024-07-09T02:37:14",
            "upload_time_iso_8601": "2024-07-09T02:37:14.776268Z",
            "url": "https://files.pythonhosted.org/packages/31/6c/022a2bb454d6d5d99bfcb5b13084c120e89c7fca0e4fa7478fd22649615a/evogym-2.0.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5f78a61b1695df3b4fe296e1b0eb0bf3dee82de208bcfe4aac358983dea390c9",
                "md5": "ca5f4a4bfb2cfbaa171784b9cdec2933",
                "sha256": "0132beb3973bd73db8fb2a4ab7bd9ba9a1f14a8859dd9f5a321bbf2d8f8eda96"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ca5f4a4bfb2cfbaa171784b9cdec2933",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": "<3.11,>=3.7",
            "size": 4772342,
            "upload_time": "2024-07-09T02:37:16",
            "upload_time_iso_8601": "2024-07-09T02:37:16.885121Z",
            "url": "https://files.pythonhosted.org/packages/5f/78/a61b1695df3b4fe296e1b0eb0bf3dee82de208bcfe4aac358983dea390c9/evogym-2.0.0-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ae2e8bbebcce4e31fdae082a428ac3d2cd50959e57fdca49a325e6280cef6880",
                "md5": "ca7d051eb45b99cb02d8a5190647a3cc",
                "sha256": "482b53eb4fce4313c6c4f6f32cd0c237630c422f5f3734ef4a885ed19aec8cff"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp38-pypy38_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "ca7d051eb45b99cb02d8a5190647a3cc",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": "<3.11,>=3.7",
            "size": 4382961,
            "upload_time": "2024-07-09T02:37:18",
            "upload_time_iso_8601": "2024-07-09T02:37:18.668309Z",
            "url": "https://files.pythonhosted.org/packages/ae/2e/8bbebcce4e31fdae082a428ac3d2cd50959e57fdca49a325e6280cef6880/evogym-2.0.0-pp38-pypy38_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3191914fc3bd8890150bb66cf5e3c5c8bc503108e75343b9ca35ffdb0e671608",
                "md5": "2e90a6bdcf9905f90a4124e807b4855e",
                "sha256": "ef1407c96221161611c4a2962088a934a60f995ca9938f9160c9219b96c33529"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl",
            "has_sig": false,
            "md5_digest": "2e90a6bdcf9905f90a4124e807b4855e",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": "<3.11,>=3.7",
            "size": 4670022,
            "upload_time": "2024-07-09T02:37:20",
            "upload_time_iso_8601": "2024-07-09T02:37:20.386152Z",
            "url": "https://files.pythonhosted.org/packages/31/91/914fc3bd8890150bb66cf5e3c5c8bc503108e75343b9ca35ffdb0e671608/evogym-2.0.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5141081eef8351d534f462d2b72b04d3cae87a5ad5a54bb563d93a7d7f81c5da",
                "md5": "fecbcd4896cf096344289066811db1ea",
                "sha256": "88003770eac04ea61427746cfcacd1989595f11ca534d307bcaa8ebf57318170"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "fecbcd4896cf096344289066811db1ea",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": "<3.11,>=3.7",
            "size": 4543536,
            "upload_time": "2024-07-09T02:37:22",
            "upload_time_iso_8601": "2024-07-09T02:37:22.149449Z",
            "url": "https://files.pythonhosted.org/packages/51/41/081eef8351d534f462d2b72b04d3cae87a5ad5a54bb563d93a7d7f81c5da/evogym-2.0.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e0a5df05410ae3c0a30ca384d7265cbf6aa069a5480510812b199d42f0a82f38",
                "md5": "779a0b1107ebf5fb972129f36eb092da",
                "sha256": "e25b8e6e58dded60f487985f55eeaa3e433bdd3b8c0c647d2ef56e9a696fe590"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "779a0b1107ebf5fb972129f36eb092da",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": "<3.11,>=3.7",
            "size": 4772306,
            "upload_time": "2024-07-09T02:37:23",
            "upload_time_iso_8601": "2024-07-09T02:37:23.791239Z",
            "url": "https://files.pythonhosted.org/packages/e0/a5/df05410ae3c0a30ca384d7265cbf6aa069a5480510812b199d42f0a82f38/evogym-2.0.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "eae7b3ba768ad7d4347fd35c3f47c44076654085eee68a6830abce76484edcd4",
                "md5": "8c9c4130e1c27614f6adef3cafb6f589",
                "sha256": "b1f98c0369798939619df043cd5a280a55ebebc42a202060abb8b7b45970bc0b"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0-pp39-pypy39_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "8c9c4130e1c27614f6adef3cafb6f589",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": "<3.11,>=3.7",
            "size": 4383190,
            "upload_time": "2024-07-09T02:37:25",
            "upload_time_iso_8601": "2024-07-09T02:37:25.525092Z",
            "url": "https://files.pythonhosted.org/packages/ea/e7/b3ba768ad7d4347fd35c3f47c44076654085eee68a6830abce76484edcd4/evogym-2.0.0-pp39-pypy39_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ac50baf8af98eb0a1282c93504a653f828c840f85b691f3bbd2e0fc74b75863b",
                "md5": "89c1a003db448feddcfe839dda5d5767",
                "sha256": "03960296a24548a0c662e06aa4c98b8b5b47b997a004e3a53fa0f7fd03541e70"
            },
            "downloads": -1,
            "filename": "evogym-2.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "89c1a003db448feddcfe839dda5d5767",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.11,>=3.7",
            "size": 3324821,
            "upload_time": "2024-07-09T02:29:48",
            "upload_time_iso_8601": "2024-07-09T02:29:48.541142Z",
            "url": "https://files.pythonhosted.org/packages/ac/50/baf8af98eb0a1282c93504a653f828c840f85b691f3bbd2e0fc74b75863b/evogym-2.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-07-09 02:29:48",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "EvolutionGym",
    "github_project": "evogym",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "evogym"
}
        
Elapsed time: 4.18571s