Skip to main content

Find optimal clusterings and optimal hierarchical clusterings.

Project description

PyPI - Version

Low-effort way of calling the rust-crate exact-clustering from Python.

pip install exact-clustering

Consult docs.rs for more extensive documentation.

from exact_clustering import *

weighted_points = [
    (1.0, [0, 0]),
    (1.0, [1, 0]),
    (3.0, [0, 2]),
]

print(
    weighted_continuous_kmeans_price_of_hierarchy(
        weighted_points
    )
)
# 1.0

View provided methods via help(exact_clustering) in the python-repl or take a look at exact_clustering.pyi. At time of writing, they are:

class KMeans:
    def __new__(cls, data: Sequence[Sequence[float]]) -> KMeans: ...
    def price_of_hierarchy(self) -> float: ...
    def price_of_greedy(self) -> float: ...

class KMedianL1:
    def __new__(cls, data: Sequence[Sequence[float]]) -> KMedianL1: ...
    def price_of_hierarchy(self) -> float: ...
    def price_of_greedy(self) -> float: ...

class KMedianL2:
    def __new__(cls, data: Sequence[Sequence[float]]) -> KMedianL2: ...
    def price_of_hierarchy(self) -> float: ...
    def price_of_greedy(self) -> float: ...

class KMedianL2Squared:
    def __new__(cls, data: Sequence[Sequence[float]]) -> KMedianL2Squared: ...
    def price_of_hierarchy(self) -> float: ...
    def price_of_greedy(self) -> float: ...

class UnweightedKMedianL1:
    def __new__(cls, data: Sequence[tuple[float, Sequence[float]]]) -> UnweightedKMedianL1: ...
    def price_of_hierarchy(self) -> float: ...
    def price_of_greedy(self) -> float: ...

class UnweightedKMedianL2:
    def __new__(cls, data: Sequence[tuple[float, Sequence[float]]]) -> UnweightedKMedianL2: ...
    def price_of_hierarchy(self) -> float: ...
    def price_of_greedy(self) -> float: ...

class UnweightedKMedianL2Squared:
    def __new__(cls, data: Sequence[tuple[float, Sequence[float]]]) -> UnweightedKMedianL2Squared: ...
    def price_of_hierarchy(self) -> float: ...
    def price_of_greedy(self) -> float: ...

class WeightedKMeans:
    def __new__(cls, data: Sequence[tuple[float, Sequence[float]]]) -> WeightedKMeans: ...
    def price_of_hierarchy(self) -> float: ...
    def price_of_greedy(self) -> float: ...

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

exact_clustering-0.5.0.tar.gz (11.7 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

exact_clustering-0.5.0-cp313-cp313t-musllinux_1_2_x86_64.whl (539.0 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

exact_clustering-0.5.0-cp313-cp313t-musllinux_1_2_i686.whl (567.4 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ i686

exact_clustering-0.5.0-cp313-cp313t-musllinux_1_2_armv7l.whl (628.1 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARMv7l

exact_clustering-0.5.0-cp313-cp313t-musllinux_1_2_aarch64.whl (541.3 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (379.2 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64

exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl (399.5 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ s390x

exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (529.7 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ppc64le

exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (364.9 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARMv7l

exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (360.7 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

exact_clustering-0.5.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl (395.5 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.5+ i686

exact_clustering-0.5.0-cp313-cp313t-macosx_11_0_arm64.whl (319.5 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

exact_clustering-0.5.0-cp313-cp313t-macosx_10_12_x86_64.whl (334.9 kB view details)

Uploaded CPython 3.13tmacOS 10.12+ x86-64

exact_clustering-0.5.0-cp38-abi3-win_amd64.whl (222.8 kB view details)

Uploaded CPython 3.8+Windows x86-64

exact_clustering-0.5.0-cp38-abi3-win32.whl (207.8 kB view details)

Uploaded CPython 3.8+Windows x86

exact_clustering-0.5.0-cp38-abi3-musllinux_1_2_x86_64.whl (543.3 kB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ x86-64

exact_clustering-0.5.0-cp38-abi3-musllinux_1_2_i686.whl (573.0 kB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ i686

exact_clustering-0.5.0-cp38-abi3-musllinux_1_2_armv7l.whl (635.1 kB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ ARMv7l

exact_clustering-0.5.0-cp38-abi3-musllinux_1_2_aarch64.whl (548.0 kB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ ARM64

exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (383.3 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ x86-64

exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (407.9 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ s390x

exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (539.6 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ ppc64le

exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (371.6 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ ARMv7l

exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (368.4 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ ARM64

exact_clustering-0.5.0-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl (400.3 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.5+ i686

exact_clustering-0.5.0-cp38-abi3-macosx_11_0_arm64.whl (328.8 kB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

exact_clustering-0.5.0-cp38-abi3-macosx_10_12_x86_64.whl (343.3 kB view details)

Uploaded CPython 3.8+macOS 10.12+ x86-64

File details

Details for the file exact_clustering-0.5.0.tar.gz.

File metadata

  • Download URL: exact_clustering-0.5.0.tar.gz
  • Upload date:
  • Size: 11.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.9.6

File hashes

Hashes for exact_clustering-0.5.0.tar.gz
Algorithm Hash digest
SHA256 22a45810a5db8a834989275b5a6a79429a59205d6ae618a442e416ba8020edf4
MD5 07db9f60bf70a94896cdfdee36cbb98b
BLAKE2b-256 c6d53735f64ec0b8cb102c532172ac00c40aed3311297432384eb8ad9fcebef0

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 90045a972cea63014bad9bd3b563acc730df7512c3c35f31a21572f1777db59c
MD5 31f7e6f95fee777e56abbeeaa48a9dac
BLAKE2b-256 d0b228dbc300d1fe2af7e672d1114e88febd908e91e6f6732de32c5d2cb497cd

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp313-cp313t-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp313-cp313t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 b38810bfe973c748f5292cf5ba4263857d511fdadeb2983b46d34d2083123c23
MD5 ca97e4984ba6cf01e470aefc2cc0877a
BLAKE2b-256 b30b9e549dabe3331d4a7b381eef680752a1606a5b4c13d3fcfee3d156ed0144

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp313-cp313t-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp313-cp313t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 6ebf79358f9eafc61c651709dfc9d09e553f152a0423a4b85aef67e3caa5fa37
MD5 141df6a43bca37528ad2a36bad7f598a
BLAKE2b-256 fe94fe2d532fdfecff8da426f88aab0b2a190039025fdaa4cdd97228ac7cd160

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8c04225deb30b2dc00f215f2e2433d20abc86efebd3150d3ca2cb0e8d4968aeb
MD5 894d6dfc24481b41f1bdfdde80955d27
BLAKE2b-256 0df668545048504d4de1f72524ff2e169e684ab581302c60f84eb8d817de0011

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6c2f3d4531421d758d54c59315e5d54d463ef5bf639badea059bee716123f84e
MD5 161a15ca1c3ec037001c506bb31f716f
BLAKE2b-256 b4442897f4d552dd717313fd52af28ba444ef43eeda6e3daaa1f3306b0a4a76b

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 92967e04a942f7dd9069a3ab0c04a239faecd4e148c2d011ba2108178630b008
MD5 b8215ba1f07eea26cc47145eb3b89765
BLAKE2b-256 3f0932031d48afb2aa8c1d9b3e18d1a70dc99670778a5bec918dce9db3f2c81d

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 b05552248dc8904de11376becf98cb1a35481218ac2e1317dd1f8743485597d7
MD5 cb698601a235d2ada11ce08a8829b836
BLAKE2b-256 1a8e18fe955547f701517ea5e6571d63739ad52130dff6229ffb77f748e75024

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 df3d41a38ceca3d28b6ae266ca24a78b98aa38ce336ea857377e7f4ac3f476ab
MD5 b979dfbdb14078c93f78a6023f87d911
BLAKE2b-256 93d737f75afbcc7e1d6f74d02cd8fb70f194d936c41c3ebe4679e60471087c66

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 386f8579365c20d0c58b771f1cc05f2926dd3cdcd5976c1d04b3d304229ce4fb
MD5 0ba1dcc87b738c286edcf66383233083
BLAKE2b-256 0f04b255816443d7d6ceae743b777c3ed627d6845e46785a8b49f687d690b25f

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 8b9495285889a51c8d5218dea452e72e490c01fa07311a31e307aab376a09a52
MD5 5705cda523fb64cb949b563f47b1483e
BLAKE2b-256 47738fea3dc2ecf21be30abab5e86dfa804252b23dba7e72aae7a2c627516769

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp313-cp313t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b4abe19f9899dbab17343dbf24d22de5a8f48b943407365fb3316e7bffaf85b6
MD5 656dab39c06bfe4e29bde53f0620ed19
BLAKE2b-256 1d4a8da7e41f9db64f4f43ea68333906d7a0d9a6b453e9281758a951b671f1b7

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp313-cp313t-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp313-cp313t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 66671e4f9878dbcc395a98df38394e2aee4e4541d27d5104ad383605275a4b2b
MD5 9de0acefe2648f2062a65561dcb46d53
BLAKE2b-256 00cc52f53cdec38657d4f2ba9644be614f719e92105421f8e59ba5c51ca2e40b

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 3fb0a9de2ddccf171c403c9c59673f2f7b1808349450f91023555296bf697c03
MD5 43654ae60d46351cf8183bb7dcdbb3d7
BLAKE2b-256 49838a39c1e43ead4bf65ea7b4019408009aa15f2ee02cca794c0e6ff166ceff

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-win32.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-win32.whl
Algorithm Hash digest
SHA256 56054daf15f4f204ea1474bd57465522ec11f4e1d786a03aaca09462e7a7d4f3
MD5 70e18557b3640e9c0207d7c3ed6d1715
BLAKE2b-256 4daeb4cdae8d0d1f79f316b7554f5f5ac04c1fed36ce2e63ecaa81383914881e

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6541e004d50b6a3abf1cae682bec59c51a427d28ca3fa0af83cbf65fd86de41a
MD5 56ff99281975efea5ecb539bef855648
BLAKE2b-256 f9b6bb7f786c862f844a84a2793fc8d456ecdaae55ee7f2645bf346ebaefaaac

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 175ecf060d45c71254456b945b4111b3e8e0cdb56dcc55d04f9f3557945acbec
MD5 6fba7bfe75c94625a8391f7c2b5de0a9
BLAKE2b-256 4a5627b076f956daeb2b44ddd872a1922af1ad3149d52d1f19ad85d4ba7f3784

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 f5fd73d95f30ec4b9a3fb4038465c928b713c954e550a51b56ddb444d7a887c7
MD5 b41533b298e2d8e6b5f957acf272d284
BLAKE2b-256 d99092b7b0bf85ef623a66f10fa5e4a4a48bb10a75765be290a4761b951d8933

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 53a3ccbda705826bb9a800a18ea51e12bec166e14549512a38255b14b30c76fd
MD5 3bf4d3ceefceae558857367da2930144
BLAKE2b-256 2b08eb1ed047bf5f13238ef54b9ec11d6f598657f4128246c9dd2f75fcb260a6

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 77c377e61d67d7ad0a0c2b22e95eb30204789c66e5d0ef773638dc93778a95cc
MD5 4ca459adcdfacfcfa422c4f39efee3f5
BLAKE2b-256 b75e7422f5b167be93805b46c64ddbce901dd31f4c45ee275e19bfdfd522440d

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 74576ced1134c777edb78a08c35d77c5bff951eff81dafa6066f4dcb124872a4
MD5 9aa16d93838361b950a3ad006abb5133
BLAKE2b-256 ca293c8577392a304d5202a4708eba405412b69d8eaa29cf187820a925d54438

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 fe678f07680744ce4363a7eb44380a76405067000770d103530296c544fe1f6e
MD5 f6168cb7c9c55a5e31f8fdfb67167390
BLAKE2b-256 4d591e4999f6b04ecfd0b767be3edd8b3e1a3bc53d0a55c5902428996039dc5d

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 f59af9d2bac6ff141b6359b548a4769436bf161fe05cb67940bfd92ca920d18b
MD5 2cc07b5d9ade9a95e3c02214c2e4d056
BLAKE2b-256 55c7b76dae2e2f05cd63ebbd20d85f4de3456186245d152478608856da939a4e

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ba127b483cde7741f0c9e8dd279f8bd0caa4019868843e4d34d1d087e7a5bdd5
MD5 13e92441efe84a28d6844bc6f842c5c6
BLAKE2b-256 cbea076ba87d85a9e40c57e648a26506e868b55fb3be438f35c7e186da382899

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 502a4297df5bdf158e4172c9f55387ae59fef400c167908250fe0af85d986ca5
MD5 2d4d3348234912fbcd4ac3186f16d267
BLAKE2b-256 87dd8099edec47e2b0896f22b086752a3c6b88e8abc6db584f2d4174f40b88e6

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 79d660ba31cfa36310e8361341c77ff6a7297466beb4200a37cc9faa8376b681
MD5 dd7f7359613236c7dd70200351b23af1
BLAKE2b-256 a49100ec6b822fcd9386f994d1e2bcd50f0c0eff397b96e7f12103648ac8fac5

See more details on using hashes here.

File details

Details for the file exact_clustering-0.5.0-cp38-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for exact_clustering-0.5.0-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6622f004d44da2036d59c3c0599d14e8665780850e57905b663b411b6545fa9a
MD5 ee04276116987a0d1f05cf5b57c6bad8
BLAKE2b-256 573072fb16506c646fc54c0d712e3e7b3e99fa38d90f907d12806f8f98415fe1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page