Skip to main content

Core functionality of MRzero

Project description

PyPI - Version

MRzero Core

The MRzero Core contains the core functionality of MRzero like MRI sequence building, simulation and reconstruction. MRzero Core does not force you to take any particular approach to e.g., reconstruction, as it targets easy integration in existing projects. Nevertheless, more tools can be added in the future if they helpful for the general application space.

🎉 1.0 release

Version 1.0 adds Pulseq 1.5 support and flips the sign convention of the simulated signal, so that it is now the complex conjugate of what previous versions returned. Reconstruction accordingly switches from fft to ifft.

See the FFT sign conventions page for details, and the CHANGELOG for the full list of changes. If anything else broke, please open an issue.

Usage

MRzero Core is written in Python, heavily relying on PyTorch for fast (GPU-) Tensor calculations. To improve performance, parts of the simulation are written in Rust and compiled for x86 Windows and Linux, other platforms are currently not supported.

Install with pip:

pip install MRzeroCore

The typical way of using it is like the following:

import MRzeroCore as mr0

Examples on how to use MR-zero can be found in the Playground.

Pulseq Integration

MRzero Core makes Pulseq simulation incredibly easy - simulate any .seq file in just one line:

import MRzeroCore as mr0

# Simulate any Pulseq file
seq = mr0.Sequence.import_file("your_sequence.seq")
signal = mr0.util.simulate(seq)  # That's it!

Key Features:

  • One-line simulation of any Pulseq .seq file
  • PyPulseq integration - write sequences in Python, simulate with MR-zero
  • Google Colab ready - 13+ ready-to-run examples
  • MATLAB ↔ Python workflow - create in MATLAB Pulseq, simulate in Python
  • No dependencies - fully self-contained Pulseq parser included
  • Scanner-ready export - export MR-zero sequences as .seq files

Try it now: Open In Colab

Links

Building from source

This assumes windows as host operating system. For building the python wheel, you need:

Building for Windows

maturin build --interpreter python

Building for Linux

docker run --rm -v <path-to-repo>/MRzero-Core:/io ghcr.io/pyo3/maturin build

Building the documentation

Install newest (beta) version of mdBook:

cargo install --git https://github.com/rust-lang/mdBook.git mdbook

Run a live-preview server:

# in the root directory:
mdbook serve documentation

Official builds

The python wheels hosted by PyPI is built as described above, and uploaded as following:

maturin upload target/wheels/MRzeroCore-{ version }-cp37-abi3-win_amd64.whl target/wheels/MRzeroCore-{ version }-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -u <pypi-user> -p <pypi-pwd>

The documentation is built using readthedocs, which works the same as described above.

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

mrzerocore-1.0.2.tar.gz (77.0 MB view details)

Uploaded Source

Built Distributions

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

mrzerocore-1.0.2-cp37-abi3-win_amd64.whl (471.1 kB view details)

Uploaded CPython 3.7+Windows x86-64

mrzerocore-1.0.2-cp37-abi3-win32.whl (453.5 kB view details)

Uploaded CPython 3.7+Windows x86

mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_x86_64.whl (767.4 kB view details)

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

mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_i686.whl (808.5 kB view details)

Uploaded CPython 3.7+musllinux: musl 1.2+ i686

mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_armv7l.whl (818.9 kB view details)

Uploaded CPython 3.7+musllinux: musl 1.2+ ARMv7l

mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_aarch64.whl (712.2 kB view details)

Uploaded CPython 3.7+musllinux: musl 1.2+ ARM64

mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (558.8 kB view details)

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

mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (615.7 kB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ s390x

mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (667.5 kB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ ppc64le

mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (542.1 kB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ ARMv7l

mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (534.8 kB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ ARM64

mrzerocore-1.0.2-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.whl (601.8 kB view details)

Uploaded CPython 3.7+manylinux: glibc 2.5+ i686

mrzerocore-1.0.2-cp37-abi3-macosx_11_0_arm64.whl (513.1 kB view details)

Uploaded CPython 3.7+macOS 11.0+ ARM64

mrzerocore-1.0.2-cp37-abi3-macosx_10_12_x86_64.whl (525.3 kB view details)

Uploaded CPython 3.7+macOS 10.12+ x86-64

File details

Details for the file mrzerocore-1.0.2.tar.gz.

File metadata

  • Download URL: mrzerocore-1.0.2.tar.gz
  • Upload date:
  • Size: 77.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2.tar.gz
Algorithm Hash digest
SHA256 f7223655992761801307764ceb349380aa8faacb0f236e730d6c69fb9742456f
MD5 2799eefabceb1e4ae0f2886ff8af851d
BLAKE2b-256 1f4a28a2eef94033775134a189fd1388bbc7c1efa96fd9f9ef809562263fd25d

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-win_amd64.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-win_amd64.whl
  • Upload date:
  • Size: 471.1 kB
  • Tags: CPython 3.7+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 ab34f959908dd9e8efed5b2bead5d419f52436c1769d847043d446b4109e0d6a
MD5 690330391f946668ba486baac624ae9b
BLAKE2b-256 8a5e4265df2078ae13f1b72cdcfe466a8c75f5b31ec95f3c3fb5c3655f6bba03

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-win32.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-win32.whl
  • Upload date:
  • Size: 453.5 kB
  • Tags: CPython 3.7+, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-win32.whl
Algorithm Hash digest
SHA256 d32b984f082cb1354224cbada5e6f0708748aa6e4760adb228ebf0be26e6f75e
MD5 6589b2f9a23987c6879dcf4842d50fb8
BLAKE2b-256 6fd8fb1e9738bf0a8c29bfcd62bbbfd447fb4ce5e2a29fd02c7d4e6e0bd85e1d

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 767.4 kB
  • Tags: CPython 3.7+, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 76a74646b9911b64eb0c1caa5888c41429670b6b031c57632577bb51a7a8613c
MD5 b76f86460b971595c54f994be768ea71
BLAKE2b-256 30abffe1ca81680520aa071e65579f8952fefeb5ce4823562278b85b40f0819b

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_i686.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 808.5 kB
  • Tags: CPython 3.7+, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 2fbc9d9a4bae1659fe059c76d5bb7f6361bd55cd122722a9d002be150017eace
MD5 3b1c82a292315bbf61a305ac16cbba36
BLAKE2b-256 f8023137b222499b577495ad95b4498a24b6c6700986487b151f8b667b41d11b

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 818.9 kB
  • Tags: CPython 3.7+, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 cba6d25ee424b858cd818a38ff9c36f82873180067481c2ef30f0103b51b736e
MD5 288bb986f98571c2e65da7cc8f41b643
BLAKE2b-256 33e8edd36ee2bf3bef236ddfab7cce26e836fb588c7112cd2b90a47d2eaed1f1

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 712.2 kB
  • Tags: CPython 3.7+, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 362ab738a24ef5febdbf0a751d7e9b4a178b0dab8a2216be7e09786e80af8235
MD5 00c806db48af97096669bf3904ffa7cf
BLAKE2b-256 70d1427242fdffcf0cc594dae90d075d1362bcccf597784dd4dc4db083a56381

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 558.8 kB
  • Tags: CPython 3.7+, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 57d7b234eabf77c2b91a111eec5817e9e86236465cb308721b4bdc29cd7a5b50
MD5 85c58574af2747087356e31a5c904c7a
BLAKE2b-256 54f3b45bac4c5a33431bdbb38d947618214b0a6cbed01f3ea71d4bae16bfd0bd

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
  • Upload date:
  • Size: 615.7 kB
  • Tags: CPython 3.7+, manylinux: glibc 2.17+ s390x
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 89eba46c047c8aec9397ee075cdfdfec8ceb8259acde2fee5c9a7dd98de32e3f
MD5 e4a131b7391e37988218fe4b3bc8d76b
BLAKE2b-256 ca5fa8eaa29c1ab0db9797ae944559ab2a96a720872d5a0a583dc0d10831e934

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
  • Upload date:
  • Size: 667.5 kB
  • Tags: CPython 3.7+, manylinux: glibc 2.17+ ppc64le
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 f36711800920af2dbdfacfa9d9578ce9e53736864d6ad6f77680b36b46732595
MD5 caa47379fe2298d448fc0583e61ad8fd
BLAKE2b-256 70e86ba2b4dac9b738b4e3bfe469f278df7ae0d67202926230bb360ebb6c87ed

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 542.1 kB
  • Tags: CPython 3.7+, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 75f65a1ffac4259b692478f19a6ee9df4b8460394808b6c3aeb9eb2ea786adfa
MD5 9d5cfdb6e1a019a417bf3f02b1a04765
BLAKE2b-256 4aed1c8f58dcf5b8efcca6b1481871823af37b9f0a65be1628b1195f7a55ae51

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 534.8 kB
  • Tags: CPython 3.7+, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6eaf39b5c88627846e173ea5cfdb1156c6db553b864e97912192562ffb936fc5
MD5 bc54c422cd07964b12ad69c838033f03
BLAKE2b-256 c111b33211d9813cbfe10ca0e3305608cc1b4f7f49a47eba7580b83908289b82

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.whl
  • Upload date:
  • Size: 601.8 kB
  • Tags: CPython 3.7+, manylinux: glibc 2.5+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 961ea5bdf237c39bf23f6e8de482991c73a8f1bd0e0cd971697803f0d32336e2
MD5 3e6825b535b8b081fee5b29628b1d9a2
BLAKE2b-256 18e517ee9e29277c2a587896b56799442bdf42c04250898c8dfe36deb0998e47

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-macosx_11_0_arm64.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 513.1 kB
  • Tags: CPython 3.7+, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ec3a065da5a5fb83c60a6ffe31d87ef47ec50f499e1a09f5313571b21f0dfb67
MD5 dce299e6a5517de9aa06f4f7ab391989
BLAKE2b-256 61f38e491b1ec528cc0cb24e8d9f58e0e004164e4bf82a6b35852b006173ffe2

See more details on using hashes here.

File details

Details for the file mrzerocore-1.0.2-cp37-abi3-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: mrzerocore-1.0.2-cp37-abi3-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 525.3 kB
  • Tags: CPython 3.7+, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mrzerocore-1.0.2-cp37-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b53334859c2daa8e7695a2e063272def8cc4ffdc6c577e5778fbbdafdaa9300b
MD5 8b6930ead4b5ee626ba9c3862773eb4a
BLAKE2b-256 328a271e0c4d6979506ca55c2e2196c6c74efe3e3e2b48982af141221ef1998c

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