{ "info": { "author": "Leo Hanisch", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Information Technology", "Intended Audience :: Science/Research", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Education", "Topic :: Scientific/Engineering", "Topic :: Scientific/Engineering :: Artificial Intelligence", "Topic :: Scientific/Engineering :: Bio-Informatics", "Topic :: Scientific/Engineering :: Information Analysis", "Topic :: Scientific/Engineering :: Mathematics", "Topic :: Scientific/Engineering :: Visualization", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": "# swarmlib\n\n[![Pypi](https://img.shields.io/pypi/v/swarmlib.svg?style=flat-square)](https://pypi.python.org/pypi/swarmlib) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/swarmlib.svg?style=flat-square)](https://pypi.python.org/pypi/swarmlib) [![Pypi - Downloads](https://img.shields.io/badge/dynamic/json?style=flat-square&color=green&label=downloads&query=%24.total_downloads&url=https%3A%2F%2Fapi.pepy.tech%2Fapi%2Fprojects%2Fswarmlib)](https://pepy.tech/project/swarmlib) [![Stars](https://img.shields.io/github/stars/HaaLeo/swarmlib.svg?label=stars&logo=github&style=flat-square)](https://github.com/HaaLeo/swarmlib/stargazers) \n[![PyPI - License](https://img.shields.io/pypi/l/swarmlib.svg?style=flat-square)](https://raw.githubusercontent.com/HaaLeo/swarmlib/master/LICENSE.txt) [![Lint, Test, Bundle and Deploy](https://img.shields.io/github/workflow/status/HaaLeo/swarmlib/Lint%2C%20Test%2C%20Bundle%20and%20Deploy?label=Lint%2C%20Test%2C%20Bundle%20and%20Deploy&style=flat-square)](https://github.com/HaaLeo/swarmlib/actions?query=workflow%3A%22Lint%2C+Test%2C+Bundle+and+Deploy%22) [![Codecov](https://img.shields.io/codecov/c/github/HaaLeo/swarmlib?style=flat-square)](https://codecov.io/github/HaaLeo/swarmlib) \n[![Chat on Gitter](https://img.shields.io/badge/-chat%20on%20gitter-753a88.svg?logo=gitter&style=flat-square&labelColor=grey)](https://gitter.im/HaaLeo/swarmlib) [![Donate](https://img.shields.io/badge/\u2615\ufe0f-Buy%20Me%20a%20Coffee-blue.svg?&style=flat-square)](https://www.paypal.me/LeoHanisch/3eur) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) \n\n

\n \n \n

\n\n## Description\n\nThis repository implements several swarm optimization algorithms and visualizes their (intermediate) solutions.\nTo run the algorithms one can either use the CLI (recommended) or the API.\n\nFor a list of all available algorithms and their detailed description [checkout the wiki](https://github.com/HaaLeo/swarmlib/wiki).\n\n## Installation\n\nYou can install the package with `pip` from [pypi](https://pypi.org/project/swarmlib).\nInstalling the library in a virtual environment is recommended:\n\n```zsh\n# Create virtual environment\npython3 -m venv .venv\nsource .venv/bin/activate\n\n# Install the latest version of swarmlib\npip install --upgrade swarmlib\n\n# Verify installation\nswarm --version\n```\n\n## Usage\n\nTo print all available algorithms:\n\n```\nswarm --help\n```\n\n## Contribution\n\nIf you found a bug or are missing a feature do not hesitate to [file an issue](https://github.com/HaaLeo/swarmlib/issues/new/choose) or to ask questions on [gitter](https://gitter.im/HaaLeo/swarmlib).\nFor a more detailed guide checkout the [CONTRIBUTING.md](https://github.com/HaaLeo/swarmlib/blob/master/CONTRIBUTING.md#how-to-contribute) file.\n\nPull Requests are welcome!\n\n## Wiki\n\nSwarmlib's wiki includes all of the documentation and more details to each algorithm.\nIt can be found [here](https://github.com/HaaLeo/swarmlib/wiki).\n\n## Support\nWhen you like this package make sure to [star the repository](https://github.com/HaaLeo/swarmlib/stargazers).\nI am always looking for new ideas and feedback.\n\nIn addition, it is possible to sponsor this project via [PayPal](https://www.paypal.me/LeoHanisch/3eur) or [GitHub sponsors](https://github.com/sponsors/HaaLeo).\n\n## Example\n\n![Particle Swarm Optimization](https://raw.githubusercontent.com/HaaLeo/swarmlib/master/doc/example.gif)\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "swarm,swarmlib,lib,library,ant,colony,optimization,optimisation,traveling,salesman,problem,TSP,tsp,ACO,aco,TSPLIB95,tsplib95networkx,visualization,matplotlib,firefly,fireflies,algorithm,cuckoo,cuckoos,search,levy,flights,particle,particles,pso,PSO,artificial,bee,bees,colony,ABC,abc,heuristic,grey,wolf,optimizer,gwo,GWO,whale,whales,WOA,woa", "license": "BSD 3-Clause License", "maintainer": "", "maintainer_email": "", "name": "swarmlib", "package_url": "https://pypi.org/project/swarmlib/", "platform": "", "project_url": "https://pypi.org/project/swarmlib/", "project_urls": { "Changelog": "https://github.com/HaaLeo/swarmlib/blob/master/CHANGELOG.md#changelog", "Documentation": "https://github.com/HaaLeo/swarmlib/wiki", "Funding": "https://github.com/sponsors/HaaLeo", "Issue Tracker": "https://github.com/HaaLeo/swarmlib/issues", "Source": "https://github.com/HaaLeo/swarmlib", "gitter.im": "https://gitter.im/HaaLeo/swarmlib" }, "release_url": "https://pypi.org/project/swarmlib/0.14.1/", "requires_dist": [ "landscapes (==0.0.11)", "tsplib95 (<1.0.0,>=0.7.1)", "matplotlib (<4.0.0,>=3.3.2)", "networkx (<3.0,>=2.5)", "numpy (<2.0.0,>=1.19.3)" ], "requires_python": ">=3.6", "summary": "Implementation and visualization of different swarm optimization algorithms.", "version": "0.14.1", "yanked": false, "yanked_reason": null }, "last_serial": 8917189, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "7fbffcd09a947bd9f0d52185e4ca8535", "sha256": "07bdc62a66b87faa9d4068a71ede03b895ddd597ff2fc85f99b42fb4c82128c2" }, "downloads": -1, "filename": "swarmlib-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "7fbffcd09a947bd9f0d52185e4ca8535", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 10983, "upload_time": "2018-11-23T16:09:20", "upload_time_iso_8601": "2018-11-23T16:09:20.542082Z", "url": "https://files.pythonhosted.org/packages/04/25/59b6a8633574462b3d2492fc9822e9a6d2c28c9b5709ee5c45bc315f5370/swarmlib-0.0.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8e58584edf4378be7a8e5f22d521695e", "sha256": "4b94937fc1f439f009d649ce45282cf41f37412ed46843fd3ea5bd8136d0908b" }, "downloads": -1, "filename": "swarmlib-0.0.1.tar.gz", "has_sig": false, "md5_digest": "8e58584edf4378be7a8e5f22d521695e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 7863, "upload_time": "2018-11-23T16:09:22", "upload_time_iso_8601": "2018-11-23T16:09:22.486094Z", "url": "https://files.pythonhosted.org/packages/11/94/083d6ed48dbaaebaea10bc8cd7cd2decd793b68b026221f77680c5d71d94/swarmlib-0.0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "4179f1e4077c3f77a269f3c0b7960a34", "sha256": "cf94fb2bff3f147be6a7e3b4aa9fac17c964772760a67f3d2098c5c5fb5131cf" }, "downloads": -1, "filename": "swarmlib-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "4179f1e4077c3f77a269f3c0b7960a34", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 15146, "upload_time": "2018-11-29T21:39:54", "upload_time_iso_8601": "2018-11-29T21:39:54.606383Z", "url": "https://files.pythonhosted.org/packages/9e/eb/a3fab8b2db90b821703016836b5d8010e5dba602e76b356ce87041a548fd/swarmlib-0.1.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "f3faa303e876509b6e4c56ab5ae96174", "sha256": "f74ba6aa74a8bdfe23c992f83207aea0814f7fdf45295a458c1704d2f19f162a" }, "downloads": -1, "filename": "swarmlib-0.1.0.tar.gz", "has_sig": false, "md5_digest": "f3faa303e876509b6e4c56ab5ae96174", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 9359, "upload_time": "2018-11-29T21:39:55", "upload_time_iso_8601": "2018-11-29T21:39:55.857224Z", "url": "https://files.pythonhosted.org/packages/a3/5c/ead10264014df78fcc0ddd4a14698a1ac56ea792ad688a7fdca8ab6d1ea8/swarmlib-0.1.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.10.0": [ { "comment_text": "", "digests": { "md5": "564d01da766429637260379b3c7e749d", "sha256": "69d2c99a9445d9e73a7789142182711605981dea68e97d2810362bfeb5f118d8" }, "downloads": -1, "filename": "swarmlib-0.10.0-py3-none-any.whl", "has_sig": false, "md5_digest": "564d01da766429637260379b3c7e749d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 43687, "upload_time": "2020-11-07T10:58:51", "upload_time_iso_8601": "2020-11-07T10:58:51.389071Z", "url": "https://files.pythonhosted.org/packages/fb/76/37f58f2bcf079f595e3421ab1e24ee61987fb5ece74c82044366c6a323cd/swarmlib-0.10.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a127d3e9dc59a04a4f8127c16cdd24d9", "sha256": "818d8ad9a5ed62a1ec5d9fcab57b8f743f51314d7da05cc68739d011c12c86cf" }, "downloads": -1, "filename": "swarmlib-0.10.0.tar.gz", "has_sig": false, "md5_digest": "a127d3e9dc59a04a4f8127c16cdd24d9", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 29154, "upload_time": "2020-11-07T10:58:52", "upload_time_iso_8601": "2020-11-07T10:58:52.715273Z", "url": "https://files.pythonhosted.org/packages/34/73/814508c371a068c32635d08b305a9fcfc773eca155382d81addfeb0ec06f/swarmlib-0.10.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.11.0": [ { "comment_text": "", "digests": { "md5": "5cded5d5e54778f50bf7fc9e703dd30a", "sha256": "ef20e55f6f35ca0eb1b45ef7f4e9c363a11324b6cd0a8168eca34d17ec36b2c4" }, "downloads": -1, "filename": "swarmlib-0.11.0-py3-none-any.whl", "has_sig": false, "md5_digest": "5cded5d5e54778f50bf7fc9e703dd30a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 42375, "upload_time": "2020-11-10T10:02:38", "upload_time_iso_8601": "2020-11-10T10:02:38.686781Z", "url": "https://files.pythonhosted.org/packages/14/62/25ea873fa269bb109f1bd7bcbe55720e12663a3effa38cb1b46f79397c43/swarmlib-0.11.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "904e33391744dd125521f1db6d68a54f", "sha256": "55d4d3f80dec34af7d1f53e0720d0beb539ade2f27036c891b43cd6eedee4b61" }, "downloads": -1, "filename": "swarmlib-0.11.0.tar.gz", "has_sig": false, "md5_digest": "904e33391744dd125521f1db6d68a54f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 25101, "upload_time": "2020-11-10T10:02:40", "upload_time_iso_8601": "2020-11-10T10:02:40.406779Z", "url": "https://files.pythonhosted.org/packages/ab/7d/7e6dd34899f2f323ac356592a8f371205d353bc28a8850fec94e53478f05/swarmlib-0.11.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.12.0": [ { "comment_text": "", "digests": { "md5": "7dbac20a03dbc9ef15005ab18446aef5", "sha256": "c0d0a284e319f89834ec81ffad17c641bf711ade3eb4c51758482481691c8541" }, "downloads": -1, "filename": "swarmlib-0.12.0-py3-none-any.whl", "has_sig": false, "md5_digest": "7dbac20a03dbc9ef15005ab18446aef5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 44181, "upload_time": "2020-11-16T22:53:29", "upload_time_iso_8601": "2020-11-16T22:53:29.143597Z", "url": "https://files.pythonhosted.org/packages/a0/a2/d09d7386388a697ab1e0dc767e2013daa8cca31e611b4bf779c518c5e351/swarmlib-0.12.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c948a72483d194cda421a7c9d8df1ae0", "sha256": "0bc3093434210da36d8cfa3ae76be326a97f70ea7052c4ed8dfcba68a20d56c0" }, "downloads": -1, "filename": "swarmlib-0.12.0.tar.gz", "has_sig": false, "md5_digest": "c948a72483d194cda421a7c9d8df1ae0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 26458, "upload_time": "2020-11-16T22:53:30", "upload_time_iso_8601": "2020-11-16T22:53:30.115364Z", "url": "https://files.pythonhosted.org/packages/56/a6/f308b053d7886b619ef33f226c5a57bd30af7e3926fce41986197d097acb/swarmlib-0.12.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.12.1": [ { "comment_text": "", "digests": { "md5": "4c83ee5903e984bb49f4f1d3dc5aa6fe", "sha256": "375c173c98df2764be000bdabe067ed948695b129f8031462ba87a73409d4fc6" }, "downloads": -1, "filename": "swarmlib-0.12.1-py3-none-any.whl", "has_sig": false, "md5_digest": "4c83ee5903e984bb49f4f1d3dc5aa6fe", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 44197, "upload_time": "2020-11-17T15:19:27", "upload_time_iso_8601": "2020-11-17T15:19:27.085770Z", "url": "https://files.pythonhosted.org/packages/af/fd/bd7390fd46266dda7a2bd961e65e00f2d9ce7112f2405837d33015d8a688/swarmlib-0.12.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ebc87f0c28d99dc461539b877d52cf39", "sha256": "ea5026c517e4871fb43c2bddccc67db903d9a25a1d39d05b52a0c8e1356103e8" }, "downloads": -1, "filename": "swarmlib-0.12.1.tar.gz", "has_sig": false, "md5_digest": "ebc87f0c28d99dc461539b877d52cf39", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 26496, "upload_time": "2020-11-17T15:19:28", "upload_time_iso_8601": "2020-11-17T15:19:28.083145Z", "url": "https://files.pythonhosted.org/packages/9f/9a/2c0fbb14c9dc5b616b4afe2e9767b2ac224435ea96d7afda3a2e7e5582e3/swarmlib-0.12.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.13.0": [ { "comment_text": "", "digests": { "md5": "f5d23915fbc221a474091833a109362c", "sha256": "ff2bdb04f53d12af17d31036cb1367e127d3fad44403deebf9c3b5dc777aa681" }, "downloads": -1, "filename": "swarmlib-0.13.0-py3-none-any.whl", "has_sig": false, "md5_digest": "f5d23915fbc221a474091833a109362c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 46097, "upload_time": "2020-11-25T19:07:41", "upload_time_iso_8601": "2020-11-25T19:07:41.449708Z", "url": "https://files.pythonhosted.org/packages/f9/d9/0f14713712881b66e87240bccb1b80ed4e05dc215c1b9d43b6a2b6628081/swarmlib-0.13.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "08246785aeb0b24695db2485e1b1ded6", "sha256": "19cf8d6b82bd396598f262f5f261453cdccf121fe4d29b522da8b6c1cec26e01" }, "downloads": -1, "filename": "swarmlib-0.13.0.tar.gz", "has_sig": false, "md5_digest": "08246785aeb0b24695db2485e1b1ded6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 27517, "upload_time": "2020-11-25T19:07:42", "upload_time_iso_8601": "2020-11-25T19:07:42.310685Z", "url": "https://files.pythonhosted.org/packages/10/99/f9ff5b4a55cd34893c0c01886dd6ae54550a55ce707a5d9dbf2955412c6b/swarmlib-0.13.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.14.0": [ { "comment_text": "", "digests": { "md5": "dd04cf0e03fb48dbbd6305f9be675529", "sha256": "64d65a6e4ea4a6e4938f6925ace0a9837d5301b84afa429ecc74724da33de4b9" }, "downloads": -1, "filename": "swarmlib-0.14.0-py3-none-any.whl", "has_sig": false, "md5_digest": "dd04cf0e03fb48dbbd6305f9be675529", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 45934, "upload_time": "2020-12-04T20:28:21", "upload_time_iso_8601": "2020-12-04T20:28:21.365935Z", "url": "https://files.pythonhosted.org/packages/50/42/00ac330ef116b5f640d95d96936f83a5596a413630543ba147cf63f5544e/swarmlib-0.14.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "13258aa748a53388b95f614f51e7935f", "sha256": "60517c546def183ec021293da09fe1bd4c6bf5c70f6e4360a86a7f7c22735f4f" }, "downloads": -1, "filename": "swarmlib-0.14.0.tar.gz", "has_sig": false, "md5_digest": "13258aa748a53388b95f614f51e7935f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 27627, "upload_time": "2020-12-04T20:28:22", "upload_time_iso_8601": "2020-12-04T20:28:22.396270Z", "url": "https://files.pythonhosted.org/packages/fe/42/c9e836b70fc436c4960eee3bbbe9e611ac7c5d296f99047682b2a5cc5871/swarmlib-0.14.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.14.1": [ { "comment_text": "", "digests": { "md5": "420bc26bc7b4baf418c5935828b422f5", "sha256": "8d3afa1a79b5c7121a3aab38de2c261beeeddb133692f8c67dfebaa0812c0572" }, "downloads": -1, "filename": "swarmlib-0.14.1-py3-none-any.whl", "has_sig": false, "md5_digest": "420bc26bc7b4baf418c5935828b422f5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 45942, "upload_time": "2020-12-16T20:54:59", "upload_time_iso_8601": "2020-12-16T20:54:59.236785Z", "url": "https://files.pythonhosted.org/packages/0a/52/59e31afae40db2c0b950f33dd126fb1ef9c43ff970c81e8d9fc7be30f0fe/swarmlib-0.14.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "87d4563a4409918499dfbf4f424a5605", "sha256": "b3fa798c2d730bff6ecff96b3078493bd2c91a52b6e83105db6f8461735a575b" }, "downloads": -1, "filename": "swarmlib-0.14.1.tar.gz", "has_sig": false, "md5_digest": "87d4563a4409918499dfbf4f424a5605", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 27581, "upload_time": "2020-12-16T20:55:00", "upload_time_iso_8601": "2020-12-16T20:55:00.264433Z", "url": "https://files.pythonhosted.org/packages/09/64/513760182805c172758150ef96e49bfacf0027ce099852ca4ac8b46555f5/swarmlib-0.14.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "629899220bdeff7abc3cb409295e5d27", "sha256": "cd26ecc4e63556fe91e7c61e40e6136206090457196bdadc8c849f5dfc9101ce" }, "downloads": -1, "filename": "swarmlib-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "629899220bdeff7abc3cb409295e5d27", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 18161, "upload_time": "2018-12-14T14:16:40", "upload_time_iso_8601": "2018-12-14T14:16:40.888302Z", "url": "https://files.pythonhosted.org/packages/ab/3b/0d457f8b303b799a61eca76eff1a8ce8c14421441fa428fedef33d56f212/swarmlib-0.2.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "bd4c5b2d91c488135b22c5ac2a9c9b54", "sha256": "7131eaced81f0b5e7b484ddb8ed2036a3c6af0b0c0b36db8b9ccda7db6366bb8" }, "downloads": -1, "filename": "swarmlib-0.2.0.tar.gz", "has_sig": false, "md5_digest": "bd4c5b2d91c488135b22c5ac2a9c9b54", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 11404, "upload_time": "2018-12-14T14:16:42", "upload_time_iso_8601": "2018-12-14T14:16:42.623980Z", "url": "https://files.pythonhosted.org/packages/87/32/436ebadda3a78b6b1d23d5d3dd8202e353fb1adc0d109acab1f1ab3249e6/swarmlib-0.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "26f6abb21aa1cc8319398dc40370a1fe", "sha256": "b3ae2c6ef0e5a19b05d5ce303a1d385c18557352945940f5c928cb8170a9bfe4" }, "downloads": -1, "filename": "swarmlib-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "26f6abb21aa1cc8319398dc40370a1fe", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 18417, "upload_time": "2018-12-18T18:49:16", "upload_time_iso_8601": "2018-12-18T18:49:16.260209Z", "url": "https://files.pythonhosted.org/packages/d0/b7/96f9f22ee06466daf0f6e127fe40ccd8c28f24a65b434e7ff0ad5d47d008/swarmlib-0.3.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "96cb26aa1cc1a16a9dd38cfacaed6358", "sha256": "eed31ab38e30fea53d7a03bac2659796292bd587a6a3a992402904941151ede4" }, "downloads": -1, "filename": "swarmlib-0.3.0.tar.gz", "has_sig": false, "md5_digest": "96cb26aa1cc1a16a9dd38cfacaed6358", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 11576, "upload_time": "2018-12-18T18:49:17", "upload_time_iso_8601": "2018-12-18T18:49:17.957591Z", "url": "https://files.pythonhosted.org/packages/18/5e/5d03e8831a83959a830175d38c3235d1981d610931281d72f278b317e692/swarmlib-0.3.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "c8b4900a0e6993c51035e51ce2d21652", "sha256": "fc607270f49f57bdcdd8b874c35db5684bb6515ebf78d71089f35e801a1d84d6" }, "downloads": -1, "filename": "swarmlib-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "c8b4900a0e6993c51035e51ce2d21652", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 18417, "upload_time": "2019-10-30T22:19:46", "upload_time_iso_8601": "2019-10-30T22:19:46.465408Z", "url": "https://files.pythonhosted.org/packages/8b/79/9a7968aaa32c529a67905c5a3666d1ba8035c8b8d6152abb92eec0ca51f4/swarmlib-0.3.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8e96c346c60de4f7f7a00eb42d3654bd", "sha256": "80d1ddd56094a9be31e805e5b85d53f06e67b5f0eed4c3c63e4d22d9a73d6eb7" }, "downloads": -1, "filename": "swarmlib-0.3.1.tar.gz", "has_sig": false, "md5_digest": "8e96c346c60de4f7f7a00eb42d3654bd", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 14435, "upload_time": "2019-10-30T22:19:48", "upload_time_iso_8601": "2019-10-30T22:19:48.040243Z", "url": "https://files.pythonhosted.org/packages/79/2e/2b9f8cf21654c33a15037442c468ff3ad30e6f0f3f0a05d5d386df8fa807/swarmlib-0.3.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "dd0e6e4b31aec6a84f64fd8bc11bb2b5", "sha256": "8ba34e461537dcdab2aa25db8a04882d18ab36070ae7cefb14fbb18ece38ee21" }, "downloads": -1, "filename": "swarmlib-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "dd0e6e4b31aec6a84f64fd8bc11bb2b5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 18445, "upload_time": "2020-01-09T22:53:07", "upload_time_iso_8601": "2020-01-09T22:53:07.184394Z", "url": "https://files.pythonhosted.org/packages/68/1b/4575c0f1230a76123a6aba02dce53e51e5ea2d51e16fcfb4daaa0c4894bf/swarmlib-0.3.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a19950b5d161daca72e5e0138486da60", "sha256": "43b16d5b391eb74ebc50b1c40b8d668091fcf54f68f93f9034df7aeb6cfec59a" }, "downloads": -1, "filename": "swarmlib-0.3.2.tar.gz", "has_sig": false, "md5_digest": "a19950b5d161daca72e5e0138486da60", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 14452, "upload_time": "2020-01-09T22:53:08", "upload_time_iso_8601": "2020-01-09T22:53:08.475311Z", "url": "https://files.pythonhosted.org/packages/75/80/6d5a9ec91b44d13042420d78710cfff47fb67598dbeb1502c6a83c96d147/swarmlib-0.3.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "b242a4fbeb432ddd67b75291b1d64cd6", "sha256": "2cc674b05633941203b6c5f3d3b51b700b01bcbe336243157fc23b6293ceeb0b" }, "downloads": -1, "filename": "swarmlib-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b242a4fbeb432ddd67b75291b1d64cd6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 24521, "upload_time": "2020-01-19T20:53:16", "upload_time_iso_8601": "2020-01-19T20:53:16.932589Z", "url": "https://files.pythonhosted.org/packages/9d/15/a801d15ec39da1bbdfdbfb11c04004bed5ed338e6b7934da2c712bc20d02/swarmlib-0.4.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a35ce46a7ad9386caf149b3a9b35c77a", "sha256": "27cd7727266c5a77040be4205e5a6cac5d972d4b8c0ae98c2c98e58b64965a4c" }, "downloads": -1, "filename": "swarmlib-0.4.0.tar.gz", "has_sig": false, "md5_digest": "a35ce46a7ad9386caf149b3a9b35c77a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 17640, "upload_time": "2020-01-19T20:53:18", "upload_time_iso_8601": "2020-01-19T20:53:18.551416Z", "url": "https://files.pythonhosted.org/packages/ee/d4/412a55f948311525631d07fe94a650bb600a93c4360e412a04d843cfd3f7/swarmlib-0.4.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "15b9658f1f68d153633adbe4a47d23b2", "sha256": "930b82a2898a5c7f49f96f5c6916c50f43857eab7dbd41d4aab67a8a7d59610a" }, "downloads": -1, "filename": "swarmlib-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "15b9658f1f68d153633adbe4a47d23b2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 24536, "upload_time": "2020-01-19T21:17:24", "upload_time_iso_8601": "2020-01-19T21:17:24.904897Z", "url": "https://files.pythonhosted.org/packages/fe/8a/54da4780ae273c66d7e9f84580ce64383e87d5d161ba4a2df514e2f38602/swarmlib-0.4.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "867c75ad7b6966ef6c123f7c63625cac", "sha256": "2617e4494fe2cc7e8bc7928e569e9bbfd32725e3a132f9986039deb57f288d3c" }, "downloads": -1, "filename": "swarmlib-0.4.1.tar.gz", "has_sig": false, "md5_digest": "867c75ad7b6966ef6c123f7c63625cac", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 17671, "upload_time": "2020-01-19T21:17:26", "upload_time_iso_8601": "2020-01-19T21:17:26.533191Z", "url": "https://files.pythonhosted.org/packages/44/31/8d8f14375c9bc9557668f69c34ebb803a6ff486b152acaeaf8308c82ea31/swarmlib-0.4.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "9f05d3ce962c81930cf6be7e43a68dee", "sha256": "930199a790663ad8fa805f411aad28c54e05e87a903f39e01354dd5517cccece" }, "downloads": -1, "filename": "swarmlib-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "9f05d3ce962c81930cf6be7e43a68dee", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 29943, "upload_time": "2020-01-21T23:40:45", "upload_time_iso_8601": "2020-01-21T23:40:45.825603Z", "url": "https://files.pythonhosted.org/packages/a1/0e/b018db2e15ae1fef0506d72fc128beb7a99ddd6ba44ec0260d981d67a21f/swarmlib-0.5.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "32b815e2dd536aa251c60cf0df724fa5", "sha256": "bc8aa710d3fbe0edefaef49efe93693d2c73e1ddfe480eecc19a5226b4f33b19" }, "downloads": -1, "filename": "swarmlib-0.5.0.tar.gz", "has_sig": false, "md5_digest": "32b815e2dd536aa251c60cf0df724fa5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 20559, "upload_time": "2020-01-21T23:40:47", "upload_time_iso_8601": "2020-01-21T23:40:47.466572Z", "url": "https://files.pythonhosted.org/packages/32/f0/e5c91e03ef3384ab651367926783e754605f45c6ee80a5ec0f4e73c6401a/swarmlib-0.5.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "e6c8478aba61c9db4c09b97596edc0f0", "sha256": "ed42ef4470b6751175a2c81a8c4a349a73c43c20468a3d7250a99c75d4872a0c" }, "downloads": -1, "filename": "swarmlib-0.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e6c8478aba61c9db4c09b97596edc0f0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 29448, "upload_time": "2020-01-24T11:29:28", "upload_time_iso_8601": "2020-01-24T11:29:28.820989Z", "url": "https://files.pythonhosted.org/packages/81/a4/6d696892b9297fdae43795de4dd960634b83d5c2fac9c038979cf241fc36/swarmlib-0.6.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "921784efe3fc3e3855daf3e3eb856295", "sha256": "959e976ac770c74c8a3b3b9f221476e4ee5ee9f627c0dc012f343298bcc2b23e" }, "downloads": -1, "filename": "swarmlib-0.6.0.tar.gz", "has_sig": false, "md5_digest": "921784efe3fc3e3855daf3e3eb856295", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 19941, "upload_time": "2020-01-24T11:29:30", "upload_time_iso_8601": "2020-01-24T11:29:30.308332Z", "url": "https://files.pythonhosted.org/packages/72/01/9eafea0a238b6dcd4dd18d6a9e1959b90fb410eb1730588b97785e286260/swarmlib-0.6.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "58a3b3726f3dd8365d1de4fae5fb1161", "sha256": "539cee36edd5bbcb038a7e846ee01ae493c05e9895574c9cf994014b5f832223" }, "downloads": -1, "filename": "swarmlib-0.6.1-py3-none-any.whl", "has_sig": false, "md5_digest": "58a3b3726f3dd8365d1de4fae5fb1161", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 29448, "upload_time": "2020-01-24T12:05:43", "upload_time_iso_8601": "2020-01-24T12:05:43.128618Z", "url": "https://files.pythonhosted.org/packages/fa/49/24cab83234fd8f87e3921239aea14de21d1338708c3484d4aafb1b50be40/swarmlib-0.6.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "41e21e934f7077cebe96e4ac4b105a3b", "sha256": "8ac4857410ddb7b2ecda1186972547776560f35e27b572f3fb8eefff1617e26f" }, "downloads": -1, "filename": "swarmlib-0.6.1.tar.gz", "has_sig": false, "md5_digest": "41e21e934f7077cebe96e4ac4b105a3b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 19951, "upload_time": "2020-01-24T12:05:44", "upload_time_iso_8601": "2020-01-24T12:05:44.704577Z", "url": "https://files.pythonhosted.org/packages/39/93/7b0c9ae9468c4ea67c4b253deb119701b4ae5616629a0149c2d25efd43a2/swarmlib-0.6.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "6e4f6c68d2979fe70ebf8e018ab34578", "sha256": "2f2c805be8f60ed44d283ba25a43deabc986d7933d65c19123d1bebb0a68c5d6" }, "downloads": -1, "filename": "swarmlib-0.6.2-py3-none-any.whl", "has_sig": false, "md5_digest": "6e4f6c68d2979fe70ebf8e018ab34578", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 29991, "upload_time": "2020-01-25T21:54:13", "upload_time_iso_8601": "2020-01-25T21:54:13.190585Z", "url": "https://files.pythonhosted.org/packages/aa/c1/a4c3f83e074b13e1a1c2501cbf7ccc0ee5affd30d1ef5a7671be979597c3/swarmlib-0.6.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "521c72c8140b887b886bd5e85a948d84", "sha256": "47c7c67ba20871e9d42b5cd2b05b62d95481df1ed59d49c63d4b48b768f69722" }, "downloads": -1, "filename": "swarmlib-0.6.2.tar.gz", "has_sig": false, "md5_digest": "521c72c8140b887b886bd5e85a948d84", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 20476, "upload_time": "2020-01-25T21:54:14", "upload_time_iso_8601": "2020-01-25T21:54:14.868785Z", "url": "https://files.pythonhosted.org/packages/f0/f4/45ae877e3b6940bd51db8dfaeac86c29ffce4a2b09399d16424f3fe77c9a/swarmlib-0.6.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "d89c508fa2c919b75e5e85454a9740a7", "sha256": "65d112269e8ea0e26dad824f77d0ea6974df86d247740f5b3b714c6a4e250e56" }, "downloads": -1, "filename": "swarmlib-0.7.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d89c508fa2c919b75e5e85454a9740a7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 32680, "upload_time": "2020-02-17T12:19:10", "upload_time_iso_8601": "2020-02-17T12:19:10.509090Z", "url": "https://files.pythonhosted.org/packages/04/7a/fab36becdc9cc2d8a3371855865d25e12546e7cecafb6523e5459b49104c/swarmlib-0.7.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "08eb7e64d0cb1a82f9ec4e485cd0ffb1", "sha256": "73b7e81778c21fcbf072df7c1a434b2ca8a519b996e681c2e0bdc05ae0683ce6" }, "downloads": -1, "filename": "swarmlib-0.7.0.tar.gz", "has_sig": false, "md5_digest": "08eb7e64d0cb1a82f9ec4e485cd0ffb1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 22355, "upload_time": "2020-02-17T12:19:12", "upload_time_iso_8601": "2020-02-17T12:19:12.003204Z", "url": "https://files.pythonhosted.org/packages/98/cd/e737e9bd953f41206525c61d744cb30eadd7cf55dc220c2b92fd8d24dcfc/swarmlib-0.7.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "8e8f5ddfaf1b84dc9b6f44dff8aad65e", "sha256": "771b6b8d80fb6305e7757a0d51d1b6a463c9fbd72026ff5c6892af43d702032f" }, "downloads": -1, "filename": "swarmlib-0.8.0-py3-none-any.whl", "has_sig": false, "md5_digest": "8e8f5ddfaf1b84dc9b6f44dff8aad65e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 39201, "upload_time": "2020-04-07T15:31:17", "upload_time_iso_8601": "2020-04-07T15:31:17.257005Z", "url": "https://files.pythonhosted.org/packages/15/02/308a1b9482c7cbf766155aae6aac3f12f6cae670799b09341a791988afad/swarmlib-0.8.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "7a51c666d7b278607f9fa9bbabd58904", "sha256": "d043c7a31fcb0bd3add7360146189dab7ee407fda4c7a783cbd87066c0a3b8f6" }, "downloads": -1, "filename": "swarmlib-0.8.0.tar.gz", "has_sig": false, "md5_digest": "7a51c666d7b278607f9fa9bbabd58904", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 26764, "upload_time": "2020-04-07T15:31:18", "upload_time_iso_8601": "2020-04-07T15:31:18.446459Z", "url": "https://files.pythonhosted.org/packages/99/91/58e9b8c4570c2d3561a22b7e4acc81f66b2a0f55f491b2f7a2a145cd334d/swarmlib-0.8.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "446a9d773e4d201a124a544d47a9a8fd", "sha256": "b1c8137ae2ba4fdf8ccd1f66eaa47cda4e03ee3d9446340cf23a36e40e39e6f1" }, "downloads": -1, "filename": "swarmlib-0.8.1-py3-none-any.whl", "has_sig": false, "md5_digest": "446a9d773e4d201a124a544d47a9a8fd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 39192, "upload_time": "2020-04-13T12:12:25", "upload_time_iso_8601": "2020-04-13T12:12:25.713084Z", "url": "https://files.pythonhosted.org/packages/d3/60/87b93340357fd548623c19b900930134fbe4b8efb9dfb66ef89254cf9fee/swarmlib-0.8.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "119609fafa2fdd3c099fd3511d1272b6", "sha256": "c77676442302912071e091b422242d4811a2cc3b87211bf36638a9810c14b0e5" }, "downloads": -1, "filename": "swarmlib-0.8.1.tar.gz", "has_sig": false, "md5_digest": "119609fafa2fdd3c099fd3511d1272b6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 26777, "upload_time": "2020-04-13T12:12:26", "upload_time_iso_8601": "2020-04-13T12:12:26.959522Z", "url": "https://files.pythonhosted.org/packages/9b/a3/3bbd21c806e059e3fccf76e7a754e6af69479b0ce66ad5ac68e0a67f8c16/swarmlib-0.8.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "8834682603eebac8b8e11e38dee3f0a8", "sha256": "7a7a8aa10fc85c12b3245594305ec2706977c182ba2c7d629a416ebdeda45adb" }, "downloads": -1, "filename": "swarmlib-0.9.0-py3-none-any.whl", "has_sig": false, "md5_digest": "8834682603eebac8b8e11e38dee3f0a8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 43137, "upload_time": "2020-07-21T07:56:30", "upload_time_iso_8601": "2020-07-21T07:56:30.088740Z", "url": "https://files.pythonhosted.org/packages/40/da/bbd47c1efdd898629cf2d978f86a65622510c0fa93d14df6424c740bc726/swarmlib-0.9.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ec7520678afad1e79095eb8d88219451", "sha256": "1dcdf68beade547b4ef34ed452f60de72c4691da398ef1f1d6b07888dd30f1f8" }, "downloads": -1, "filename": "swarmlib-0.9.0.tar.gz", "has_sig": false, "md5_digest": "ec7520678afad1e79095eb8d88219451", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 29018, "upload_time": "2020-07-21T07:56:31", "upload_time_iso_8601": "2020-07-21T07:56:31.353435Z", "url": "https://files.pythonhosted.org/packages/1d/1e/6bd6e65434814146ce3fa65d4e3ee929e2516600a71494dc509a1a792cd7/swarmlib-0.9.0.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "420bc26bc7b4baf418c5935828b422f5", "sha256": "8d3afa1a79b5c7121a3aab38de2c261beeeddb133692f8c67dfebaa0812c0572" }, "downloads": -1, "filename": "swarmlib-0.14.1-py3-none-any.whl", "has_sig": false, "md5_digest": "420bc26bc7b4baf418c5935828b422f5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 45942, "upload_time": "2020-12-16T20:54:59", "upload_time_iso_8601": "2020-12-16T20:54:59.236785Z", "url": "https://files.pythonhosted.org/packages/0a/52/59e31afae40db2c0b950f33dd126fb1ef9c43ff970c81e8d9fc7be30f0fe/swarmlib-0.14.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "87d4563a4409918499dfbf4f424a5605", "sha256": "b3fa798c2d730bff6ecff96b3078493bd2c91a52b6e83105db6f8461735a575b" }, "downloads": -1, "filename": "swarmlib-0.14.1.tar.gz", "has_sig": false, "md5_digest": "87d4563a4409918499dfbf4f424a5605", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 27581, "upload_time": "2020-12-16T20:55:00", "upload_time_iso_8601": "2020-12-16T20:55:00.264433Z", "url": "https://files.pythonhosted.org/packages/09/64/513760182805c172758150ef96e49bfacf0027ce099852ca4ac8b46555f5/swarmlib-0.14.1.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }