osu! difficulty and pp calculation for all modes
Project description
akatsuki-pp-py
Difficulty and performance calculation for all osu! modes.
This is a python binding to the Rust library rosu-pp which was bootstrapped through PyO3. Since all the heavy lifting is done by Rust, rosu-pp-py comes with a very fast performance. Check out rosu-pp's README for more info.
Exposed types
The library exposes the following classes:
Calculator
: Contains various parameters to calculate strains or map, difficulty, or performance attributesBeatmap
: Contains a parsed beatmapBeatmapAttributes
: Contains various attributes about the map itselfDifficultyAttributes
: Contains various attributes about the difficulty based on the modePerformanceAttributes
: Contains various attributes about the performance and difficulty based on the modeStrains
: Contains strain values for each skill based on the mode
Additionally, the following error types are exposed:
ParseError
: Failed to parse a beatmapKwargsError
: Invalid kwargs were provided
How to use akatsuki-pp-py
- The first step is to create a new
Beatmap
instance by providing appropriate kwargs. Either of the kwargspath
,content
, orbytes
must be given. The kwargsar
,cs
,hp
, andod
are optional. With the settersset_ar
,set_cs
,set_hp
, andset_od
you can specify custom attributes.
map = Beatmap(path = "/path/to/file.osu", ar = 9.87)
map.set_od(1.23)
with open("/path/to/file.osu", "rb") as file:
map = Beatmap(bytes = file.read())
with open("/path/to/file.osu") as file:
map = Beatmap(content = file.read())
- Next, you need to create an instance of
Calculator
by providing the appropriate kwargs again. Any of the following kwargs are allowed:mode
,mods
,acc
,n_geki
,n_katu
,n300
,n100
,n50
,n_misses
,combo
,passed_objects
,clock_rate
, anddifficulty
. Each of these also have a setter method e.g.set_n_misses
.
calc = Calculator(mode = 2, acc = 98.76)
calc.set_mods(8 + 64) # HDDT
- The last step is to call any of the methods
map_attributes
,difficulty
,performance
, orstrains
on the calculator and provide them aBeatmap
.
Example
from akatsuki_pp_py import Beatmap, Calculator
map = Beatmap(path = "./maps/100.osu")
calc = Calculator(mods = 8)
# Calculate an SS on HD
max_perf = calc.performance(map)
# The mods are still set to HD
calc.set_acc(99.11)
calc.set_n_misses(1)
calc.set_combo(200)
# A good way to speed up the calculation is to provide
# the difficulty attributes of a previous calculation
# so that they don't need to be recalculated.
# **Note** that this should only be done if neither
# the map, mode, mods, nor passed objects amount changed.
calc.set_difficulty(max_perf.difficulty)
curr_perf = calc.performance(map)
print(f'PP: {curr_perf.pp}/{max_perf.pp} | Stars: {max_perf.difficulty.stars}')
map_attrs = calc.map_attributes(map)
print(f'BPM: {map_attrs.bpm}')
strains = calc.strains(map)
print(f'Maximum aim strain: {max(strains.aim)}')
Installing rosu-pp-py
Installing rosu-pp-py requires a supported version of Python and Rust.
Once Python and Rust and ready to go, you can install the project with pip:
$ pip install akatsuki-pp-py
or
$ pip install git+https://github.com/osuAkatsuki/akatsuki-pp-py
Learn More
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
akatsuki_pp_py-0.9.8.tar.gz
(17.9 kB
view hashes)
Built Distributions
Close
Hashes for akatsuki_pp_py-0.9.8-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4f0fb79330eafea7d59fbc0e73ce511b6df318af36302160b1414fa5db5fc6f3 |
|
MD5 | 0d71b6c6cf32f2752d971a217d2acd8c |
|
BLAKE2b-256 | 9382c72e7865c845c44133d72317bb1f04022d132765ab9b400578947436ebf1 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp311-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0eaf94e18fd5bbbc81910ea5ed66b359a99a7144c96c72c69ffffbbdb769ccd0 |
|
MD5 | 7e2ad75066ded83afe92341fbcfa2983 |
|
BLAKE2b-256 | de1d155dfe9f09040e33809a59283b2a6de101e9932c711fbf0b608322ece366 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70a3fe10bdda92fe8f10cac0e286c9e494e73a5642eeda8d66c77120b18a252a |
|
MD5 | c5f3de62eece186c07890d959ff7b846 |
|
BLAKE2b-256 | 38b139fd890b37e2b9938cc80c9a453f1a785c17a0148f43d465a66de0622d94 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3602e52b4dfcd1427b1b713861b3dca47d25dc61a68ebb8fec5670902d5249b6 |
|
MD5 | ba0c50bcbdb442d85f721a250101b6c5 |
|
BLAKE2b-256 | 703d41934e7b2b33a23817511a3a92ed4b504fad973fc607a74e004c9b727c5d |
Close
Hashes for akatsuki_pp_py-0.9.8-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c2df9a3c86f4b755ac5ac767aac31755cb31931d74f9b2fc24f51221ecbc8b2f |
|
MD5 | 7d63a4ba8c012c141abe5b97dd3a2d21 |
|
BLAKE2b-256 | c818e37a431dfbbd4225f375a3450abc73755baff3ed31bf13bfee009c7e7d90 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9f6f15c1441269df993979e515f05d791053d74a382f350925532f53a66aee00 |
|
MD5 | 3da772c11ca2b492b4e9e730344594df |
|
BLAKE2b-256 | 16510706afea600e346bd50de7683720c559f609de35ca92b853a4e6c369ae56 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 19ad70bb017599ba10169cd48857893026fb3dd2a3d128b313f6b9bbb9ba9473 |
|
MD5 | 4c3acd84d5b664c2985aacbff4c4684c |
|
BLAKE2b-256 | 5933997365147402c539cafa4755fa26e679ea6f25281e18d7a1f79d1ce7e064 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp311-cp311-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1f9b056e93ab42b15dff0c59cc628cdee6570c4091ff021c7cee2dd5177a8520 |
|
MD5 | 394ce0c092592eeae3a9da263f1f586c |
|
BLAKE2b-256 | 7d7d802a9f823fada5a8044bad6792730aff6f917251aa0786c5e3b6a6159804 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp311-cp311-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 748bbbcc5c4c0233fcbbcba330cb12cf1a1b0e2b4dab9869015e118c73d1c4f3 |
|
MD5 | 21b424caa95969e06de89b5ec2b1869a |
|
BLAKE2b-256 | d3d29db287fec04ec89feb4f0a793f2f005d941c91c0fb205458759f2b24d087 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dce31e5b3414790e195a555c2425e48127a698c6df3401e35435742116b1cb9f |
|
MD5 | 5cb27eb91498f1da301383c39ea02f86 |
|
BLAKE2b-256 | 47e55e2bedf56b954fafa7d4325d6affdf586790471f11a707e21bd7ff5f24b6 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp310-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 41162333579bfdc15d5ca86e3e08c6c3b03403970f658093b79bb01ff083b0ef |
|
MD5 | 206fb20b1ec72d2b9aa794fb028ab68b |
|
BLAKE2b-256 | a30884b0d3f4ae7a5192fa82efdf9fe3db581aff2f63f11276e80316a7471aab |
Close
Hashes for akatsuki_pp_py-0.9.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f36101483729e23b87d6206b4bdbcd51ed25e7b166318eb63ecaa23f0ca8280d |
|
MD5 | 036976cec36c177ae96e79bb8ffcd2ee |
|
BLAKE2b-256 | 3b099a0b1245362069a0563b511cf4fbd4ade1cecacd156f09627c431d9212e6 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4ec656a82e759189abe7852335402304f3326b5ae80bd167a6d1c0caa28eaacd |
|
MD5 | 6faf7635762e0b027b6ab7d4aefeb3db |
|
BLAKE2b-256 | 4af102f217b4840f68cf8244ac84e3ef1c9cacecd3798412e4461c3f961895d2 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2494cc28c8478aa9698e4b209f760d6fb1686ad3a086f2d8733f03aa7467d09d |
|
MD5 | f7913969520bdf97b9906f6273fc2679 |
|
BLAKE2b-256 | 087f2a9e8ea8ff21fd0a19bb252abb0921fdd05b1be6829f9ebb88dc2743c9ef |
Close
Hashes for akatsuki_pp_py-0.9.8-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed5b385288e50d03ece64facc0ba341863f99eb3298c52bbd6d10f0c0472567a |
|
MD5 | 196a4ff4ebefce9e613f6bf25cb6249c |
|
BLAKE2b-256 | 263832ca802597a0aa61181fa9ad468e542dd963986c681a85c2d5d10d31f5f0 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7e7704ec63223213131c08d11baa085f5a770ad7b65ec23da036cc20b95118ab |
|
MD5 | 00a1f5cbe2e783379c29ba552962ab74 |
|
BLAKE2b-256 | a6c1244fd16365740eead9f994046ede20b077500bfb6c587897c7b73d24761b |
Close
Hashes for akatsuki_pp_py-0.9.8-cp310-cp310-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f181436cf9d8017e2d10166c3e14715f3e3f44910f21a56052f304b5001b99a1 |
|
MD5 | b884ae6f87c55c493175abfa3bb4ce7d |
|
BLAKE2b-256 | 1053b59eec5d41f32f0c0ed1bc183502fb5ff31c36a2fac8cd304bdc6f67e84d |
Close
Hashes for akatsuki_pp_py-0.9.8-cp310-cp310-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4b1f1cc1905a2adf3197f5fe0aabb787daef709f024b42cbe120e00ffcbb2a85 |
|
MD5 | fcad0469fca4efcf46dbeb940ffe5506 |
|
BLAKE2b-256 | cb6c695d7d8d239cd4ea0d04257855c2185243ae1d4fc593d825f84eaf89ce95 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e9839db2a9dd350637b135d98bdf89035eeb78c5d5558352baa06e376225c153 |
|
MD5 | 5247a3908db5314af7705b4215cacd0e |
|
BLAKE2b-256 | 6dad5a0f4178857637eff0d2567645d83c7fb3736e2211a3a1bef456d68fe0d0 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp39-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d735c9a1da152ac66bda575b393998b14c00be86d7a52aba90a20d267f3859ae |
|
MD5 | d8af7eb7c754cefb8dd7ca15e8b1e429 |
|
BLAKE2b-256 | eabb9029cc7951c342aa41f35f93aefff78785a1150a79cc006d7584037a81cd |
Close
Hashes for akatsuki_pp_py-0.9.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15171781948cb0be72b0e7b65e8ec049f030f6a2ebc8d13314843001c3cf3c5e |
|
MD5 | 47c7b6ac441225695df2813fbbddb6a3 |
|
BLAKE2b-256 | 28dbb55f79ce5106f77f4af91772b3ebc268bec84b14b170d465493376d56527 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 96c763153ec05fd4b10b131fe8a9308f4ce62272f553e97519fa04cc25698c91 |
|
MD5 | f29154807622fd77a4815ee380190418 |
|
BLAKE2b-256 | 8a81b10e085dc45fb308559d876d01e4c6eb6848ad07cb89cadd82f111260e3a |
Close
Hashes for akatsuki_pp_py-0.9.8-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4f1ea080e9ee91bb07008b8f06a8dfb94c1ac56984f67a87d84f5c68c32bdb6e |
|
MD5 | 1f1dace05b21506416ebb2f890f07ab2 |
|
BLAKE2b-256 | 0052ecf74d926b17e6673635366fd16512f87f33dffabbc63f5138cc3ee65268 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bec5de5cff3586c40c0afcf6a26789d4212bafeaa777529e8066384ce39f4484 |
|
MD5 | 99e66a22eed26a303d8a4c72180a4b2a |
|
BLAKE2b-256 | 7a89b67683a55c0552b62d791ed7544a56ec96db5a49aa0dd9d6ef97328ea548 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 231139e114fca0bf6ec1e7651c7d7b72213b78e08ce26e6f7a58ea760e2829f0 |
|
MD5 | 57304d87f87e6e20e29a31b8d456cad1 |
|
BLAKE2b-256 | 66d7e00e77a6ea4961495b5c17d64d6b159f77403053a3a516d8554121171040 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp39-cp39-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 33fe54648b70c331bbc82026d5df4fc9c3c5dc794863d55549040bd26443ea2e |
|
MD5 | 5b374f8bbe9c746dfded926cdec608be |
|
BLAKE2b-256 | 5e7d226d731a61d93aff15e04995d270b0d1ce7c82066bbb41e4e409b781bdd4 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp39-cp39-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 73eea2a1012fe340598f3896be3b2525de70388c2e1b109543c20ec753e223db |
|
MD5 | b445d5abb1dc55c2f9775e0a40c2046a |
|
BLAKE2b-256 | 5768c87f633a59b6401ed8d2db335e4f7c978e92bd2916e8331b82bae8a482d4 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 389c96dd909f661e0a1871e2f6b2f583f549e2c27fbf3c7865d3ac192e5b4edf |
|
MD5 | e708ee413120b3bb895030641c44816b |
|
BLAKE2b-256 | 6a852f5e35fd605bdd781edd51604b5348feb91d95e4257ee6a8ed58b3e4dc7b |
Close
Hashes for akatsuki_pp_py-0.9.8-cp38-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b4316c86b82a58f2822c8cff2fc41d767a512dd8cf32fb1b923d8f7a153bc7b |
|
MD5 | ea877a32f5089e2fb6f89a39498aecac |
|
BLAKE2b-256 | 4ab28efc1eebb84e6e7092e5046e9ac479115d2d4f11e2cc60e3d5fc419cec30 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e84ed7bac4bfe8b67a0afbbe4baac9a81facb9613f2b8fc056d16b600116e053 |
|
MD5 | de476eea76f9948516f1df670b1508a2 |
|
BLAKE2b-256 | 652f913eb604825595f30caefe12383dd28c153c436c36d91131181dd7d56664 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c5a1fb34a3d16629ccc5621c74be781e8ab580260ac1028a167f5fa47cd0ae5c |
|
MD5 | 0d012e048bb71944ecbd816cd9b4ff5e |
|
BLAKE2b-256 | f3977f0861aaf6580283bfe9e4f69eb297b661f0c1b3dc2d780dc902f84eff22 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b32d3b5518e2475af276b8eebd3400aba6b291052247efa1a42809aeda1b9384 |
|
MD5 | 929e7669480f3e1a9f86b48f34edb578 |
|
BLAKE2b-256 | 0ff1461267e8dbdedd1f8a7b9126221df26f5da2799ce232dc599eeed46a7a38 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp38-cp38-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a79d1d106f173ccc16fac96d352cbb624afd9caabb69bf3d621f141d587171a |
|
MD5 | e01865e0fab1e47875d89d937b4ef4f0 |
|
BLAKE2b-256 | 67678c0661dad144a6619149e9bab997e70aad407d4fc58b3e2b47c74bd843f8 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp38-cp38-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bbacd52e9d6edb1c945da68619743abba249395c797bc13780cc02078771fd2e |
|
MD5 | ff60343024131aafb1c10b0024e28e80 |
|
BLAKE2b-256 | d9554a07c3a56a8f75cdbcd52b14838e90c80aa93b3152c19e6c446823858d77 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp38-cp38-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f5b197a408ced600551475751e1e715a460ee6381dfb45295e4ff448761e7e41 |
|
MD5 | c93db7d789ada61a0b5fec2008a1a4e0 |
|
BLAKE2b-256 | a94d3235157b952f1f0501cbe2b7162672c875f95fb9a5ffc32551390d20579c |
Close
Hashes for akatsuki_pp_py-0.9.8-cp38-cp38-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 403165e6548277d20dd60ba6866e73993d01308ed3143ce64c4ae6b3943733b4 |
|
MD5 | 13db4d83eb3ded903b6d3f35e7a79d03 |
|
BLAKE2b-256 | 1ade47feaf68d20c13d25bfd0dc24102531981fe47726de4c9941846dbba4754 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 63de426d6182e3e91fbd1f57576e57cfb8d2aab5efd08effd04cbf5611fba251 |
|
MD5 | 0db6708080504bf4e0e4ecdd957f7a24 |
|
BLAKE2b-256 | 6623c33dcc6dc39176fdbc2fb9eb1742be917fd97aa650d5454f562821f36454 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp37-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 39a5cdbf88d1513e91308105d7916e0bff7c364dc6efb97cbe184b1685a7e1f6 |
|
MD5 | 1a88c8630a9519699eb72d522bdfa094 |
|
BLAKE2b-256 | 1327d3610720ea27cfe6a54a6582f8a7e17759af540928b276bc1f28cd207bec |
Close
Hashes for akatsuki_pp_py-0.9.8-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ffd127ebd0d011359d414531c84089b0c3e68679f46b485c435d71d936b8daee |
|
MD5 | 49ed8f57561559f464529c580c298f0a |
|
BLAKE2b-256 | 920bcfa3b1014699598586e39fce3486660b95f1c0cb6c30eea1f1479048d53c |
Close
Hashes for akatsuki_pp_py-0.9.8-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5446eb32aa3983b4aa3c79235eb4e4e200d257b836c8fc3e3f7c1f867269bc7c |
|
MD5 | ef01cb8ee5da0a20886601dbadd4066b |
|
BLAKE2b-256 | e937a128ddc306194551440581a4b30035ae7bb0b72d4ccd5e83f854de0ecd09 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2b6082b00aa844d62a2d88cc7c85244de86370b224a01e858dc45043b0780c3 |
|
MD5 | 2f53c1ed64fb29c325640c068909ebb6 |
|
BLAKE2b-256 | 2e5ef214f360f92ecf33dbaa3c51cbd3ef56f93c392ce0d13a526b50563e25aa |
Close
Hashes for akatsuki_pp_py-0.9.8-cp37-cp37m-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d323e76e265974e7e9d5586e4ade12f45f53a0e89dda0756f1d1bfe9e79a1f8 |
|
MD5 | 0b275b3dcb0b66bdff9382df361d74f0 |
|
BLAKE2b-256 | 85e0c10f0c944de7d8f91da10bd6d4660e9d4f5e1b3294abeaae09c7b2dd6da4 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp37-cp37m-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 152bcbdb5d9737a6b4829316e1c3c860b00ff3a61083cdaa31cb27c6428d6258 |
|
MD5 | 6938aeb35630f5540273b6e398fe6e89 |
|
BLAKE2b-256 | 11db716aac18997e48468cdcf92ecf577b67be4e5097999ebe6320adf3d09b24 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp37-cp37m-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1a8a9814c9a79f94360dcaaafa3c10f2137df75188d1c0a51d1e14ac5e93e74 |
|
MD5 | 874f3eb6079fa8abf135860672b0376c |
|
BLAKE2b-256 | 6d0e427392ad98f8a76a40cfee226be93797363660d6fe26bfb060357ee97ef6 |
Close
Hashes for akatsuki_pp_py-0.9.8-cp37-cp37m-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ab412c8238d2c59e64615e78049d3918a85966ea254f39567922dca035c9a83 |
|
MD5 | e0e7cfd8c2eedfd0a2a285d15fd017a4 |
|
BLAKE2b-256 | a9a269bcb5e79d8b267515378edc9669a6a3ede39810730bac2b52a57e8495f1 |