Skip to main content

No project description provided

Project description

tamp logo

Python compat PyPi GHA Status Coverage Documentation Status

Tamp

Tamp is a low-memory, DEFLATE-inspired lossless compression library.

Features

  • Various implementations available:

    • Pure Python:

      • tamp/compressor.py, tamp/decompressor.py

      • When available, Tamp will use a python-bound C implementation for speed.

    • C library:

      • tamp/_c_src/

  • High compression ratios and low memory use.

  • Compact compression and decompression implementations.

    • Compiled C library is <4KB (compressor + decompressor).

  • Mid-stream flushing.

    • Allows for submission of messages while continuing to compress subsequent data.

  • Customizable dictionary for greater compression of small messages.

  • Convenient CLI interface.

Installation

Tamp contains 3 implementationss:

  1. A desktop Cpython implementation that is optimized for readability

  2. A micropython viper implementation that is optimized for runtime performance.

  3. A C implementation (with python bindings) for accelerated desktop use and to be used in C projects.

Desktop Python

The Tamp library and CLI requires Python >=3.8 and can be installed via:

pip install tamp

MicroPython

For micropython use, there are 3 main files:

  1. tamp/__init__.py - Always required.

  2. tamp/decompressor_viper.py - Required for on-device decompression.

  3. tamp/compressor_viper.py - Required for on-device compression.

For example, if on-device decompression isn’t used, then do not include decompressor_viper.py. If manually installing, just copy these files to your microcontroller’s /lib/tamp folder.

If using mip, tamp can be installed by specifying the appropriate package-*.json file.

mip install github:brianpugh/tamp  # Defaults to package.json: Compressor & Decompressor
mip install github:brianpugh/tamp/package-compressor.json  # Compressor only
mip install github:brianpugh/tamp/package-decompressor.json  # Decompressor only

If using Belay, tamp can be installed by adding the following to pyproject.toml.

[tool.belay.dependencies]
tamp = [
   "https://github.com/BrianPugh/tamp/blob/main/tamp/__init__.py",
   "https://github.com/BrianPugh/tamp/blob/main/tamp/compressor_viper.py",
   "https://github.com/BrianPugh/tamp/blob/main/tamp/decompressor_viper.py",
]

C

Copy the tamp/_c_src/tamp folder into your project. For more information, see the documentation.

Usage

Tamp works on desktop python and micropython. On desktop, Tamp is bundled with the tamp command line tool for compressing and decompressing tamp files.

CLI

Compression

Use tamp compress to compress a file or stream. If no input file is specified, data from stdin will be read. If no output is specified, the compressed output stream will be written to stdout.

$ tamp compress --help

 Usage: tamp compress [OPTIONS] [INPUT_PATH]

 Compress an input file or stream.

╭─ Arguments ────────────────────────────────────────────────────────────────────────╮
   input_path      [INPUT_PATH]  Input file to compress or decompress. Defaults to  
                                 stdin.                                             
╰────────────────────────────────────────────────────────────────────────────────────╯
╭─ Options ──────────────────────────────────────────────────────────────────────────╮
 --output   -o      PATH                      Output file. Defaults to stdout.      
 --window   -w      INTEGER RANGE [8<=x<=15]  Number of bits used to represent the  
                                              dictionary window.                    
                                              [default: 10]                         
 --literal  -l      INTEGER RANGE [5<=x<=8]   Number of bits used to represent a    
                                              literal.                              
                                              [default: 8]                          
 --help                                       Show this message and exit.           
╰────────────────────────────────────────────────────────────────────────────────────╯

Example usage:

tamp compress enwik8 -o enwik8.tamp  # Compress a file
echo "hello world" | tamp compress | wc -c  # Compress a stream and print the compressed size.

The following options can impact compression ratios and memory usage:

  • window - 2^window plaintext bytes to look back to try and find a pattern. A larger window size will increase the chance of finding a longer pattern match, but will use more memory, increase compression time, and cause each pattern-token to take up more space. Try smaller window values if compressing highly repetitive data, or short messages.

  • literal - Number of bits used in each plaintext byte. For example, if all input data is 7-bit ASCII, then setting this to 7 will improve literal compression ratios by 11.1%. The default, 8-bits, can encode any binary data.

Decompression

Use tamp decompress to decompress a file or stream. If no input file is specified, data from stdin will be read. If no output is specified, the compressed output stream will be written to stdout.

 $ tamp decompress --help

 Usage: tamp decompress [OPTIONS] [INPUT_PATH]

 Decompress an input file or stream.

╭─ Arguments ────────────────────────────────────────────────────────────────────────╮
   input_path      [INPUT_PATH]  Input file. If not provided, reads from stdin.     
╰────────────────────────────────────────────────────────────────────────────────────╯
╭─ Options ──────────────────────────────────────────────────────────────────────────╮
 --output  -o      PATH  Output file. Defaults to stdout.                           
 --help                  Show this message and exit.                                
╰────────────────────────────────────────────────────────────────────────────────────╯

Example usage:

tamp decompress enwik8.tamp -o enwik8
echo "hello world" | tamp compress | tamp decompress

Python

The python library can perform one-shot compression, as well as operate on files/streams.

import tamp

# One-shot compression
string = b"I scream, you scream, we all scream for ice cream."
compressed_data = tamp.compress(string)
reconstructed = tamp.decompress(compressed_data)
assert reconstructed == string

# Streaming compression
with tamp.open("output.tamp", "wb") as f:
    for _ in range(10):
        f.write(string)

# Streaming decompression
with tamp.open("output.tamp", "rb") as f:
    reconstructed = f.read()

Benchmark

In the following section, we compare Tamp against:

  • zlib, a python builtin gzip-compatible DEFLATE compression library.

  • heatshrink, a data compression library for embedded/real-time systems. Heatshrink has similar goals as Tamp.

All of these are LZ-based compression algorithms, and tests were performed using a 1KB (10 bit) window. Since zlib already uses significantly more memory by default, the lowest memory level (memLevel=1) was used in these benchmarks. It should be noted that higher zlib memory levels will having greater compression ratios than Tamp. Currently, there is no micropython-compatible zlib or heatshrink compression implementation, so these numbers are provided simply as a reference.

Compression Ratio

The following table shows compression algorithm performance over a variety of input data sourced from the Silesia Corpus and Enwik8. This should give a general idea of how these algorithms perform over a variety of input data types.

dataset

raw

tamp

zlib

heatshrink

enwik8

100,000,000

51,635,633

56,205,166

56,110,394

build/silesia/dickens

10,192,446

5,546,761

6,049,169

6,155,768

build/silesia/mozilla

51,220,480

25,121,385

25,104,966

25,435,908

build/silesia/mr

9,970,564

5,027,032

4,864,734

5,442,180

build/silesia/nci

33,553,445

8,643,610

5,765,521

8,247,487

build/silesia/ooffice

6,152,192

3,814,938

4,077,277

3,994,589

build/silesia/osdb

10,085,684

8,520,835

8,625,159

8,747,527

build/silesia/reymont

6,627,202

2,847,981

2,897,661

2,910,251

build/silesia/samba

21,606,400

9,102,594

8,862,423

9,223,827

build/silesia/sao

7,251,944

6,137,755

6,506,417

6,400,926

build/silesia/webster

41,458,703

18,694,172

20,212,235

19,942,817

build/silesia/x-ray

8,474,240

7,510,606

7,351,750

8,059,723

build/silesia/xml

5,345,280

1,681,687

1,586,985

1,665,179

Tamp usually out-performs heatshrink, and is generally very competitive with zlib. While trying to be an apples-to-apples comparison, zlib still uses significantly more memory during both compression and decompression (see next section). Tamp accomplishes competitive performance while using around 10x less memory.

Memory Usage

The following table shows approximately how much memory each algorithm uses during compression and decompression.

Action

tamp

zlib

heatshrink

Compression

(1 << windowBits)

(1 << (windowBits+2)) + 7 KB

(1 << windowBits)

Decompression

(1 << windowBits)

(1 << windowBits) + 7 KB

(1 << windowBits)

Both tamp and heatshrink have a few dozen bytes of overhead in addition to the primary window buffer, but are implementation-specific and ignored for clarity here.

Runtime

As a rough benchmark, here is the performance (in seconds) of these different compression algorithms on the 100MB enwik8 dataset. These tests were performed on an M1 Macbook Air.

Action

tamp (Python Reference)

tamp (C)

zlib

heatshrink (with index)

heatshrink (without index)

Compression

109.5

16.45

4.84

6.22

41.729

Decompression

54.0

0.70

0.98

0.82

0.82

Heatshrink v0.4.1 was used in these benchmarks. When heathshrink uses an index, an additional (1 << (windowBits + 1)) bytes of memory are used, tripling the memory requirement. Tamp could use a similar indexing to increase compression speed, but has chosen not to to focus on the primary goal of a low-memory compressor.

Binary Size

To give an idea on the resulting binary sizes, Tamp and other libraries were compiled for the Pi Pico. All libraries were compiled with -O3. Numbers reported in bytes.

Library

Compressor

Decompressor

Compressor + Decompressor

Tamp (micropython)

4779

4717

8262

Tamp (C)

2008

1976

3848

Heatshrink

2956

3876

6832

uzlib

2355

3963

6318

Heatshrink doesn’t include a high level API; in an apples-to-apples comparison the Tamp library would be even smaller.

When to use Tamp

On a Pi Pico (rp2040), the viper implementation of Tamp can compress data at around 4,300 bytes/s when using a 10-bit window. The data can then be decompressed at around 44,100 bytes/s. Tamp is good for compressing data on-device. If purely decompressing data on-device, it will nearly always be better to use the micropython-builtin zlib.decompress, when available.

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

tamp-1.1.3.tar.gz (34.4 kB view details)

Uploaded Source

Built Distributions

tamp-1.1.3-cp311-cp311-win_amd64.whl (141.3 kB view details)

Uploaded CPython 3.11 Windows x86-64

tamp-1.1.3-cp311-cp311-win32.whl (128.1 kB view details)

Uploaded CPython 3.11 Windows x86

tamp-1.1.3-cp311-cp311-musllinux_1_1_x86_64.whl (731.0 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

tamp-1.1.3-cp311-cp311-musllinux_1_1_ppc64le.whl (754.6 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ ppc64le

tamp-1.1.3-cp311-cp311-musllinux_1_1_i686.whl (694.0 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ i686

tamp-1.1.3-cp311-cp311-musllinux_1_1_aarch64.whl (724.8 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ ARM64

tamp-1.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (733.9 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

tamp-1.1.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (758.1 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ppc64le

tamp-1.1.3-cp311-cp311-manylinux_2_17_i686.manylinux_2_5_i686.manylinux1_i686.manylinux2014_i686.whl (701.3 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

tamp-1.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (728.6 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

tamp-1.1.3-cp311-cp311-macosx_12_0_x86_64.whl (156.9 kB view details)

Uploaded CPython 3.11 macOS 12.0+ x86-64

tamp-1.1.3-cp311-cp311-macosx_12_0_arm64.whl (147.6 kB view details)

Uploaded CPython 3.11 macOS 12.0+ ARM64

tamp-1.1.3-cp310-cp310-win_amd64.whl (143.1 kB view details)

Uploaded CPython 3.10 Windows x86-64

tamp-1.1.3-cp310-cp310-win32.whl (129.2 kB view details)

Uploaded CPython 3.10 Windows x86

tamp-1.1.3-cp310-cp310-musllinux_1_1_x86_64.whl (706.5 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

tamp-1.1.3-cp310-cp310-musllinux_1_1_ppc64le.whl (729.6 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ ppc64le

tamp-1.1.3-cp310-cp310-musllinux_1_1_i686.whl (681.9 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

tamp-1.1.3-cp310-cp310-musllinux_1_1_aarch64.whl (701.0 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ ARM64

tamp-1.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (697.8 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

tamp-1.1.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (721.6 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ppc64le

tamp-1.1.3-cp310-cp310-manylinux_2_17_i686.manylinux_2_5_i686.manylinux1_i686.manylinux2014_i686.whl (675.2 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

tamp-1.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (692.6 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

tamp-1.1.3-cp310-cp310-macosx_12_0_x86_64.whl (159.5 kB view details)

Uploaded CPython 3.10 macOS 12.0+ x86-64

tamp-1.1.3-cp310-cp310-macosx_12_0_arm64.whl (150.3 kB view details)

Uploaded CPython 3.10 macOS 12.0+ ARM64

tamp-1.1.3-cp39-cp39-win_amd64.whl (145.8 kB view details)

Uploaded CPython 3.9 Windows x86-64

tamp-1.1.3-cp39-cp39-win32.whl (131.2 kB view details)

Uploaded CPython 3.9 Windows x86

tamp-1.1.3-cp39-cp39-musllinux_1_1_x86_64.whl (723.2 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

tamp-1.1.3-cp39-cp39-musllinux_1_1_ppc64le.whl (748.9 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ ppc64le

tamp-1.1.3-cp39-cp39-musllinux_1_1_i686.whl (696.9 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

tamp-1.1.3-cp39-cp39-musllinux_1_1_aarch64.whl (719.8 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ ARM64

tamp-1.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (714.4 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

tamp-1.1.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (743.6 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ppc64le

tamp-1.1.3-cp39-cp39-manylinux_2_17_i686.manylinux_2_5_i686.manylinux1_i686.manylinux2014_i686.whl (691.6 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

tamp-1.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (711.9 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

tamp-1.1.3-cp39-cp39-macosx_12_0_x86_64.whl (160.9 kB view details)

Uploaded CPython 3.9 macOS 12.0+ x86-64

tamp-1.1.3-cp39-cp39-macosx_12_0_arm64.whl (150.8 kB view details)

Uploaded CPython 3.9 macOS 12.0+ ARM64

tamp-1.1.3-cp38-cp38-win_amd64.whl (145.6 kB view details)

Uploaded CPython 3.8 Windows x86-64

tamp-1.1.3-cp38-cp38-win32.whl (131.1 kB view details)

Uploaded CPython 3.8 Windows x86

tamp-1.1.3-cp38-cp38-musllinux_1_1_x86_64.whl (754.6 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

tamp-1.1.3-cp38-cp38-musllinux_1_1_ppc64le.whl (781.5 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ ppc64le

tamp-1.1.3-cp38-cp38-musllinux_1_1_i686.whl (726.4 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

tamp-1.1.3-cp38-cp38-musllinux_1_1_aarch64.whl (750.2 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ ARM64

tamp-1.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (724.6 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

tamp-1.1.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (755.7 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ppc64le

tamp-1.1.3-cp38-cp38-manylinux_2_17_i686.manylinux_2_5_i686.manylinux1_i686.manylinux2014_i686.whl (704.0 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

tamp-1.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (722.5 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

tamp-1.1.3-cp38-cp38-macosx_12_0_x86_64.whl (158.2 kB view details)

Uploaded CPython 3.8 macOS 12.0+ x86-64

tamp-1.1.3-cp38-cp38-macosx_12_0_arm64.whl (148.6 kB view details)

Uploaded CPython 3.8 macOS 12.0+ ARM64

File details

Details for the file tamp-1.1.3.tar.gz.

File metadata

  • Download URL: tamp-1.1.3.tar.gz
  • Upload date:
  • Size: 34.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.4

File hashes

Hashes for tamp-1.1.3.tar.gz
Algorithm Hash digest
SHA256 d7109108ea3a2813916986899c017c6dc99e8106e35fe598561d1dbf87bc6c61
MD5 97178fd899e0db1c034a48eef9f3c26c
BLAKE2b-256 6c6c8aaffd1af3e3ad04799cd7fb70c949fc732d28d0c6f2e48f8c84e2391eb4

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: tamp-1.1.3-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 141.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.4

File hashes

Hashes for tamp-1.1.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 429b58231e8051f08bc3908f5c6dae6fe63d796ee207ea863fd2b3e6f08b29aa
MD5 4dabd7c4a12b9b637904671150c7c588
BLAKE2b-256 07e2cb8cae046fedaa80b8d5f89743c5e98157790f65eac81ea678624f99467e

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp311-cp311-win32.whl.

File metadata

  • Download URL: tamp-1.1.3-cp311-cp311-win32.whl
  • Upload date:
  • Size: 128.1 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.4

File hashes

Hashes for tamp-1.1.3-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 f7052ff3eef3527430cb64db08446fdbdb4d77f3288edb7aa5d7675bcec63c0a
MD5 cd7ef533e305ac6895d9f2a129e46233
BLAKE2b-256 dcc6ba1a169236757d3a29c99f9e1ef965e436ce47b31caf547722c100bba367

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 514d2e39ed9c73a67a5c74fb84f734fe18fcd3c40d7da13f7186e7cba9ada2a3
MD5 c8b76a2cace7106775984fa993df3123
BLAKE2b-256 366c38a25b97250d7ede61fe350be3c2a3e6c013cf91928dcc31b782c26ca204

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp311-cp311-musllinux_1_1_ppc64le.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp311-cp311-musllinux_1_1_ppc64le.whl
Algorithm Hash digest
SHA256 c0654c33686be23f77cd2b0476800cd184e543714f525dd75ad0c83be8971562
MD5 b29944c1c0a1f3f8cad69b162837cb2d
BLAKE2b-256 d559953e2a09596b5d2be5f29581fcb4053ea2dc51e4200771a78380187f114a

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp311-cp311-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp311-cp311-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 9c99bd93bf17118fc12d68cebb62672fe8371f1a0e2f9e135bd557a974252aac
MD5 a068c5b5aca2b3862eb5db19f6d533a9
BLAKE2b-256 ae2574fca092de4e5b98db7efc1ea83d840ee2e6f32098ccd15e135e5b9c7a3b

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp311-cp311-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp311-cp311-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 bfc09304b4a2e5ce35bc9d29c95832ec500c670c7db434c52ed6ed805a8dafb7
MD5 38e70443d212318acbed0a90f9dde808
BLAKE2b-256 7d007c9aa03ae635f118d945ff2306a565d73ea26931a6c2fd81b843bd5202df

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 62cfd8da3956e14ac558a6dacea3a418a53f6be819720ecd5201c6a2e19fbc46
MD5 f5fc421077e2cd9d3c7137ae16bdeb1c
BLAKE2b-256 77455302bdea8b023923a644ea2169bae919dd3775205bbe68788444df9c1369

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 af1d925e8e90378c64e7c27ab60a4206f4a8f3dead5db557067b5b4f21ff1604
MD5 f4149d50fff3687903fb0ae1923b5ccc
BLAKE2b-256 51804257332fdc1dd89f3d160b8f91d0131851e8f2e729de9ee77e5e72c4909e

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp311-cp311-manylinux_2_17_i686.manylinux_2_5_i686.manylinux1_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp311-cp311-manylinux_2_17_i686.manylinux_2_5_i686.manylinux1_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 692f322ca00fb07e212db14cded2f0d625ff612820b95dd03662a477b1b6a343
MD5 a9d30afaa91cac592ed0e0d5941ec7fe
BLAKE2b-256 07fe65ac8e36e7433de01adab2591934e1aebf597ab79b93230a865b7fa9d5fe

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f2682b51da973ae6d74417cb2297dc2c8364659a091c0dde4ed125f3acd0824f
MD5 712af754e5120f1906408eb1a42f09cf
BLAKE2b-256 f10997845ad2ad2d6a2a0d3abf04b3aa57fd4c119bbd01b00ba6de3184269830

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp311-cp311-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp311-cp311-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 566a6267a9c1f40e99b710e939c06df88314070507db41f4b875ca2663e40995
MD5 23ae5debcd9254db41fbe166836d6da2
BLAKE2b-256 4aa1cd5fe39e2f60937fcaf741df33279b1e0e5a276ba63f38c0bad1add31338

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp311-cp311-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp311-cp311-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 8363973b1cfc9f7ef9f184442be25da781b2f3d09af03e05574d0e4d9ca4ef8c
MD5 78373041b065687d904efb1d28383cf9
BLAKE2b-256 fb4967dda224d2b8aed117bc0f2e745ce77b9e59998f68d959c452496747cf1d

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: tamp-1.1.3-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 143.1 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.4

File hashes

Hashes for tamp-1.1.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 5bcf2036790dee7ef632af940cde488fe3750572b72f5456c27f8dd28be6499d
MD5 8696b07befd7f16b4bf21e3e689d0b8d
BLAKE2b-256 f5eb9082e6d099ac1d8a4dd87f1b3550612333103c52d8bdd87ca54c5ad582aa

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp310-cp310-win32.whl.

File metadata

  • Download URL: tamp-1.1.3-cp310-cp310-win32.whl
  • Upload date:
  • Size: 129.2 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.4

File hashes

Hashes for tamp-1.1.3-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 e1a0a80d2e1302a42589f01997620229590bab63582eccca6faedd2d5beb8653
MD5 8a4db65e4f59d77871718db0f2c87b7a
BLAKE2b-256 a75dd49f368369ca82653d29471a5e2abea025c443d994d431ebb664a56ae09a

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 e9044a4d188d7cbd825af3cdd155ebc74a95129dc5b0db80aa8eebd6c32fea0f
MD5 143b1ca01d3b72a7e93ddd700678696f
BLAKE2b-256 893a66a181110f9fbe9bd28de56e443f2688e9fe4addb1753884a7105aedab61

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp310-cp310-musllinux_1_1_ppc64le.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp310-cp310-musllinux_1_1_ppc64le.whl
Algorithm Hash digest
SHA256 c51d41b9462083ce5bac609bc4f8645a62f3a593a396c5760f28ed89eb17c0dc
MD5 9a0392262d7f1fc87f46fe9fe60f579f
BLAKE2b-256 30fd0a75bf297d6f9e7a9f35bd74377409bc4b04569ed2c9e37e1193f64323fe

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 0241484eb2154d84e870b49fa3b404316c9f8ee311aaac77a8e2c408f1fbfa7b
MD5 d6e873aee75ce0609feeba11bb1a9dac
BLAKE2b-256 4a4325a6b06509ccacc4939bfb304ca785bc63e3524a80b2c37833d49300eae4

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp310-cp310-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp310-cp310-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 33afe1943789616a4b798111c85d868733bc78aa36b6c2c5f4e78078ca117585
MD5 e9c0b447e346ca8a23c26f0612fde3e0
BLAKE2b-256 77a84972ddd373c0b497314fa65c711f52628b55ce414fdb5af99811a548bca2

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e733d1993f1e9d60e0a2cdfd7217796f4d3dd19d1e8c94bb973bff177073c20b
MD5 8cad8c412576bac713db7f2bc9d75f43
BLAKE2b-256 0b6b516dfc0dd802fc00833c178fe41b74f81c7199b41d0368aab6ba489bded5

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 ea4a9f5ea604ea2d777ab522d3efb5252ea9b5743c0d6672d1aa9fa38b0fb123
MD5 c0ba72dce2684f2472e0c446041f856f
BLAKE2b-256 252a10903c4b1c7f0728f3b5c9005cea6cd09f9cffe1f97e8c74dc6789471bfc

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp310-cp310-manylinux_2_17_i686.manylinux_2_5_i686.manylinux1_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp310-cp310-manylinux_2_17_i686.manylinux_2_5_i686.manylinux1_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 67c13a8ac34104c6834cd36f7f8318fb979b7f6553ac2054099e8851085337cd
MD5 570345ee078210cb708f8bea6f4a7b3c
BLAKE2b-256 e1011e088cfb0626f364c22c7dae2f06b55b060604243b658ca8a43c012605dd

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 89785f1adde2c00d8683a231833fe92d6007e660023fb4eafee847b69c9c9db6
MD5 516a803661fb77f70a174f46628b5b4f
BLAKE2b-256 ca7d6805fba3330c46aa9dcde3305afed19da5bccff01e99d903235b2b10fb6b

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp310-cp310-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp310-cp310-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 3f89583c0c277e3208ecb3d5f71995a7f5c5d38175337da6ce0ed7d71b3c9f57
MD5 d0cb2cd9292efb58bcc11177e441e8e6
BLAKE2b-256 ddb4cd4317b8a7b448fcb8f4ecc916f4da9f333c21e8fd7f74d9dccc876ed6f5

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp310-cp310-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp310-cp310-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 bc2d44f1df0e246e42e97727baf505927fc5eb63d833f7a026fdadd5efeff636
MD5 bbb154462afefcb8a928a05cef1a4d2f
BLAKE2b-256 f9ecf5a794f1c3b1a8f48cd66eacd074d479814391bf1e6a0881b0b324a03acc

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: tamp-1.1.3-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 145.8 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.4

File hashes

Hashes for tamp-1.1.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 65168b10b6c11f730140984c1a5c47652271612efa6ce5b8e3588e9569626d56
MD5 c3cd35728405ed21858c897843440a20
BLAKE2b-256 d30391e9aaba49fbe9cf67636310295a41c3f6b162df8bb69888d0c2e74677c2

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp39-cp39-win32.whl.

File metadata

  • Download URL: tamp-1.1.3-cp39-cp39-win32.whl
  • Upload date:
  • Size: 131.2 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.4

File hashes

Hashes for tamp-1.1.3-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 cb74f3d271abd1aa3ff752ab18fd5b14bdd712cd6d1e0cdd179d1544bd795fd9
MD5 a06ade9cade7e56349738d86274670c8
BLAKE2b-256 0de1be2f10c5fd253479bad7c2f5b43507ae52dd2e431adb820d0d2ab23e542f

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 72eaac6ac3a956fcc68a2c78274d2ef9388b8e41d19bd9e374dece3b71da7c6c
MD5 63650387cdae952ade9672b8949b5dd4
BLAKE2b-256 48e343b65746664238cd0179824e2b9e34f711a70edccf8d12c7dbee4d88fc8b

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp39-cp39-musllinux_1_1_ppc64le.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp39-cp39-musllinux_1_1_ppc64le.whl
Algorithm Hash digest
SHA256 3dd8ac21a69d1ced6f418e5881e5ab2df27c3b28d8977a203f7b07b40e7a4fb4
MD5 5d0b1ac1bb4d3d01637a157335e01ab5
BLAKE2b-256 b9b6583c0a27deb4325985f03db4faac4ca6bc6c40acdd42986bb983112dab04

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 afcaa77c489e8bba91bcf714fc6b5d27e0fa0df75575373e07e41ca18784efd0
MD5 3fdc6bf4f3e731f08b2e186a324bc6fa
BLAKE2b-256 84ff472d668eb985c8a021789bc0889a26e03c47dac8e443f30178ddf3d3d13d

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp39-cp39-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp39-cp39-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 5210dbf9e30f179bf120d2779838f23da750e400377ce18ff6689990343cbf80
MD5 72a02b955e64894f2dc3703268c5277f
BLAKE2b-256 da7374cf59ebb8a54961b061d6da335183122862beb414e62673d2ece7126071

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f86ab67b791f951de856d3a45406931278d3e4d7c86e91433262c8e12e7e3180
MD5 e0674698b08f96eecc179ae4e56f17cf
BLAKE2b-256 97591129d5a59b8f6a49ff0fbfe19eeb6b346a77f97344f2504208168fc65a11

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 e8006a0100dabee78a79c4cee1bba59a1b01164b360aef0f6e071c053a18f0a5
MD5 b7e53209ac8b9ad5e2f2982d282e05e6
BLAKE2b-256 f8c7678bc08411983077c83e9574f544770e407707a9d2d9b0e04889230ca0f9

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp39-cp39-manylinux_2_17_i686.manylinux_2_5_i686.manylinux1_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp39-cp39-manylinux_2_17_i686.manylinux_2_5_i686.manylinux1_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 0c08551922bb3f34085fad75a5fd064b09e5b33f7c9905dd602c1d7ca35955fc
MD5 a9a26902fe2c7588ae010399f152db5e
BLAKE2b-256 5dad0337fc110490e314c36e5536b94e1de119ec6aa268ac1e315b663b57961e

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7f4375cd6c6a0b84014a41190739588e54dadc7fd0adb0f40fa446dfe81a346c
MD5 6165c3fbc8cd8ff9154cc564d0fb1734
BLAKE2b-256 f861d15ecd999aa9dac0e5250b85e220e27cbbb3f4779506500236b8f15a888d

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp39-cp39-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp39-cp39-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 84653af841a316985b7dfa67070a7786a018f75250709e0af97d7248d85e0e24
MD5 bedc23b6afbb3f955c4287f18e03dbd5
BLAKE2b-256 6843ea087fcbc7b524299a0a4dd92a583a62761e8f457314b6327a259870db1a

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp39-cp39-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp39-cp39-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 d13c879403c93032751cfc5c9a296fef92f5c1a8b5339cda1fe3a2760d1d283f
MD5 ada308494cd72259233965a0eea11894
BLAKE2b-256 e69ee1786baed37d597d11755ff813b1c7be1f92af766278aaab3988985c9292

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: tamp-1.1.3-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 145.6 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.4

File hashes

Hashes for tamp-1.1.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 c431421f7f3a8bdf952d49a30b24e1faf5b458ca275bb8e78ab10567f62a75a1
MD5 86a5bffac44d16475506f5450766ca37
BLAKE2b-256 c100135fc7baea5711134dc3ab629a859df0b39e96310cc7816e87648658a36a

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp38-cp38-win32.whl.

File metadata

  • Download URL: tamp-1.1.3-cp38-cp38-win32.whl
  • Upload date:
  • Size: 131.1 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.4

File hashes

Hashes for tamp-1.1.3-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 f3fc18fab59a9f513b428e5d865d0bd9ba400dd6ec436ad252bfe763aecc6108
MD5 7fdfbcbdae89c7a17a0e019734d0ec8f
BLAKE2b-256 6d0f867a6dd02cabfe63dcd7bdd5849872a60d6a956c050fdcf57e078ec06c56

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 5b97758c0cfc86d3fd2256aaa1f892e12b4d289f4f2c3b8219c75818e10cb6c0
MD5 c466922124d18393bfefd366f443af97
BLAKE2b-256 2cceb9252ea064306aba00badae6db28d98ab7375cbe7769b4612d2e88feb002

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp38-cp38-musllinux_1_1_ppc64le.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp38-cp38-musllinux_1_1_ppc64le.whl
Algorithm Hash digest
SHA256 b4b706e8508cd6945c281b9a1b00072f0a1dab785516a48c1814de87914c7eb3
MD5 7e2c60042e0b6aa8adf67fc6ac4965d4
BLAKE2b-256 ef80677bd26b286337afe009aed3e80d8fc0c2a0242a4f34ef9badfdb2bc88a2

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp38-cp38-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 caa1beea2cde1cceed5431e8b34a07cf2165296e0ae74634e25124ed9ac74f7e
MD5 58baa127c94c130a5d12c9d9c38ae195
BLAKE2b-256 aac1c052de5a2876f9dd8be08b149d52fe701dffb6c94503fa04971f024cdf36

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp38-cp38-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp38-cp38-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 b0a7eba388710229bf09b30751980be829e32b85c2b1b29d9209ccd1c2652be4
MD5 0a56628b19868a78dac035c5ed46bff2
BLAKE2b-256 3348a61c63930ef6d53b60f516ff68e3900f6f605132def00c448e9c1749b5c9

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d605beb9cc4185edeaebe3b27ecf9b0542943d2ddf3c100aac4f2256917aa256
MD5 b59b627e89216546ed75c85f87bca82b
BLAKE2b-256 52a809a02bedec8d24f4a46a2b66bb7c7d3475c7f6731fa6b4326161635015d2

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 02b1e63c5c2b92a71c32d7f153a5921587578427a90eed7cafc26ba7ca50279f
MD5 6ad3f50ab1a4380b17c14542316b7f3d
BLAKE2b-256 b68add3c4c698d2ac59c30591dda593a064d4f780d8a57a5f120146de39bced1

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp38-cp38-manylinux_2_17_i686.manylinux_2_5_i686.manylinux1_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp38-cp38-manylinux_2_17_i686.manylinux_2_5_i686.manylinux1_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 9c8573fdaf0ed644d7062a5a6026d8a4d282e967d53d3ff96632149d52437024
MD5 6b125050d4f6d3ea24153eea4ae3503e
BLAKE2b-256 9e97652e2ae8813d1f54886d69d1bb5b3d3a531cb955f447441f5cbff9b17c65

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 664dbfec3a5993ded1cb5f70d2241c932f0b56497940a0737f14fe88de2e3232
MD5 8ca23688bf94204c460c2ce1feca6761
BLAKE2b-256 347ff64e9f7027ef73103d2ae269351fc749ee3f350ad895ef3335937d9c83f5

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp38-cp38-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp38-cp38-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 8571db62b1e5b5218e38d734c37a853b290e5d7c0d02257c0cb22626b1d6b905
MD5 3f3d4297b9b91b81b5aa1777a4ce17b7
BLAKE2b-256 980335d1c5cfd59d61483a4095f257332e30f746bc91df5326c569dc6cdb7d6c

See more details on using hashes here.

File details

Details for the file tamp-1.1.3-cp38-cp38-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for tamp-1.1.3-cp38-cp38-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 ffd468d6c55c47d8b9568ba995b73e59b6d62cedf51fd8eaff5dc2c9ce2ebfba
MD5 9ca371e37a4e2d7dd3b1f93036c403e6
BLAKE2b-256 38ae72679e4f7b5803ac09ca6c35bc80f0a255d28fb84f386a2fe8420f6a0c7f

See more details on using hashes here.

Supported by

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