Apache OpenDAL™ Python Binding
Project description
Apache OpenDAL™ Python Binding
Documentation: main
This package intends to build a native python binding for Apache OpenDAL.
Installation
pip install opendal
Usage
fs service example:
import opendal
op = opendal.Operator("fs", root="/tmp")
op.write("test.txt", b"Hello World")
print(op.read("test.txt"))
print(op.stat("test.txt").content_length)
Or using the async API:
import asyncio
async def main():
op = opendal.AsyncOperator("fs", root="/tmp")
await op.write("test.txt", b"Hello World")
print(await op.read("test.txt"))
asyncio.run(main())
s3 service example:
import opendal
op = opendal.Operator("s3", root="/tmp", bucket="your_bucket_name", region="your_region")
op.write("test.txt", b"Hello World")
print(op.read("test.txt"))
print(op.stat("test.txt").content_length)
Or using the async API:
import asyncio
async def main():
op = opendal.AsyncOperator("s3", root="/tmp", bucket="your_bucket_name", region="your_region")
await op.write("test.txt", b"Hello World")
print(await op.read("test.txt"))
asyncio.run(main())
Development
Setup virtualenv:
python -m venv venv
Activate venv:
source venv/bin/activate
Install maturin
:
pip install maturin
Build bindings:
maturin develop
Run some tests:
maturin develop -E test
# To run `test_write.py` and use `fs` operator
OPENDAL_TEST=fs OPENDAL_FS_ROOT=/tmp pytest -vk test_write
Build API docs:
maturin develop -E docs
pdoc -t ./template opendal
License and Trademarks
Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0
Apache OpenDAL, OpenDAL, and Apache are either registered trademarks or trademarks of the Apache Software Foundation.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
opendal-0.45.0.tar.gz
(676.8 kB
view hashes)
Built Distributions
Close
Hashes for opendal-0.45.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 739d40ef5e2465b4ba898818e19349c7a45ecf96b16e39cf569a7a4ebe51b683 |
|
MD5 | ca10b7546ef8dc01f2b5ca19db962ae1 |
|
BLAKE2b-256 | 565a6a2439148ac3a7ae49add395a21ad87b85a3b627f0a52fc365f163dbdfbf |
Close
Hashes for opendal-0.45.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 179ac489d016bdc5f51cd9e0459e24bca7b0f9a5886badad42f2f68105fad107 |
|
MD5 | 19e0f1889f21b8b16a74f07f319dc33b |
|
BLAKE2b-256 | d31e6703793b6aadafa35ed9a86e9435fe57dc24c31fb074c54973877bc99870 |
Close
Hashes for opendal-0.45.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a860d5adbc398eb3308aece798b87f78e8bc3731bb7a418f019f95ea9a1b663d |
|
MD5 | 5865e10c43a50266bdd486c384ad808c |
|
BLAKE2b-256 | b237f235dac5d2c9166b0c2f87e3e9e7340d43f87797fa97d6afc7b5694de605 |
Close
Hashes for opendal-0.45.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0f45c2ec39368533919958e477e41afe0f81c07ed990f9442a70a980c76c99ba |
|
MD5 | 453e150c6cb37787f9e3bc4679bb0138 |
|
BLAKE2b-256 | 771c27888a58807f8995879befe7f88f845a29de2feacefe2a05b7fd686be60b |
Close
Hashes for opendal-0.45.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ecd83a88bc85e8458c714d690834ac7490d6bc3d78f906f59a28e6f21fa0e0f |
|
MD5 | 0bc48479a8540370aee243134a6c8d38 |
|
BLAKE2b-256 | 642b1872d27561498d4dea58460664f9d8800c455e8807a10331c6161da38093 |
Close
Hashes for opendal-0.45.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f223666dea88a34d7ffb101015eb9c6033475a1a1758d30056d9ad2c52fa1dd2 |
|
MD5 | 7f851ddac4e7d994618fde7feb3a48ef |
|
BLAKE2b-256 | 7f11a66772538bfe5fe025fcb84fcb0daa3f723351c47a5ddbcf5a96520194e7 |
Close
Hashes for opendal-0.45.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fe8d2ce2dc726b7be885b9ee649e6fdd8e40d9d8a9d01467d3fec7d88162f34f |
|
MD5 | d4f7449d7fe416a6167850219f6b55eb |
|
BLAKE2b-256 | 764f6b82ea1f2e4238773c15f0eb342bd554c4f62af3d8485cde991ec4be30cf |
Close
Hashes for opendal-0.45.0-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 435691f0820a0a2c7c5de968a6725d52d7cee35343617552615be6e2a0b93bb8 |
|
MD5 | 177ff3bf1a553715db01745d7223c57f |
|
BLAKE2b-256 | c10961af4aa167f0f0a3ebb1f601f9430f2ce0c93ec3e7c460d98e9550cf5f12 |
Close
Hashes for opendal-0.45.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0267ae96c1cb6aac7a05245568458e17ab048136f7bb40e511f461ac52b7a9f3 |
|
MD5 | 02cbc8e2ac3d5339c5e4474a6526e97e |
|
BLAKE2b-256 | 39c7d18c5b0d430ba54b2b499fd106d0552de878ed6e85376217b2bae957ef9d |
Close
Hashes for opendal-0.45.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c9f43077f861fb2a9bce819047b56f68ec6a42c3408cb3d79b12133e3f97a88f |
|
MD5 | 4e1e60ed902556398438f52f3366b5f9 |
|
BLAKE2b-256 | 9bc7db9d438a41edd7c18c98a3a910a6bb0acab2a6c6d851a5143a2292fd9a6b |
Close
Hashes for opendal-0.45.0-pp37-pypy37_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb71f5b3a383a1327217daeb8cb7b6258283ec4a074c2614e6be451aeb2cc506 |
|
MD5 | 877562879ba182d47786fcaf6a7ed566 |
|
BLAKE2b-256 | 2eb9e028a6388f4f0de5e60d723ee3acbf1e5286ac61c2e570c58ce241ef2101 |
Close
Hashes for opendal-0.45.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1bb5e86c0cb99c5f69ce0fe37cb3a1a27bff056b9f06f81f83acc90b6a001696 |
|
MD5 | f2fbe5c12b551531d776654db6dbe2c6 |
|
BLAKE2b-256 | 882636c949ebb1130604fcea4681592784dd58efe7d54786a0c33b4071160786 |
Close
Hashes for opendal-0.45.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 26263cec137ab1bd430880931a0e6d10cf41e6a06477b17084a06874e984e854 |
|
MD5 | 9b875a3d2f4f639bebcdb7a63c694506 |
|
BLAKE2b-256 | 4843a0ded370e8b2fc1c771a5f58982e5a3ffb5529acc8ad10b39e206f2dea4a |
Close
Hashes for opendal-0.45.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 13fecdb2bef9d23458d6748f9e8d6e30c3b84049c6ddd27d57307c48907eda78 |
|
MD5 | eee7738966ad2b3f295b2f62d0cb0f19 |
|
BLAKE2b-256 | 94eab017aee4873ab2617c33fb64e942ca32b3034617c145147954427f3d7b27 |
Close
Hashes for opendal-0.45.0-cp312-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6484797b83be61b19963ac3fb706d54f6224a1b3513fc2f7d0317182ffd00da3 |
|
MD5 | 45d74856ddbbcb349fb60ebfab59c4a6 |
|
BLAKE2b-256 | 49fbf5898f48865f9e81aa2ca2aa30113a36679b682907b0700dfdcd88d849c7 |
Close
Hashes for opendal-0.45.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed31d2fe7e96d39d24db1c1d342a0a07c021dae527e1277073bb82f3eb4ac472 |
|
MD5 | aa680e6b655a1f53b82946213b507fe6 |
|
BLAKE2b-256 | f90774486d4acbddd0776bdcd2a502d2096a9cefb9f47b23d65e26027c81cc4e |
Close
Hashes for opendal-0.45.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5226c7c2e9cf0ea8a66bbd858543dcaaf7f323c1cd4d10880439159d0e2bf731 |
|
MD5 | 91fa9e6d9bc1b0a374a9bbb9f291ac97 |
|
BLAKE2b-256 | 2b59a0ae196d5daca71e7d2c105bc089803f4fe22b99f7af44d120b9cc273431 |
Close
Hashes for opendal-0.45.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2050574bcfd054a749c31ebe3e0964e08475c1cf2a47449cc85f7b557c833e82 |
|
MD5 | 86dcf1d69f1fe1d93316a9d75c77004b |
|
BLAKE2b-256 | 31a149d2bffcf7e9fd20c19aa3e5f0501e5a316d1614f2badcef76cd79d0e61a |
Close
Hashes for opendal-0.45.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9645ed2e486ef13990a989a014be80b583d9b576755ae6262e947e4e804ad6fc |
|
MD5 | 4f967d37ebabb4856f69d1f768bc8687 |
|
BLAKE2b-256 | cf05e7380c578440134926ebcb9b601ca12fcfac7ff52a07e5fc3e446c30b5dc |
Close
Hashes for opendal-0.45.0-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 298804fa6afead6b37cb1198fb381bfdbe910f344555c0f46e0dfb627093893d |
|
MD5 | 8b908d035795df7143a3123b16941899 |
|
BLAKE2b-256 | 003dcf24f25db9c5000b8e201f70780270af0cc60c55ba51389f705ffe07a1af |
Close
Hashes for opendal-0.45.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd8b886ee9da2c7dad2938a962d329540b8b393820092d96abbb66259dc4d04b |
|
MD5 | 02ff50619d418290265dc79476bf448a |
|
BLAKE2b-256 | f13bcc46980dfc4440d9520eec1267a84b35a8fea416cdc9de5a400591f14154 |
Close
Hashes for opendal-0.45.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 93b4062d3bdc5872dac414d4f915c68b0b287c6262751ccf3baa11314b166823 |
|
MD5 | b19a4665dd6a6679d867d52d9279e709 |
|
BLAKE2b-256 | 0b0236b69076f451f54938949d52ffd6e58a46dba0765767f46719b591a72302 |
Close
Hashes for opendal-0.45.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7546a99b09ecbd8f8f8c93128531dfaa5ffcd5a3b70bbc846a7d396b1c8419e3 |
|
MD5 | 72f925aa88972df7980b0b6a2680e284 |
|
BLAKE2b-256 | dd80189422602e4f51b9fede415ffb36fd51988b31c3c3d0c461a25d12625b4c |
Close
Hashes for opendal-0.45.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fc559ed7fd864e4689b149416845e95bcbe1a5a5a1778259b171dd633cc58bb8 |
|
MD5 | 299793a97e2b03923d3eaa64b6dd1eca |
|
BLAKE2b-256 | 88b047d6e7efa3ee47c0dc3f54934e1c436cb8dcbd6fc639fe67d9a38df914f8 |
Close
Hashes for opendal-0.45.0-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4198259d3ed437daede3c2b3fdd2bee44e3f7ddc5003e71575549da18b4d8df6 |
|
MD5 | d5a7cbf542c67352db8bab55a48b0498 |
|
BLAKE2b-256 | 3a9f28237dc86daddab572deef4bc3f46cbb4d392931e893a84d5c8bb7c6413e |
Close
Hashes for opendal-0.45.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aee605a53453c9a14fb6b9492c30cf5e4f72d0fa447bdd129c3b5974dd308144 |
|
MD5 | 345889696e463aa8aab42541185e34bc |
|
BLAKE2b-256 | cace23d770bf754dfb7be8a9036f88de513250b2386f7a520b5e5d5f7edfdc85 |
Close
Hashes for opendal-0.45.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7023be52c8a4da00e37dea79e128579e6278668be865ef69a49ae24aabab1ba |
|
MD5 | f1b07e70be74fbf7ede044ba6f14a27f |
|
BLAKE2b-256 | 100d0b26b3fc1715f4ee8aad0394b60f572efd77cc5062ba5c3cf1db53d9edeb |
Close
Hashes for opendal-0.45.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1c9296c134207010e620b988f5b524a6fba3e8bd764b89554b2e38b81b476db9 |
|
MD5 | bee7884591abd4791f9f4a3a8ab36688 |
|
BLAKE2b-256 | aa76dc563a9801102d03d7c15f857627ea54773c0b4d0f47889d88c6a7a54d0b |
Close
Hashes for opendal-0.45.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4e6f5ad5dd9de5cdacb1e0ac7585966d7db0f60624f4234d6e6478606ff4c460 |
|
MD5 | 3595c2c7709dcb7b926605bee68eaad4 |
|
BLAKE2b-256 | d5c90bf10e0ba87f341663b958d8d2531cf8cca90f756f7df68e0bf0a1ce3bc5 |
Close
Hashes for opendal-0.45.0-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 96cfdaca48f16e1d5f002005886ce8736e5acc7e4a28857d04d490319d0078d4 |
|
MD5 | d96e02e02c4c3d3466ffa5ef555424b9 |
|
BLAKE2b-256 | 4a3e1eabb089d2fefacdd8fa0ea667a677a76388fa7e9e87cf66903e9bbb813a |
Close
Hashes for opendal-0.45.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b8248375b17e7dcf7bbb0535184d526eb103d6ae7b21862c00fae6c2a649e4ce |
|
MD5 | 528ce4b5b45bd46e3e6338580768338a |
|
BLAKE2b-256 | 030500f4248b6889ade6167394398aef7e9b7667ce8b5b6bd91ed67031be876d |
Close
Hashes for opendal-0.45.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 548a2478832c48a704607e910837aad94fd13c940fce1f9ddd9cb224f16f4fae |
|
MD5 | 40464729dc04e362c2d80dc4c9eb64bf |
|
BLAKE2b-256 | f10024ce22afdf5b5e2304f8be5ed91d0f49b1cad095d554e56de4f9d7eaf977 |
Close
Hashes for opendal-0.45.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4e7ef5efd8ac608d0876a6be2cc4a5f9d52f695c97cd4feb26069bf9daf28eb0 |
|
MD5 | 4cb7f4ee5718ac7f0f7a411b550444fd |
|
BLAKE2b-256 | a1defc492c5b9bf329a5384432f7244bb49a53221899d7fad7a419bc1bcd0427 |
Close
Hashes for opendal-0.45.0-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3ee4372b184b694f98ba4002fc51f04ec0f079ff5866188d2cea7bc0af9d2783 |
|
MD5 | ca5674ef7175bee77bca4f39cb335ce4 |
|
BLAKE2b-256 | 6a7deb8e2e31b0cd3c35004f1fe849707cd5e5dc34f7cf7815cfedefc8972d7b |
Close
Hashes for opendal-0.45.0-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ab81edbb65600c091628204612319deb0a7af30457011151d14883b32abd0b2 |
|
MD5 | 422be7c013051645dff66e8d8c647052 |
|
BLAKE2b-256 | 5ae91e32dbfd4e8295a4bc37c2e12ae803d562daab98c9772041491631238b1c |
Close
Hashes for opendal-0.45.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3538f6f9525cb6702328386ce36656145a35b46565ee7a6b43d91057a1edc823 |
|
MD5 | c57ca3e5e7a0017c7e7d335562afc2cc |
|
BLAKE2b-256 | b6c4a1ebefe7a3a552e677d2019ff56333f10a815997daeb75f42383c8f82fec |
Close
Hashes for opendal-0.45.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f147e815a3324689496152decbf8a90d032490d6947fe60b8ef179914be502b3 |
|
MD5 | cc7c667f0552f976f7d361b93800eae3 |
|
BLAKE2b-256 | 6cc62a4b4321e895979640d48f4351f0a674c168f7c88e439b0b573a6998e901 |
Close
Hashes for opendal-0.45.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5bfecf09fd896737d9129f547e643ff85f8dbefa64e0a1d826788fa2e174c1ad |
|
MD5 | a9c4c179b9e9c85327da548a87631b6b |
|
BLAKE2b-256 | 221343bf256cfbb55ed654be8a0089c48033e4673b290f0ca456ac30bbb68c03 |
Close
Hashes for opendal-0.45.0-cp38-cp38-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9e7282125f5f6f59d03940047c997970836abe02470f391b10a9fafe760fef24 |
|
MD5 | 015abdf0b47745fbaa186f76cb171bd9 |
|
BLAKE2b-256 | 247dee2775fe0f42afea1f9ca8bdd81f72942a9dbc8b699c73c7cf59dac43887 |
Close
Hashes for opendal-0.45.0-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f29cfa5d9b4522b543310ae73a4624330997edd042b30631b8f360764f949cb |
|
MD5 | fe093f9fd9c3661c91ec1de325137e78 |
|
BLAKE2b-256 | ea9e4876be39760c24ebc7311627390e4bc352b3a45773264d0f986b3467733e |
Close
Hashes for opendal-0.45.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f80a63d5c2dcd097945cf817c5b3d77f6bfa4a542efb8cfdecf8e566fba2ebf3 |
|
MD5 | a71db9f10553f5ce06bebfb6109df247 |
|
BLAKE2b-256 | 69a5b16631f94aab93fef3474a81a8c8720f94805f1119c9a8c133c48b00d7ea |
Close
Hashes for opendal-0.45.0-cp37-cp37m-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ba68771ff30947003eb17eec88e4a12c6d983e2dd922c0b9498b5a85f0db58e6 |
|
MD5 | 31e844092bcf5d6a2435a91e7cd39a0f |
|
BLAKE2b-256 | 949b7786cba61eaf762ad80602dd5e2987c6e5d72418a6cd539f67902d090cf0 |
Close
Hashes for opendal-0.45.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd6e44f304a6b277eb141d864833e9de53a961a1c5bde6ecb824c1d52e237f29 |
|
MD5 | ad3eca43e4fb64e6de16d1c01c70199a |
|
BLAKE2b-256 | d52cf024d9dec16791555b35096e796da6b5554be6296a65254a1c623fc79b87 |
Close
Hashes for opendal-0.45.0-cp37-cp37m-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 607abff7f1a4c35fc4f0d0eae5d6016cfe236cbfdeb45887a8ed1e51ebb06efc |
|
MD5 | 8ccac52d14a221cdd40d68fcde6fa6b3 |
|
BLAKE2b-256 | 4c9452bc561d06cb32f37c3a836d817b765ee4efab4c5e0ff35eb436b98d6c04 |