A Low Frequency Oscillator
Project description
LFO - A Low Frequency Oscillator
One of my many interests is playing the modular synth. That instrument is not imaginable without the help of LFOs. They are used to control every controlable knob or slider, they control the speed of oscillators, the fading in and out of filters, they can control each other, the possibilities are literally endless.
Synopsis
lfo = LFO(period, *, ...)
from lfo import LFO
from time import sleep
orbit = LFO(10, sine_attenuverter=0.0, sine_offset=0.0)
while orbit.cycle < 3:
print(f'{orbit.sine=} {orbit.cosine=} {orbit.triangle=} {orbit.sawtooth=} {orbit.square=}')
print(f'{orbit.inv_sine=} {orbit.inv_cosine=} {orbit.inv_triangle=} {orbit.inv_sawtooth=} {orbit.inv_square=}')
sleep(0.1)
What is an LFO?
So what is an LFO? LFO stands for "Low Frequency Oscillator". It's a curve that doesn't stop and that you can pull out values from. The simplest form is probably a sine wave. Regardless of how often you travel along the circle, you always get consistent and reproducible values out of it.
But LFOs come in many different shapes, 4 of which are implemented here:
- A sine wave (and a cosine wave that I don't count extra)
- A triangular wave
- A sawtooth wave
- A square wave
- The inverse of all these
The lfo registers the start time of its instantiation. It's constructor receives a period, the duration of one single wave until the wave repeats.
When ever you now query a value from the lfo, it gives you the proper functionn result of that wave for this specific point in time. Also, you can query all of the wave forms from the same lfo.
Ther'e's one important difference to the lfo you might know from your DAW or synth. Since most programmers will use these to ramp other values by multiplication, this lfo is not centered around the 0 point of the y axis, but all waves are positioned so, that they return a value between 0 and 1. There are per-wave parameters to change this.
Terminology / Parameter Names
The LFO class
An instance lfo of type LFO offers the following attributes with their default values:
Primary Instancing Attributes, Read/Write
lfo.period: float = 1.0lfo.frequency: float = 1.0(rw) - Internally an alias for1 / lfo.period
Wave Outputs, Read-Only
lfo.sine: float,lfo.inv_sine: floatlfo.cosine: float,lfo.inv_cosine: floatlfo.triangle: float,lfo.inv_triangle: floatlfo.sawtooth: float,lfo.inv_sawtooth: floatlfo.square: float,lfo.inv_square: float
Waveform Control Parameters
lfo.sine_attenuverter: float = 0.5lfo.sine_offset: float = 0.5lfo.cosine_attenuverter: float = 0.5lfo.cosine_offset: float = 0.5lfo.triangle_attenuverter: float = 1.0lfo.triangle_offset: float = 0.0lfo.sawtooth_attenuverter: float = 1.0lfo.sawtooth_offset: float = 0.0lfo.square_attenuverter: float = 1.0lfo.square_offset: float = 0.0lfo.pw: float = 0.5lfo.pw_offset: float = 0.0
Read-Only Status Attributes
lfo.frozen: bool- Frozen state of the lfolfo.t: float- Time within the current cycle of the lfolfo.normalized: float- Likelfo.t, but normalized to 0 - 1lfo.cycle: int- The number of the current cycle of the lfo
Primary Instancing Attributes, Read/Write
lfo.period, lfo.frequency
lfo.period is the primary setting for the lfo. It's the duration between
wave repeats.
lfo.frequency is the inverse of the period. While the period defines the
duration of one wave cycle, the frequency defines the number of cycles per
second.
Wave Outputs, Read-Only
If you have ever tried making sounds on a computer, you will be very familiar with the available wave types.
All wave forms come with an inverted version named inv_<waveform>.
Sine, Cosine (And important configuration parameters!)
Your off-the-mill sine and cosine waves.
Note that as of now these are by default configured so they cycle between 0 and 1, not -1 to 1.
WARNING This might change. We're at v0.0.2 as of writing this, and practical use must show which configuration for these two is most common.
See <waveform>_attenuverter and <waveform>_offset below on how to change
this.
Triangle
A triangle wave ramps up from 0 to 1 over half of the period. Then it ramps down back to zero for the second half, creating a triangular shape.
Sawtooth
A sawtooth wave starts at 1 and ramps down to 0 over the full length of the period.
Square
The square wave holds 1 over a given time that defaults to half the period, then it switches to 0.
See lfo.pw and lfo.pw_offset below for configuration options.
Waveform Control Parameters
<waveform>_attenuverter, <waveform>.offset
All waveforms offer these two modifiers. They can passed to the LFO() init
when instantiating, and also during runtime
The weird term attenuverter also comes from the world of modular synths and is a combination of attenuator - a scale factor - and inverter - because a negative scale will invert the wave.
For sine_attenuverter and cosine_attenuverter are 0.5 by default, so the
sine and cosine waves return values between 0 and 1 like all the others. See
WARNING above.
To reset the sine and cosine waves back to their origin, simply set their modifiers like this:
lfo = LFO(period, sine_attenuverter=1, sine_offset=0, ...)
This first scales the sine wave back to the range of -1 to 1, and then removes the position shift from the defaults.
Read-Only Status Attributes
lfo.t, lfo.normalized
lfo.t will give you the current time within the current cycle of the curve.
This will be a value between 0 and lfo.period.
lfo.normalized will give you the same, but scaled into the range of 0 to 1.
Both attributes will reset after each period.
lfo.cycles
The number of the loop that the lfo is currently in. Increments after each period.
Methods
An LFO is mostly a fire and forget object. But it still offers a small handful of methods
lfo.reset() -> None
Resets the start time of the lfo to the current time. With short periods,
this will most likely not be relevant, but an lfo can also run for a very long
time, e.g. to ramp up enemy spawns over a level, and you don't want to have
your deep in its cycle when the next level begins.
lfo.freeze() -> None, lfo.unfreeze() -> None, lfo.is_frozen() -> bool
Pauses the lfo. The current value is held until the pause is terminated. Note that the lfo's start time shifts so, that the wave it outputs is continuous. It will not jump once it's reactivated.
If you prefer a function interface over the status attribute lfo.frozen
above, use lfo.is_frozen(), which returns a bool.
Python Magic Methods
LFO instances properly convert to bool, int and float and can thus be
directly compared to all of them.
Note that as of now, the sine curve is used. This might be configurable
later... FIXME
So e.g. bool(lfo) is the same as bool(lfo.sine).
LFO instances also provide __call__, so if you prefer the function
interface, use lfo() to fetch the sine value from the lfo.
In addition, lfo is both an iterator and iterable.
from lfo import LFO
from time import sleep
l = LFO(10)
next(l)
>>> 0.2457116119475273
for i, v in zip(range(10), l):
print(i, v)
sleep(0.25)
>>> 0 -0.9886300710248443
>>> 1 -0.9999805639536082
>>> 2 -0.9866305171025227
>>> 3 -0.9488620508175084
>>> 4 -0.8876400367987355
>>> 5 -0.804481428399949
>>> 6 -0.7013677240075332
>>> 7 -0.5811011443144513
>>> 8 -0.44612926127688374
>>> 9 -0.3002298909230939
Example
_NOTE 1: to preserve the zero-dependencies of lfo, examples/demos will be published in a dedicated package lfo_demos, which is currently in the making but not published yet.
_NOTE 2: This example requires pygame-ce, but the code should be straight
forward enough to be directly translated to other frameworks like pyglet.
NOTE 3: Please don't use the badly maintained pygame project anymore.
#!/bin/env python3
import pygame
import pygame._sdl2 as sdl2
from lfo import LFO
TITLE = 'pygame minimal template'
SCREEN = pygame.Rect(0, 0, 1024, 768)
FPS = 60
DT_MAX = 3 / FPS
clock = pygame.time.Clock()
window = pygame.Window(title=TITLE, fullscreen_desktop=True)
renderer = sdl2.Renderer(window)
renderer.logical_size = SCREEN.size
RADIUS = 256
SATTELITE_RADIUS = 32
orbit = LFO(10, sine_offset=0.0, cosine_offset=0.0)
sattelite = LFO(5, sine_offset=0.0, cosine_offset=0.0)
speedo = LFO(20, sine_attenuverter=0.3, sine_offset=1.0, cosine_attenuverter=0.3, cosine_offset=1.0)
color = LFO(3)
rect = pygame.Rect(0, 0, 10, 10)
running = True
while running:
dt = min(clock.tick(FPS) / 1000.0, DT_MAX)
for e in pygame.event.get():
if e.type == pygame.QUIT:
running = False
elif e.type == pygame.KEYDOWN:
if e.key == pygame.K_ESCAPE:
running = False
renderer.draw_color = 'darkslategrey'
renderer.clear()
renderer.draw_color = ('red', 'green')[int(color.square)]
renderer.draw_rect(rect.move_to(center=SCREEN.center))
x = orbit.cosine * RADIUS + SCREEN.centerx
y = orbit.sine * RADIUS + SCREEN.centery
renderer.draw_color = ('yellow', 'magenta')[int(color.square)]
renderer.draw_rect(rect.move_to(center=(round(x), round(y))))
x += sattelite.cosine * SATTELITE_RADIUS
y += sattelite.sine * SATTELITE_RADIUS
renderer.draw_color = ('cyan', 'orange')[int(color.square)]
renderer.draw_rect(rect.move_to(center=(round(x), round(y))))
sattelite.period = speedo.sine
x = orbit.sine * 2 * RADIUS + SCREEN.centerx + sattelite.sine * SATTELITE_RADIUS
y = orbit.cosine * 2 * RADIUS + SCREEN.centery + sattelite.cosine * SATTELITE_RADIUS
renderer.draw_color = ('green', 'red')[int(color.square)]
renderer.draw_rect(rect.scale_by(2).move_to(center=(round(x), round(y))))
renderer.present()
window.title = f'{TITLE} - time={pygame.time.get_ticks()/1000:.2f} fps={clock.get_fps():.2f}'
Installation
Note that this module is in very early draft, and while it is already useful and functional, things might change...
Installation via pip
lfo is available on pypi and can be installed by
pip install lfo
(You are using venvs, right? RIGHT?!?)
lfo comes with no additional requirements, but it is very good to create input
for easing functions from rpeasings. lfo was primarily created as a tool
for my pygame projects, but it's a generalized control tool that can be used
in many different scenarios and environments.
Pre-built wheels for Windows, Mac and Linux...
...are available on the github releases page at
https://github.com/dickerdackel/lfo/releases
Install from source
Again, use a venv!
lfo is packaged following the python packaging authority at https://www.pypa.io/
You can simply clone the github repo from https://github.com/dickerdackel/lfo
Then change into this directory and install the package - INTO YOUR VENV! -
with pip install .
# clone repo
dickerdackel@minime:~$ git clone https://github.com/dickerdackel/lfo
...
# create venv
dickerdackel@minime:~/lfo$ python3 -m venv --prompt lfo .venv
# activate venv
dickerdackel@minime:~/lfo$ . .venv/bin/activate
# install lfo
(lfo) dickerdackel@minime:~/lfo$ pip install .
(lfo) dickerdackel@minime:~/lfo$
Support / Contributing
Issues can be opened on Github
Credits / Acknowledgements
- Thanks to all the modular synth vendors that showed me the versatility of LFOs
License
This software is provided under the MIT license.
See LICENSE file for details.
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
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lfo-0.0.3.tar.gz.
File metadata
- Download URL: lfo-0.0.3.tar.gz
- Upload date:
- Size: 17.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8b6f3bf725dc040278ddf50807f51b4fe954c500c3c32932622980c1464accf2
|
|
| MD5 |
1850a331ded318eda6e5229bb4da9f14
|
|
| BLAKE2b-256 |
1fe8a20352fdf070bcebec05750be3e2415fd590b6d36e98789fe60475a843f5
|
File details
Details for the file lfo-0.0.3-cp314-cp314-win_arm64.whl.
File metadata
- Download URL: lfo-0.0.3-cp314-cp314-win_arm64.whl
- Upload date:
- Size: 15.5 kB
- Tags: CPython 3.14, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6141ffe9e1fe98270fc8c5b1c659144345f578d740f0b7865640fec3d707eedf
|
|
| MD5 |
d150320238d37cab1aee61a40537ee5b
|
|
| BLAKE2b-256 |
ea27e8f8f9182d7b912142012a89aace80e0f7c0de5f325852c30dec28e4f20b
|
File details
Details for the file lfo-0.0.3-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: lfo-0.0.3-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 16.7 kB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e9be46745375580659ccb9a082fdae90807c2aaa165705f3b41baa8fe5b54878
|
|
| MD5 |
abc3d19b98398f2fc7e847e1bea2421f
|
|
| BLAKE2b-256 |
15b4d83a20878a61d12a152c14048d893bbcdee2db01d45fc6f6fa824cb54669
|
File details
Details for the file lfo-0.0.3-cp314-cp314-win32.whl.
File metadata
- Download URL: lfo-0.0.3-cp314-cp314-win32.whl
- Upload date:
- Size: 16.4 kB
- Tags: CPython 3.14, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
81c00efa78b98492353f28dcf14ff8d9a9e05f018527a56e00d369a4fda9082f
|
|
| MD5 |
69fddb03d63721be136dc1fc52f95efd
|
|
| BLAKE2b-256 |
e4474a703c2b102c04c93f6fa71725a2c022de16d1082c639d8590a901602463
|
File details
Details for the file lfo-0.0.3-cp314-cp314-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp314-cp314-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 35.8 kB
- Tags: CPython 3.14, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
24c44202ea15ce6150c1da97703df15f42bf59e1818de07a6f571104090469bc
|
|
| MD5 |
428fddb6694616306778f705a4ca6dc8
|
|
| BLAKE2b-256 |
ca46b70607ca8a827fa23afce87bc2a0a0964af1b50b43657f623a03d2233e4b
|
File details
Details for the file lfo-0.0.3-cp314-cp314-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: lfo-0.0.3-cp314-cp314-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 35.3 kB
- Tags: CPython 3.14, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d3921ce937b6cd75fd73289361a6b2e76f33ee329b23177a830512c87a9c8597
|
|
| MD5 |
98c39f33617d56cda3672f285c09add3
|
|
| BLAKE2b-256 |
ae61a9d8eb2fe9e702e905adf0ba30441162d0067f7a9969d42643dba9187fb1
|
File details
Details for the file lfo-0.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 35.8 kB
- Tags: CPython 3.14, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8476c79488689560cac12ae95cb977249e2c41e76b3405bfc0324592a74d1a1d
|
|
| MD5 |
2cebe05e7e9905c88693729b0e31749d
|
|
| BLAKE2b-256 |
cf2ba8d1b821fd93ab2c4ac1a98511f8591c41a8f534630fa9a73d5470e35e63
|
File details
Details for the file lfo-0.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: lfo-0.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 36.4 kB
- Tags: CPython 3.14, manylinux: glibc 2.17+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
74a79df111df219c6c14c306d2dadd91c924f9727cf7deb956a157faf78c30f1
|
|
| MD5 |
8fdb6f39eb3ef6f84fe997bbab8b97e8
|
|
| BLAKE2b-256 |
8652e49d92b86db2b626823603538ddd7cbf56130b18be0431214e06229c1b44
|
File details
Details for the file lfo-0.0.3-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: lfo-0.0.3-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 14.5 kB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1d9b24981161d80a1d4f981700196ae0f5a0c1077a19ba830bf5abcef5bdbc0b
|
|
| MD5 |
81d8dba74209d2a8772cd000353d2288
|
|
| BLAKE2b-256 |
af3b918ab188e989f98cca60240f5fbc8c772668522427cbee4cf9ba6a495d75
|
File details
Details for the file lfo-0.0.3-cp314-cp314-macosx_10_13_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp314-cp314-macosx_10_13_x86_64.whl
- Upload date:
- Size: 14.3 kB
- Tags: CPython 3.14, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a7c03bc467378ce3e3bf267558e4024fb6d80eb65ec10b9c8e8cafc7efbc6205
|
|
| MD5 |
4031b817f012a67d3e031d3c3455379b
|
|
| BLAKE2b-256 |
f5538763257b2270985128c9492efb9c6a899cea096f868eab5ecd9c9619554c
|
File details
Details for the file lfo-0.0.3-cp313-cp313-win_arm64.whl.
File metadata
- Download URL: lfo-0.0.3-cp313-cp313-win_arm64.whl
- Upload date:
- Size: 15.3 kB
- Tags: CPython 3.13, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0e8c40efd21cf04cf3dab999fa76f575740e351082656d30e9d64c24d2ff21e9
|
|
| MD5 |
6276ac44c0a78ec42fd4652c93b279d9
|
|
| BLAKE2b-256 |
6e41ada963eb20ac157bb8c60311d70e1bc43dc0d2b300e27473e098a28dd661
|
File details
Details for the file lfo-0.0.3-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: lfo-0.0.3-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 16.4 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e57440dccdff156314d17e6636284755b699e2291fa0f0950ab3250bce02358
|
|
| MD5 |
4819619c47286578722863fe551d91f5
|
|
| BLAKE2b-256 |
94e10a14279806e649d27fcad2938945769d3af7bbd92d19365329d56b6121e6
|
File details
Details for the file lfo-0.0.3-cp313-cp313-win32.whl.
File metadata
- Download URL: lfo-0.0.3-cp313-cp313-win32.whl
- Upload date:
- Size: 16.1 kB
- Tags: CPython 3.13, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
21971376f953c1fc7cfc4ba25c4a235574c4b9443fa1762d8321141226a3405b
|
|
| MD5 |
52b29a9576d49178b3ad7d5c8a2b9574
|
|
| BLAKE2b-256 |
c8595402ef21cf251d5f4c94680ee5148ca812a4cbc69dca9c76069e55a712a6
|
File details
Details for the file lfo-0.0.3-cp313-cp313-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp313-cp313-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 35.8 kB
- Tags: CPython 3.13, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50f85e781fd1a7d4b1af545e5d99fc096a4a80542c53e49d93c72b263ea1311e
|
|
| MD5 |
152fc4fa302ea590eb44b1c693d774e0
|
|
| BLAKE2b-256 |
40f2c574b133fd1792ade598fa3846e7caf09960253f3de510ec68edaf678457
|
File details
Details for the file lfo-0.0.3-cp313-cp313-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: lfo-0.0.3-cp313-cp313-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 35.2 kB
- Tags: CPython 3.13, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
14cbbc1633b0962ac6fe0fe8a2b0eeeb6e49fc05c3888b55412e08b6d57a9d5b
|
|
| MD5 |
66e266715bac0e639b23df03fcbf7ebc
|
|
| BLAKE2b-256 |
05817bdf87248a96bea60f0570181b7b53b62d74db5ea026f212f09287027fde
|
File details
Details for the file lfo-0.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 35.8 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d66a88ab5c34691c09069e86a67db929b84f2bafdf9565d2972edf2c98cf5809
|
|
| MD5 |
1f40eecea3a9b1da4866139c7586c28b
|
|
| BLAKE2b-256 |
fd225a3a6b4a723f5c015a9c75d4377a91d70a1dc461fc1b408c0dfcb79294ab
|
File details
Details for the file lfo-0.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: lfo-0.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 36.3 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b226d46f583caff902c7830ad1eba91521fdee73968a5b63523a698bdeae4d35
|
|
| MD5 |
4d5d0a06125365fa520e2555d0f3bec7
|
|
| BLAKE2b-256 |
563a0ce1ab902a73beba028790fa13457e489520b045e0bdcef2cad797914f53
|
File details
Details for the file lfo-0.0.3-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: lfo-0.0.3-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 14.5 kB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
828175a59ed7c33ae68b56760f35c9674da61cb6e86be3ba4dfbeca0fb7c9e9c
|
|
| MD5 |
423e1ffa549457130ee1b0eb2b5de64e
|
|
| BLAKE2b-256 |
897e607ed170d7cc622562f486b4aca22fef0d43e88ad78e32ab3a7181cafeab
|
File details
Details for the file lfo-0.0.3-cp313-cp313-macosx_10_13_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp313-cp313-macosx_10_13_x86_64.whl
- Upload date:
- Size: 14.3 kB
- Tags: CPython 3.13, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
49daa11a7298547b955084ce588504ad154edfe60e406c3538181a8999a0fd22
|
|
| MD5 |
c3d9f07ce26099c6e2ac87695b96adbb
|
|
| BLAKE2b-256 |
ac413788bd8a9d72f9158fc0a6d0d8cb6bf5cda9ded4cec72287f58deeb0a0ef
|
File details
Details for the file lfo-0.0.3-cp312-cp312-win_arm64.whl.
File metadata
- Download URL: lfo-0.0.3-cp312-cp312-win_arm64.whl
- Upload date:
- Size: 15.3 kB
- Tags: CPython 3.12, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cf48f36399554c6b5ddce34392bbf185b5f786b03db330595a55d8410eb7207c
|
|
| MD5 |
2e53bf833874192e5df45cfef7263d6b
|
|
| BLAKE2b-256 |
1f03f8e28aec510cac68c30b65fc399aad034580c1a925566e7905d868c2b06c
|
File details
Details for the file lfo-0.0.3-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: lfo-0.0.3-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 16.4 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
767a07b11289d758836150fb2bb7af0739398005c51958cba805ce938c5cf220
|
|
| MD5 |
c86b8715e4def2b2c617d21dd3f3b560
|
|
| BLAKE2b-256 |
7f14f6f3560e8089fe9295d822b957648b2b3343472572c172f57bdebba88776
|
File details
Details for the file lfo-0.0.3-cp312-cp312-win32.whl.
File metadata
- Download URL: lfo-0.0.3-cp312-cp312-win32.whl
- Upload date:
- Size: 16.1 kB
- Tags: CPython 3.12, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35bc8fe5405a8d771f9bb46646f82dfa4d2906c5929c4a681afefd52e54946ff
|
|
| MD5 |
ac6819348d4df68ae2b9febb29c260bf
|
|
| BLAKE2b-256 |
59d3a7f5db3d96550d3d21f4849eedd3e40fbe39d3f058fce4a297c5b5e06bb0
|
File details
Details for the file lfo-0.0.3-cp312-cp312-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp312-cp312-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 35.8 kB
- Tags: CPython 3.12, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
246bc0bb310daf4acd902664d7f8806f3e54ee6c5d9d616facb6a414d29d5eb3
|
|
| MD5 |
12556c3f7c14733b24e8fe11d9017b1b
|
|
| BLAKE2b-256 |
d21295e21770f55d2057f21e66ce1ec0b1811aa3c9f398745fb35e5c4acb8419
|
File details
Details for the file lfo-0.0.3-cp312-cp312-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: lfo-0.0.3-cp312-cp312-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 35.2 kB
- Tags: CPython 3.12, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
98a191c2e249ab92bf145b88ea83fdcb0811673a3b849d904129f8a5bfb86c57
|
|
| MD5 |
599e9cf133123f67eb8437771b3b23e1
|
|
| BLAKE2b-256 |
c23136f4d89875fbbcfa814ac7e8810e1d1eabff28bc345bf85b4a595ca658cf
|
File details
Details for the file lfo-0.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 35.7 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cda264eb29384f5f02a28d8375ed2d9f77a7095ed4cae0010f3c43ec3d749186
|
|
| MD5 |
d873dc53086e0d967008df36c0fb3f66
|
|
| BLAKE2b-256 |
89bae07d754347a22a46c852e555b2a336f1ad97ef6b1fe06dc111cf8382ddc4
|
File details
Details for the file lfo-0.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: lfo-0.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 36.2 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
73d9971965935e8b3f17fe9261496b97bbae3a3d97bb3a455fff3ff2d0733570
|
|
| MD5 |
fef7de14d2af39ba449782251d7d405e
|
|
| BLAKE2b-256 |
2c63f27d9364f13453e409548d2d976309a319bafb4aa606c94d44e0266687e0
|
File details
Details for the file lfo-0.0.3-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: lfo-0.0.3-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 14.5 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b501db3d7542a7ef67b595569033b32cb6f18d3491c459f231f2ae36c7c4be0c
|
|
| MD5 |
d2638907cfe341b8ffa753e7dfcbffa1
|
|
| BLAKE2b-256 |
38f075bd48f3acb7333e983128c4ae62a57b93346856e5ede937c9510e974374
|
File details
Details for the file lfo-0.0.3-cp312-cp312-macosx_10_13_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp312-cp312-macosx_10_13_x86_64.whl
- Upload date:
- Size: 14.3 kB
- Tags: CPython 3.12, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0861f7f151965d30711b97f26c627c3f5746746ee3f878817aac5e6e0b6c6ef9
|
|
| MD5 |
9a27f8b0cc26d895e319eea33e5f06b9
|
|
| BLAKE2b-256 |
25d03e9401d274dd02de4fc55416c88d16b11835e273e874e91e098e63a3a585
|
File details
Details for the file lfo-0.0.3-cp311-cp311-win_arm64.whl.
File metadata
- Download URL: lfo-0.0.3-cp311-cp311-win_arm64.whl
- Upload date:
- Size: 15.3 kB
- Tags: CPython 3.11, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4358c18aa9039580e046ed05395a19af228c24abe84814971bef859e4e13f4aa
|
|
| MD5 |
d8dbb097185b73344d0be51e9f09b1ef
|
|
| BLAKE2b-256 |
07cde493a7c1d6d92a5e9dc2e7222896d354b81346eba1f74c6db7b41bf77616
|
File details
Details for the file lfo-0.0.3-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: lfo-0.0.3-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 16.4 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1609c5a2b88f4d43bae089178bde76fbc65d41e69e6f9cc612024e72f953eaa
|
|
| MD5 |
2af97d72d4db6f9a173b362d9a73f17f
|
|
| BLAKE2b-256 |
2e1f6ee697ad019c84b51441297a9d3274c6f4f8a38e49a593bb53f8f66e1539
|
File details
Details for the file lfo-0.0.3-cp311-cp311-win32.whl.
File metadata
- Download URL: lfo-0.0.3-cp311-cp311-win32.whl
- Upload date:
- Size: 16.1 kB
- Tags: CPython 3.11, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
95957ba0075d73737e756bc3189abfc4621f6e0e53183c7f518be18b8272dadf
|
|
| MD5 |
aebc48d409697f4f5fb6880a196077ff
|
|
| BLAKE2b-256 |
4382f3e8b48abd160d3d9ca6472dde7166f9b424dadabda29c2f3b1f99f2658c
|
File details
Details for the file lfo-0.0.3-cp311-cp311-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp311-cp311-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 35.6 kB
- Tags: CPython 3.11, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df21d854a5ed3a45b30e8a28fe59254844fbae734e070db57135565646f3ea60
|
|
| MD5 |
e73f6bfc7972d93a08637efb1992c2b4
|
|
| BLAKE2b-256 |
efc1cab69387b060e0268e838e133b7cc4feab0ffe8f1960b6a30890036f9d2e
|
File details
Details for the file lfo-0.0.3-cp311-cp311-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: lfo-0.0.3-cp311-cp311-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 35.2 kB
- Tags: CPython 3.11, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cdd2302393d7136bf76aea5240bfb559447a49eb038452d6794c1c8581467e79
|
|
| MD5 |
67a57f4966921dd2b21ee7e7468e281e
|
|
| BLAKE2b-256 |
ef02ae9af296174fa0db920e71bf5d45bc09ff62f1b5d2341f2acc5abac3e751
|
File details
Details for the file lfo-0.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 35.6 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e215d173e8476435a4aadd19c56b1f0240c029bae1f501ec82ce583ef7cbc2c
|
|
| MD5 |
db7740fd4658c0d2893289669a9038d7
|
|
| BLAKE2b-256 |
3f0810afa565d572b3b60c2e0c2fd395fcab9f775ec0449876e1e91c4c0a46b9
|
File details
Details for the file lfo-0.0.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: lfo-0.0.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 36.3 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2944912b47e31abeee610cd3369680cb6b4cd049801ab4bf95598c6242dbae3a
|
|
| MD5 |
89ef5926e01bfd93895dfba7794f8ec3
|
|
| BLAKE2b-256 |
f712f214312d201d8c47058740c004f87e7f0a4cabb8f581772242bec1a3036f
|
File details
Details for the file lfo-0.0.3-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: lfo-0.0.3-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 14.5 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ffc4f36019615d266eb905897ae1858d60fd6f4b624b881eb464cc8a77056db1
|
|
| MD5 |
0b7765901a3d878169c7b8203178bb66
|
|
| BLAKE2b-256 |
9cb29cf2c2745e613c5536ed977be00cd5262dfa9b9ddbd20ef2ad84b197f434
|
File details
Details for the file lfo-0.0.3-cp311-cp311-macosx_10_9_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp311-cp311-macosx_10_9_x86_64.whl
- Upload date:
- Size: 14.3 kB
- Tags: CPython 3.11, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d36956276e2e9497e5b1d4ead89372f559413e26a0955b9b557ba8dd93059328
|
|
| MD5 |
d2a89fb8b3453b017951f6c83551b370
|
|
| BLAKE2b-256 |
8265d970877baf5d69ceef675822be7d5a88e1bed82deb5b0ed8b5bb71e7a0e2
|
File details
Details for the file lfo-0.0.3-cp310-cp310-win_arm64.whl.
File metadata
- Download URL: lfo-0.0.3-cp310-cp310-win_arm64.whl
- Upload date:
- Size: 15.3 kB
- Tags: CPython 3.10, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
02d0f0ee718368eb62a7bbc8dbf9353ea75a41e23504724cc802b9ae9825164e
|
|
| MD5 |
5e1779e9d3c89b621394b770b5a6f358
|
|
| BLAKE2b-256 |
e9e811488937d6ee6222e83da1d0fc0ae198ab9ea5a1e9527d2628fa41ff5718
|
File details
Details for the file lfo-0.0.3-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: lfo-0.0.3-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 16.4 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9b8b476fb32fa3029996c1e7dfdaa702ded73dc962d1f3d9c35ea355b54dcc17
|
|
| MD5 |
d6ba69e2e8169c9cb0655d89a35fa82e
|
|
| BLAKE2b-256 |
dc6ab91c5777efa584e934bb77e7ad9947e08dfd418e90c091b30bb71796e721
|
File details
Details for the file lfo-0.0.3-cp310-cp310-win32.whl.
File metadata
- Download URL: lfo-0.0.3-cp310-cp310-win32.whl
- Upload date:
- Size: 16.1 kB
- Tags: CPython 3.10, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
33948464881a77a17656510a433ef6663bcc59a3d0e9a981559bbade7aaec74a
|
|
| MD5 |
6572361ad6767c5aa8fc1af2374ab7e3
|
|
| BLAKE2b-256 |
35e67403654c068488356d58000e9b2e2449ae3bd6b21c146daa1b653553ee54
|
File details
Details for the file lfo-0.0.3-cp310-cp310-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp310-cp310-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 35.5 kB
- Tags: CPython 3.10, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7d09fd4ee9d7abeca3dcd3fd23f3199df36f9c4c307d6649089c6a54340c8e1a
|
|
| MD5 |
64c74e0738681503d5901c96de59fa7d
|
|
| BLAKE2b-256 |
04dd3d88837176e6d9ea164aec07b732ad2e57588081dc475f8c32f4068f99af
|
File details
Details for the file lfo-0.0.3-cp310-cp310-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: lfo-0.0.3-cp310-cp310-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 35.1 kB
- Tags: CPython 3.10, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c29805060c2b36ab1bc3320c4faa7ce0589d2c547d0be48f3b4105f9adc6631a
|
|
| MD5 |
0cfe4c522ee308f2ed898a2e01a40644
|
|
| BLAKE2b-256 |
3251a030847f914124b407e9448d318216c2c210ccdc0bfc32191ece3d9aa714
|
File details
Details for the file lfo-0.0.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 35.5 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
25a9607af9b4947cfe4ce4b2970144fc427e9810950474f71ca53156a80c68de
|
|
| MD5 |
e0ae5374b81ed4d95a0b450bd62b5650
|
|
| BLAKE2b-256 |
bfd32347889e06a8391213112fc348fc19477c798fbc280c834d2c485097ba43
|
File details
Details for the file lfo-0.0.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: lfo-0.0.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 36.2 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6213f7b4487491aee164414b1bb7a3a51a4ff0227cecb1c789c19b5068a5d89f
|
|
| MD5 |
805e6bf6245fc09acff6173d48257893
|
|
| BLAKE2b-256 |
877570ac266e321e1b09990da9ac9710d3a9ae0513afac390d0530fa966f233f
|
File details
Details for the file lfo-0.0.3-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: lfo-0.0.3-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 14.5 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4237bdf84f5d800300915c21ade3f2a86d746cd264146beb76e84c40550c86ae
|
|
| MD5 |
8b49362dd2fa87852f8e25f64785d0eb
|
|
| BLAKE2b-256 |
9c130eeb886899e31db2ef6a9febc14b92adf11fd86d1dba0eba97e0f601d568
|
File details
Details for the file lfo-0.0.3-cp310-cp310-macosx_10_9_x86_64.whl.
File metadata
- Download URL: lfo-0.0.3-cp310-cp310-macosx_10_9_x86_64.whl
- Upload date:
- Size: 14.3 kB
- Tags: CPython 3.10, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bf4c397024cd837ce7170085d12db3c5d68163d3bc63c35e672ab563240dde6a
|
|
| MD5 |
4f9097d16beebd260c479d17e67126ae
|
|
| BLAKE2b-256 |
a2f4beb63900b4b3e43798a288f6785c625c15f5a7690e6396852837c16f0753
|