# tsdownsample
[![PyPI Latest Release](https://img.shields.io/pypi/v/tsdownsample.svg)](https://pypi.org/project/tsdownsample/)
[![support-version](https://img.shields.io/pypi/pyversions/tsdownsample)](https://img.shields.io/pypi/pyversions/tsdownsample)
[![Downloads](https://static.pepy.tech/badge/tsdownsample)](https://pepy.tech/project/tsdownsample)
[![CodeQL](https://github.com/predict-idlab/tsdownsample/actions/workflows/codeql.yml/badge.svg)](https://github.com/predict-idlab/tsdownsample/actions/workflows/codeql.yml)
[![Testing](https://github.com/predict-idlab/tsdownsample/actions/workflows/ci-downsample_rs.yml/badge.svg)](https://github.com/predict-idlab/tsdownsample/actions/workflows/ci-downsample_rs.yml)
[![Testing](https://github.com/predict-idlab/tsdownsample/actions/workflows/ci-tsdownsample.yml/badge.svg)](https://github.com/predict-idlab/tsdownsample/actions/workflows/ci-tsdownsample.yml)
<!-- TODO: codecov -->
Extremely fast **time series downsampling 📈** for visualization, written in Rust.
## Features ✨
- **Fast**: written in rust with PyO3 bindings
- leverages optimized [argminmax](https://github.com/jvdd/argminmax) - which is SIMD accelerated with runtime feature detection
- scales linearly with the number of data points
<!-- TODO check if it scales sublinearly -->
- multithreaded with Rayon (in Rust)
<details>
<summary><i>Why we do not use Python multiprocessing</i></summary>
Citing the <a href="https://pyo3.rs/v0.17.3/parallelism.html">PyO3 docs on parallelism</a>:<br>
<blockquote>
CPython has the infamous Global Interpreter Lock, which prevents several threads from executing Python bytecode in parallel. This makes threading in Python a bad fit for CPU-bound tasks and often forces developers to accept the overhead of multiprocessing.
</blockquote>
In Rust - which is a compiled language - there is no GIL, so CPU-bound tasks can be parallelized (with <a href="https://github.com/rayon-rs/rayon">Rayon</a>) with little to no overhead.
</details>
- **Efficient**: memory efficient
- works on views of the data (no copies)
- no intermediate data structures are created
- **Flexible**: works on any type of data
- supported datatypes are
- for `x`: `f32`, `f64`, `i16`, `i32`, `i64`, `u16`, `u32`, `u64`, `datetime64`, `timedelta64`
- for `y`: `f16`, `f32`, `f64`, `i8`, `i16`, `i32`, `i64`, `u8`, `u16`, `u32`, `u64`, `datetime64`, `timedelta64`, `bool`
<details>
<summary><i>!! 🚀 <code>f16</code> <a href="https://github.com/jvdd/argminmax">argminmax</a> is 200-300x faster than numpy</i></summary>
In contrast with all other data types above, <code>f16</code> is *not* hardware supported (i.e., no instructions for f16) by most modern CPUs!! <br>
🐌 Programming languages facilitate support for this datatype by either (i) upcasting to <u>f32</u> or (ii) using a software implementation. <br>
💡 As for argminmax, only comparisons are needed - and thus no arithmetic operations - creating a <u>symmetrical ordinal mapping from <code>f16</code> to <code>i16</code></u> is sufficient. This mapping allows to use the hardware supported scalar and SIMD <code>i16</code> instructions - while not producing any memory overhead 🎉 <br>
<i>More details are described in <a href="https://github.com/jvdd/argminmax/pull/1">argminmax PR #1</a>.</i>
</details>
- **Easy to use**: simple & flexible API
## Install
```bash
pip install tsdownsample
```
## Usage
```python
from tsdownsample import MinMaxLTTBDownsampler
import numpy as np
# Create a time series
y = np.random.randn(10_000_000)
x = np.arange(len(y))
# Downsample to 1000 points (assuming constant sampling rate)
s_ds = MinMaxLTTBDownsampler().downsample(y, n_out=1000)
# Select downsampled data
downsampled_y = y[s_ds]
# Downsample to 1000 points using the (possible irregularly spaced) x-data
s_ds = MinMaxLTTBDownsampler().downsample(x, y, n_out=1000)
# Select downsampled data
downsampled_x = x[s_ds]
downsampled_y = y[s_ds]
```
## Downsampling algorithms & API
### Downsampling API 📑
Each downsampling algorithm is implemented as a class that implements a `downsample` method.
The signature of the `downsample` method:
```
downsample([x], y, n_out, **kwargs) -> ndarray[uint64]
```
**Arguments**:
- `x` is optional
- `x` and `y` are both positional arguments
- `n_out` is a mandatory keyword argument that defines the number of output values<sup>*</sup>
- `**kwargs` are optional keyword arguments *(see [table below](#downsampling-algorithms-📈))*:
- `parallel`: whether to use multi-threading (default: `False`)
❗ The max number of threads can be configured with the `TSDOWNSAMPLE_MAX_THREADS` ENV var (e.g. `os.environ["TSDOWNSAMPLE_MAX_THREADS"] = "4"`)
- ...
**Returns**: a `ndarray[uint64]` of indices that can be used to index the original data.
<sup>\*</sup><i>When there are gaps in the time series, fewer than `n_out` indices may be returned.</i>
### Downsampling algorithms 📈
The following downsampling algorithms (classes) are implemented:
| Downsampler | Description | `**kwargs` |
| ---:| --- |--- |
| `MinMaxDownsampler` | selects the **min and max** value in each bin | `parallel` |
| `M4Downsampler` | selects the [**min, max, first and last**](https://dl.acm.org/doi/pdf/10.14778/2732951.2732953) value in each bin | `parallel` |
| `LTTBDownsampler` | performs the [**Largest Triangle Three Buckets**](https://skemman.is/bitstream/1946/15343/3/SS_MSthesis.pdf) algorithm | `parallel` |
| `MinMaxLTTBDownsampler` | (*new two-step algorithm 🎉*) first selects `n_out` * `minmax_ratio` **min and max** values, then further reduces these to `n_out` values using the **Largest Triangle Three Buckets** algorithm | `parallel`, `minmax_ratio`<sup>*</sup> |
<sup>*</sup><i>Default value for `minmax_ratio` is 4, which is empirically proven to be a good default. More details here: https://arxiv.org/abs/2305.00332</i>
### Handling NaNs
This library supports two `NaN`-policies:
1. Omit `NaN`s (`NaN`s are ignored during downsampling).
2. Return index of first `NaN` once there is at least one present in the bin of the considered data.
| Omit `NaN`s | Return `NaN`s |
| ----------------------: | :------------------------- |
| `MinMaxDownsampler` | `NaNMinMaxDownsampler` |
| `M4Downsampler` | `NaNM4Downsampler` |
| `MinMaxLTTBDownsampler` | `NaNMinMaxLTTBDownsampler` |
| `LTTBDownsampler` | |
> Note that NaNs are not supported for `x`-data.
## Limitations & assumptions 🚨
Assumes;
1. `x`-data is (non-strictly) monotonic increasing (i.e., sorted)
2. no `NaN`s in `x`-data
---
<p align="center">
👤 <i>Jeroen Van Der Donckt</i>
</p>
Raw data
{
"_id": null,
"home_page": "",
"name": "tsdownsample",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "time series,downsampling,rust,data science,visualization",
"author": "Jeroen Van Der Donckt",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/ae/ef/179f94de69fc6e5efa2574b8c8942457dcf0ff5a0c36f63ee33488ada27f/tsdownsample-0.1.3.tar.gz",
"platform": null,
"description": "# tsdownsample\n\n[![PyPI Latest Release](https://img.shields.io/pypi/v/tsdownsample.svg)](https://pypi.org/project/tsdownsample/)\n[![support-version](https://img.shields.io/pypi/pyversions/tsdownsample)](https://img.shields.io/pypi/pyversions/tsdownsample)\n[![Downloads](https://static.pepy.tech/badge/tsdownsample)](https://pepy.tech/project/tsdownsample)\n[![CodeQL](https://github.com/predict-idlab/tsdownsample/actions/workflows/codeql.yml/badge.svg)](https://github.com/predict-idlab/tsdownsample/actions/workflows/codeql.yml)\n[![Testing](https://github.com/predict-idlab/tsdownsample/actions/workflows/ci-downsample_rs.yml/badge.svg)](https://github.com/predict-idlab/tsdownsample/actions/workflows/ci-downsample_rs.yml)\n[![Testing](https://github.com/predict-idlab/tsdownsample/actions/workflows/ci-tsdownsample.yml/badge.svg)](https://github.com/predict-idlab/tsdownsample/actions/workflows/ci-tsdownsample.yml)\n\n<!-- TODO: codecov -->\n\nExtremely fast **time series downsampling \ud83d\udcc8** for visualization, written in Rust.\n\n## Features \u2728\n\n- **Fast**: written in rust with PyO3 bindings\n - leverages optimized [argminmax](https://github.com/jvdd/argminmax) - which is SIMD accelerated with runtime feature detection\n - scales linearly with the number of data points\n <!-- TODO check if it scales sublinearly -->\n - multithreaded with Rayon (in Rust)\n <details>\n <summary><i>Why we do not use Python multiprocessing</i></summary>\n Citing the <a href=\"https://pyo3.rs/v0.17.3/parallelism.html\">PyO3 docs on parallelism</a>:<br>\n <blockquote>\n CPython has the infamous Global Interpreter Lock, which prevents several threads from executing Python bytecode in parallel. This makes threading in Python a bad fit for CPU-bound tasks and often forces developers to accept the overhead of multiprocessing.\n </blockquote>\n In Rust - which is a compiled language - there is no GIL, so CPU-bound tasks can be parallelized (with <a href=\"https://github.com/rayon-rs/rayon\">Rayon</a>) with little to no overhead.\n </details>\n- **Efficient**: memory efficient\n - works on views of the data (no copies)\n - no intermediate data structures are created\n- **Flexible**: works on any type of data\n - supported datatypes are\n - for `x`: `f32`, `f64`, `i16`, `i32`, `i64`, `u16`, `u32`, `u64`, `datetime64`, `timedelta64`\n - for `y`: `f16`, `f32`, `f64`, `i8`, `i16`, `i32`, `i64`, `u8`, `u16`, `u32`, `u64`, `datetime64`, `timedelta64`, `bool`\n <details>\n <summary><i>!! \ud83d\ude80 <code>f16</code> <a href=\"https://github.com/jvdd/argminmax\">argminmax</a> is 200-300x faster than numpy</i></summary>\n In contrast with all other data types above, <code>f16</code> is *not* hardware supported (i.e., no instructions for f16) by most modern CPUs!! <br>\n \ud83d\udc0c Programming languages facilitate support for this datatype by either (i) upcasting to <u>f32</u> or (ii) using a software implementation. <br>\n \ud83d\udca1 As for argminmax, only comparisons are needed - and thus no arithmetic operations - creating a <u>symmetrical ordinal mapping from <code>f16</code> to <code>i16</code></u> is sufficient. This mapping allows to use the hardware supported scalar and SIMD <code>i16</code> instructions - while not producing any memory overhead \ud83c\udf89 <br>\n <i>More details are described in <a href=\"https://github.com/jvdd/argminmax/pull/1\">argminmax PR #1</a>.</i>\n </details>\n- **Easy to use**: simple & flexible API\n\n## Install\n\n```bash\npip install tsdownsample\n```\n\n## Usage\n\n```python\nfrom tsdownsample import MinMaxLTTBDownsampler\nimport numpy as np\n\n# Create a time series\ny = np.random.randn(10_000_000)\nx = np.arange(len(y))\n\n# Downsample to 1000 points (assuming constant sampling rate)\ns_ds = MinMaxLTTBDownsampler().downsample(y, n_out=1000)\n\n# Select downsampled data\ndownsampled_y = y[s_ds]\n\n# Downsample to 1000 points using the (possible irregularly spaced) x-data\ns_ds = MinMaxLTTBDownsampler().downsample(x, y, n_out=1000)\n\n# Select downsampled data\ndownsampled_x = x[s_ds]\ndownsampled_y = y[s_ds]\n```\n\n## Downsampling algorithms & API\n\n### Downsampling API \ud83d\udcd1\n\nEach downsampling algorithm is implemented as a class that implements a `downsample` method.\nThe signature of the `downsample` method:\n\n```\ndownsample([x], y, n_out, **kwargs) -> ndarray[uint64]\n```\n\n**Arguments**:\n\n- `x` is optional\n- `x` and `y` are both positional arguments\n- `n_out` is a mandatory keyword argument that defines the number of output values<sup>*</sup>\n- `**kwargs` are optional keyword arguments *(see [table below](#downsampling-algorithms-\ud83d\udcc8))*:\n - `parallel`: whether to use multi-threading (default: `False`) \n \u2757 The max number of threads can be configured with the `TSDOWNSAMPLE_MAX_THREADS` ENV var (e.g. `os.environ[\"TSDOWNSAMPLE_MAX_THREADS\"] = \"4\"`)\n - ...\n\n**Returns**: a `ndarray[uint64]` of indices that can be used to index the original data.\n\n<sup>\\*</sup><i>When there are gaps in the time series, fewer than `n_out` indices may be returned.</i>\n\n### Downsampling algorithms \ud83d\udcc8\n\nThe following downsampling algorithms (classes) are implemented:\n\n| Downsampler | Description | `**kwargs` |\n| ---:| --- |--- |\n| `MinMaxDownsampler` | selects the **min and max** value in each bin | `parallel` |\n| `M4Downsampler` | selects the [**min, max, first and last**](https://dl.acm.org/doi/pdf/10.14778/2732951.2732953) value in each bin | `parallel` |\n| `LTTBDownsampler` | performs the [**Largest Triangle Three Buckets**](https://skemman.is/bitstream/1946/15343/3/SS_MSthesis.pdf) algorithm | `parallel` |\n| `MinMaxLTTBDownsampler` | (*new two-step algorithm \ud83c\udf89*) first selects `n_out` * `minmax_ratio` **min and max** values, then further reduces these to `n_out` values using the **Largest Triangle Three Buckets** algorithm | `parallel`, `minmax_ratio`<sup>*</sup> |\n\n<sup>*</sup><i>Default value for `minmax_ratio` is 4, which is empirically proven to be a good default. More details here: https://arxiv.org/abs/2305.00332</i>\n\n### Handling NaNs\n\nThis library supports two `NaN`-policies:\n\n1. Omit `NaN`s (`NaN`s are ignored during downsampling).\n2. Return index of first `NaN` once there is at least one present in the bin of the considered data.\n\n| Omit `NaN`s | Return `NaN`s |\n| ----------------------: | :------------------------- |\n| `MinMaxDownsampler` | `NaNMinMaxDownsampler` |\n| `M4Downsampler` | `NaNM4Downsampler` |\n| `MinMaxLTTBDownsampler` | `NaNMinMaxLTTBDownsampler` |\n| `LTTBDownsampler` | |\n\n> Note that NaNs are not supported for `x`-data.\n\n## Limitations & assumptions \ud83d\udea8\n\nAssumes;\n\n1. `x`-data is (non-strictly) monotonic increasing (i.e., sorted)\n2. no `NaN`s in `x`-data\n\n---\n\n<p align=\"center\">\n\ud83d\udc64 <i>Jeroen Van Der Donckt</i>\n</p>\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Time series downsampling in rust",
"version": "0.1.3",
"project_urls": {
"Homepage": "https://github.com/predict-idlab/tsdownsample",
"Repository": "https://github.com/predict-idlab/tsdownsample"
},
"split_keywords": [
"time series",
"downsampling",
"rust",
"data science",
"visualization"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2a8e699716abf35f43e91b8db37a93210c29224f1cabf89632e6122a7fd3b945",
"md5": "839c11076e5c258aa623470f17876590",
"sha256": "e1e8b04a17efb6f25a730467bedd0a1ceda165149707305309f9456041cf4e49"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp310-cp310-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "839c11076e5c258aa623470f17876590",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 1185637,
"upload_time": "2024-02-02T16:40:28",
"upload_time_iso_8601": "2024-02-02T16:40:28.010016Z",
"url": "https://files.pythonhosted.org/packages/2a/8e/699716abf35f43e91b8db37a93210c29224f1cabf89632e6122a7fd3b945/tsdownsample-0.1.3-cp310-cp310-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "161eb84d301e733bb42ae49d6b6de3aa8d02987a88ef7a7e6713f5144159c04a",
"md5": "eee64dfbfaf523ce9cb95584765d294a",
"sha256": "1791225e0e610b8c883fd7c8237756901bd10af42240a98e747bdb1085ee4f7e"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "eee64dfbfaf523ce9cb95584765d294a",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 1085272,
"upload_time": "2024-02-02T16:40:30",
"upload_time_iso_8601": "2024-02-02T16:40:30.295012Z",
"url": "https://files.pythonhosted.org/packages/16/1e/b84d301e733bb42ae49d6b6de3aa8d02987a88ef7a7e6713f5144159c04a/tsdownsample-0.1.3-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6ed6ef9e3aa0b10f8044711b43a2d22ebc78977407499897cec3a33e3d5bccfe",
"md5": "f30c69a70decf41c1ab1e3c905964a71",
"sha256": "c1cfb42437732825af4b4fd6964ba8632c3b7a8094648ea9fb940412c62973ae"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl",
"has_sig": false,
"md5_digest": "f30c69a70decf41c1ab1e3c905964a71",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 2057964,
"upload_time": "2024-02-02T16:40:32",
"upload_time_iso_8601": "2024-02-02T16:40:32.196244Z",
"url": "https://files.pythonhosted.org/packages/6e/d6/ef9e3aa0b10f8044711b43a2d22ebc78977407499897cec3a33e3d5bccfe/tsdownsample-0.1.3-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0eaf01e1f16be0a36d564768632efed6d1cabf4f1ab2292eafd7f1845bfc885c",
"md5": "dffc71bc017b2466914e128d8d8eea88",
"sha256": "721ae2a9a385e36fe688d43c877852ba0bab2056b6875cf86aee1d6dec8b567c"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "dffc71bc017b2466914e128d8d8eea88",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 1979121,
"upload_time": "2024-02-02T16:40:34",
"upload_time_iso_8601": "2024-02-02T16:40:34.225539Z",
"url": "https://files.pythonhosted.org/packages/0e/af/01e1f16be0a36d564768632efed6d1cabf4f1ab2292eafd7f1845bfc885c/tsdownsample-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0c9f2f9a3ccd392d1957b8548be25398309031e35fcb4135d22f3eaf869fb242",
"md5": "51c404d70c4455535d29698d66240ea5",
"sha256": "66941f131ec096478483fdd9a80a408a12a0c01c85b0ebf9eb41445c2721eca6"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "51c404d70c4455535d29698d66240ea5",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 2083246,
"upload_time": "2024-02-02T16:40:36",
"upload_time_iso_8601": "2024-02-02T16:40:36.367135Z",
"url": "https://files.pythonhosted.org/packages/0c/9f/2f9a3ccd392d1957b8548be25398309031e35fcb4135d22f3eaf869fb242/tsdownsample-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7f62f92af3587e9d64471b6493a4d7bacd028ca1359f45f1b4cc62dba049e162",
"md5": "64e6bb1a3f6e7b069c050031c1437470",
"sha256": "0bce3ae95aa104ec0fbc4c37db5694ad3fa9bd09f5509f49215de157b78a99b2"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp310-cp310-manylinux_2_24_armv7l.whl",
"has_sig": false,
"md5_digest": "64e6bb1a3f6e7b069c050031c1437470",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 2038553,
"upload_time": "2024-02-02T16:40:38",
"upload_time_iso_8601": "2024-02-02T16:40:38.539471Z",
"url": "https://files.pythonhosted.org/packages/7f/62/f92af3587e9d64471b6493a4d7bacd028ca1359f45f1b4cc62dba049e162/tsdownsample-0.1.3-cp310-cp310-manylinux_2_24_armv7l.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "70745bb6d148ebfb3898e5b7725bfb2eaee04210ebc6fa121d09dc868ff79853",
"md5": "55703b37295d108a3f38052ab3d1f15e",
"sha256": "bab1f0258f41cff4f3968076946ff468641f2b6c32c624a278c2cdf47a5b3eff"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp310-cp310-manylinux_2_24_ppc64le.whl",
"has_sig": false,
"md5_digest": "55703b37295d108a3f38052ab3d1f15e",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 2050279,
"upload_time": "2024-02-02T16:40:40",
"upload_time_iso_8601": "2024-02-02T16:40:40.704057Z",
"url": "https://files.pythonhosted.org/packages/70/74/5bb6d148ebfb3898e5b7725bfb2eaee04210ebc6fa121d09dc868ff79853/tsdownsample-0.1.3-cp310-cp310-manylinux_2_24_ppc64le.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "672eae9a842a1f1dca21703c262dedbee87453387db16079a231907774e088ee",
"md5": "e90028339c9ee1e58db0d40b59fba724",
"sha256": "d8d41957d44593c8fee21f89454303db9a9eb2cf0e556c0138c84157702b39a4"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp310-cp310-manylinux_2_24_s390x.whl",
"has_sig": false,
"md5_digest": "e90028339c9ee1e58db0d40b59fba724",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 2493923,
"upload_time": "2024-02-02T16:40:42",
"upload_time_iso_8601": "2024-02-02T16:40:42.853250Z",
"url": "https://files.pythonhosted.org/packages/67/2e/ae9a842a1f1dca21703c262dedbee87453387db16079a231907774e088ee/tsdownsample-0.1.3-cp310-cp310-manylinux_2_24_s390x.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6dbbcfae6170b3130d7c1b61159fe14b448ca2173a874eca50032618c5fc5c65",
"md5": "1bf3e744f57144a0fed178a017a232f6",
"sha256": "6ef3ad8f8f0fac177bab09fe2e916034d8d3d64e1b0531f2b3df9ecc1b36f84b"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp310-cp310-musllinux_1_1_aarch64.whl",
"has_sig": false,
"md5_digest": "1bf3e744f57144a0fed178a017a232f6",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 2139182,
"upload_time": "2024-02-02T16:40:44",
"upload_time_iso_8601": "2024-02-02T16:40:44.900867Z",
"url": "https://files.pythonhosted.org/packages/6d/bb/cfae6170b3130d7c1b61159fe14b448ca2173a874eca50032618c5fc5c65/tsdownsample-0.1.3-cp310-cp310-musllinux_1_1_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b724b0d4b17b978e69bcd7adb7e118f2f7b7609024ef538c2a34bb88390a8c1e",
"md5": "bd5f6b96cb10b10f5fa9605242f342a5",
"sha256": "e268741155eff05125bd45f5ab32fd20daed293503c3749765eafab8fe3e12ef"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp310-cp310-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "bd5f6b96cb10b10f5fa9605242f342a5",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 2253105,
"upload_time": "2024-02-02T16:40:47",
"upload_time_iso_8601": "2024-02-02T16:40:47.363463Z",
"url": "https://files.pythonhosted.org/packages/b7/24/b0d4b17b978e69bcd7adb7e118f2f7b7609024ef538c2a34bb88390a8c1e/tsdownsample-0.1.3-cp310-cp310-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2db72f856f723c10ca37a443a768b6e497db68b681353e7750f67455e8e422d5",
"md5": "d4e77dc1ef1a2b1606986099c38614fb",
"sha256": "0cf6695ecf63ab7114a18ebeb12f722811ec455842391ac216bb698803abdaeb"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp310-none-win32.whl",
"has_sig": false,
"md5_digest": "d4e77dc1ef1a2b1606986099c38614fb",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 706448,
"upload_time": "2024-02-02T16:40:49",
"upload_time_iso_8601": "2024-02-02T16:40:49.381085Z",
"url": "https://files.pythonhosted.org/packages/2d/b7/2f856f723c10ca37a443a768b6e497db68b681353e7750f67455e8e422d5/tsdownsample-0.1.3-cp310-none-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fdc87d086b66d4b3ba43cbbe8e8dd6f9a036064f6eea02a774f1c611da1efeab",
"md5": "04826a27252ce46ac0cc17455fef6f9b",
"sha256": "d5493f021f96db43e35a37bca70ac13460e49de264085643b1bac88c136574d3"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp310-none-win_amd64.whl",
"has_sig": false,
"md5_digest": "04826a27252ce46ac0cc17455fef6f9b",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 923524,
"upload_time": "2024-02-02T16:40:50",
"upload_time_iso_8601": "2024-02-02T16:40:50.749034Z",
"url": "https://files.pythonhosted.org/packages/fd/c8/7d086b66d4b3ba43cbbe8e8dd6f9a036064f6eea02a774f1c611da1efeab/tsdownsample-0.1.3-cp310-none-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1dd49189084a953dbb83deceb1c43f4b834986b4137f0d83059e8cb049012d74",
"md5": "0569b7d13eff01db14fbb869be951c94",
"sha256": "539bae2e1675af94c26c8eed67f1bb8ebfc72fe44fa17965fb324ef38cb9e70d"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp311-cp311-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "0569b7d13eff01db14fbb869be951c94",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 1185788,
"upload_time": "2024-02-02T16:40:52",
"upload_time_iso_8601": "2024-02-02T16:40:52.670494Z",
"url": "https://files.pythonhosted.org/packages/1d/d4/9189084a953dbb83deceb1c43f4b834986b4137f0d83059e8cb049012d74/tsdownsample-0.1.3-cp311-cp311-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "505320e415e48ebd7fb7f39b369dd25734b82eae7217ff58bbf49b2a0c677743",
"md5": "474c29dce167549f79d26d84be52e2a9",
"sha256": "f547ad4b796097d314fdc5538c50db8b073b110aae13e540cd8db4802b0317f6"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "474c29dce167549f79d26d84be52e2a9",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 1085460,
"upload_time": "2024-02-02T16:40:54",
"upload_time_iso_8601": "2024-02-02T16:40:54.022639Z",
"url": "https://files.pythonhosted.org/packages/50/53/20e415e48ebd7fb7f39b369dd25734b82eae7217ff58bbf49b2a0c677743/tsdownsample-0.1.3-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d838b0da147626d70a4fda599ebaf68725a9f85d65ecece7e4ca4f131718e82f",
"md5": "d363ffcaecf48cdce10f98c5fbf94192",
"sha256": "8762d057a1b335fe44eec345b36b4d3b68ed369ca1214724a1c376546f49dce9"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl",
"has_sig": false,
"md5_digest": "d363ffcaecf48cdce10f98c5fbf94192",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 2058422,
"upload_time": "2024-02-02T16:40:55",
"upload_time_iso_8601": "2024-02-02T16:40:55.618935Z",
"url": "https://files.pythonhosted.org/packages/d8/38/b0da147626d70a4fda599ebaf68725a9f85d65ecece7e4ca4f131718e82f/tsdownsample-0.1.3-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "75c50731e8b331300900dc214f7316d8fac6ef28cdfce5bd2eb0e6f3c3fe0af3",
"md5": "346f71776d3e7af753ec677dbc81a952",
"sha256": "3ec8f06d6ad9f26a52b34f229ed5647ee3a2d373014a1c29903e1d57208b7ded"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "346f71776d3e7af753ec677dbc81a952",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 1979561,
"upload_time": "2024-02-02T16:40:57",
"upload_time_iso_8601": "2024-02-02T16:40:57.174401Z",
"url": "https://files.pythonhosted.org/packages/75/c5/0731e8b331300900dc214f7316d8fac6ef28cdfce5bd2eb0e6f3c3fe0af3/tsdownsample-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0751e0f59b86f93e31d5c813dffbc31cf65b512a427849438189f3be8a156394",
"md5": "920f2565a633490f210c970baefb3b0d",
"sha256": "08ed25561d504aad77ba815e4d176efe80a37b8761a53bf77bb087e08ae8f54b"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "920f2565a633490f210c970baefb3b0d",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 2083303,
"upload_time": "2024-02-02T16:40:58",
"upload_time_iso_8601": "2024-02-02T16:40:58.555379Z",
"url": "https://files.pythonhosted.org/packages/07/51/e0f59b86f93e31d5c813dffbc31cf65b512a427849438189f3be8a156394/tsdownsample-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d64b0040eec19099d3761e06dbedca0798ceecdefe901ef7e27742b64490c201",
"md5": "5f3eed390b6923ae4b53425f81d17e3d",
"sha256": "757b62df7fa170ada3748f2ee6682948be9bbd83370dba4bf83929dfd98570a3"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp311-cp311-manylinux_2_24_armv7l.whl",
"has_sig": false,
"md5_digest": "5f3eed390b6923ae4b53425f81d17e3d",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 2038842,
"upload_time": "2024-02-02T16:40:59",
"upload_time_iso_8601": "2024-02-02T16:40:59.894735Z",
"url": "https://files.pythonhosted.org/packages/d6/4b/0040eec19099d3761e06dbedca0798ceecdefe901ef7e27742b64490c201/tsdownsample-0.1.3-cp311-cp311-manylinux_2_24_armv7l.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8ff4090b85ea94af212c11772f7d052822f276ded07d4c8dec95150807d57065",
"md5": "eb13494080825cf7566f139bfb57f679",
"sha256": "c5d0ab1a46caf68764c36e6749d56d3c02ab39eb2f61ad700d8369dfe2861ad5"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp311-cp311-manylinux_2_24_ppc64le.whl",
"has_sig": false,
"md5_digest": "eb13494080825cf7566f139bfb57f679",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 2050622,
"upload_time": "2024-02-02T16:41:01",
"upload_time_iso_8601": "2024-02-02T16:41:01.770280Z",
"url": "https://files.pythonhosted.org/packages/8f/f4/090b85ea94af212c11772f7d052822f276ded07d4c8dec95150807d57065/tsdownsample-0.1.3-cp311-cp311-manylinux_2_24_ppc64le.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8e7432d027366693d24cfd4d8f828bc31c70a3579d265dc7fa8f14290769ae2e",
"md5": "67e0cab5a4a5b449245b301dd63f2b48",
"sha256": "8d5bdcf9e09ee58411299ed5d47b1e9cdfaab61a8293cc2167af0e666aafcd4c"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp311-cp311-manylinux_2_24_s390x.whl",
"has_sig": false,
"md5_digest": "67e0cab5a4a5b449245b301dd63f2b48",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 2493632,
"upload_time": "2024-02-02T16:41:03",
"upload_time_iso_8601": "2024-02-02T16:41:03.294772Z",
"url": "https://files.pythonhosted.org/packages/8e/74/32d027366693d24cfd4d8f828bc31c70a3579d265dc7fa8f14290769ae2e/tsdownsample-0.1.3-cp311-cp311-manylinux_2_24_s390x.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "15986affac5d3d892961439a4450701060359a7d563c1fb0761c9f1a85f579f6",
"md5": "c0a446b25239c069247fc9e66c9502b8",
"sha256": "0884215aae9b75107f3400b43800ce7b61ce573e2f19e8fb155fbd2918b0d0b3"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp311-cp311-musllinux_1_1_aarch64.whl",
"has_sig": false,
"md5_digest": "c0a446b25239c069247fc9e66c9502b8",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 2139618,
"upload_time": "2024-02-02T16:41:04",
"upload_time_iso_8601": "2024-02-02T16:41:04.679527Z",
"url": "https://files.pythonhosted.org/packages/15/98/6affac5d3d892961439a4450701060359a7d563c1fb0761c9f1a85f579f6/tsdownsample-0.1.3-cp311-cp311-musllinux_1_1_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "46bc573d4193aa989c1367ea3bcaf7404ce21fc8366fb6ffd22d8c917aa68740",
"md5": "ae9090302353039b7754fc2334067af0",
"sha256": "4deb0c331cb95ee634b6bd605b44e7936d5bf50e22f4efda15fa719ddf181951"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp311-cp311-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "ae9090302353039b7754fc2334067af0",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 2253442,
"upload_time": "2024-02-02T16:41:06",
"upload_time_iso_8601": "2024-02-02T16:41:06.151689Z",
"url": "https://files.pythonhosted.org/packages/46/bc/573d4193aa989c1367ea3bcaf7404ce21fc8366fb6ffd22d8c917aa68740/tsdownsample-0.1.3-cp311-cp311-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "325cf88feaad362d110fca3b301fd37ef656523d7f1e4599887e6f7c67743983",
"md5": "6b3c0f1e0001bb20422bd3ba0f5109ee",
"sha256": "3f0b70794d6ae79efc213ab4c384bbd3404b700c508d3873bbe63db3c48ab156"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp311-none-win32.whl",
"has_sig": false,
"md5_digest": "6b3c0f1e0001bb20422bd3ba0f5109ee",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 706457,
"upload_time": "2024-02-02T16:41:08",
"upload_time_iso_8601": "2024-02-02T16:41:08.102913Z",
"url": "https://files.pythonhosted.org/packages/32/5c/f88feaad362d110fca3b301fd37ef656523d7f1e4599887e6f7c67743983/tsdownsample-0.1.3-cp311-none-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "66ac58ab1f1c86422cea13df0bf62dc0beb3d96f2c7831a4adcd49278df1f9fe",
"md5": "aa5b06c6b9d22d41005bcc56290f468f",
"sha256": "f97a858a855d7d84c96d3b89daa2237c80da8da12ff7a3a3d13e029d6c15e69d"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp311-none-win_amd64.whl",
"has_sig": false,
"md5_digest": "aa5b06c6b9d22d41005bcc56290f468f",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 923660,
"upload_time": "2024-02-02T16:41:09",
"upload_time_iso_8601": "2024-02-02T16:41:09.443486Z",
"url": "https://files.pythonhosted.org/packages/66/ac/58ab1f1c86422cea13df0bf62dc0beb3d96f2c7831a4adcd49278df1f9fe/tsdownsample-0.1.3-cp311-none-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "223a63ad3c50fba135ef69066f2ddf76c5c14995fa1273234413c59a6e7e24e7",
"md5": "00b6e6bf8cd37efa44c62b8fdf75acb2",
"sha256": "0822465103cde9688ecbbdad6642f3415871479bd62682bf85a55f0d156482c0"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp312-cp312-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "00b6e6bf8cd37efa44c62b8fdf75acb2",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 1183711,
"upload_time": "2024-02-02T16:41:11",
"upload_time_iso_8601": "2024-02-02T16:41:11.491546Z",
"url": "https://files.pythonhosted.org/packages/22/3a/63ad3c50fba135ef69066f2ddf76c5c14995fa1273234413c59a6e7e24e7/tsdownsample-0.1.3-cp312-cp312-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3e61b0297a5b078bfa2dd37f30c210faaf7309b7e6bb0cd6c1cec725d5e903af",
"md5": "8dba33b7db404ef58f61dbe1a88bbf17",
"sha256": "bb4ad7c0fea8267156e14c0c1a8f027b5c0831e9067a436b7888c1085e569aac"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "8dba33b7db404ef58f61dbe1a88bbf17",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 1083436,
"upload_time": "2024-02-02T16:41:13",
"upload_time_iso_8601": "2024-02-02T16:41:13.471168Z",
"url": "https://files.pythonhosted.org/packages/3e/61/b0297a5b078bfa2dd37f30c210faaf7309b7e6bb0cd6c1cec725d5e903af/tsdownsample-0.1.3-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1e237502e9874c5e844a28636f0e747aa00f344c754fed7ce9d42011551da8c4",
"md5": "c11ed4575b16552c8bb264f2335d01e6",
"sha256": "4eab94d2e392470e6e26bebdcbd7e600ad1e0edca4f88c160ed8e72e280c87aa"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl",
"has_sig": false,
"md5_digest": "c11ed4575b16552c8bb264f2335d01e6",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 2050309,
"upload_time": "2024-02-02T16:41:15",
"upload_time_iso_8601": "2024-02-02T16:41:15.577296Z",
"url": "https://files.pythonhosted.org/packages/1e/23/7502e9874c5e844a28636f0e747aa00f344c754fed7ce9d42011551da8c4/tsdownsample-0.1.3-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4ce2d32c3e82946971a8d81da66676b7012b0c6a849d934b362950a4372b8a24",
"md5": "e60c5603bc99e0de109db117fb80c631",
"sha256": "58788587348e88064bfdb88acbb1d51078c5b1fff934ed1433355d1dbf939641"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "e60c5603bc99e0de109db117fb80c631",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 1976850,
"upload_time": "2024-02-02T16:41:16",
"upload_time_iso_8601": "2024-02-02T16:41:16.892377Z",
"url": "https://files.pythonhosted.org/packages/4c/e2/d32c3e82946971a8d81da66676b7012b0c6a849d934b362950a4372b8a24/tsdownsample-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1df10f09ee1d808d8dfc27493afae28d7cb3f381c4986ebad3df102d6854f957",
"md5": "830c951c13454eb977e5a39f210261a5",
"sha256": "6d59c184cac10edae160b1908c9ee579345033aaefe455581f5bd4375caada0b"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "830c951c13454eb977e5a39f210261a5",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 2076731,
"upload_time": "2024-02-02T16:41:18",
"upload_time_iso_8601": "2024-02-02T16:41:18.496781Z",
"url": "https://files.pythonhosted.org/packages/1d/f1/0f09ee1d808d8dfc27493afae28d7cb3f381c4986ebad3df102d6854f957/tsdownsample-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "83126be0b887b9830328ffa6e28cbbb0cffc546bde10f2737b6a775c66b2d8bd",
"md5": "e4d04211a980cdc181f584dd11f481ce",
"sha256": "35b0eb80cd5d1eaacab1818b6fa3374a815787c844e385fc57f29785714a357b"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp312-cp312-manylinux_2_24_armv7l.whl",
"has_sig": false,
"md5_digest": "e4d04211a980cdc181f584dd11f481ce",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 2035415,
"upload_time": "2024-02-02T16:41:21",
"upload_time_iso_8601": "2024-02-02T16:41:21.059464Z",
"url": "https://files.pythonhosted.org/packages/83/12/6be0b887b9830328ffa6e28cbbb0cffc546bde10f2737b6a775c66b2d8bd/tsdownsample-0.1.3-cp312-cp312-manylinux_2_24_armv7l.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "186319ee001389f31b7a79d8dcd1768ff3c540547ae3adee508d39179894d44b",
"md5": "dd072cf3e8f05a76dcf88d2557d29158",
"sha256": "acd0bae11eb3777e47de41783b590c1d0f6bc25c85870cb8a5d9fd47797f3f8d"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp312-cp312-manylinux_2_24_ppc64le.whl",
"has_sig": false,
"md5_digest": "dd072cf3e8f05a76dcf88d2557d29158",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 2039444,
"upload_time": "2024-02-02T16:41:22",
"upload_time_iso_8601": "2024-02-02T16:41:22.503469Z",
"url": "https://files.pythonhosted.org/packages/18/63/19ee001389f31b7a79d8dcd1768ff3c540547ae3adee508d39179894d44b/tsdownsample-0.1.3-cp312-cp312-manylinux_2_24_ppc64le.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d2d3c21b7d5de4614898a8847c8f4f81c398a356bbb4628a0aa796d8630c7d36",
"md5": "cae6343947abd27607ba2e67045c7834",
"sha256": "09d705fe7a5a73aa97a486dbef8ed4b0b9a59e679ad2189eb9923c02c1321000"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp312-cp312-manylinux_2_24_s390x.whl",
"has_sig": false,
"md5_digest": "cae6343947abd27607ba2e67045c7834",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 2484352,
"upload_time": "2024-02-02T16:41:23",
"upload_time_iso_8601": "2024-02-02T16:41:23.983832Z",
"url": "https://files.pythonhosted.org/packages/d2/d3/c21b7d5de4614898a8847c8f4f81c398a356bbb4628a0aa796d8630c7d36/tsdownsample-0.1.3-cp312-cp312-manylinux_2_24_s390x.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6f353c1ec013116c9598fce33afc0260de68d67e912a915cfe6fb7d03a6abbda",
"md5": "af3a9fbfa9667ae811f64b1eda8b3323",
"sha256": "76107f22e01135bc97f493083c623bab88c12a79b909ee931efa585f6543d3c9"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp312-cp312-musllinux_1_1_aarch64.whl",
"has_sig": false,
"md5_digest": "af3a9fbfa9667ae811f64b1eda8b3323",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 2136309,
"upload_time": "2024-02-02T16:41:25",
"upload_time_iso_8601": "2024-02-02T16:41:25.425439Z",
"url": "https://files.pythonhosted.org/packages/6f/35/3c1ec013116c9598fce33afc0260de68d67e912a915cfe6fb7d03a6abbda/tsdownsample-0.1.3-cp312-cp312-musllinux_1_1_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "52f59fcf4d3493d8add8f741a3fbea8cc1378f23bb99c424f9563aa8d0001d36",
"md5": "420b6f41bbd10605e71b0e86abfbc412",
"sha256": "a966c97138809f2c3fe627b3acfa041983123342f92f9782d4573d16155d6c77"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp312-cp312-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "420b6f41bbd10605e71b0e86abfbc412",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 2245968,
"upload_time": "2024-02-02T16:41:26",
"upload_time_iso_8601": "2024-02-02T16:41:26.756570Z",
"url": "https://files.pythonhosted.org/packages/52/f5/9fcf4d3493d8add8f741a3fbea8cc1378f23bb99c424f9563aa8d0001d36/tsdownsample-0.1.3-cp312-cp312-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a4f53516f262e4e27906379ecdcefb32192d7af9c683e51fc3edeabd57627919",
"md5": "9d4c88e8e611402c9da5c1d91d6d8188",
"sha256": "63b730c96a539abd71863166c203310383b0f04b268e935e69fd68a2b7a4d27a"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp312-none-win32.whl",
"has_sig": false,
"md5_digest": "9d4c88e8e611402c9da5c1d91d6d8188",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 717180,
"upload_time": "2024-02-02T16:41:28",
"upload_time_iso_8601": "2024-02-02T16:41:28.145256Z",
"url": "https://files.pythonhosted.org/packages/a4/f5/3516f262e4e27906379ecdcefb32192d7af9c683e51fc3edeabd57627919/tsdownsample-0.1.3-cp312-none-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ecad58285efa9cbad958ad64c01b79f50d26a4f30cb94f400589a2fbfed556a8",
"md5": "986f548d9524c95e9959d8e8e559f8c0",
"sha256": "55479a6e1b1fa60092b6d344a99d374ccba57a40d23f9fd4d2fcdd5faabf7d40"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp312-none-win_amd64.whl",
"has_sig": false,
"md5_digest": "986f548d9524c95e9959d8e8e559f8c0",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.7",
"size": 922853,
"upload_time": "2024-02-02T16:41:30",
"upload_time_iso_8601": "2024-02-02T16:41:30.130024Z",
"url": "https://files.pythonhosted.org/packages/ec/ad/58285efa9cbad958ad64c01b79f50d26a4f30cb94f400589a2fbfed556a8/tsdownsample-0.1.3-cp312-none-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4dbb2ffe83d9dec30a6ee2c9daf698d623ea4a55a872335cee85cd36b42fd5c8",
"md5": "02ecee767e2fcec4697a8600bd0087fb",
"sha256": "3caa8906b87efa2277584dde851f214db4a3aa4d6d5c631b0ec40e7978271ac8"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp37-cp37m-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "02ecee767e2fcec4697a8600bd0087fb",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 1185684,
"upload_time": "2024-02-02T16:41:31",
"upload_time_iso_8601": "2024-02-02T16:41:31.530466Z",
"url": "https://files.pythonhosted.org/packages/4d/bb/2ffe83d9dec30a6ee2c9daf698d623ea4a55a872335cee85cd36b42fd5c8/tsdownsample-0.1.3-cp37-cp37m-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6d08cc028c694453860a928557dce1f3e15135cd43fbbfeca208f630610dab56",
"md5": "9633be9c9482e75256261a8f9d44eaec",
"sha256": "982c4e885785f261d500c2d36f7054544313d0caacfc53c63fc47571f28194f3"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp37-cp37m-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "9633be9c9482e75256261a8f9d44eaec",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 1085505,
"upload_time": "2024-02-02T16:41:32",
"upload_time_iso_8601": "2024-02-02T16:41:32.822966Z",
"url": "https://files.pythonhosted.org/packages/6d/08/cc028c694453860a928557dce1f3e15135cd43fbbfeca208f630610dab56/tsdownsample-0.1.3-cp37-cp37m-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b04bd80b49b9e2bb6dfb1aaf7c83a2544b29de4929f537b70c24fa502a612b8d",
"md5": "dfb2a7d735779a5b87911b87a8e6f71a",
"sha256": "fe138a297a504b2121c56e32afb2e645028177faef1a5152a3b080fe932bd458"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl",
"has_sig": false,
"md5_digest": "dfb2a7d735779a5b87911b87a8e6f71a",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 2058404,
"upload_time": "2024-02-02T16:41:34",
"upload_time_iso_8601": "2024-02-02T16:41:34.402887Z",
"url": "https://files.pythonhosted.org/packages/b0/4b/d80b49b9e2bb6dfb1aaf7c83a2544b29de4929f537b70c24fa502a612b8d/tsdownsample-0.1.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "935e0f42a0f6e2e8bbeca209618c39ab68a8d1f46df69f1b113b654afdb1e4a3",
"md5": "4dfa699cdd958609eba0929e8eb993f9",
"sha256": "e3157795be6fbd2de9e936a242aa7c00ce8ab2def12fdec49d74502a216b403e"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "4dfa699cdd958609eba0929e8eb993f9",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 1979483,
"upload_time": "2024-02-02T16:41:35",
"upload_time_iso_8601": "2024-02-02T16:41:35.885315Z",
"url": "https://files.pythonhosted.org/packages/93/5e/0f42a0f6e2e8bbeca209618c39ab68a8d1f46df69f1b113b654afdb1e4a3/tsdownsample-0.1.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ce265c41f371fec9bc3e33edb107e1ad75059abba3b1a129aaa51626560d5ac3",
"md5": "a8e5a910cf42225b56bfa32bac38db49",
"sha256": "e069bcf40b0ebf80d9f3a7f827cf26c60dde9b1474268a27e54f37daade1017d"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "a8e5a910cf42225b56bfa32bac38db49",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 2083404,
"upload_time": "2024-02-02T16:41:37",
"upload_time_iso_8601": "2024-02-02T16:41:37.443861Z",
"url": "https://files.pythonhosted.org/packages/ce/26/5c41f371fec9bc3e33edb107e1ad75059abba3b1a129aaa51626560d5ac3/tsdownsample-0.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "cec8c9700f6afa0352139255b19651abed2a0ac4ada29266e11d20d9a5c2a5eb",
"md5": "5d8206f3a4d5fcc3dfca6ade8c4062f7",
"sha256": "5dd63a6a5358f52257775c83f66111fcdbd07cf70603a7d6271f5783b70bfaef"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp37-cp37m-manylinux_2_24_armv7l.whl",
"has_sig": false,
"md5_digest": "5d8206f3a4d5fcc3dfca6ade8c4062f7",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 2039294,
"upload_time": "2024-02-02T16:41:38",
"upload_time_iso_8601": "2024-02-02T16:41:38.863906Z",
"url": "https://files.pythonhosted.org/packages/ce/c8/c9700f6afa0352139255b19651abed2a0ac4ada29266e11d20d9a5c2a5eb/tsdownsample-0.1.3-cp37-cp37m-manylinux_2_24_armv7l.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "72116e5a502acbb529e22671d4c3e6e604ffc8b2402baf223c1e243676dd64bf",
"md5": "7726bc68d0ff8dc2e5b2226afa6a8362",
"sha256": "5d77f9fd7d69a44e0935ad5f32a02b76b53c9aed325824565948b2a0bb6d2e08"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp37-cp37m-manylinux_2_24_ppc64le.whl",
"has_sig": false,
"md5_digest": "7726bc68d0ff8dc2e5b2226afa6a8362",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 2048772,
"upload_time": "2024-02-02T16:41:40",
"upload_time_iso_8601": "2024-02-02T16:41:40.306302Z",
"url": "https://files.pythonhosted.org/packages/72/11/6e5a502acbb529e22671d4c3e6e604ffc8b2402baf223c1e243676dd64bf/tsdownsample-0.1.3-cp37-cp37m-manylinux_2_24_ppc64le.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c9aa0f9968e3a85c9b823a8442fdf763002cece60ce42bb4bc93468ceb46632d",
"md5": "3e4ff919a908ccf06524df7514473c14",
"sha256": "c4fa2115a8f46ff2d99958cd6652db84d09f4a1ac7cbafb62288e300df528b48"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp37-cp37m-manylinux_2_24_s390x.whl",
"has_sig": false,
"md5_digest": "3e4ff919a908ccf06524df7514473c14",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 2494729,
"upload_time": "2024-02-02T16:41:42",
"upload_time_iso_8601": "2024-02-02T16:41:42.470266Z",
"url": "https://files.pythonhosted.org/packages/c9/aa/0f9968e3a85c9b823a8442fdf763002cece60ce42bb4bc93468ceb46632d/tsdownsample-0.1.3-cp37-cp37m-manylinux_2_24_s390x.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ad2889ab4c8fd82f8c5be53d4fecffe1f44f766aba5a743fd3ea6102d6567455",
"md5": "c536b55eb2adc6508ee35c1ebfd2377d",
"sha256": "9bc4d095c43947f6499603210270e1dd29919b9fb692655acbd5b1e7d7667102"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp37-cp37m-musllinux_1_1_aarch64.whl",
"has_sig": false,
"md5_digest": "c536b55eb2adc6508ee35c1ebfd2377d",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 2138654,
"upload_time": "2024-02-02T16:41:44",
"upload_time_iso_8601": "2024-02-02T16:41:44.670627Z",
"url": "https://files.pythonhosted.org/packages/ad/28/89ab4c8fd82f8c5be53d4fecffe1f44f766aba5a743fd3ea6102d6567455/tsdownsample-0.1.3-cp37-cp37m-musllinux_1_1_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "acb88dfc1106528532247b9339633998968cbfe102c661922edb7311b1681b78",
"md5": "ea7984a3385e370c16e7822fd9cf97dd",
"sha256": "a1f89a77976f2cd24b19fa15dd98fa1aec2acef83743d9d9e31bc5daad7de8a3"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp37-cp37m-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "ea7984a3385e370c16e7822fd9cf97dd",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 2253130,
"upload_time": "2024-02-02T16:41:46",
"upload_time_iso_8601": "2024-02-02T16:41:46.137872Z",
"url": "https://files.pythonhosted.org/packages/ac/b8/8dfc1106528532247b9339633998968cbfe102c661922edb7311b1681b78/tsdownsample-0.1.3-cp37-cp37m-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1a77eedb0474518dc718d63fdb736109510b9093ccad8a754dcc3908329f5d59",
"md5": "8250ece2fe42d050803e72d913780347",
"sha256": "9afe1856a18cbd58726614805cac01b2a7259a8f31396413e7c3c0629fe1f72c"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp37-none-win32.whl",
"has_sig": false,
"md5_digest": "8250ece2fe42d050803e72d913780347",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 707233,
"upload_time": "2024-02-02T16:41:48",
"upload_time_iso_8601": "2024-02-02T16:41:48.253174Z",
"url": "https://files.pythonhosted.org/packages/1a/77/eedb0474518dc718d63fdb736109510b9093ccad8a754dcc3908329f5d59/tsdownsample-0.1.3-cp37-none-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1974983fc55d2e9d6d62d6c2062a5aaedb483c2bba8cec62902c2800f701999b",
"md5": "f82bf460e7b23fe59b6d6e21ad7dae28",
"sha256": "213d10479f06e98bb351bcf2f9b6b2c58632f6e4d27e200f224e7379b93775c2"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp37-none-win_amd64.whl",
"has_sig": false,
"md5_digest": "f82bf460e7b23fe59b6d6e21ad7dae28",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 923656,
"upload_time": "2024-02-02T16:41:50",
"upload_time_iso_8601": "2024-02-02T16:41:50.750958Z",
"url": "https://files.pythonhosted.org/packages/19/74/983fc55d2e9d6d62d6c2062a5aaedb483c2bba8cec62902c2800f701999b/tsdownsample-0.1.3-cp37-none-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "260b50101119fe3e5ce2fdcf7b517a477c71208387be2b2a2eb42c206baff60e",
"md5": "78d3ecaf173f981c6f17b8bbe6337ebc",
"sha256": "c22103ec83b363b9195cb62533ddf76eaff7b198014a4dd40a8d1a0a2e8c6fa7"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp38-cp38-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "78d3ecaf173f981c6f17b8bbe6337ebc",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 1185793,
"upload_time": "2024-02-02T16:41:52",
"upload_time_iso_8601": "2024-02-02T16:41:52.635483Z",
"url": "https://files.pythonhosted.org/packages/26/0b/50101119fe3e5ce2fdcf7b517a477c71208387be2b2a2eb42c206baff60e/tsdownsample-0.1.3-cp38-cp38-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fa71aee083cb2cc7c7506b2bf7c1dd3e8e768908b0f93664deeb7555b97b93a1",
"md5": "5e0d36a6949991413adf3a50236ea22f",
"sha256": "85a703c2d29dd0c7923b5b7d3c0eccc639a4087fbe8d0a0290506abcb8ef48bf"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp38-cp38-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "5e0d36a6949991413adf3a50236ea22f",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 1085523,
"upload_time": "2024-02-02T16:41:54",
"upload_time_iso_8601": "2024-02-02T16:41:54.714737Z",
"url": "https://files.pythonhosted.org/packages/fa/71/aee083cb2cc7c7506b2bf7c1dd3e8e768908b0f93664deeb7555b97b93a1/tsdownsample-0.1.3-cp38-cp38-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5edbf9e18b97938ba346faf4c6bbce882a5575ce91da0331d8e9cdd52339f0f8",
"md5": "a5d5153d84745b5b5cbeedc81ad98f13",
"sha256": "6ccff0710fb2dac229f810877cb308087f1456610f1aa272524b69f551642ee2"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl",
"has_sig": false,
"md5_digest": "a5d5153d84745b5b5cbeedc81ad98f13",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 2058840,
"upload_time": "2024-02-02T16:41:56",
"upload_time_iso_8601": "2024-02-02T16:41:56.084489Z",
"url": "https://files.pythonhosted.org/packages/5e/db/f9e18b97938ba346faf4c6bbce882a5575ce91da0331d8e9cdd52339f0f8/tsdownsample-0.1.3-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f7d68709409e068c5a0907568ebd7b54778074f5a12ab032684526df45519fab",
"md5": "9a53795400c0b2b341621e6ef68d5232",
"sha256": "1a198ab5f2ce1c9d30077b13393295dfbecaaddee6d2b5ffee7439d454c108f3"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "9a53795400c0b2b341621e6ef68d5232",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 1979241,
"upload_time": "2024-02-02T16:41:57",
"upload_time_iso_8601": "2024-02-02T16:41:57.977952Z",
"url": "https://files.pythonhosted.org/packages/f7/d6/8709409e068c5a0907568ebd7b54778074f5a12ab032684526df45519fab/tsdownsample-0.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5630497d70447bc8b2715b97a18464c85c4c1dc0aad332e9f93aaed680a33770",
"md5": "fc41220bd78317c34f2d977e58973707",
"sha256": "468752a26958c12a95ce583f46347e0c3eacb579323c3a230af27d50c3cabac5"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "fc41220bd78317c34f2d977e58973707",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 2083037,
"upload_time": "2024-02-02T16:41:59",
"upload_time_iso_8601": "2024-02-02T16:41:59.668866Z",
"url": "https://files.pythonhosted.org/packages/56/30/497d70447bc8b2715b97a18464c85c4c1dc0aad332e9f93aaed680a33770/tsdownsample-0.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "28e818386e288ce006834635d14b6a2e35c398d96a7ec7ac3028fbb0321965e8",
"md5": "6569c66ea8ce6176e62a82fb86bc02f6",
"sha256": "5293167ece8428f664ecd69302ecda32a6ad635d9aff6c21d1796198169e56bc"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp38-cp38-manylinux_2_24_armv7l.whl",
"has_sig": false,
"md5_digest": "6569c66ea8ce6176e62a82fb86bc02f6",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 2039018,
"upload_time": "2024-02-02T16:42:01",
"upload_time_iso_8601": "2024-02-02T16:42:01.162655Z",
"url": "https://files.pythonhosted.org/packages/28/e8/18386e288ce006834635d14b6a2e35c398d96a7ec7ac3028fbb0321965e8/tsdownsample-0.1.3-cp38-cp38-manylinux_2_24_armv7l.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0610a635044afb65b911b21b28e33877e78c182ac7b8e0970c7e652383daa55c",
"md5": "0019b609ca2d87b07b1791200eb484f4",
"sha256": "23557544e1d8e767606b134b55c5c598bcc368d73ba904ff4fe91b93d8935531"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp38-cp38-manylinux_2_24_ppc64le.whl",
"has_sig": false,
"md5_digest": "0019b609ca2d87b07b1791200eb484f4",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 2050967,
"upload_time": "2024-02-02T16:42:03",
"upload_time_iso_8601": "2024-02-02T16:42:03.233438Z",
"url": "https://files.pythonhosted.org/packages/06/10/a635044afb65b911b21b28e33877e78c182ac7b8e0970c7e652383daa55c/tsdownsample-0.1.3-cp38-cp38-manylinux_2_24_ppc64le.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5c38239959c613d88093149a11a26989a37849e0f6bff04e3f21892b9030ccf3",
"md5": "093f91ac3f56e9112ce1939dfede6637",
"sha256": "e0791339d9b8ddb78d1082a31ae880d00e4fa375147b8f2fdebc0915782e38ee"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp38-cp38-manylinux_2_24_s390x.whl",
"has_sig": false,
"md5_digest": "093f91ac3f56e9112ce1939dfede6637",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 2494019,
"upload_time": "2024-02-02T16:42:04",
"upload_time_iso_8601": "2024-02-02T16:42:04.792662Z",
"url": "https://files.pythonhosted.org/packages/5c/38/239959c613d88093149a11a26989a37849e0f6bff04e3f21892b9030ccf3/tsdownsample-0.1.3-cp38-cp38-manylinux_2_24_s390x.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0ba2f2f63530c611c328bb2e252f0a5c7a7d14b14c7d867710e361376539bd35",
"md5": "9e03f8be4b7b27ef6b1d7b444d3e1e87",
"sha256": "51d7a39b60d622f12beb1c04b404c7ab7743653eb74089b9663504675a9bfc62"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp38-cp38-musllinux_1_1_aarch64.whl",
"has_sig": false,
"md5_digest": "9e03f8be4b7b27ef6b1d7b444d3e1e87",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 2139221,
"upload_time": "2024-02-02T16:42:06",
"upload_time_iso_8601": "2024-02-02T16:42:06.468175Z",
"url": "https://files.pythonhosted.org/packages/0b/a2/f2f63530c611c328bb2e252f0a5c7a7d14b14c7d867710e361376539bd35/tsdownsample-0.1.3-cp38-cp38-musllinux_1_1_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "51788cc09b7c77e2c7565bcf4cfd2d75664e2a4eaf4f531fdeb159e060b6db34",
"md5": "48101b58ea0a5979f8ba71c8de316295",
"sha256": "9f2ba2ad61db5ef9617b1d6e764e9aabde63a391b1c8ee97098d348a9b9d883a"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp38-cp38-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "48101b58ea0a5979f8ba71c8de316295",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 2253237,
"upload_time": "2024-02-02T16:42:08",
"upload_time_iso_8601": "2024-02-02T16:42:08.503069Z",
"url": "https://files.pythonhosted.org/packages/51/78/8cc09b7c77e2c7565bcf4cfd2d75664e2a4eaf4f531fdeb159e060b6db34/tsdownsample-0.1.3-cp38-cp38-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4ec99d8cb6265f2b0ee5173b125af061dcc84f6014ae871148a6cb819fce2416",
"md5": "046272136458687618acd92f209cb025",
"sha256": "e69e6d066c30e946aeb7c19ae7d2364ee6f1a072c8e47dee76825d86b5ad84be"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp38-none-win32.whl",
"has_sig": false,
"md5_digest": "046272136458687618acd92f209cb025",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 707239,
"upload_time": "2024-02-02T16:42:10",
"upload_time_iso_8601": "2024-02-02T16:42:10.158248Z",
"url": "https://files.pythonhosted.org/packages/4e/c9/9d8cb6265f2b0ee5173b125af061dcc84f6014ae871148a6cb819fce2416/tsdownsample-0.1.3-cp38-none-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "85e210bc9bc07ad26cf4189c72d6d0dc896b0b36fc2c543ec3c6d6e68991f5aa",
"md5": "9d77352f804987934daff409a96ff5b5",
"sha256": "9491a03ec700ad5ca0f555553b4da9b8285fc461c28f7970a61acf6b05d8f3ad"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp38-none-win_amd64.whl",
"has_sig": false,
"md5_digest": "9d77352f804987934daff409a96ff5b5",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 923440,
"upload_time": "2024-02-02T16:42:11",
"upload_time_iso_8601": "2024-02-02T16:42:11.725100Z",
"url": "https://files.pythonhosted.org/packages/85/e2/10bc9bc07ad26cf4189c72d6d0dc896b0b36fc2c543ec3c6d6e68991f5aa/tsdownsample-0.1.3-cp38-none-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "86ee5ecc2bf6698d28b0c30f54ff75ce7517e555bb4431e5ef36e898a80f43c1",
"md5": "af64ad70d87d87ee43197d20146fb876",
"sha256": "23d3b2d24b36fa5d05bf7e2e2748565522f3c8afd29a706dbb22a8c6b2dc4a75"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp39-cp39-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "af64ad70d87d87ee43197d20146fb876",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 1185979,
"upload_time": "2024-02-02T16:42:13",
"upload_time_iso_8601": "2024-02-02T16:42:13.093262Z",
"url": "https://files.pythonhosted.org/packages/86/ee/5ecc2bf6698d28b0c30f54ff75ce7517e555bb4431e5ef36e898a80f43c1/tsdownsample-0.1.3-cp39-cp39-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "491237ce927f550d13655ea7ae6f8a4f348b6d5c7dc740716f82d186082a0b33",
"md5": "8c61e2b0eeb339dbddd1e9300b681461",
"sha256": "1715fa981e5406c0c7adef04cdcc4b1a4c88e422946dc104b82f1669605c6da7"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp39-cp39-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "8c61e2b0eeb339dbddd1e9300b681461",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 1085418,
"upload_time": "2024-02-02T16:42:14",
"upload_time_iso_8601": "2024-02-02T16:42:14.477570Z",
"url": "https://files.pythonhosted.org/packages/49/12/37ce927f550d13655ea7ae6f8a4f348b6d5c7dc740716f82d186082a0b33/tsdownsample-0.1.3-cp39-cp39-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c9cf9c0fa1f7db53f3d98179f74281bdeba54d0d3d704c411961ee33a4e0b8a8",
"md5": "145d747f24911607691076b5f8f55e48",
"sha256": "5a44a101a1b7fa6b67d185a9f905bc0a9e0dcac6537b653a71f14dce71a451fa"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl",
"has_sig": false,
"md5_digest": "145d747f24911607691076b5f8f55e48",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 2058163,
"upload_time": "2024-02-02T16:42:15",
"upload_time_iso_8601": "2024-02-02T16:42:15.889427Z",
"url": "https://files.pythonhosted.org/packages/c9/cf/9c0fa1f7db53f3d98179f74281bdeba54d0d3d704c411961ee33a4e0b8a8/tsdownsample-0.1.3-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d7d6415cc88e001072eea150c1d0af078f6ff5e399381123f33e742cb6b1410a",
"md5": "600271cfb7e32cb9b6024022a157ceaa",
"sha256": "372b09627f39899b90605bd71ac481a9052f135b8c96d431255c3af6c383d0d4"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "600271cfb7e32cb9b6024022a157ceaa",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 1980052,
"upload_time": "2024-02-02T16:42:17",
"upload_time_iso_8601": "2024-02-02T16:42:17.370954Z",
"url": "https://files.pythonhosted.org/packages/d7/d6/415cc88e001072eea150c1d0af078f6ff5e399381123f33e742cb6b1410a/tsdownsample-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ba6c41725bf9f9d9eaeaab40c71516d7cd224849ef4c19bc6ca176e3f47ff5fc",
"md5": "6872cb2f162244e64e57b1cea73ef701",
"sha256": "ac2d1141b0c3899bac018a6d8ed4b1baca2fb88ba8d8c9c7b1a4116f548c11a8"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "6872cb2f162244e64e57b1cea73ef701",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 2082807,
"upload_time": "2024-02-02T16:42:19",
"upload_time_iso_8601": "2024-02-02T16:42:19.054727Z",
"url": "https://files.pythonhosted.org/packages/ba/6c/41725bf9f9d9eaeaab40c71516d7cd224849ef4c19bc6ca176e3f47ff5fc/tsdownsample-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "eba0c8eadba5631e8c5de6fa4cc4b4907159fce91f2b2ef8bb88915e9c53ca02",
"md5": "16b8f8219734898b4d09400d2ea807e5",
"sha256": "ab6e9780f5a9d64b4692ac70f9a0aaf5a7bd499bc82e56b15e42e1a40e9f24a1"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp39-cp39-manylinux_2_24_armv7l.whl",
"has_sig": false,
"md5_digest": "16b8f8219734898b4d09400d2ea807e5",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 2039037,
"upload_time": "2024-02-02T16:42:20",
"upload_time_iso_8601": "2024-02-02T16:42:20.461653Z",
"url": "https://files.pythonhosted.org/packages/eb/a0/c8eadba5631e8c5de6fa4cc4b4907159fce91f2b2ef8bb88915e9c53ca02/tsdownsample-0.1.3-cp39-cp39-manylinux_2_24_armv7l.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7f94c79ddcb17455c57b86eba0cee713be697e03bdcacaadeb160326c8bb80b2",
"md5": "3f590616ea202ed065eb1e693e7427ce",
"sha256": "dc348f7802e18c33a6d8e0386debfa92ffa679591551fece9f2d49c0501b5c35"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp39-cp39-manylinux_2_24_ppc64le.whl",
"has_sig": false,
"md5_digest": "3f590616ea202ed065eb1e693e7427ce",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 2050857,
"upload_time": "2024-02-02T16:42:22",
"upload_time_iso_8601": "2024-02-02T16:42:22.224850Z",
"url": "https://files.pythonhosted.org/packages/7f/94/c79ddcb17455c57b86eba0cee713be697e03bdcacaadeb160326c8bb80b2/tsdownsample-0.1.3-cp39-cp39-manylinux_2_24_ppc64le.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3bd178d80eefee606d8f008daba392ac9b4af7c7a891b8f0b5882aec6aacfac3",
"md5": "3ee2dc80a551ab9f2cfce1656dea19d4",
"sha256": "0d67e05dc61002c9672582f516ecf9473a6eba710be8580e9c9f37b187d83762"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp39-cp39-manylinux_2_24_s390x.whl",
"has_sig": false,
"md5_digest": "3ee2dc80a551ab9f2cfce1656dea19d4",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 2493598,
"upload_time": "2024-02-02T16:42:23",
"upload_time_iso_8601": "2024-02-02T16:42:23.727123Z",
"url": "https://files.pythonhosted.org/packages/3b/d1/78d80eefee606d8f008daba392ac9b4af7c7a891b8f0b5882aec6aacfac3/tsdownsample-0.1.3-cp39-cp39-manylinux_2_24_s390x.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "894e4f94c82b62067b32e310694456c4f3ac38cd0d484a9c431de8ce4b27e081",
"md5": "ce277eca774884b01951d6bde18b53aa",
"sha256": "c1fb3e646206593ee92630e27a725cf00a9e70e20af5a7032baa3de2d2943bc6"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp39-cp39-musllinux_1_1_aarch64.whl",
"has_sig": false,
"md5_digest": "ce277eca774884b01951d6bde18b53aa",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 2139044,
"upload_time": "2024-02-02T16:42:25",
"upload_time_iso_8601": "2024-02-02T16:42:25.309172Z",
"url": "https://files.pythonhosted.org/packages/89/4e/4f94c82b62067b32e310694456c4f3ac38cd0d484a9c431de8ce4b27e081/tsdownsample-0.1.3-cp39-cp39-musllinux_1_1_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2b6a5d845247cb05dfb2ad638ca461e3bae8cba98ea70099bd134045e2844904",
"md5": "a205f4341ae072d62a943e97f5b222ee",
"sha256": "20bf49fec6a4371fd417ca75a4096bafce2a3d3263a89f89d5bfba70bd78e409"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp39-cp39-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "a205f4341ae072d62a943e97f5b222ee",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 2252993,
"upload_time": "2024-02-02T16:42:27",
"upload_time_iso_8601": "2024-02-02T16:42:27.352597Z",
"url": "https://files.pythonhosted.org/packages/2b/6a/5d845247cb05dfb2ad638ca461e3bae8cba98ea70099bd134045e2844904/tsdownsample-0.1.3-cp39-cp39-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0c7f5d2f19666e503795c5b7863b71459480bf84b3e6da123f66137ac3322e43",
"md5": "3ff723aee33199aee2e82fc556c531a1",
"sha256": "74854a1b0c0a7a6581402769de12559cd9efeb1bb12ace831701aacfc0ddc140"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp39-none-win32.whl",
"has_sig": false,
"md5_digest": "3ff723aee33199aee2e82fc556c531a1",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 706832,
"upload_time": "2024-02-02T16:42:28",
"upload_time_iso_8601": "2024-02-02T16:42:28.733581Z",
"url": "https://files.pythonhosted.org/packages/0c/7f/5d2f19666e503795c5b7863b71459480bf84b3e6da123f66137ac3322e43/tsdownsample-0.1.3-cp39-none-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "621b6fd4c8391af323f4bc34aa2a4f6502f85f22e12ac5494c1504322d25b8fb",
"md5": "17eb1352806993d2977b1e584b419909",
"sha256": "4d25567c0f15ca9e3f9d822934f60e5258e23a06d5515d12617518dc9f99f26f"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3-cp39-none-win_amd64.whl",
"has_sig": false,
"md5_digest": "17eb1352806993d2977b1e584b419909",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 923514,
"upload_time": "2024-02-02T16:42:30",
"upload_time_iso_8601": "2024-02-02T16:42:30.074439Z",
"url": "https://files.pythonhosted.org/packages/62/1b/6fd4c8391af323f4bc34aa2a4f6502f85f22e12ac5494c1504322d25b8fb/tsdownsample-0.1.3-cp39-none-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "aeef179f94de69fc6e5efa2574b8c8942457dcf0ff5a0c36f63ee33488ada27f",
"md5": "3d95cd6b015ca3e86bb334d6b6523a08",
"sha256": "5268d0ab5e8572138871feff389440a0c59d5e0fe02c0fa1cf975d74ba33b933"
},
"downloads": -1,
"filename": "tsdownsample-0.1.3.tar.gz",
"has_sig": false,
"md5_digest": "3d95cd6b015ca3e86bb334d6b6523a08",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 556663,
"upload_time": "2024-02-02T16:42:31",
"upload_time_iso_8601": "2024-02-02T16:42:31.517700Z",
"url": "https://files.pythonhosted.org/packages/ae/ef/179f94de69fc6e5efa2574b8c8942457dcf0ff5a0c36f63ee33488ada27f/tsdownsample-0.1.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-02-02 16:42:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "predict-idlab",
"github_project": "tsdownsample",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "tsdownsample"
}