From 6f3fb5544f2e7d55cc7aa83d8af481ca13e615f6 Mon Sep 17 00:00:00 2001 From: Julianus Pfeuffer <8102638+jpfeuffer@users.noreply.github.com> Date: Thu, 15 Oct 2026 17:16:39 +0200 Subject: [PATCH 1/7] Require Zarr Python 3 and modern Xarray Preserve the default Zarr format 2 storage, support current string codecs and store types, and replace the incompatible deprecated BGEN rechunker backend with Xarray and Dask. Update the lockfile, minimum-version CI, regression tests and documentation. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .github/workflows/build.yml | 12 +- docs/changelog.rst | 10 +- docs/user_guide.rst | 16 +- pyproject.toml | 12 +- sgkit/io/bgen/bgen_reader.py | 82 ++--- sgkit/io/dataset.py | 34 +- sgkit/io/plink/plink_reader.py | 5 +- sgkit/io/plink/plink_writer.py | 5 +- sgkit/tests/io/bgen/test_bgen_reader.py | 27 +- sgkit/tests/io/test_dataset.py | 58 +++- sgkit/tests/io/test_vcf2zarr_compat.py | 18 +- sgkit/tests/test_association.py | 6 +- sgkit/tests/test_regenie.py | 6 +- sgkit/utils.py | 8 - uv.lock | 402 +++++++++++++----------- 15 files changed, 376 insertions(+), 325 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b3c21f06c..e688b7587 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -41,14 +41,11 @@ jobs: with: token: ${{ secrets.CODECOV_TOKEN }} - test-zarr-version: - name: Test Zarr Python v3 + test-xarray-minimum: + name: Test minimum Xarray # Scheduled runs only on the origin org if: (github.event_name == 'schedule' && github.repository_owner == 'sgkit-dev') || (github.event_name != 'schedule') runs-on: ubuntu-latest - strategy: - matrix: - zarr: [">=3"] steps: - uses: actions/checkout@v7 - uses: actions/setup-python@v7 @@ -63,10 +60,9 @@ jobs: - name: Install dependencies run: | uv sync --locked --all-extras --group test --no-default-groups --python 3.11 - - name: Install zarr${{ matrix.zarr }} + - name: Install minimum supported Xarray run: | - uv pip install --python .venv --pre 'zarr${{ matrix.zarr }}' - uv pip uninstall --python .venv bio2zarr # TODO: remove when bio2zarr supports Zarr Python 3 + uv pip install --python .venv 'xarray==2026.9.0' - name: Run tests run: | uv run --no-sync pytest diff --git a/docs/changelog.rst b/docs/changelog.rst index 91b574ec8..b2f98dfb3 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -11,8 +11,14 @@ Changelog .. New Features .. ~~~~~~~~~~~~ -.. Breaking changes -.. ~~~~~~~~~~~~~~~~ +Breaking changes +~~~~~~~~~~~~~~~~ + +- Require Zarr Python >= 3 and Xarray >= 2026.9.0. The default on-disk Zarr + format remains 2. (:issue:`1355`) +- Remove the incompatible rechunker dependency from the BGEN extra. The + deprecated BGEN conversion functions now use Xarray and Dask; ``max_mem`` + and ``tempdir`` no longer control rechunking. Deprecations ~~~~~~~~~~~~ diff --git a/docs/user_guide.rst b/docs/user_guide.rst index d5b246980..76cacca96 100644 --- a/docs/user_guide.rst +++ b/docs/user_guide.rst @@ -58,7 +58,15 @@ Similarly, the function :func:`sgkit.save_dataset` can be used to save the datas This can be used to save a newly-loaded dataset, or a dataset with new variables that are the result of running genetic methods on the data, so it can be loaded again later. -By default, Zarr datasets created by sgkit (and Xarray) have `consolidated metadata `_, +Sgkit requires Zarr Python >= 3 and Xarray >= 2026.9.0, but +:func:`sgkit.save_dataset` continues to write **Zarr format 2** by default. +The Python package version does not determine the on-disk format. +Pass ``zarr_format=3`` to opt into format 3; :func:`sgkit.load_dataset` +can read either format. +The Xarray minimum includes support for the native NumPy string dtype returned +by recent Zarr releases, preserving string-array chunking on load. + +By default, Zarr format 2 datasets created by sgkit have `consolidated metadata `_, which makes opening the dataset faster. BGEN @@ -71,6 +79,12 @@ The :func:`sgkit.io.bgen.bgen_to_zarr` function converts a ``bgen`` file to Zarr files stored in sgkit's Xarray data representation, which can then be opened as a :class:`xarray.Dataset`. +The deprecated BGEN conversion functions now rechunk with Xarray and Dask, +without the Zarr Python 2-only rechunker package. They still write Zarr format 2 +and preserve probability encoding and packing. The ``max_mem`` and ``tempdir`` +parameters are retained for compatibility but no longer have an effect; configure +chunk sizes and the Dask scheduler to control memory use. + PLINK ----- diff --git a/pyproject.toml b/pyproject.toml index 8dde5ed1d..dfd0ab5f1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -22,10 +22,10 @@ requires-python = ">=3.11" dependencies = [ "numpy >= 2.3.5; sys_platform == \"darwin\"", # Apple ARM chip error "numpy >= 2.0; sys_platform != \"darwin\"", - "xarray < 2025.03.1", + "xarray >= 2026.9.0", "dask[array,dataframe] >= 2022.01.0, <= 2024.8.0", "scipy < 1.16", - "zarr >= 2.10.0, != 2.11.0, != 2.11.1, != 2.11.2, < 3", + "zarr >= 3", "numba", "fsspec != 2021.6.*", "scikit-learn", @@ -41,7 +41,7 @@ content-type = "text/x-rst" [project.optional-dependencies] plink = ["partd", "bed-reader"] -bgen = ["rechunker", "cbgen > 1.0.5"] +bgen = ["cbgen > 1.0.5"] [dependency-groups] test = [ @@ -55,7 +55,7 @@ test = [ "scikit-allel", "statsmodels", "msprime>=1.0", - "bio2zarr[vcf]; platform_system != \"Windows\"", + "bio2zarr[vcf] >= 0.2; platform_system != \"Windows\"", "yarl", "matplotlib", "networkx", @@ -193,10 +193,6 @@ ignore_missing_imports = true module = ["cbgen.*"] ignore_missing_imports = true -[[tool.mypy.overrides]] -module = ["rechunker.*"] -ignore_missing_imports = true - [[tool.mypy.overrides]] module = ["bed_reader.*"] ignore_missing_imports = true diff --git a/sgkit/io/bgen/bgen_reader.py b/sgkit/io/bgen/bgen_reader.py index 6fa44bfe3..e9212d229 100644 --- a/sgkit/io/bgen/bgen_reader.py +++ b/sgkit/io/bgen/bgen_reader.py @@ -1,20 +1,9 @@ """BGEN reader implementation (using bgen_reader)""" import logging -import tempfile import time import warnings from pathlib import Path -from typing import ( - Any, - Dict, - Hashable, - List, - Mapping, - MutableMapping, - Optional, - Tuple, - Union, -) +from typing import Any, Dict, Hashable, List, Mapping, Optional, Tuple, Union import dask import dask.array as da @@ -23,10 +12,9 @@ import numpy as np import pandas as pd import xarray as xr -import zarr from cbgen import bgen_file, bgen_metafile -from rechunker import api as rechunker_api from xarray import Dataset +from zarr.storage import StoreLike from sgkit import create_genotype_dosage_dataset, variables from sgkit.io.utils import dataframe_to_dict, encode_contigs @@ -355,9 +343,7 @@ def encode_variables( ) -> Dict[Hashable, Dict[str, Any]]: encoding = {} for v in ds: - e = {} - if compressor is not None: - e.update({"compressor": compressor}) + e = {"compressors": compressor} if v in GT_DATA_VARS: e.update({"chunks": (chunk_length, chunk_width) + ds[v].shape[2:]}) if probability_dtype is not None and v == "call_genotype_probability": @@ -422,7 +408,7 @@ def unpack_variables(ds: Dataset, dtype: DType = "float32") -> Dataset: def rechunk_bgen( ds: Dataset, - output: Union[PathType, MutableMapping[str, bytes]], + output: StoreLike, *, chunk_length: int = 10_000, chunk_width: int = 1_000, @@ -434,12 +420,11 @@ def rechunk_bgen( ) -> Dataset: """Rechunk BGEN dataset as Zarr. - This function will use the algorithm https://rechunker.readthedocs.io/en/latest/ - to rechunk certain fields in a provided Dataset for better downstream performance. - Depending on the system memory available (and the `max_mem` setting) this - rechunking may occur without the need of any intermediate data store. Otherwise, - approximately as much disk space is required as was needed to store the original - BGEN data. Experiments show that this Zarr representation is ~20% larger even + This function uses Xarray and Dask to rechunk a Dataset for better downstream + performance and writes Zarr format 2. It no longer uses rechunker, which does + not support Zarr Python 3. Memory usage depends on the input and output chunks + and the Dask scheduler; no intermediate store is created. + Experiments show that this Zarr representation is ~20% larger even with all available optimizations and fairly aggressive compression (i.e. the default `clevel` 7). @@ -448,7 +433,7 @@ def rechunk_bgen( generated based on the final, serialized Zarr data. .. deprecated:: 0.11.0 - Using rechunker for rechunking in sgkit is deprecated, please use the the + This conversion helper is deprecated, please use the `Xarray chunk `_ function directly. @@ -469,8 +454,7 @@ def rechunk_bgen( Setting this parameter results in a loss of precision. If None, probabilities will not be altered when stored. max_mem - The amount of memory (in bytes) that workers are allowed to use. A string - (e.g. 100MB) can also be used. + Deprecated and no longer used. Memory is managed by Dask. pack Whether or not to optimize variable representations by removing unnecessary dimensions and elements. This includes storing 2 genotypes instead of 3, omitting @@ -478,8 +462,7 @@ def rechunk_bgen( the above are restored in the resulting Dataset at the expense of extra computations on read. tempdir - Temporary directory where intermediate files are stored. The default None means - use the system default temporary directory. + Deprecated and no longer used. No intermediate store is created. Warnings -------- @@ -493,10 +476,17 @@ def rechunk_bgen( The rechunked dataset. """ warnings.warn( - "Using rechunker for rechunking in sgkit is deprecated, please use the the Xarray 'chunk' function directly.", + "rechunk_bgen is deprecated, please use Xarray 'chunk' and sgkit.save_dataset directly.", DeprecationWarning, stacklevel=2, ) + if max_mem != "4GB" or tempdir is not None: + warnings.warn( + "max_mem and tempdir no longer control BGEN rechunking; " + "memory is managed by Dask and no intermediate store is created.", + FutureWarning, + stacklevel=2, + ) if isinstance(output, Path): output = str(output) @@ -514,28 +504,8 @@ def rechunk_bgen( compressor=compressor, probability_dtype=probability_dtype, ) - target_chunks = { - var: encoding[var]["chunks"] for var in encoding if "chunks" in encoding[var] - } - target_options = { - var: {k: v for k, v in encoding[var].items() if k != "chunks"} - for var in encoding - } - with tempfile.TemporaryDirectory( - prefix="bgen_to_zarr_", suffix=".zarr", dir=tempdir - ) as tmpdir: - rechunked = rechunker_api.rechunk( - ds, - max_mem=max_mem, - target_chunks=target_chunks, - target_store=output, - target_options=target_options, - temp_store=tmpdir, - executor="dask", - ) - rechunked.execute() - - zarr.consolidate_metadata(output) + ds = ds.chunk({"variants": chunk_length, "samples": chunk_width}) + ds.to_zarr(output, encoding=encoding, zarr_format=2, consolidated=True, mode="w-") ds = xr.open_zarr(output, concat_characters=False) # type: ignore[no-untyped-call] if pack: @@ -546,7 +516,7 @@ def rechunk_bgen( def bgen_to_zarr( input: PathType, - output: Union[PathType, MutableMapping[str, bytes]], + output: StoreLike, region: Optional[Mapping[Hashable, Any]] = None, chunk_length: int = 10_000, chunk_width: int = 1_000, @@ -590,8 +560,7 @@ def bgen_to_zarr( Setting this parameter results in a loss of precision. If None, probabilities will not be altered when stored. max_mem - The amount of memory (in bytes) that workers are allowed to use. A string - (e.g. 100MB) can also be used. + Deprecated and no longer used. Memory is managed by Dask. pack Whether or not to optimize variable representations by removing unnecessary dimensions and elements. This includes storing 2 genotypes instead of 3, omitting @@ -599,8 +568,7 @@ def bgen_to_zarr( the above are restored in the resulting Dataset at the expense of extra computations on read. tempdir - Temporary directory where intermediate files are stored. The default None means - use the system default temporary directory. + Deprecated and no longer used. No intermediate store is created. Warnings -------- diff --git a/sgkit/io/dataset.py b/sgkit/io/dataset.py index 4f5226168..514007202 100644 --- a/sgkit/io/dataset.py +++ b/sgkit/io/dataset.py @@ -1,16 +1,14 @@ -from typing import Any, Dict, MutableMapping, Optional, Union +from typing import Any, Dict, Optional import numcodecs import xarray as xr from xarray import Dataset - -from sgkit.typing import PathType -from sgkit.utils import has_keyword +from zarr.storage import StoreLike def save_dataset( ds: Dataset, - store: Union[PathType, MutableMapping[str, bytes]], + store: StoreLike, storage_options: Optional[Dict[str, str]] = None, auto_rechunk: Optional[bool] = None, zarr_format: int = 2, @@ -32,6 +30,9 @@ def save_dataset( auto_rechunk: If True, automatically rechunk the dataset to uniform chunks before saving, if necessary. This is required for Zarr, but can be expensive. Defaults to False. + zarr_format: + On-disk Zarr format, either 2 or 3. Defaults to 2 for compatibility with + existing datasets, even though sgkit requires Zarr Python 3. kwargs Additional arguments to pass to :meth:`xarray.Dataset.to_zarr`. """ @@ -41,13 +42,14 @@ def save_dataset( # Workaround for https://github.com/pydata/xarray/issues/4380 ds[v].encoding.pop("chunks", None) - # Remove VLenUTF8 from filters to avoid double encoding error https://github.com/pydata/xarray/issues/3476 - filters = ds[v].encoding.get("filters", None) - var_len_str_codec = numcodecs.VLenUTF8() - if filters is not None and var_len_str_codec in filters: - filters = list(filters) - filters.remove(var_len_str_codec) - ds[v].encoding["filters"] = filters + # Xarray writes native NumPy strings as fixed-width Unicode in format 2. + # A VLenUTF8 filter inherited from a variable-length array is then invalid. + dtype = ds[v].encoding.get("dtype", ds[v].dtype) + filters = ds[v].encoding.get("filters") + if getattr(dtype, "kind", None) == "T" and filters is not None: + ds[v].encoding["filters"] = [ + f for f in filters if f != numcodecs.VLenUTF8() + ] if auto_rechunk: # This logic for checking if rechunking is necessary is @@ -66,9 +68,9 @@ def save_dataset( # Catch unequal chunking errors to provide a more helpful error message try: - if has_keyword(ds.to_zarr, "zarr_format"): # from xarray v2024.10.0 - kwargs["zarr_format"] = zarr_format - ds.to_zarr(store, storage_options=storage_options, **kwargs) + ds.to_zarr( + store, storage_options=storage_options, zarr_format=zarr_format, **kwargs + ) except ValueError as e: if "Zarr requires uniform chunk sizes" in str( e @@ -82,7 +84,7 @@ def save_dataset( def load_dataset( - store: Union[PathType, MutableMapping[str, bytes]], + store: StoreLike, storage_options: Optional[Dict[str, str]] = None, **kwargs: Any, ) -> Dataset: diff --git a/sgkit/io/plink/plink_reader.py b/sgkit/io/plink/plink_reader.py index b6da1c012..63d6d5ee1 100644 --- a/sgkit/io/plink/plink_reader.py +++ b/sgkit/io/plink/plink_reader.py @@ -1,6 +1,6 @@ """PLINK 1.9 reader implementation""" from pathlib import Path -from typing import Any, Dict, List, MutableMapping, Optional, Tuple, Union +from typing import Any, Dict, List, Optional, Tuple, Union import dask import dask.array as da @@ -9,6 +9,7 @@ from bed_reader import open_bed from dask.dataframe import DataFrame from xarray import Dataset +from zarr.storage import StoreLike from sgkit import create_genotype_call_dataset, save_dataset from sgkit.io.utils import dataframe_to_dict @@ -317,7 +318,7 @@ def plink_to_zarr( bed_path: Optional[PathType] = None, bim_path: Optional[PathType] = None, fam_path: Optional[PathType] = None, - output: Union[PathType, MutableMapping[str, bytes]], + output: StoreLike, chunks: Union[str, int, tuple] = "auto", fam_sep: str = " ", bim_sep: str = "\t", diff --git a/sgkit/io/plink/plink_writer.py b/sgkit/io/plink/plink_writer.py index 42939b492..6c380b930 100644 --- a/sgkit/io/plink/plink_writer.py +++ b/sgkit/io/plink/plink_writer.py @@ -1,8 +1,9 @@ -from typing import MutableMapping, Optional, Union +from typing import Optional import numpy as np from bed_reader import to_bed from xarray import Dataset +from zarr.storage import StoreLike from sgkit import load_dataset from sgkit.accelerate import numba_guvectorize @@ -137,7 +138,7 @@ def write_plink( def zarr_to_plink( - input: Union[PathType, MutableMapping[str, bytes]], + input: StoreLike, *, path: Optional[PathType] = None, bed_path: Optional[PathType] = None, diff --git a/sgkit/tests/io/bgen/test_bgen_reader.py b/sgkit/tests/io/bgen/test_bgen_reader.py index be8c2bb57..428014cda 100644 --- a/sgkit/tests/io/bgen/test_bgen_reader.py +++ b/sgkit/tests/io/bgen/test_bgen_reader.py @@ -1,16 +1,13 @@ from pathlib import Path from typing import Any, Tuple +import numcodecs import numpy as np import numpy.testing as npt import pytest import xarray as xr import zarr -from packaging.version import Version - -pytestmark = pytest.mark.skipif( - Version(zarr.__version__).major >= 3, reason="Rechunking fails for Zarr Python 3" -) +from zarr.storage import MemoryStore from sgkit.io.bgen.bgen_reader import ( GT_DATA_VARS, @@ -230,6 +227,26 @@ def test_rechunk_bgen__target_chunks(shared_datadir, tmp_path, target_chunks): ) for v in GT_DATA_VARS: assert dsr[v].data.chunksize[:2] == target_chunks + assert zarr.open_group(store, mode="r").metadata.zarr_format == 2 + + +@pytest.mark.parametrize("compressor", [None, numcodecs.Blosc(cname="zstd", clevel=7)]) +def test_rechunk_bgen__compressor(shared_datadir, tmp_path, compressor): + _, _, store = _rechunk_bgen(shared_datadir, tmp_path, compressor=compressor) + array = zarr.open_group(store, mode="r")["call_genotype_probability"] + assert array.compressors == (() if compressor is None else (compressor,)) + + +def test_rechunk_bgen__memory_store(shared_datadir): + ds = read_bgen(shared_datadir / "example.bgen") + store = MemoryStore() + dsr = rechunk_bgen(ds, store, probability_dtype=None, pack=False) + xr.testing.assert_allclose(ds.compute(), dsr.compute()) + + +def test_rechunk_bgen__legacy_memory_options(shared_datadir, tmp_path): + with pytest.warns(FutureWarning, match="max_mem and tempdir no longer control"): + _rechunk_bgen(shared_datadir, tmp_path, max_mem="1MB", tempdir=tmp_path) def test_rechunk_from_zarr__self_consistent(shared_datadir, tmp_path): diff --git a/sgkit/tests/io/test_dataset.py b/sgkit/tests/io/test_dataset.py index ce3ce6210..ba95c073d 100644 --- a/sgkit/tests/io/test_dataset.py +++ b/sgkit/tests/io/test_dataset.py @@ -1,10 +1,9 @@ -from typing import MutableMapping - +import numcodecs import pytest import xarray as xr import zarr -from packaging.version import Version from xarray import Dataset +from zarr.storage import MemoryStore from sgkit import load_dataset, save_dataset from sgkit.testing import simulate_genotype_call_dataset @@ -26,6 +25,7 @@ def test_save_and_load_dataset(tmp_path, is_path): path = str(path) ds = simulate_genotype_call_dataset(n_variant=10, n_sample=10) save_dataset(ds, path) + assert zarr.open_group(path, mode="r").metadata.zarr_format == 2 ds2 = load_dataset(path) assert_identical(ds, ds2) @@ -37,30 +37,64 @@ def test_save_and_load_dataset(tmp_path, is_path): assert_identical(ds, load_dataset(path2)) -def test_save_and_load_dataset__mutable_mapping(): - store: MutableMapping[str, bytes] = {} +@pytest.mark.parametrize("store_factory", [dict, MemoryStore]) +def test_save_and_load_dataset__memory_store(store_factory): + store = store_factory() ds = simulate_genotype_call_dataset(n_variant=10, n_sample=10) save_dataset(ds, store) ds2 = load_dataset(store) assert_identical(ds, ds2) # save and load again to test https://github.com/pydata/xarray/issues/4386 - store2: MutableMapping[str, bytes] = {} + store2 = store_factory() save_dataset(ds2, store2) assert_identical(ds, load_dataset(store2)) -def test_save_unequal_chunks_error(): +def test_save_and_load_dataset__format_3(tmp_path): + ds = xr.Dataset( + { + "value": ("variants", [0, 1, -1]), + "value_mask": ("variants", [False, False, True]), + } + ).chunk({"variants": 2}) + store = tmp_path / "ds.zarr" + save_dataset(ds, store, zarr_format=3, consolidated=False) + assert zarr.open_group(store, mode="r").metadata.zarr_format == 3 + assert_identical(ds, load_dataset(store, consolidated=False)) + + +@pytest.mark.parametrize("dtype", [object, "T"]) +def test_save_dataset__vlen_utf8_filter(dtype): + ds = xr.Dataset({"text": ("variants", ["a", "abc"])}).astype(dtype) + ds["text"].encoding["filters"] = [numcodecs.VLenUTF8()] + store = MemoryStore() + save_dataset(ds, store) + assert ds["text"].encoding["filters"] == ( + [] if dtype == "T" else [numcodecs.VLenUTF8()] + ) + xr.testing.assert_identical(ds, load_dataset(store)) + + +def test_save_dataset__invalid_encoding(): + ds = simulate_genotype_call_dataset(n_variant=10, n_sample=10) + with pytest.raises(ValueError, match="unexpected encoding parameters"): + save_dataset(ds, {}, encoding={"variant_position": {"invalid": True}}) + + +def test_save_unequal_chunks_error(tmp_path): # Make all dimensions the same size for ease of testing ds = simulate_genotype_call_dataset( n_variant=10, n_sample=10, n_ploidy=10, n_allele=10, n_contig=10 ) # Normal zarr errors shouldn't be caught + store = tmp_path / "array.zarr" + zarr.create_array(store=store, shape=(1,), dtype="i1", zarr_format=2) with pytest.raises( (FileExistsError, ValueError), match="(path '' contains an array|is not empty|contains data)", ): - save_dataset(ds, {".zarray": ""}) + save_dataset(ds, store) # Make the dataset have unequal chunk sizes across all dimensions ds = ds.chunk({dim: (1, 3, 5, 1) for dim in ds.sizes}) @@ -79,16 +113,14 @@ def test_save_unequal_chunks_error(): save_dataset(ds, {}) -@pytest.mark.skipif( - Version(zarr.__version__).major >= 3, reason="Fails for Zarr Python 3" -) -def test_save_auto_rechunk(): +@pytest.mark.parametrize("chunks", [(1, 3, 5, 1), (4, 6)]) +def test_save_auto_rechunk(chunks): # Make all dimensions the same size for ease of testing ds = simulate_genotype_call_dataset( n_variant=10, n_sample=10, n_ploidy=10, n_allele=10, n_contig=10 ) # Make the dataset have unequal chunk sizes across all dimensions - ds = ds.chunk({dim: (1, 3, 5, 1) for dim in ds.sizes}) + ds = ds.chunk({dim: chunks for dim in ds.sizes}) # Default is to not rechunk with pytest.raises( diff --git a/sgkit/tests/io/test_vcf2zarr_compat.py b/sgkit/tests/io/test_vcf2zarr_compat.py index 7f185763e..be0b62b57 100644 --- a/sgkit/tests/io/test_vcf2zarr_compat.py +++ b/sgkit/tests/io/test_vcf2zarr_compat.py @@ -1,5 +1,6 @@ import numpy as np import pytest +import xarray as xr pytest.importorskip("bio2zarr") from bio2zarr import vcf @@ -15,7 +16,6 @@ from sgkit import load_dataset, save_dataset from sgkit.model import get_contigs, get_filters, num_contigs -from sgkit.tests.io.test_dataset import assert_identical @pytest.mark.filterwarnings("ignore::xarray.coding.variables.SerializationWarning") @@ -29,9 +29,10 @@ def test_vcf2zarr_compat(shared_datadir, tmp_path): variants_chunk_size=5, samples_chunk_size=2, worker_processes=0, + zarr_format=2, ) - ds = load_dataset(vcz_path) + ds = load_dataset(vcz_path, consolidated=False) assert_array_equal(ds["filter_id"], ["PASS", "s50", "q10"]) assert_array_equal(get_filters(ds), ["PASS", "s50", "q10"]) # utility function @@ -164,13 +165,13 @@ def test_vcf2zarr_compat(shared_datadir, tmp_path): ], ) assert ds["variant_allele"].chunks[0][0] == 5 - assert ds["variant_allele"].dtype == "O" + assert ds["variant_allele"].dtype.kind in ("O", "T") assert_array_equal( ds["variant_id"].values.tolist(), [sm, sm, "rs6054257", sm, "rs6040355", sm, "microsat1", sm, "rsTest"], ) assert ds["variant_id"].chunks[0][0] == 5 - assert ds["variant_id"].dtype == "O" + assert ds["variant_id"].dtype.kind in ("O", "T") assert_array_equal( ds["variant_id_mask"], [True, True, False, True, False, True, False, True, False], @@ -246,4 +247,11 @@ def test_vcf2zarr_compat(shared_datadir, tmp_path): # save and load again to test https://github.com/pydata/xarray/issues/3476 path2 = tmp_path / "ds2.zarr" save_dataset(ds, path2) - assert_identical(ds, load_dataset(path2)) + ds2 = load_dataset(path2) + xr.testing.assert_identical(ds, ds2) + for name in ds: + if ds[name].dtype.kind == "T": + # Recent Xarray writes NumPy StringDType as fixed-width Unicode. + assert ds2[name].dtype.kind in ("T", "U") + else: + assert ds[name].dtype == ds2[name].dtype diff --git a/sgkit/tests/test_association.py b/sgkit/tests/test_association.py index aad1bef19..4ccc8f4d9 100644 --- a/sgkit/tests/test_association.py +++ b/sgkit/tests/test_association.py @@ -8,11 +8,7 @@ import xarray as xr from pandas import DataFrame from xarray import Dataset - -try: - from zarr.storage import ZipStore # v3 -except ImportError: # pragma: no cover - from zarr import ZipStore +from zarr.storage import ZipStore import sgkit.distarray as da from sgkit.stats.association import ( diff --git a/sgkit/tests/test_regenie.py b/sgkit/tests/test_regenie.py index 76ad69abb..8b1c650ef 100644 --- a/sgkit/tests/test_regenie.py +++ b/sgkit/tests/test_regenie.py @@ -16,11 +16,7 @@ from hypothesis.strategies import data as st_data from pandas import DataFrame from xarray import Dataset - -try: - from zarr.storage import ZipStore # v3 -except ImportError: # pragma: no cover - from zarr import ZipStore +from zarr.storage import ZipStore from sgkit.stats.association import LinearRegressionResult, linear_regression from sgkit.stats.regenie import ( diff --git a/sgkit/utils.py b/sgkit/utils.py index f60db1f91..ee9bbfd3f 100644 --- a/sgkit/utils.py +++ b/sgkit/utils.py @@ -1,4 +1,3 @@ -import inspect import warnings from itertools import product from typing import Any, Callable, Hashable, List, Mapping, Optional, Set, Tuple, Union @@ -426,10 +425,3 @@ def smallest_numpy_int_dtype(value: int) -> Optional[DType]: if np.iinfo(dtype).min <= value <= np.iinfo(dtype).max: return dtype raise OverflowError(f"Value {value} cannot be stored in np.int64") - - -def has_keyword(func, keyword): - try: - return keyword in inspect.signature(func).parameters - except Exception: # pragma: no cover - return False diff --git a/uv.lock b/uv.lock index 170bddde4..cadff5fda 100644 --- a/uv.lock +++ b/uv.lock @@ -209,12 +209,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/46/c7/6b687cb0f83d2a51017d47953f2ee430ffad6fec2a8ebc964e0718a33eb1/appnope-1.0.0-py3-none-any.whl", hash = "sha256:6fe0c04218aab65c54c4ff81638cdbf848d89f5653b74d68638a137f200dd16e", size = 4158, upload-time = "2026-08-20T21:36:12.444Z" }, ] -[[package]] -name = "asciitree" -version = "0.3.3" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/2d/6a/885bc91484e1aa8f618f6f0228d76d0e67000b0fdd6090673b777e311913/asciitree-0.3.3.tar.gz", hash = "sha256:4aa4b9b649f85e3fcb343363d97564aa1fb62e249677f2e18a96765145cc0f6e", size = 3951, upload-time = "2016-09-05T19:10:42.681Z" } - [[package]] name = "asttokens" version = "3.0.2" @@ -297,22 +291,22 @@ wheels = [ [[package]] name = "bio2zarr" -version = "0.1.7" +version = "0.2.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "click" }, { name = "coloredlogs" }, { name = "humanfriendly" }, - { name = "numcodecs", extra = ["msgpack"] }, { name = "numpy" }, { name = "pandas" }, { name = "tabulate" }, { name = "tqdm" }, - { name = "zarr" }, + { name = "zarr", version = "3.1.6", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.12'" }, + { name = "zarr", version = "3.4.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.12'" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/8d/8f/9f79bfdde3dc98228dc0030bad8f668199c811111f5842bd3b3ff5c752d3/bio2zarr-0.1.7.tar.gz", hash = "sha256:237aa8af904bb29172a0cb8a525527d0ad8e5a855d214d8a5be29b39b4334b2c", size = 262655, upload-time = "2026-02-03T15:44:52.011Z" } +sdist = { url = "https://files.pythonhosted.org/packages/82/98/96c14b30e96c581362513ea29520efdf6cfa2b9f222deb0a87377ab2be33/bio2zarr-0.2.1.tar.gz", hash = "sha256:5bbab214c7b12ec99459e9e08a7575f21bc5415b31d6385cf80a7ff55e097b63", size = 405736, upload-time = "2026-06-04T11:20:04.196Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/9c/34/b827ccb81a4ed1a4e90cd968dfa94efc339b9e32dc354602a302d199a935/bio2zarr-0.1.7-py3-none-any.whl", hash = "sha256:95eabaada6a2fae02c4c2ea52fb7e4684de3b45bc3b521a13855353a8e50d1c6", size = 61768, upload-time = "2026-02-03T15:44:50.564Z" }, + { url = "https://files.pythonhosted.org/packages/11/2e/d69c09b3727630169361827a9cd7ef10aae7a9edfc91ae01c8ba6f474e51/bio2zarr-0.2.1-py3-none-any.whl", hash = "sha256:989d993fef83d64a8eff54770625601a4a4108f86149fc7a7bfbbd6b6e2af010", size = 63715, upload-time = "2026-06-04T11:20:02.904Z" }, ] [package.optional-dependencies] @@ -320,57 +314,6 @@ vcf = [ { name = "cyvcf2" }, ] -[[package]] -name = "bokeh" -version = "3.9.2" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version < '3.12' and sys_platform == 'darwin'", - "python_full_version < '3.12' and sys_platform != 'darwin'", -] -dependencies = [ - { name = "contourpy" }, - { name = "jinja2" }, - { name = "narwhals" }, - { name = "numpy" }, - { name = "packaging" }, - { name = "pillow" }, - { name = "pyyaml" }, - { name = "tornado", marker = "sys_platform != 'emscripten'" }, - { name = "xyzservices" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/dd/6f/262b649ad2fdd5ed23341452eebfa669a73b0e0c739a369204d02ee2e201/bokeh-3.9.2.tar.gz", hash = "sha256:5be30d105b329d7d2ab1cb92f51e6bd44e23f0fe21ab8d49594b220b2ab11632", size = 5751825, upload-time = "2026-07-25T16:57:56.207Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ca/0c/06a99ee998b1babf95074376cbf6ede5a86af726b12cbf47c4b84fa2803a/bokeh-3.9.2-py3-none-any.whl", hash = "sha256:448e07d5ee78231f5bdece3be020024bb98696c0d6b127e0e2df0b8ba8fa9765", size = 6409477, upload-time = "2026-07-25T16:57:54.62Z" }, -] - -[[package]] -name = "bokeh" -version = "3.10.0" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14' and sys_platform == 'darwin'", - "python_full_version >= '3.14' and sys_platform != 'darwin'", - "python_full_version == '3.13.*' and sys_platform == 'darwin'", - "python_full_version == '3.13.*' and sys_platform != 'darwin'", - "python_full_version == '3.12.*' and sys_platform == 'darwin'", - "python_full_version == '3.12.*' and sys_platform != 'darwin'", -] -dependencies = [ - { name = "jinja2" }, - { name = "narwhals" }, - { name = "numpy" }, - { name = "packaging" }, - { name = "pillow" }, - { name = "pyyaml" }, - { name = "tornado", marker = "sys_platform != 'emscripten'" }, - { name = "xyzservices" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/4c/e8/93d270023eb987348f9b5a2aef0103f903511b934519cd2bbefde451868d/bokeh-3.10.0.tar.gz", hash = "sha256:73f0b0c06d7925ca2b6d52b2dc51c2533a11f667cc6944f1f06c039ccc57c5ce", size = 5982193, upload-time = "2026-08-18T17:47:09.943Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/c5/0a/1423bb61b5f06376fe6ccf79c8781e2bb5e36c78c1814c78913b7425950f/bokeh-3.10.0-py3-none-any.whl", hash = "sha256:6bb8dbd4a555f71a921be5bd45c3bfaa15b390257fbadae76901927bd58629b7", size = 6649702, upload-time = "2026-08-18T17:47:07.287Z" }, -] - [[package]] name = "callee" version = "0.3.1" @@ -1036,11 +979,6 @@ dataframe = [ { name = "numpy" }, { name = "pandas" }, ] -diagnostics = [ - { name = "bokeh", version = "3.9.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.12'" }, - { name = "bokeh", version = "3.10.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.12'" }, - { name = "jinja2" }, -] [[package]] name = "dask-expr" @@ -1125,21 +1063,24 @@ wheels = [ ] [[package]] -name = "executing" -version = "2.2.1" +name = "donfig" +version = "0.8.1.post1" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/cc/28/c14e053b6762b1044f34a13aab6859bbf40456d37d23aa286ac24cfd9a5d/executing-2.2.1.tar.gz", hash = "sha256:3632cc370565f6648cc328b32435bd120a1e4ebb20c77e3fdde9a13cd1e533c4", size = 1129488, upload-time = "2025-09-01T09:48:10.866Z" } +dependencies = [ + { name = "pyyaml" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/25/71/80cc718ff6d7abfbabacb1f57aaa42e9c1552bfdd01e64ddd704e4a03638/donfig-0.8.1.post1.tar.gz", hash = "sha256:3bef3413a4c1c601b585e8d297256d0c1470ea012afa6e8461dc28bfb7c23f52", size = 19506, upload-time = "2024-05-23T14:14:31.513Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl", hash = "sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017", size = 28317, upload-time = "2025-09-01T09:48:08.5Z" }, + { url = "https://files.pythonhosted.org/packages/0c/d5/c5db1ea3394c6e1732fb3286b3bd878b59507a8f77d32a2cebda7d7b7cd4/donfig-0.8.1.post1-py3-none-any.whl", hash = "sha256:2a3175ce74a06109ff9307d90a230f81215cbac9a751f4d1c6194644b8204f9d", size = 21592, upload-time = "2024-05-23T14:13:55.283Z" }, ] [[package]] -name = "fasteners" -version = "0.20" +name = "executing" +version = "2.2.1" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/2d/18/7881a99ba5244bfc82f06017316ffe93217dbbbcfa52b887caa1d4f2a6d3/fasteners-0.20.tar.gz", hash = "sha256:55dce8792a41b56f727ba6e123fcaee77fd87e638a6863cec00007bfea84c8d8", size = 25087, upload-time = "2025-08-11T10:19:37.785Z" } +sdist = { url = "https://files.pythonhosted.org/packages/cc/28/c14e053b6762b1044f34a13aab6859bbf40456d37d23aa286ac24cfd9a5d/executing-2.2.1.tar.gz", hash = "sha256:3632cc370565f6648cc328b32435bd120a1e4ebb20c77e3fdde9a13cd1e533c4", size = 1129488, upload-time = "2025-09-01T09:48:10.866Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/51/ac/e5d886f892666d2d1e5cb8c1a41146e1d79ae8896477b1153a21711d3b44/fasteners-0.20-py3-none-any.whl", hash = "sha256:9422c40d1e350e4259f509fb2e608d6bc43c0136f79a00db1b49046029d0b3b7", size = 18702, upload-time = "2025-08-11T10:19:35.716Z" }, + { url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl", hash = "sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017", size = 28317, upload-time = "2025-09-01T09:48:08.5Z" }, ] [[package]] @@ -1367,6 +1308,39 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/fd/3c/6a2bf344106328fd04963664a60b9bb6496fc25df8e962fcdc1367285fb9/fsspec-2026.7.0-py3-none-any.whl", hash = "sha256:b57ddbafedfaef7018c1ecab32aa200a9d7ca26b77965f64e48b70061249d279", size = 206583, upload-time = "2026-07-28T16:34:49.538Z" }, ] +[[package]] +name = "google-crc32c" +version = "1.9.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/fa/25/9cb0c1c31c45b893eb8f11ae70b3f4309432d59b5acaebca5dbe791729a4/google_crc32c-1.9.0.tar.gz", hash = "sha256:7b8c84c3d159ab6817fe3f74e6e6cef099c3f95dcec3abc0d8afb1404642efbe", size = 14857, upload-time = "2026-09-24T21:39:32.067Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0e/55/a2f07f15e624f0de79359b1a6c1deb59ec5061bd3b38744b3b2849400662/google_crc32c-1.9.0-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:457d0d9a4718fd52b1494eac5c200ad25beeadbdc91843d550a003910838589f", size = 31958, upload-time = "2026-09-24T21:19:00.994Z" }, + { url = "https://files.pythonhosted.org/packages/f8/b3/923743597b774bbcf12a7c3e00e48d745e15fd616ad7489a40a63fff8f2f/google_crc32c-1.9.0-cp311-cp311-macosx_12_0_x86_64.whl", hash = "sha256:ccfe40021fd6afe23361175cf7551e3cef5fd34dc1ebe319f14993a83579e0eb", size = 31805, upload-time = "2026-09-24T21:22:25.019Z" }, + { url = "https://files.pythonhosted.org/packages/df/a6/4d0352fe889663e0d81cea7fc664ec9158727384de4a44ab10e9967a7682/google_crc32c-1.9.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:fbef61a3794e011c65fb4396a196cf123a7f474fe5a443db8e5dd7d751b9e6d4", size = 38119, upload-time = "2026-09-24T21:38:06.634Z" }, + { url = "https://files.pythonhosted.org/packages/aa/e3/26685384e4b66ff0928d9566ef6110a7df76029175a1842329d7e3515f10/google_crc32c-1.9.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:86764b99e7a607830d93cb5b75e0ec3ff6cb06d3c274624418473cee701900d4", size = 36677, upload-time = "2026-09-24T21:38:08.082Z" }, + { url = "https://files.pythonhosted.org/packages/cb/ce/4e90102e84880e97d3cf935f2672ecd29191bdeacf57f01740f92debda00/google_crc32c-1.9.0-cp311-cp311-win_amd64.whl", hash = "sha256:43a2dc26f9be213fbe0b4fc4a1088c5d45cbfcb3247420ccc820f0fc3edeea86", size = 35096, upload-time = "2026-09-24T21:39:28.201Z" }, + { url = "https://files.pythonhosted.org/packages/e4/5d/0730e1b3a14d054d1466f2fec88dadf978509c749a3d96d8b069cc56d38a/google_crc32c-1.9.0-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:53fdafef58e230d0c946ab5f8446d123d9f548230a73b29c8b41c9546f268bc1", size = 31961, upload-time = "2026-09-24T21:19:01.724Z" }, + { url = "https://files.pythonhosted.org/packages/dd/32/d085abaf2fd907121975b92245bb3480fb8be40c37d03f9d6c41857f84c3/google_crc32c-1.9.0-cp312-cp312-macosx_12_0_x86_64.whl", hash = "sha256:8b91f41645b15a720357183fa5716682ada441873e3c462c15f9714be36f146b", size = 31804, upload-time = "2026-09-24T21:22:25.81Z" }, + { url = "https://files.pythonhosted.org/packages/94/78/dd1935432337e5da7af391a6fc9f161c1c8e9b9002a402b9190135fe1b59/google_crc32c-1.9.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:16865b477d7941712cb0e0aad8ad4815e984fb5fc16d3fdaef7d986e26e53c95", size = 37775, upload-time = "2026-09-24T21:38:09.249Z" }, + { url = "https://files.pythonhosted.org/packages/9e/43/9db03635bb10188d93dcbab9baa2a8670a0da4e868b4370cdbd98d65fed8/google_crc32c-1.9.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:3abb18297d9ef0ab120531838be0e6d68c9fa876570e11c229c48f2edac23ce7", size = 36347, upload-time = "2026-09-24T21:38:10.141Z" }, + { url = "https://files.pythonhosted.org/packages/cf/eb/94dee516c846bd9382c3f566d8f8e5fb9e90599e45afeb697f9fc2533528/google_crc32c-1.9.0-cp312-cp312-win_amd64.whl", hash = "sha256:fb63a8d7fa2e95dcff1ca16af2f4d88b526fa5ff72d1696285884ac2d49b6963", size = 35097, upload-time = "2026-09-24T21:39:28.934Z" }, + { url = "https://files.pythonhosted.org/packages/3f/34/cb484e8b6174f130f8c6dc79c733a9dd8869b410ad6511fb6104c46b973a/google_crc32c-1.9.0-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:f1dc17d987ddcc5eba12a7ce48f0eb93141dea236b170c1101151396edf2f0cf", size = 31960, upload-time = "2026-09-24T21:19:02.454Z" }, + { url = "https://files.pythonhosted.org/packages/af/25/3e8e567bd48448e225ea27318ccf2b94e05124e7b8b97b13eaec9e127199/google_crc32c-1.9.0-cp313-cp313-macosx_12_0_x86_64.whl", hash = "sha256:f894a2877650b56201d26a012a257b76d54a68834dc3913a93830ca8a047b075", size = 31803, upload-time = "2026-09-24T21:22:27.008Z" }, + { url = "https://files.pythonhosted.org/packages/f0/18/bee0dd59ae622482dc6463636c79e4bde7c954d061c859c9256362c9931a/google_crc32c-1.9.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:4488f1553a9ab7e86cdedc833374a7e904031803b995dc0bd0be48c271fa6556", size = 37776, upload-time = "2026-09-24T21:38:11.056Z" }, + { url = "https://files.pythonhosted.org/packages/fd/b6/e76e80fed5f2558273c7839e622f98095c9b36c719c7147e38e3c055cb70/google_crc32c-1.9.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:0568b17ed90ac596f29400d99e243fd0cc6276766183def888d1bf8d1dc13827", size = 36350, upload-time = "2026-09-24T21:38:12.138Z" }, + { url = "https://files.pythonhosted.org/packages/87/34/165542bfa99dfef91a76471cc48cce74b8ff4e295722896087ab2b8e8611/google_crc32c-1.9.0-cp313-cp313-win_amd64.whl", hash = "sha256:8583ec21d56b565d68ab2963cc7e21b3b271247c29b04286068255ef65f221bd", size = 35090, upload-time = "2026-09-24T21:39:29.764Z" }, + { url = "https://files.pythonhosted.org/packages/8f/eb/43ea41f4061a1cad87b2b6559c98e960e45bf551fe66f83d833b98aaf0c9/google_crc32c-1.9.0-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:6a3b2c8a343c570ed8100a7627c20badfd92c6caa2067093a86be45af27f5b1b", size = 31963, upload-time = "2026-09-24T21:19:03.208Z" }, + { url = "https://files.pythonhosted.org/packages/45/d2/a968c0c29ccd2b0c980ff4f9e3f7035cee28c23a1c57541825cc8221858c/google_crc32c-1.9.0-cp314-cp314-macosx_12_0_x86_64.whl", hash = "sha256:13179f7e3282617923e957b8e54b8f9c3968030f48640a9f47fd7c5c38c4a215", size = 31805, upload-time = "2026-09-24T21:22:27.917Z" }, + { url = "https://files.pythonhosted.org/packages/03/73/388e493d6c3e252e37165d22efe5a1361f872a24425391b999822861b23a/google_crc32c-1.9.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:265233aff33d835f5b909584fe36ab29647b598c271b661a300001099109e53e", size = 37925, upload-time = "2026-09-24T21:38:13.32Z" }, + { url = "https://files.pythonhosted.org/packages/98/36/190d32caa363ef25d685f422ed1bbf93ff1140fb22fd4d90f24cec209977/google_crc32c-1.9.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:dee799544cae42a42b17a88e38b59cf2c271051dc001da2117a8ff240ffa0548", size = 36495, upload-time = "2026-09-24T21:38:14.211Z" }, + { url = "https://files.pythonhosted.org/packages/d3/fd/81cefea6adae7bd92abb23d4567d199f6485a20ec0a305ca5fa04c52b9c5/google_crc32c-1.9.0-cp314-cp314-win_amd64.whl", hash = "sha256:af73200fa9791ccd380f3598235dba8d82b8af0905df045b3dc60b59836e8ddd", size = 35535, upload-time = "2026-09-24T21:39:30.52Z" }, + { url = "https://files.pythonhosted.org/packages/c5/18/19d4f17f3f33f8fdffcb3e1e69219d6f7ec2c359c160867b04dac1d0a64d/google_crc32c-1.9.0-cp315-cp315-macosx_12_0_arm64.whl", hash = "sha256:e6e8be8a94436079cb5340f6d495d9d7ba30124d8b952703994c739c7c06e236", size = 31977, upload-time = "2026-09-24T21:19:03.976Z" }, + { url = "https://files.pythonhosted.org/packages/81/b4/8010372c4b46f2ee2352dfdb630c397570cd85522a315df024ad2f9459aa/google_crc32c-1.9.0-cp315-cp315-macosx_12_0_x86_64.whl", hash = "sha256:f2b64641bca27497b986b9d87883014035aa904cb4fa333407c6752b3afee9ba", size = 31809, upload-time = "2026-09-24T21:22:29.1Z" }, + { url = "https://files.pythonhosted.org/packages/c5/f8/7e33845d6b90ce1cf37cfabf25cb859277c7d3533ef1b6b1e1ca58581549/google_crc32c-1.9.0-cp315-cp315-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:f97c3806dcea41c29c04965347b0e12481561b75e0045dc7a4f69d75dec5d9b1", size = 38359, upload-time = "2026-09-24T21:38:14.983Z" }, + { url = "https://files.pythonhosted.org/packages/36/ff/556b2423f449a7515af6b8222a4d7833cbe09ff3e8d2f0b80471f5f6d02e/google_crc32c-1.9.0-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:0abe7e202c25909869c35672ab0f2fe748a7acf276eb78577332a7c38999740f", size = 36858, upload-time = "2026-09-24T21:38:15.799Z" }, + { url = "https://files.pythonhosted.org/packages/40/71/4733f1b7c921d04a2bb9b9916cf66498bf7ad0860a06289413830da83192/google_crc32c-1.9.0-cp315-cp315-win_amd64.whl", hash = "sha256:5695c8b9327e040b2aba12c6659b0acb5995314ef0af0192da66e662e011103b", size = 35534, upload-time = "2026-09-24T21:39:31.337Z" }, +] + [[package]] name = "graphviz" version = "0.21" @@ -2336,67 +2310,82 @@ wheels = [ ] [[package]] -name = "msgpack" -version = "1.2.2" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/6d/44/ea2100ec54d30c46ee9dba10a3bfb79b655e96c6df237238a3234c75869b/msgpack-1.2.2.tar.gz", hash = "sha256:9eb0b0e602064527a045ea28c4f174ed69383587e29cebe28947e3b84106eb2a", size = 187025, upload-time = "2026-08-27T10:03:47.793Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/53/fd/a05ba8f84c5951c9aec2a19c1c81f6c4a67b8bec80af604ac5b23ccfa019/msgpack-1.2.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9d7fb25b4442fae0cb2590272d06ab4f6caa526ee36a994edb81e946b874813e", size = 83498, upload-time = "2026-08-27T10:01:50.62Z" }, - { url = "https://files.pythonhosted.org/packages/0f/df/e20bcf5c149890545334743b212eb4b82e1a25fe0a34f99753a1755bfab5/msgpack-1.2.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7fe374ba76eb0ecca13a1703daa8fa85825a6ddddbb52d4c1a732fa524194683", size = 83896, upload-time = "2026-08-27T10:01:51.898Z" }, - { url = "https://files.pythonhosted.org/packages/ac/c3/00dcd902d66a641b9ba350783feb482ea5c1ca4a7ff6629db0c10c0ea982/msgpack-1.2.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b9b0c1f2aa7b0026b4bd50718100e8b04175e4f36e160aa852502377b5e572e7", size = 413259, upload-time = "2026-08-27T10:01:53.296Z" }, - { url = "https://files.pythonhosted.org/packages/93/15/17374efe9793f5332c7d4727ab40539f95a1dc9df653531795daca8c4281/msgpack-1.2.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f11e09f10210a91c169e39c7a5a1f9090eaa73ad75555fafad5023c3053c47ba", size = 422907, upload-time = "2026-08-27T10:01:54.786Z" }, - { url = "https://files.pythonhosted.org/packages/d3/af/2b567d684f912fedcefe3f7c37de604716ffa99336bd432688f9f040df92/msgpack-1.2.2-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:8b1415d02e9bf722672af8a90f90813265a0cd0b14163187261e54a5592bc949", size = 389248, upload-time = "2026-08-27T10:01:56.55Z" }, - { url = "https://files.pythonhosted.org/packages/2a/fd/d8533fed473cc3e309a701e851d0e5fe36ada5552a3899025f5c69fbe877/msgpack-1.2.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:42fd9260416885b4815caca5bdd14dfd5dda6cdade732d6c09104ef8f6228761", size = 407099, upload-time = "2026-08-27T10:01:58.357Z" }, - { url = "https://files.pythonhosted.org/packages/d6/1b/57906337bfee0ead554571dc203ea17c3fad26d51e5eca6271ecd983f73b/msgpack-1.2.2-cp311-cp311-musllinux_1_2_riscv64.whl", hash = "sha256:336525cc2688e43ea77dfb1a4ce012c8cde561835913801dbfcfdcf4111d8abb", size = 387201, upload-time = "2026-08-27T10:02:00.109Z" }, - { url = "https://files.pythonhosted.org/packages/de/0f/5d1e6d68e516621697a9262b24917d678793e838cf3f331ed4656b3e959d/msgpack-1.2.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:cdb6cc6e1127d15879c47a8b3270716243da82d3e7feab1f5946872c75b3d60f", size = 420765, upload-time = "2026-08-27T10:02:01.573Z" }, - { url = "https://files.pythonhosted.org/packages/31/78/90c15bebb1a72667349ca62d4507e9d9369e7f8f76b95f490b823d3622e5/msgpack-1.2.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:4a4348705be86e029d04e741cf9ed0dfe03e942d7d3b92e838fa80d3aa2c3ebc", size = 84275, upload-time = "2026-08-27T10:02:07.106Z" }, - { url = "https://files.pythonhosted.org/packages/88/88/c2b6d8e81571da87aa232c0e34a3f3a0e618e6235892065ec82d1d81fc7a/msgpack-1.2.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0a652ceeededf71d3fa40c303a02a149d42338d310162367b91c539d4bd6e0a3", size = 83970, upload-time = "2026-08-27T10:02:08.488Z" }, - { url = "https://files.pythonhosted.org/packages/da/c0/d3ede9f5d16acb4c05a9281859f1e99ef9f877a928eb78454c37f70db001/msgpack-1.2.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:90986cc9aab9d7d1d8f38bcbf65d3f7ac83bdd90c35765db7d691b4829698cba", size = 409401, upload-time = "2026-08-27T10:02:09.877Z" }, - { url = "https://files.pythonhosted.org/packages/41/f0/29f591bea185616cf417645ac03bd3ad9b317483ad8572160e325f7fe777/msgpack-1.2.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:77c2e018417dc1d66f235e383877ee885b60ade9d29e494dd581e08af2cb1923", size = 420619, upload-time = "2026-08-27T10:02:11.526Z" }, - { url = "https://files.pythonhosted.org/packages/4e/8e/c70c8c9180c5ddf4440eb8658ebead98e22e7686fbf84f6b165031430750/msgpack-1.2.2-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:0e91332144f69bc3018c91232fac26da580ef748fb8eaddd7914d4458001cc4f", size = 379747, upload-time = "2026-08-27T10:02:13.345Z" }, - { url = "https://files.pythonhosted.org/packages/50/9a/f10ce11fa62700c9ab87a22e65b9ca272f7f673ddd31aeb2de6ae272ad35/msgpack-1.2.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3e915d390d7068b257ca8b62f3fc59fad135c8631d1017ab03b0b924b07c5367", size = 398944, upload-time = "2026-08-27T10:02:15.006Z" }, - { url = "https://files.pythonhosted.org/packages/82/fe/d7be978456ff8552e69a8e270d882e7530e01513c096b293d83df03753ea/msgpack-1.2.2-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:c522420d78db2431887d45b518e304d86e27b9ad0b30f24e3806a6ad5d8bdbfc", size = 373979, upload-time = "2026-08-27T10:02:16.618Z" }, - { url = "https://files.pythonhosted.org/packages/be/af/91b0d8d3fb3063e259daee3ea8515cea6282f68f4b0e5f0b6fea25762c6e/msgpack-1.2.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:4b554d8164ebb526892194f71dcd96ef1fefe0c250087498785d3ffc04a80be3", size = 417781, upload-time = "2026-08-27T10:02:18.293Z" }, - { url = "https://files.pythonhosted.org/packages/1f/eb/42f31c5a48811787ff59a9869721f70a49654d65ab6c455f4463c39b044e/msgpack-1.2.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8b2a281b556f120a43e591ea39915741b7ad54d4727b9c4350a0a11692252533", size = 83911, upload-time = "2026-08-27T10:02:24.06Z" }, - { url = "https://files.pythonhosted.org/packages/33/54/10c6c16ddba8a5112e3680176b838e3694e4aad7284f9daa6d6d70d98817/msgpack-1.2.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1e8cdd1f3e7cc52c751092a9bf740e81e6919ab109cd376ae2d965dad0bbae34", size = 83734, upload-time = "2026-08-27T10:02:25.613Z" }, - { url = "https://files.pythonhosted.org/packages/d7/75/35823e4419df8792191b2a17ae3fe71b41d02c162b2c491c94d1a87f0caa/msgpack-1.2.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1814f92306ae7862908e9ece7cfd90e0dc87ded3e89b6ae7ffdd1175d6376fdc", size = 405635, upload-time = "2026-08-27T10:02:27.012Z" }, - { url = "https://files.pythonhosted.org/packages/6e/d3/6592e4064619b04f2dd0054c5fa13e37e3d55eb26044483d871fadb2f46b/msgpack-1.2.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d24b38a825bcca41bb956de50eb98451ef291304a8607fad99e619043d3e79b9", size = 417332, upload-time = "2026-08-27T10:02:28.776Z" }, - { url = "https://files.pythonhosted.org/packages/e3/a1/b21c6818a545e9a4a976ac954a5c250eecde9a02e0ec82f415473dab1324/msgpack-1.2.2-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:34e83e345194a2a51d8bd447dea9de2104f91e75b247f4735f14f04529f0746b", size = 374378, upload-time = "2026-08-27T10:02:30.678Z" }, - { url = "https://files.pythonhosted.org/packages/03/8b/7ada15c7b64151d6dbb562d1b091520efb2c37acf2403b1d4ae13797b27d/msgpack-1.2.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:682804bf31e43d46e51a9a33bd575b51e839d715ce6bd5612c055f7b28ad637b", size = 395809, upload-time = "2026-08-27T10:02:32.322Z" }, - { url = "https://files.pythonhosted.org/packages/bb/f7/96283e50f7020df4dfeacc55612b7a210c8cdf0dda48bc262f1f9b3e4c49/msgpack-1.2.2-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:9b659d77f8726fa5e7038967dda6b68d53cf34472c094cfa5b845454713b90d5", size = 373495, upload-time = "2026-08-27T10:02:33.832Z" }, - { url = "https://files.pythonhosted.org/packages/cc/fe/1548dede9d9ca482f2d424a2e110a9705d4e02627a16b8bc8d10ce0208a2/msgpack-1.2.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4d9a562aec0a92fe536da2e533d313b3d2a6b929157b1dec7ff623446dc0a8ab", size = 414360, upload-time = "2026-08-27T10:02:35.396Z" }, - { url = "https://files.pythonhosted.org/packages/5e/50/3e92c403346652cabd08cb8faceef847bae917ea3b3c81b64a5b6d09ed41/msgpack-1.2.2-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:e497ee34e8a3342bbde51b27c22d8db05a651df3361dd3daef5b3ab0d66f3e04", size = 84315, upload-time = "2026-08-27T10:02:41.181Z" }, - { url = "https://files.pythonhosted.org/packages/b6/dc/8efe6dd96a12ab043930cb4cffb40b6e7f061491d6ec7a3d2b75ef1fda42/msgpack-1.2.2-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:0dd9173c5ebaf5ecc5ca86e7ae1db92934e1d57b856f3dd90698941431f4fd77", size = 84634, upload-time = "2026-08-27T10:02:42.621Z" }, - { url = "https://files.pythonhosted.org/packages/1b/89/996573095bf7b038c04dd65ddbc4f1a4d381b0f7a44ff9186f3c7b8325c2/msgpack-1.2.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8dc4487097571f7311188c3eca2a3e86cd1f1db4c37c7a017bcc3fd38486cbfe", size = 404194, upload-time = "2026-08-27T10:02:44.096Z" }, - { url = "https://files.pythonhosted.org/packages/b6/4e/46f5a5d949dbd054dab60cb15aac7ac6ae6774c134532893414689bf2f53/msgpack-1.2.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:73b0e05c32c3cfc3cd84994908e57430c0ebc6813abf905d3f18ff115d54df3f", size = 412343, upload-time = "2026-08-27T10:02:45.747Z" }, - { url = "https://files.pythonhosted.org/packages/da/e8/739a94197358a313307e6e9e7d8d22ef66add39222de911a44161aa96920/msgpack-1.2.2-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:aa1120c653b76d8eafa50423b5eba06b5c9737f8692c74fa3afe03e84b8978ea", size = 372620, upload-time = "2026-08-27T10:02:47.578Z" }, - { url = "https://files.pythonhosted.org/packages/03/d4/09b92e1fcdccea9466bfae45455367ac52362ae445d96a602e51b7a8df73/msgpack-1.2.2-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:ccfd880988f8438d1c91c77d7edc58e70f4d2012e999167bc154c64c6f06ea6b", size = 394603, upload-time = "2026-08-27T10:02:49.172Z" }, - { url = "https://files.pythonhosted.org/packages/47/db/d11bd6f258a60703dcdc7a3772818ad0c2f602ee4c2acfb24088c6c3ebc3/msgpack-1.2.2-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:6195257a107bf25872ef84aab7295078271eea3ac6413f0506b631f6c9586ed5", size = 372666, upload-time = "2026-08-27T10:02:50.886Z" }, - { url = "https://files.pythonhosted.org/packages/71/cf/fbbbac0c6e5fbb9d51abc23e3b5fe8620f5c01e0588797cf664a623bb9e1/msgpack-1.2.2-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:b8dd6c71d20c28d2d0eb0c51e7cccf3584afde3b1364f6629596186c9025bd54", size = 410889, upload-time = "2026-08-27T10:02:52.51Z" }, - { url = "https://files.pythonhosted.org/packages/64/58/7e764b957bae80ae281a9cb28761068c8bae8d5c6ac0873e43cc69d176c7/msgpack-1.2.2-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:f466049b8e1ec0854287bbe9a074316826fe0e08dcf707245f98b1ae49e92650", size = 86594, upload-time = "2026-08-27T10:02:57.796Z" }, - { url = "https://files.pythonhosted.org/packages/ae/f0/250f5985b6ee533e60d357571a808aaae03c54118294dc3db7158e27feb1/msgpack-1.2.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1f6b6f8deb07d49090e1808c6ef9cb7d23ca17bef3aa6ed3e5e03df16606e60c", size = 87374, upload-time = "2026-08-27T10:02:59.256Z" }, - { url = "https://files.pythonhosted.org/packages/bd/2c/126ec8f187877c5f688631c543d1d3a3d75b2e66b83fb9de3ed7c13a39b6/msgpack-1.2.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b542ffc0a5c531eedc40419f291f1bd659aa8d4223408a5b51c88a2796083fd3", size = 428157, upload-time = "2026-08-27T10:03:00.9Z" }, - { url = "https://files.pythonhosted.org/packages/95/21/d2d81d50aaedb14147d01f22094185794db3ad8a8791b60afacba0627c89/msgpack-1.2.2-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7d095df2627e5dd59ac7b0c5ad627a671c76e6020171e03cbe4621a61f0562c3", size = 426669, upload-time = "2026-08-27T10:03:02.457Z" }, - { url = "https://files.pythonhosted.org/packages/c6/fc/f7d484ee5b572719608e7ffad569bea22ff11309a96ca2fae85eec94226b/msgpack-1.2.2-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:ffdd2f4950daf7815490f23087963e3420175b9609520b7ff5df64d351159c22", size = 380625, upload-time = "2026-08-27T10:03:04.244Z" }, - { url = "https://files.pythonhosted.org/packages/0a/c4/b924cbd5516676f4e612329f18602a833bd055ffbe27f808eeba0f01bfea/msgpack-1.2.2-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:652d1bf13d01bac8fd569def0fe76745e55bcda01e30aa6332d5947ea3788839", size = 411328, upload-time = "2026-08-27T10:03:05.869Z" }, - { url = "https://files.pythonhosted.org/packages/27/9d/0c1d9683a951a80f270c3b7dac1022c18b9307617344dd44d904135d5e12/msgpack-1.2.2-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:9bf452ff4d4981f25a18e9476e002bcc9263e7928024aa4d7148e25f7be3f929", size = 377892, upload-time = "2026-08-27T10:03:07.37Z" }, - { url = "https://files.pythonhosted.org/packages/06/bb/bf22338cdd22e0b40c8f28468cea5f3d9c320244c095d8303364bc012c41/msgpack-1.2.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:55faa6f8395e23b848c535ad5dcb96b3462f37f5e7f4ac500d500434f7345da7", size = 419426, upload-time = "2026-08-27T10:03:09Z" }, - { url = "https://files.pythonhosted.org/packages/3b/92/4b44bc8f3243ef8cf9cb5368c17a299d45b9df858f6dfdd98a0482dbbb37/msgpack-1.2.2-cp315-cp315-macosx_10_15_x86_64.whl", hash = "sha256:e1b99ad34613d5f8477fa5cf99bc4eaeaf27965588007c102370cd9a78fe9de5", size = 84293, upload-time = "2026-08-27T10:03:14.718Z" }, - { url = "https://files.pythonhosted.org/packages/80/05/c992bb65744665a41b5bf531fc0e1619bae0901f57738228ded90023c151/msgpack-1.2.2-cp315-cp315-macosx_11_0_arm64.whl", hash = "sha256:0fbc1bed8a535389b41882cfae66376e248cd1680eaa94fd83193c73e1d24986", size = 84490, upload-time = "2026-08-27T10:03:16.12Z" }, - { url = "https://files.pythonhosted.org/packages/d7/bf/7f53b9e6709a4df7f9b9b81dc65f9dfaa32caf65bee94986ec2cb8fa07f1/msgpack-1.2.2-cp315-cp315-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:06d95f61de7afe4f4ff908a6feebfcb070d0582ac87c9cf3cedf8551cf634516", size = 405332, upload-time = "2026-08-27T10:03:17.692Z" }, - { url = "https://files.pythonhosted.org/packages/d2/5a/305c4dca14b50d0b51fb88ef04ec125b8f0be3e2ce730dcc62dbaa651cc5/msgpack-1.2.2-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b5c696ae7cd7166b3657261adb855b461ff31f07823fdbae9de8bf80adfccc21", size = 416798, upload-time = "2026-08-27T10:03:19.389Z" }, - { url = "https://files.pythonhosted.org/packages/7a/df/a645102b4cdfd9a94201cac4e900e9c1429fc16d86aa311c06eef82528c9/msgpack-1.2.2-cp315-cp315-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:0708afbf6a9587f0bfe479a9825c141d14d91e2f6a5c8103cf28bc96f4edb5d9", size = 377312, upload-time = "2026-08-27T10:03:20.928Z" }, - { url = "https://files.pythonhosted.org/packages/f4/26/c56d8d086d3fb1077bb48092b158b5ea2eee08b279e10c191275f13bc980/msgpack-1.2.2-cp315-cp315-musllinux_1_2_aarch64.whl", hash = "sha256:226a62ffe99fe54c5c61d910ec64c3449b7766c3280bd286bf6c94838dde239a", size = 395182, upload-time = "2026-08-27T10:03:22.571Z" }, - { url = "https://files.pythonhosted.org/packages/4d/b5/3d46ba367a565e536d8d2a61eebcee71b1dc803da3ce74a22313b573d6fa/msgpack-1.2.2-cp315-cp315-musllinux_1_2_riscv64.whl", hash = "sha256:9fd7f32e2f0fb334e7ecc5adb5cf0458785bd3a9d9d86f950e1715f101cebce5", size = 377945, upload-time = "2026-08-27T10:03:24.151Z" }, - { url = "https://files.pythonhosted.org/packages/a5/2c/d5d2df273ed5306357da25b69400fd8d7a53c4d87d8976604b677484d61c/msgpack-1.2.2-cp315-cp315-musllinux_1_2_x86_64.whl", hash = "sha256:9db1ba1c1e6a84245a9dd866265b56b8a1e9461549cc72ed296d8cbfbd32961b", size = 413341, upload-time = "2026-08-27T10:03:25.85Z" }, - { url = "https://files.pythonhosted.org/packages/cd/20/12751ca0d8ec874701b54c392c2b19f51af8dd1de40a92a10e356f0aaf58/msgpack-1.2.2-cp315-cp315t-macosx_10_15_x86_64.whl", hash = "sha256:d886baa46b2532135e7320067e6a44edb09ba5883a6096b0f9c044533984b8a8", size = 86462, upload-time = "2026-08-27T10:03:31.348Z" }, - { url = "https://files.pythonhosted.org/packages/91/4c/cf6d12a3d709fe5f9771dd917c35e6ebcd55597a5b792287382fde056c95/msgpack-1.2.2-cp315-cp315t-macosx_11_0_arm64.whl", hash = "sha256:53679573c75cce5f82359e0bd4e6a97809a6b9a9b7a48fd1ba592f4a82cddc84", size = 87412, upload-time = "2026-08-27T10:03:32.74Z" }, - { url = "https://files.pythonhosted.org/packages/ca/0d/0aac5752d1708dcb458f8754db34a4999514db3df2d2b798b9381293f638/msgpack-1.2.2-cp315-cp315t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d3c247d457ae9079974c7ce3c665396754a6d2baff7eaa51332212a8a5a3f13b", size = 422057, upload-time = "2026-08-27T10:03:34.124Z" }, - { url = "https://files.pythonhosted.org/packages/81/30/70f281a3685b04aaf235a5237da11b978a02a865a5a479186205177ad676/msgpack-1.2.2-cp315-cp315t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:352ed831042549cca8be23780e1fe7c9177e65ff02bf183509c4b4d33f671782", size = 422696, upload-time = "2026-08-27T10:03:35.862Z" }, - { url = "https://files.pythonhosted.org/packages/8a/6d/f76e8425efb0aa38988cd778ae290bfa120491d80d26872d88bb52fedb3f/msgpack-1.2.2-cp315-cp315t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:f80361592c13d7226b4379c8941529b63fe1a9d0e05d2de8f3306b70e522b53f", size = 376495, upload-time = "2026-08-27T10:03:37.339Z" }, - { url = "https://files.pythonhosted.org/packages/95/77/0809aa9b52b2868f7d01862dc14073708f0440421a65197b48453480034c/msgpack-1.2.2-cp315-cp315t-musllinux_1_2_aarch64.whl", hash = "sha256:68df2947921d449f6dcfeafd86cb2cdde13327a8b447534bbe4ee5aaf32a5695", size = 404683, upload-time = "2026-08-27T10:03:38.87Z" }, - { url = "https://files.pythonhosted.org/packages/02/d2/4e5ac915ba120172d210ef00165c5e6276c8a65db3a4a5cf36e946b83e23/msgpack-1.2.2-cp315-cp315t-musllinux_1_2_riscv64.whl", hash = "sha256:51dd39d23cfdea0400ed3ff2d29d1e83bd951d3aea79dc89be5b701a09edfe23", size = 375087, upload-time = "2026-08-27T10:03:40.486Z" }, - { url = "https://files.pythonhosted.org/packages/cb/e3/8051d53e5495c87c6cf27eb42fb680361017037f87f322bdaf525f71e4a2/msgpack-1.2.2-cp315-cp315t-musllinux_1_2_x86_64.whl", hash = "sha256:b13b59e66f107cca1ba708dd5307179870ca1b15b19fcee7ccf722e5308d9212", size = 414421, upload-time = "2026-08-27T10:03:42.308Z" }, +name = "msgspec" +version = "0.22.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d0/e6/6dcf9306ff3c5e486578f3bf29ed11dfbdbbc2a8bf0caf7e07d392887fda/msgspec-0.22.0.tar.gz", hash = "sha256:0a13624a4969159fe35d8c2a3d377b2b61bbd8585e327440d5e52725affcce38", size = 343188, upload-time = "2026-09-29T14:14:11.422Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9d/22/45c17acb1a85360b10afb95f66777f76bc2634993c66db8b7833832bd343/msgspec-0.22.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:fb1e129b81ac8fcf9ec649b081c6c8da1c7ea6f87cab336d46386abc2cd855c1", size = 198231, upload-time = "2026-09-29T14:12:23.016Z" }, + { url = "https://files.pythonhosted.org/packages/34/79/1cf725694125051e866066d74e6199206838d1465cbfc35081dc29b6e366/msgspec-0.22.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:dce29a04966e31abf9b83b697c6d672486526dc5d03fcd6970cb56d5dc1fbeea", size = 190911, upload-time = "2026-09-29T14:12:24.636Z" }, + { url = "https://files.pythonhosted.org/packages/bc/b2/e0ace038031a2988aa2e85c431c4d7aef734fbba4749ace6bc5bf310b769/msgspec-0.22.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b962000e11dd34fb210a5a2c57a8a62b2d92b381c8cb3b05c075a83e38f8d645", size = 220343, upload-time = "2026-09-29T14:12:26.111Z" }, + { url = "https://files.pythonhosted.org/packages/7b/e6/16ddb09185d79dc00177994cf0bdb1cd8e5cc44a1d1bfba61bdda5f382cb/msgspec-0.22.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a6db3806b3b76ca78064255eac6fa101a8a64fe6f698d80fbaf81fdfa21217d4", size = 225251, upload-time = "2026-09-29T14:12:27.559Z" }, + { url = "https://files.pythonhosted.org/packages/16/c2/a6af0d38fb0e72f02851ed084c4b8175140cfaf3eaf48b38da0c3941db26/msgspec-0.22.0-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:a88d939d3fe4b8c7314645ebcd6e86c8c8a512ea7820d6550355973e803bc0f1", size = 233488, upload-time = "2026-09-29T14:12:28.996Z" }, + { url = "https://files.pythonhosted.org/packages/0b/9b/b1c4208cdf487e2ba7af145f721b279444ff76af05a9f8fce992ed0588ee/msgspec-0.22.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:0b31746da07cba0e330c6433a94a4699ad77d3aeb9638d1a320a7686b69f6249", size = 225688, upload-time = "2026-09-29T14:12:30.351Z" }, + { url = "https://files.pythonhosted.org/packages/83/54/b9240d908674ef7c41d02cb909731ad6d9931c23bd6a27d8d10776c6f964/msgspec-0.22.0-cp311-cp311-musllinux_1_2_riscv64.whl", hash = "sha256:6ae370f92f3517f0e6f209ba7cc649c957b444868439197e046be07154667551", size = 234250, upload-time = "2026-09-29T14:12:31.887Z" }, + { url = "https://files.pythonhosted.org/packages/df/c0/d498798aaab3bd191a33955de47b40f07fae7667d86a33b705443a7e9491/msgspec-0.22.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:9a696f23f7c1ffb31fae308502e01a3965c3891d5c400f01d0d1096dbe77519e", size = 228337, upload-time = "2026-09-29T14:12:33.365Z" }, + { url = "https://files.pythonhosted.org/packages/fa/51/5e9ae5a5ddc254e15435749328161e95598750e5df644bb00fa9e2297122/msgspec-0.22.0-cp311-cp311-win_amd64.whl", hash = "sha256:024138c51afd335d0b4dce401be33902caafac2b64f8c9f2509a378986175d98", size = 190962, upload-time = "2026-09-29T14:12:34.847Z" }, + { url = "https://files.pythonhosted.org/packages/12/38/fb64a18543bcbebc53a375cb00b1c93bf264a0b6c7bbe9e38b37cc5f0768/msgspec-0.22.0-cp311-cp311-win_arm64.whl", hash = "sha256:4600dbec738ed74e4c9bd35503e84701200ea7db344cfdeda80677b3ee53eb64", size = 189458, upload-time = "2026-09-29T14:12:36.277Z" }, + { url = "https://files.pythonhosted.org/packages/a4/87/3e017dca361d09ed1cd09dc981a6df21b32e830fbec3470f7486d38b6be5/msgspec-0.22.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:ab1e9e7531e353653b906cdd12a0220cc288a1e8e3436aabc65f4508d91b14d9", size = 201301, upload-time = "2026-09-29T14:12:38.048Z" }, + { url = "https://files.pythonhosted.org/packages/fb/02/109165edaafb895668d87177972a32ade9126a54f3736123d8e44be9096d/msgspec-0.22.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b60b43425a47eb9cfe987f6874e354ca7c760e58e295b4e2273ff03574df28a1", size = 193044, upload-time = "2026-09-29T14:12:39.46Z" }, + { url = "https://files.pythonhosted.org/packages/54/a5/65de05f8804492f76ea121b21a125cdf1d97ec461c677bfa0ba354d6fbdd/msgspec-0.22.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b5a169b5b03f0f2c7a296c002647db1dab75d2cd501bca34e32b71cab0261b56", size = 224035, upload-time = "2026-09-29T14:12:40.876Z" }, + { url = "https://files.pythonhosted.org/packages/4a/cc/aa1a47f8c92280d37498a5ea56a2a36606d034383e3e6472d64cbb56cf85/msgspec-0.22.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:99c401861c5bb3a57f7d6423ea7ed4352cd57aa3f04f4fbe9f3e3e4564a10f08", size = 230377, upload-time = "2026-09-29T14:12:42.796Z" }, + { url = "https://files.pythonhosted.org/packages/61/50/f8bcdb3d613a4a4b92704297a12eba5c985cf572a64ee1a004d265759c69/msgspec-0.22.0-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:08826f5e5b0fa2f7a88592c396a243cfcc63d37e19f9d4fbe3b3f1be2fbdc404", size = 237390, upload-time = "2026-09-29T14:12:44.282Z" }, + { url = "https://files.pythonhosted.org/packages/cf/8a/473fa423f8fdd1b810b8652594323d7301df6920b62844d860daa0feff34/msgspec-0.22.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:21460f54cee9208239b1a8421fdf25bffc77293e1daba88f585711ad839b9758", size = 227733, upload-time = "2026-09-29T14:12:45.839Z" }, + { url = "https://files.pythonhosted.org/packages/03/1d/272ce23adae6c71b3f763aed3ee6e115cccc56124ed8ee0e3e3d2681e2c8/msgspec-0.22.0-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:cfc3d9557de9c806318725b702f3e664db33167bb42892079b693c69893fd33b", size = 236783, upload-time = "2026-09-29T14:12:47.234Z" }, + { url = "https://files.pythonhosted.org/packages/f6/26/29e0b9a8605c8819a3c718158e345a616ac42c092dd7d7ab248c2f2b0a72/msgspec-0.22.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:0b25dcbc108783cb72503ed705b9fbb8c3cb02ee5801923f44b5f038c91cc365", size = 232728, upload-time = "2026-09-29T14:12:48.792Z" }, + { url = "https://files.pythonhosted.org/packages/e1/a6/99597c281d716da6c662b48dcc3f734669f716b41d5df2af367dac9e7c21/msgspec-0.22.0-cp312-cp312-win_amd64.whl", hash = "sha256:6ad64f5c260866b0d543f89f50cee43628989c1433c5de7ce820281fa28a2611", size = 192885, upload-time = "2026-09-29T14:12:50.274Z" }, + { url = "https://files.pythonhosted.org/packages/46/80/85fff923d448b886ec3a85900c578d9367f08dad54fe48879495b4c6d055/msgspec-0.22.0-cp312-cp312-win_arm64.whl", hash = "sha256:0922714feff5300aacd8ecd65fa828317ce4bf5212b3139258c0bfc0253cd80e", size = 191223, upload-time = "2026-09-29T14:12:51.699Z" }, + { url = "https://files.pythonhosted.org/packages/7f/62/5374fba2ede0408f4bd8b9b3a6c8464f8d0ea7ae9a2a064bd81ca492bd1e/msgspec-0.22.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f13c127a945479bc9db057eb253b8851075c8e1ae07ffc967bfa1c5676203a86", size = 201355, upload-time = "2026-09-29T14:12:53.145Z" }, + { url = "https://files.pythonhosted.org/packages/cc/e3/357baa8d2a9164a98dfd7ef9d3a58125df0ed981be909945bdd337be7194/msgspec-0.22.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:5aa24eb475d070ecbbe5b21080fc3ce4b0b76c60de25cfe0c9678d8fb44bb42f", size = 193097, upload-time = "2026-09-29T14:12:54.52Z" }, + { url = "https://files.pythonhosted.org/packages/fa/1b/9cc07718d1dee8ed5e89a265801d565bc0f15ead435ccb198f9c7bf92574/msgspec-0.22.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:627bfdfe5a4b3d916b3360b30f4cddeee3a084f56593e33527c6872fa8322ff9", size = 224112, upload-time = "2026-09-29T14:12:55.983Z" }, + { url = "https://files.pythonhosted.org/packages/46/64/f33fdfe95aca76601194a7064d14816c7c22c4eccc1b03a5335785895fa3/msgspec-0.22.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c6c310ef83e7e291b01a63298828f848348bb99e84a1098c4b3923c05674d032", size = 230472, upload-time = "2026-09-29T14:12:57.648Z" }, + { url = "https://files.pythonhosted.org/packages/8e/b3/8ceaa9981c230adf43c45a6e8da25da23a381eddc7ed05aeaca1d5e7928b/msgspec-0.22.0-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:7c1e76c6bd523141b9c05c2f8a70979cd0efedbd68855a66f292f8892c0b8fc7", size = 237382, upload-time = "2026-09-29T14:12:59.414Z" }, + { url = "https://files.pythonhosted.org/packages/88/a6/7b5c4fb39e0bf2dabc8be923c33c39b07ba769a0ce6f0afbbdfaadb1f2f2/msgspec-0.22.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:bc374dedd5f85a5f4de2386dc5f737894ccb8c1ac18e9566ce66fd9839e6285d", size = 227717, upload-time = "2026-09-29T14:13:00.88Z" }, + { url = "https://files.pythonhosted.org/packages/b8/5b/2334ee638880e756c8bc54a1177bd65877c786433693a43594ef5ecbe2d8/msgspec-0.22.0-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:feafe612034d49e9144340c0b5168ee4e22c2af4aaa2c1db11ae84e1aac9543b", size = 236781, upload-time = "2026-09-29T14:13:02.468Z" }, + { url = "https://files.pythonhosted.org/packages/6c/e5/b4c5323b17ecfce45350695d40fc93e16856db957a53cbcf2f53007d6e12/msgspec-0.22.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6f48317f05312bfdf78248f53933f830f07ab75cc1c813ac3ca4220cb3b5b019", size = 232777, upload-time = "2026-09-29T14:13:04.025Z" }, + { url = "https://files.pythonhosted.org/packages/01/33/e591f9d3d8d6c9cfc02ae95f3e3c44920f2d18050f3f252c244e0f293a0e/msgspec-0.22.0-cp313-cp313-win_amd64.whl", hash = "sha256:0739b068f31f2004a364f97679ba91f2f5ecd6ec2a5b4b890188ab5c57d20672", size = 192829, upload-time = "2026-09-29T14:13:05.519Z" }, + { url = "https://files.pythonhosted.org/packages/d1/cd/a011a5b8732cd781e2ea6da5b38d71ae4a9a329338411d1f008a58f5edbf/msgspec-0.22.0-cp313-cp313-win_arm64.whl", hash = "sha256:508278300dd4efbd21cd3a4b2b016160a5feac98bc880d3673f6c06697baaf62", size = 191258, upload-time = "2026-09-29T14:13:06.909Z" }, + { url = "https://files.pythonhosted.org/packages/53/f9/ac027b35477e6b83bcee32b3d9675b37abfa130f098dd6500fa67d768852/msgspec-0.22.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:221cbcbfa4478152b91d37dcfd4830e2be92773e8139e883f43773450ebacef8", size = 201276, upload-time = "2026-09-29T14:13:08.311Z" }, + { url = "https://files.pythonhosted.org/packages/13/6b/2bffffa31662b1353a62e672442865d51c291ad778352fd490de16361dc6/msgspec-0.22.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:dd9568695911055440d2bb7099ed9098fc181d335daa772d0eb3fe8f31ba4efb", size = 193233, upload-time = "2026-09-29T14:13:09.943Z" }, + { url = "https://files.pythonhosted.org/packages/14/bc/4066416ff6aa918d1ef9295edee0041e4629e4079ad3839bdd8a68fd87f0/msgspec-0.22.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f039ef5207b847f075a0a43020ee6140cd47505f890e47e157f2deb485c2dc96", size = 225101, upload-time = "2026-09-29T14:13:11.391Z" }, + { url = "https://files.pythonhosted.org/packages/63/ba/a8d390d5bd4c7d9ccde87c95cf071ada934cc9ca2c6af4d3d50b38f2d718/msgspec-0.22.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5e4f7e09cceac7dbf4c0761b8ae7df51c55b5df5e9af7aff2c895aac1ebea015", size = 230505, upload-time = "2026-09-29T14:13:12.869Z" }, + { url = "https://files.pythonhosted.org/packages/9c/89/979664fdc913c624ef88a139b40e3a95ddf2a47c89e8b5c4147f69ee9c48/msgspec-0.22.0-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:614e2c827e0a3f934f3cf0cf4ba65210df8132b75a69a8a1f51bb3b2caf0ac5a", size = 237382, upload-time = "2026-09-29T14:13:14.317Z" }, + { url = "https://files.pythonhosted.org/packages/07/3f/7d44c614376ae008ac6099be5f589b322c4ad44e32c6dbb0edd256215028/msgspec-0.22.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:fa3689b9dfcc663358ef23ba4299d7460f01108515b041a7d30d05908ac9c32f", size = 228962, upload-time = "2026-09-29T14:13:15.763Z" }, + { url = "https://files.pythonhosted.org/packages/0b/59/bf8504e6f63f6769d01fb66f8bd856cf0ed39a07fde354f440d711640054/msgspec-0.22.0-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:d2f950239ff1fc7322c6f9634807310265149cb168270d3ddcdda5b6ada13a28", size = 236691, upload-time = "2026-09-29T14:13:17.195Z" }, + { url = "https://files.pythonhosted.org/packages/2b/40/5a9d2bde12af16a22ddbf371990a81d3e3c0dcd4bb4ef3b3f9616b033c14/msgspec-0.22.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:3c789b5ccd07c0a3c09767108ee06e089b2875f2309a4569c2648f30a8d31dfa", size = 232750, upload-time = "2026-09-29T14:13:18.691Z" }, + { url = "https://files.pythonhosted.org/packages/75/5d/c0e6bdb81a87f6bd56a663a330c271af7670490c80d8d635d9fa21ad1adf/msgspec-0.22.0-cp314-cp314-pyemscripten_2026_0_wasm32.whl", hash = "sha256:a66b1766311e42371e509c996c3933b161c7ae0eabdf361af5316dec197e1022", size = 136814, upload-time = "2026-09-29T14:13:20.415Z" }, + { url = "https://files.pythonhosted.org/packages/b9/c0/b0cfc6d33608e5ea8871f3be31f9146c56699e737a7d8862bf018484f278/msgspec-0.22.0-cp314-cp314-win_amd64.whl", hash = "sha256:749899563d26b211379f142b8ffd7e2d7da149a51717798f0ce994dce50324f0", size = 197097, upload-time = "2026-09-29T14:13:21.869Z" }, + { url = "https://files.pythonhosted.org/packages/42/1f/571f7fe7c725380605d680fc4c0084212b23d2dfcf6be0f2277f14462c56/msgspec-0.22.0-cp314-cp314-win_arm64.whl", hash = "sha256:10d0d1d464960d99a949f7ca01ef8928e51c472433a5f5ab74b2d695fb830652", size = 196779, upload-time = "2026-09-29T14:13:23.62Z" }, + { url = "https://files.pythonhosted.org/packages/ab/f3/3c87372bac651b37911e0dc6926c3958949d3fcb8cec1016adbc44d948b2/msgspec-0.22.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:e79725246291516a7359caad5fb743ddc0ec66ed40d2381fb846325b5031504e", size = 205214, upload-time = "2026-09-29T14:13:25.158Z" }, + { url = "https://files.pythonhosted.org/packages/43/4c/fbccd6e0fbbdf10c4d9b6bac8a26148dd5483b3ffff6d6c5a376ff1f5cb1/msgspec-0.22.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:38f7022fbe91954b31afe3888a0af1b652e0f370fafdeb1d425f4a814d789c9f", size = 196941, upload-time = "2026-09-29T14:13:26.637Z" }, + { url = "https://files.pythonhosted.org/packages/55/04/8db7186d3ae8818356bc623cc132db8b77da37ce4b1345f35719c8ad5726/msgspec-0.22.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b6d3ca19a8ff28d0a67a1824e2bff7ec649ec795c80a265f20ade4caa63080de", size = 229934, upload-time = "2026-09-29T14:13:28.285Z" }, + { url = "https://files.pythonhosted.org/packages/17/24/a249f3491cabbe77cc65a1a6f87c128582aa39357227149be61cac8e554f/msgspec-0.22.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a8b98ae215a102cbf6635f7df45f5c4af12f77fad1f7b71b9808fcf868a5735d", size = 234378, upload-time = "2026-09-29T14:13:29.821Z" }, + { url = "https://files.pythonhosted.org/packages/87/ee/6dbcb1b5de8e9d47e8f0fde9a288628dc178c1749a570b98251218fa10c4/msgspec-0.22.0-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e0aa0cc3f18c35bab79bd7b87fde95d6274a9deddeebd1ea541f8066a5073165", size = 243118, upload-time = "2026-09-29T14:13:31.544Z" }, + { url = "https://files.pythonhosted.org/packages/79/03/7dd2d0ca988600e01fc00ad0cf20d1d44bc59369a913c988654c65f6582b/msgspec-0.22.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:8c8e84789918fbc15a503b92a829115ddd7567ecd3e4778bd418c56abbb86c11", size = 234557, upload-time = "2026-09-29T14:13:33.068Z" }, + { url = "https://files.pythonhosted.org/packages/74/e2/43f3c63bff1650efcaaea31466246e28b46927323fc9ff416c68cc6e4047/msgspec-0.22.0-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:3ca7d4cd69fbb66bd2da6211d3e79d40542d196c16c6d99bf838f76767ad35be", size = 241288, upload-time = "2026-09-29T14:13:34.532Z" }, + { url = "https://files.pythonhosted.org/packages/8b/70/11b93815a59674f33182dc3e873d343ca0b37e25be52ecb28f52092f1fed/msgspec-0.22.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:28f53f3604dd3e70225f7563c831628dbb03299b428f8e62aadb4b628e386874", size = 236432, upload-time = "2026-09-29T14:13:36.083Z" }, + { url = "https://files.pythonhosted.org/packages/b7/82/7aad0f033f8dcb3f23868773c2ede803ae162a784828ccde75aa3f9b2f9d/msgspec-0.22.0-cp314-cp314t-win_amd64.whl", hash = "sha256:7293dee54de040cfa225c22151cc3d72f17cd674b5ebcb52f38fb9f5701592e6", size = 202062, upload-time = "2026-09-29T14:13:37.955Z" }, + { url = "https://files.pythonhosted.org/packages/e3/45/cf52577926d73e2369e25927e389cb4ea1461169c489f46d3248159b5be7/msgspec-0.22.0-cp314-cp314t-win_arm64.whl", hash = "sha256:c3c510aba9015c085e514b75a9b3f1ed7c4591ae5e379655821b8bba51f30cc7", size = 201686, upload-time = "2026-09-29T14:13:39.42Z" }, + { url = "https://files.pythonhosted.org/packages/c8/63/d93937e2aae34ff1ea33b62799d1963cacc1bf432d196d6130039657a122/msgspec-0.22.0-cp315-cp315-macosx_10_15_x86_64.whl", hash = "sha256:263e110955ed76fe0af2d79f819903b50a70dc0e7a752eb7aabe79d2e0a084fb", size = 202241, upload-time = "2026-09-29T14:13:40.919Z" }, + { url = "https://files.pythonhosted.org/packages/3b/e2/46ece11a244cd56432eb2362ffbb8014f3f02963136d84d941f71fdc2a3f/msgspec-0.22.0-cp315-cp315-macosx_11_0_arm64.whl", hash = "sha256:c6f06576eced70462179a4b4638e84cf69fdbba37f44d13a64a21739c131a830", size = 194232, upload-time = "2026-09-29T14:13:42.454Z" }, + { url = "https://files.pythonhosted.org/packages/cf/b1/1c385f2f93006cdc2af1511cc512c347cb22e2d4f11952c205230aedf586/msgspec-0.22.0-cp315-cp315-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8d67582478b0eaabb899f2fb255c878ee7de57dff80eb73ab24f1865524ec441", size = 226524, upload-time = "2026-09-29T14:13:43.876Z" }, + { url = "https://files.pythonhosted.org/packages/dc/fb/c80c8842d40347cacf89a60a4986b849dae1a6dfd25830441efdd6faa65b/msgspec-0.22.0-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:71cbbdb39631064e2f2f9e9ac2b1b69931d72276eb5f9da4ed025726296bdbb6", size = 231816, upload-time = "2026-09-29T14:13:45.329Z" }, + { url = "https://files.pythonhosted.org/packages/73/ac/90bbcfd890b4bda90c93f7e1b7fc24e84b270420486d9d43ae31443d15ab/msgspec-0.22.0-cp315-cp315-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:8f0a5c25516e2034b2db7767081759ff8996e214def9c43b3055f61e1be1caad", size = 244241, upload-time = "2026-09-29T14:13:46.851Z" }, + { url = "https://files.pythonhosted.org/packages/72/9a/eabdb5f1b5e6013b0e2f9f2a95790587f6864aa9ca37f9d7dece65b53878/msgspec-0.22.0-cp315-cp315-musllinux_1_2_aarch64.whl", hash = "sha256:a1dab6a99c759d1391ab2993388c1892746a697254f4b5dc6c059ca6e3bfbc8b", size = 230198, upload-time = "2026-09-29T14:13:48.296Z" }, + { url = "https://files.pythonhosted.org/packages/e9/89/9f080532d4ac52f416dd7318e55c2053cc071853d17d58e24897a5b553bf/msgspec-0.22.0-cp315-cp315-musllinux_1_2_riscv64.whl", hash = "sha256:a52eba5c9528fd181fcec39d22b67aaa1dccc6cfe8e24d3f5d41130e6d04289d", size = 242949, upload-time = "2026-09-29T14:13:49.829Z" }, + { url = "https://files.pythonhosted.org/packages/11/df/6baf9b2f3523ebe2b820820c7929fd72ec5f483a93147130338ecc353fac/msgspec-0.22.0-cp315-cp315-musllinux_1_2_x86_64.whl", hash = "sha256:1e547966017265c0d23342bcf2e027305dde40ea042d16694a9b96b4f696a052", size = 233914, upload-time = "2026-09-29T14:13:51.5Z" }, + { url = "https://files.pythonhosted.org/packages/bb/37/9cf650779c8c1e53291ef184c838703930a4cabb1fb37e222c85a7d49fa9/msgspec-0.22.0-cp315-cp315-win_amd64.whl", hash = "sha256:0067057df265795f742658b15dbe53f3b6f21d19dcfa53676db11088cfa41e0a", size = 197910, upload-time = "2026-09-29T14:13:53.071Z" }, + { url = "https://files.pythonhosted.org/packages/f5/ce/2f78c93d4f69e0167a19c2d40d4fbf7bbd6f074e1047536735832a4368ee/msgspec-0.22.0-cp315-cp315-win_arm64.whl", hash = "sha256:05dbc8268e50c9232ec72b9af1c7b13049aade4d1197764e38c427048706e046", size = 197590, upload-time = "2026-09-29T14:13:54.47Z" }, + { url = "https://files.pythonhosted.org/packages/3f/bf/282e9a443058b85b8f706c9a651e2d8cdd11cc09d16e8fa347b6c57b75bb/msgspec-0.22.0-cp315-cp315t-macosx_10_15_x86_64.whl", hash = "sha256:b3113ebcceeb7693a915183c73d92c10bf5c62851dd187cab43bd025fb587419", size = 206298, upload-time = "2026-09-29T14:13:55.913Z" }, + { url = "https://files.pythonhosted.org/packages/ef/2d/2e694fa46f55319007f72013b17341ea3868be1c77e7a597176b202dda92/msgspec-0.22.0-cp315-cp315t-macosx_11_0_arm64.whl", hash = "sha256:0dfadea8bdcfafc614bd031de55a8ede22b43445cfff6d8b77cc0c07d3edc8a8", size = 198145, upload-time = "2026-09-29T14:13:57.412Z" }, + { url = "https://files.pythonhosted.org/packages/5b/2e/2fa279cb57cb47175ae604d572787f903d4ad3f0afa867201bbd99e6647e/msgspec-0.22.0-cp315-cp315t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d7a738826936c72348c613061d260446f13c82b6fd7d5d7705b6911ab8dca2f3", size = 232362, upload-time = "2026-09-29T14:13:58.817Z" }, + { url = "https://files.pythonhosted.org/packages/a0/58/a7e759b11b28441c27f803b29d9b5f4b5ad85150c89354b5ede1baca9258/msgspec-0.22.0-cp315-cp315t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f2ddea9d78d09460f06c26a7a508adcd049761c3208776162b8eb79b8a032cff", size = 235885, upload-time = "2026-09-29T14:14:00.381Z" }, + { url = "https://files.pythonhosted.org/packages/86/56/8d7ee098e94cbd9f35fa643dc497e06a4a6307b9f562cfbe48103fc3b209/msgspec-0.22.0-cp315-cp315t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:884c28c80b0a511595b29a9b04a3a230c3797369e4a033e6d5c6d9b5427f8e09", size = 248155, upload-time = "2026-09-29T14:14:01.945Z" }, + { url = "https://files.pythonhosted.org/packages/b9/6d/1cabb4b8a5dbf696e2b24df9e482b2e0333bb3b1b13ebb5433813e6616ec/msgspec-0.22.0-cp315-cp315t-musllinux_1_2_aarch64.whl", hash = "sha256:f7a923bcde480065c8e25967464cfb2a687ee67000bb43157e2d57e40eca7305", size = 236416, upload-time = "2026-09-29T14:14:03.363Z" }, + { url = "https://files.pythonhosted.org/packages/ba/43/8bf0f558eb369f1f2d494b3d5ab9d0ae0907d07ecc0cdbe11b6768b02867/msgspec-0.22.0-cp315-cp315t-musllinux_1_2_riscv64.whl", hash = "sha256:65eea14bc65ccfeb8f3af62cb204841871e2961f002d7fa87dbe0f79dacf1c1c", size = 247292, upload-time = "2026-09-29T14:14:04.829Z" }, + { url = "https://files.pythonhosted.org/packages/81/33/2fbaadf98b5510cac4bb56d2b03937e0b1fb4bfcd1ae6aba20361f299583/msgspec-0.22.0-cp315-cp315t-musllinux_1_2_x86_64.whl", hash = "sha256:0666a1520cab86796612e794e71107e0fbf5e8ff3ddcdfcfff8f1d94b860d2f1", size = 238220, upload-time = "2026-09-29T14:14:06.408Z" }, + { url = "https://files.pythonhosted.org/packages/f1/cc/b6be6041098ab859a8472983ccc2c08339fc2ef53f28d4f5fe7f4f34276b/msgspec-0.22.0-cp315-cp315t-win_amd64.whl", hash = "sha256:885c6e0c89d6103648525fe62aa78d600054dedf7b3713d23b15d7ddb6d66a13", size = 202939, upload-time = "2026-09-29T14:14:08.079Z" }, + { url = "https://files.pythonhosted.org/packages/5a/c1/664578dd98be70cd4ab1a9dcf3a181b1376b83c65ec41ee162130b58c8c0/msgspec-0.22.0-cp315-cp315t-win_arm64.whl", hash = "sha256:268594d0bae5510572599a6ab0364dd9de43c867d24a30856cd9f5edb63d8dc6", size = 202117, upload-time = "2026-09-29T14:14:09.891Z" }, ] [[package]] @@ -2546,15 +2535,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/81/08/7036c080d7117f28a4af526d794aab6a84463126db031b007717c1a6676e/multidict-6.7.1-py3-none-any.whl", hash = "sha256:55d97cc6dae627efa6a6e548885712d4864b81110ac76fa4e534c03819fa4a56", size = 12319, upload-time = "2026-01-26T02:46:44.004Z" }, ] -[[package]] -name = "mypy-extensions" -version = "1.1.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/a2/6e/371856a3fb9d31ca8dac321cda606860fa4548858c0cc45d9d1d4ca2628b/mypy_extensions-1.1.0.tar.gz", hash = "sha256:52e68efc3284861e772bbcd66823fde5ae21fd2fdb51c62a211403730b916558", size = 6343, upload-time = "2025-04-22T14:54:24.164Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl", hash = "sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505", size = 4963, upload-time = "2025-04-22T14:54:22.983Z" }, -] - [[package]] name = "myst-nb" version = "1.4.0" @@ -2739,6 +2719,10 @@ wheels = [ name = "numcodecs" version = "0.15.1" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version < '3.12' and sys_platform == 'darwin'", + "python_full_version < '3.12' and sys_platform != 'darwin'", +] dependencies = [ { name = "deprecated" }, { name = "numpy" }, @@ -2759,9 +2743,44 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/c3/32/233e5ede6568bdb044e6f99aaa9fa39827ff3109c6487fc137315f733586/numcodecs-0.15.1-cp313-cp313-win_amd64.whl", hash = "sha256:a4f7bdb26f1b34423cb56d48e75821223be38040907c9b5954eeb7463e7eb03c", size = 831955, upload-time = "2025-02-10T10:23:30.601Z" }, ] -[package.optional-dependencies] -msgpack = [ - { name = "msgpack" }, +[[package]] +name = "numcodecs" +version = "0.17.0" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and sys_platform == 'darwin'", + "python_full_version >= '3.14' and sys_platform != 'darwin'", + "python_full_version == '3.13.*' and sys_platform == 'darwin'", + "python_full_version == '3.13.*' and sys_platform != 'darwin'", + "python_full_version == '3.12.*' and sys_platform == 'darwin'", + "python_full_version == '3.12.*' and sys_platform != 'darwin'", +] +dependencies = [ + { name = "numpy" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/dd/ec/260cdb6304868de6db14eb31064bd2735c0200bcb3331d6b4c9e9be02a03/numcodecs-0.17.0.tar.gz", hash = "sha256:e8db2e337bdafd3bb5f891a2543b53b2b36a509ce9d587af2846db3715b6c8b9", size = 6288352, upload-time = "2026-09-17T18:12:42.262Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8f/e8/28cc96c77078ffcd08579211297cbf1f8ca6e76b4b53c8fbc029b879aaa8/numcodecs-0.17.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:2e29732c5e3a83663e51b40007819d8fd0aae16a2322f7044ce13a2460a99e23", size = 1171637, upload-time = "2026-09-17T18:12:12.765Z" }, + { url = "https://files.pythonhosted.org/packages/96/59/1cde6df2f9baa26a1a21c36ac10312062acace29e5c95e029d8da9cf7c3d/numcodecs-0.17.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d30c69b4bdb1755af1022fa913e184eaadc4fc0cd38f736e483e8ad205e130d1", size = 978974, upload-time = "2026-09-17T18:12:14.496Z" }, + { url = "https://files.pythonhosted.org/packages/ef/86/15e1cc4e6644d7e33be613d17bb7cc939b1862ccd975fa2ce1055a1e3045/numcodecs-0.17.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1837d4d1d646cecd3ab2d1ba22956295d709edea0bddc952737c647bec1d03c4", size = 1384196, upload-time = "2026-09-17T18:12:16.327Z" }, + { url = "https://files.pythonhosted.org/packages/73/ca/b784745f189a12ccef60517c0c8526d579b40f35da4463c30c07a4677366/numcodecs-0.17.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1ebd63cdb8985c66257bc037fcdff5f38637aff72d7ef62612ec46f2299e8749", size = 1436978, upload-time = "2026-09-17T18:12:17.731Z" }, + { url = "https://files.pythonhosted.org/packages/7f/b0/f8b3852828c6712eae36e031d763cd52c2777290406066eae0b2a527c05f/numcodecs-0.17.0-cp312-cp312-win_amd64.whl", hash = "sha256:ecd0f6a10e3f8afbbb16ecc999d2b06aa2a31a2946f1c1a85d15d91a1ebcfef3", size = 1496300, upload-time = "2026-09-17T18:12:19.319Z" }, + { url = "https://files.pythonhosted.org/packages/11/f1/1d3d2bcb1240e5000f6647b5b0fd465b2b51ecef180bfa797a85df48cf2f/numcodecs-0.17.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:de2c66db238e74e66fe9be7e02b7e0129b75d3f812d38e4019eb0102cc2dcdf0", size = 1170875, upload-time = "2026-09-17T18:12:20.638Z" }, + { url = "https://files.pythonhosted.org/packages/64/81/64e2472a8b3a9fa26bccfc7d5fa876770a9027bd5cd77e5b4a7b807a0785/numcodecs-0.17.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:69b9b4685097c4d478a0c829debf4470555ec63e92cdd2c6b5f195460f1dc888", size = 976128, upload-time = "2026-09-17T18:12:21.856Z" }, + { url = "https://files.pythonhosted.org/packages/25/ea/2ab25f7e674cf1e78f123c5c2689d8a7dc85475554af0619bcce05cb32a9/numcodecs-0.17.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7065b3349b73d54785aa89e00d0b97d80f664e9056757929d28151f9208dc04c", size = 1379341, upload-time = "2026-09-17T18:12:23.159Z" }, + { url = "https://files.pythonhosted.org/packages/9d/96/b3bf9a31978d936654a73f2bb1036b92b6515164f170092d162419eb771c/numcodecs-0.17.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6c3342d91ed7cf59c1be84396edd364e936bb0ec9e366d24bb69689748d19625", size = 1430551, upload-time = "2026-09-17T18:12:24.97Z" }, + { url = "https://files.pythonhosted.org/packages/5c/ec/47515bea31725376aa6f061c335326cc7437f863ab704b8e167e80734bfd/numcodecs-0.17.0-cp313-cp313-win_amd64.whl", hash = "sha256:a854e9c89f58eeeb2453f3c1637d1916797edb6eaff26bc186a6cdb09d187092", size = 1492769, upload-time = "2026-09-17T18:12:26.702Z" }, + { url = "https://files.pythonhosted.org/packages/cc/e0/be0a4df898bd2cca26cf8071552925aa66601210c0e35be9c4070ede6467/numcodecs-0.17.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:0fc125d1c726c1937cde346e109e3662a2b4ff6be073289da7d124d172aceda5", size = 1172207, upload-time = "2026-09-17T18:12:28.061Z" }, + { url = "https://files.pythonhosted.org/packages/54/0f/9da01fd25953fc37273d7bab7a2174ff74520450a8d77abb837de5d5f040/numcodecs-0.17.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:6f1293581326e92293b142bd05b389f6682ed1ce333f36f116344bca340cfd10", size = 978019, upload-time = "2026-09-17T18:12:29.597Z" }, + { url = "https://files.pythonhosted.org/packages/31/ee/e306a14295a67f9852b9856077ed5ab6b67fae5797559ccdd22a3aa6d853/numcodecs-0.17.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4a62e5a821ccfbe425bbdd9a079f8b6c41b7e796ff3c99324530561193a53047", size = 1387252, upload-time = "2026-09-17T18:12:31.065Z" }, + { url = "https://files.pythonhosted.org/packages/d9/13/107244147a8b2edd43ffc3f8bf229f07220aed200022d2e0b1dd761b68f8/numcodecs-0.17.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1cce4bf2278ed74841c2088acfd38e67c3e5aa77e3bc1962ef0fa2931becbb12", size = 1432514, upload-time = "2026-09-17T18:12:32.327Z" }, + { url = "https://files.pythonhosted.org/packages/dc/88/9460630aa3517f1745da87201a96ba84169f2ebee9558b223c0e5a35ab44/numcodecs-0.17.0-cp314-cp314-win_amd64.whl", hash = "sha256:4f43ba0d834ce012ed482996a7424df9077a47d5899ede2d1d54fe85e6eb12fa", size = 1534816, upload-time = "2026-09-17T18:12:33.566Z" }, + { url = "https://files.pythonhosted.org/packages/da/d7/c78d934e1baedd5c2e2d06ee087e23f9031ddf2dded75193195ab290139d/numcodecs-0.17.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:657b1f9aa4b1025aa0fa7d4bd8d7492900950a11f636dff622bd208c0b99e35e", size = 1196273, upload-time = "2026-09-17T18:12:34.952Z" }, + { url = "https://files.pythonhosted.org/packages/00/c1/bbc350003a32876a6a80ace17f7571ebd0110e39c523b8e07ecf64d431b2/numcodecs-0.17.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:4d83befe67a51ba6a988c562209bf13836438c1b6dce23049d84ff42854af32d", size = 1022050, upload-time = "2026-09-17T18:12:36.312Z" }, + { url = "https://files.pythonhosted.org/packages/ca/dc/fa7c6a1ce327093d04ddf0d0acf20fd1fe2a00a9b7eb43b6a7213eec1ae4/numcodecs-0.17.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3e4e351566b3ab2f6255a9d91c6c48e1d0f9ec6e2ae409a148e091a8fc0a80b0", size = 1380833, upload-time = "2026-09-17T18:12:37.739Z" }, + { url = "https://files.pythonhosted.org/packages/e6/38/33023f8771e8b7afb9c7f0dd50b0487dbef594617e245707cb965969edd3/numcodecs-0.17.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8697a4631fedded77a75d333e4926b1eb3a11bc7d3e30213e7e565d6910526d0", size = 1424937, upload-time = "2026-09-17T18:12:39.04Z" }, + { url = "https://files.pythonhosted.org/packages/86/43/a166898bd89ecc743762b0192b591a35aaecf442e47f85132a75113622f5/numcodecs-0.17.0-cp314-cp314t-win_amd64.whl", hash = "sha256:4c36f6fd14dc22939172145c24d3b3eab2410c34ed807906a5ece5f4541c7c43", size = 1523408, upload-time = "2026-09-17T18:12:40.72Z" }, ] [[package]] @@ -3582,21 +3601,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/4b/72/ac5ca81fe9121fcaa9d828d21017cba00a16a98e4ea5fb60c878f93dda4f/readme_renderer-46.0-py3-none-any.whl", hash = "sha256:d0dae1f74bb273b534770cb4cccb6bb78735540afdb03c2146f4e19dcd412560", size = 14239, upload-time = "2026-08-28T15:18:31.132Z" }, ] -[[package]] -name = "rechunker" -version = "0.5.4" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "dask", extra = ["array", "diagnostics"] }, - { name = "mypy-extensions" }, - { name = "packaging" }, - { name = "zarr" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/8b/39/2b42e3da105e6cec702c7f1e489074d971abafa13bb7ff0b029bd8dc494c/rechunker-0.5.4.tar.gz", hash = "sha256:ad194a24f7d21fdc9914b9b149c04f88419a45fb5d0e3898a44d6dc68215979c", size = 481021, upload-time = "2025-05-01T16:14:58.974Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/d6/7b/8ddf8f5137ae13d6210238f31781090853f25c901a9d2a68ad865679f0b6/rechunker-0.5.4-py3-none-any.whl", hash = "sha256:6999774c53aa80cce3c1d03b013644241732681f79c0cffec28f527d362ceb18", size = 22441, upload-time = "2025-05-01T16:14:57.82Z" }, -] - [[package]] name = "referencing" version = "0.37.0" @@ -4004,13 +4008,13 @@ dependencies = [ { name = "scikit-learn" }, { name = "scipy" }, { name = "xarray" }, - { name = "zarr" }, + { name = "zarr", version = "3.1.6", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.12'" }, + { name = "zarr", version = "3.4.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.12'" }, ] [package.optional-dependencies] bgen = [ { name = "cbgen" }, - { name = "rechunker" }, ] plink = [ { name = "bed-reader" }, @@ -4104,11 +4108,10 @@ requires-dist = [ { name = "numpy", marker = "sys_platform == 'darwin'", specifier = ">=2.3.5" }, { name = "pandas", specifier = "<3.0" }, { name = "partd", marker = "extra == 'plink'" }, - { name = "rechunker", marker = "extra == 'bgen'" }, { name = "scikit-learn" }, { name = "scipy", specifier = "<1.16" }, - { name = "xarray", specifier = "<2025.3.1" }, - { name = "zarr", specifier = ">=2.10.0,!=2.11.0,!=2.11.1,!=2.11.2,<3" }, + { name = "xarray", specifier = ">=2026.9.0" }, + { name = "zarr", specifier = ">=3" }, ] provides-extras = ["plink", "bgen"] @@ -4116,7 +4119,7 @@ provides-extras = ["plink", "bgen"] dev = [ { name = "ablog", specifier = "!=0.10.27" }, { name = "aiohttp" }, - { name = "bio2zarr", extras = ["vcf"], marker = "sys_platform != 'win32'" }, + { name = "bio2zarr", extras = ["vcf"], marker = "sys_platform != 'win32'", specifier = ">=0.2" }, { name = "callee" }, { name = "graphviz" }, { name = "hypothesis" }, @@ -4163,7 +4166,7 @@ lint = [{ name = "pre-commit" }] packaging = [{ name = "twine" }] test = [ { name = "aiohttp" }, - { name = "bio2zarr", extras = ["vcf"], marker = "sys_platform != 'win32'" }, + { name = "bio2zarr", extras = ["vcf"], marker = "sys_platform != 'win32'", specifier = ">=0.2" }, { name = "callee" }, { name = "graphviz" }, { name = "hypothesis" }, @@ -4785,25 +4788,16 @@ wheels = [ [[package]] name = "xarray" -version = "2025.3.0" +version = "2026.9.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "numpy" }, { name = "packaging" }, { name = "pandas" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/8a/8c/e56820a2c682834d8fb4a940956cd41b9f2532fee9692bfaf43b14f33c6e/xarray-2025.3.0.tar.gz", hash = "sha256:531cf6d64e6ab54c19239930a840654f1a79d2140e9f0d11d1e8d69dcc581d0f", size = 3292399, upload-time = "2025-03-20T04:50:58.903Z" } +sdist = { url = "https://files.pythonhosted.org/packages/ff/f5/781c70b234f54e0401f4f7c4427a7486da38d50dbb138c7d7c55144b3d86/xarray-2026.9.0.tar.gz", hash = "sha256:6abc69694c22fa1f0fb2f357ff4e41d88beb4477ed71091f944b7dbf67ed54fe", size = 3176922, upload-time = "2026-09-29T23:06:25.807Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/91/19/5dbac77ca82f009f8267d0e7cca4fd3be2a435d83ed98f6f8b9c5cb1747e/xarray-2025.3.0-py3-none-any.whl", hash = "sha256:022b7eac5ebc26d70d34211de732ec1a15127a40455f9492acdde7fbe5bbf091", size = 1270849, upload-time = "2025-03-20T04:50:56.457Z" }, -] - -[[package]] -name = "xyzservices" -version = "2026.9.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/c4/bd/b75d5c2312caec607ec995200fa1eb8453225fd869947ec743919c279544/xyzservices-2026.9.1.tar.gz", hash = "sha256:8d1a39bf6b192940cc5db5264eeefc1b20dd184f8b83b1303b078743744f5943", size = 1134047, upload-time = "2026-09-04T10:35:41.399Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/a8/71/9219fe65ef32bddc0b5d14e1d98dfefe9d2c9c1b1d1e93efca1f29fcbd4d/xyzservices-2026.9.1-py3-none-any.whl", hash = "sha256:af4fddac0f1fa5f7951834e2c58e10109e722be548cb1fe4f1a8e8b18cef4c09", size = 98829, upload-time = "2026-09-04T10:35:40.08Z" }, + { url = "https://files.pythonhosted.org/packages/3f/44/3159af4fb3c868970a412e294320ed6bb1a9fbdfa6431050eda8e0b34b6e/xarray-2026.9.0-py3-none-any.whl", hash = "sha256:fe349fa871628b1a0a5217af3fe1283a2862d5485156e6eda354fffb81c3bb7c", size = 1445445, upload-time = "2026-09-29T23:06:23.686Z" }, ] [[package]] @@ -4907,17 +4901,49 @@ wheels = [ [[package]] name = "zarr" -version = "2.18.7" +version = "3.1.6" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version < '3.12' and sys_platform == 'darwin'", + "python_full_version < '3.12' and sys_platform != 'darwin'", +] dependencies = [ - { name = "asciitree" }, - { name = "fasteners", marker = "sys_platform != 'emscripten'" }, - { name = "numcodecs" }, + { name = "donfig" }, + { name = "google-crc32c" }, + { name = "numcodecs", version = "0.15.1", source = { registry = "https://pypi.org/simple" } }, { name = "numpy" }, + { name = "packaging" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/31/5a/b8a0cf39a14c770c30bd1f2d120c54000c8cd9e84e8e79f38d9a7ce58071/zarr-3.1.6.tar.gz", hash = "sha256:d95e72cbea4b90e9a70679468b8266400331756232576ae2b43400ac5108d0eb", size = 386531, upload-time = "2026-03-23T17:25:18.748Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/de/7c/ba8ca8cbe9dbef8e83a95fc208fed8e6686c98b4719aaa0aa7f3d31fe390/zarr-3.1.6-py3-none-any.whl", hash = "sha256:b5a82c5079d1c3d4ee8f06746fa3b9a98a7d804300fa3f4be154362a33e1207e", size = 295655, upload-time = "2026-03-23T17:25:17.189Z" }, +] + +[[package]] +name = "zarr" +version = "3.4.1" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and sys_platform == 'darwin'", + "python_full_version >= '3.14' and sys_platform != 'darwin'", + "python_full_version == '3.13.*' and sys_platform == 'darwin'", + "python_full_version == '3.13.*' and sys_platform != 'darwin'", + "python_full_version == '3.12.*' and sys_platform == 'darwin'", + "python_full_version == '3.12.*' and sys_platform != 'darwin'", +] +dependencies = [ + { name = "donfig" }, + { name = "google-crc32c" }, + { name = "msgspec" }, + { name = "numcodecs", version = "0.17.0", source = { registry = "https://pypi.org/simple" } }, + { name = "numpy" }, + { name = "packaging" }, + { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/da/1d/01cf9e3ab2d85190278efc3fca9f68563de35ae30ee59e7640e3af98abe3/zarr-2.18.7.tar.gz", hash = "sha256:b2b8f66f14dac4af66b180d2338819981b981f70e196c9a66e6bfaa9e59572f5", size = 3604558, upload-time = "2025-04-09T07:59:28.482Z" } +sdist = { url = "https://files.pythonhosted.org/packages/3e/62/e8a36a4b65f01499c7aefcf103aabba0c37c018bf135fbf179f6ed2f01a0/zarr-3.4.1.tar.gz", hash = "sha256:b34bda11ceb199c81ee78ecd42cd02f46c7f67a6d8a1e9bc501cafd5a1795356", size = 923257, upload-time = "2026-10-08T17:14:25.972Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/5e/d8/9ffd8c237b3559945bb52103cf0eed64ea098f7b7f573f8d2962ef27b4b2/zarr-2.18.7-py3-none-any.whl", hash = "sha256:ac3dc4033e9ae4e9d7b5e27c97ea3eaf1003cc0a07f010bd83d5134bf8c4b223", size = 211273, upload-time = "2025-04-09T07:59:27.039Z" }, + { url = "https://files.pythonhosted.org/packages/a6/82/0dbc9bc77b49cfb9268dc2b2b1dcd04346c8c7ed52e272b76a628a941656/zarr-3.4.1-py3-none-any.whl", hash = "sha256:38b540578a119352bdce02a720d7bfd99846e77f0728c58b1bab3d1f547526a0", size = 405257, upload-time = "2026-10-08T17:14:23.926Z" }, ] [[package]] From e18e9f5ab96b29375999e7858c81923ad8bd9344 Mon Sep 17 00:00:00 2001 From: Julianus Pfeuffer <8102638+jpfeuffer@users.noreply.github.com> Date: Fri, 16 Oct 2026 10:00:12 +0200 Subject: [PATCH 2/7] Remove legacy BGEN conversion and document bio2zarr migration Drop bgen_to_zarr and rechunk_bgen following the maintainer decision. Preserve direct BGEN reading and legacy store unpacking, with tested manual read/chunk/save instructions while bio2zarr BGEN support is pending. Prominently document conversion via bio2zarr in the README, changelog, user guide and API reference. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- README.md | 7 + docs/api.rst | 10 +- docs/changelog.rst | 17 +- docs/conf.py | 6 +- docs/user_guide.rst | 66 ++++-- sgkit/io/bgen/__init__.py | 4 +- sgkit/io/bgen/bgen_reader.py | 261 +----------------------- sgkit/tests/io/bgen/test_bgen_reader.py | 152 ++++---------- 8 files changed, 123 insertions(+), 400 deletions(-) diff --git a/README.md b/README.md index d27828743..629a68c5f 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,13 @@ general-purpose frameworks such as [Xarray](http://xarray.pydata.org/en/stable/) For more information on using sgkit, see the [documentation](https://sgkit-dev.github.io/sgkit/). +**Genetic file conversion:** Use [bio2zarr](https://sgkit-dev.github.io/bio2zarr/) +to convert genetic file formats to Zarr, then load them with `sgkit.load_dataset`. +The deprecated `bgen_to_zarr` and `rechunk_bgen` functions have been removed. +Bio2zarr's BGEN support is [still pending](https://github.com/sgkit-dev/bio2zarr/issues/417); +see the [BGEN migration guide](docs/user_guide.rst#bgen) for the interim +`read_bgen` / Xarray `chunk` / `save_dataset` workflow. + [//]: # (numfocus-fiscal-sponsor-attribution) The sgkit project uses a [custom governance model](./GOVERNANCE.md) diff --git a/docs/api.rst b/docs/api.rst index 512a3ccda..b7fc6e59b 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -9,6 +9,14 @@ IO/imports and exports See :ref:`reading_and_writing_genetic_data` +.. important:: + + **Use bio2zarr for genetic file format conversion to Zarr**, then load the + converted dataset with :func:`sgkit.load_dataset`. The deprecated BGEN + conversion functions ``bgen_to_zarr`` and ``rechunk_bgen`` have been removed. + BGEN support in bio2zarr is still pending; see :ref:`bgen_conversion_migration` + for the interim read/chunk/save workflow. + BGEN ----- @@ -16,9 +24,7 @@ BGEN .. autosummary:: :toctree: generated/ - bgen_to_zarr read_bgen - rechunk_bgen PLINK ----- diff --git a/docs/changelog.rst b/docs/changelog.rst index b2f98dfb3..5886f27ba 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -16,9 +16,16 @@ Breaking changes - Require Zarr Python >= 3 and Xarray >= 2026.9.0. The default on-disk Zarr format remains 2. (:issue:`1355`) -- Remove the incompatible rechunker dependency from the BGEN extra. The - deprecated BGEN conversion functions now use Xarray and Dask; ``max_mem`` - and ``tempdir`` no longer control rechunking. +- **Remove the deprecated BGEN conversion functions** ``sgkit.io.bgen.bgen_to_zarr`` + and ``sgkit.io.bgen.rechunk_bgen``, along with their rechunker dependency. + **Use bio2zarr for genetic file format conversion to Zarr**, and load the + result with :func:`load_dataset`. BGEN support in bio2zarr is still pending + (`bio2zarr issue 417 `_). + Until then, BGEN users can call :func:`sgkit.io.bgen.read_bgen`, + :meth:`xarray.Dataset.chunk`, and :func:`save_dataset` explicitly; this does + not reproduce the old probability quantization, packing, or ``max_mem``/ + ``tempdir`` controls. See :ref:`bgen_conversion_migration`. + (:pr:`1325`, :issue:`1355`) Deprecations ~~~~~~~~~~~~ @@ -26,10 +33,6 @@ Deprecations - Functions for reading and writing plink are deprecated, please use the `bio2zarr `_ and `vcztools `_ packages. (:user:`tomwhite`, :pr:`1324`, :issue:`1318`) -- Using rechunker for rechunking in sgkit is deprecated, please use the the - `Xarray chunk `_ - function directly. - (:user:`tomwhite`, :pr:`1325`) .. Improvements .. ~~~~~~~~~~~~ diff --git a/docs/conf.py b/docs/conf.py index a71360b68..482d17157 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -117,7 +117,11 @@ def filter(self, record: pylogging.LogRecord) -> bool: autosummary_generate = True -nitpick_ignore = [("py:class", "sgkit.display.GenotypeDisplay")] +nitpick_ignore = [ + ("py:class", "sgkit.display.GenotypeDisplay"), + # Zarr's StoreLike alias is rendered as an undocumented TypeAliasType. + ("py:class", "zarr.storage._common.TypeAliasType"), +] # FIXME: Workaround for linking xarray module diff --git a/docs/user_guide.rst b/docs/user_guide.rst index 76cacca96..942b9ad53 100644 --- a/docs/user_guide.rst +++ b/docs/user_guide.rst @@ -13,6 +13,17 @@ User Guide Reading and writing genetic data ================================ +.. important:: + + **Use bio2zarr for genetic file format conversion to Zarr**, then use + :func:`sgkit.load_dataset` for analysis in sgkit. See the + `bio2zarr documentation `_ for + installation and conversion instructions. + + The deprecated BGEN conversion functions ``bgen_to_zarr`` and ``rechunk_bgen`` + have been removed. BGEN conversion in bio2zarr is still pending; BGEN users + should follow :ref:`bgen_conversion_migration` in the meantime. + .. _installation: Installation @@ -38,18 +49,12 @@ To install sgkit with PLINK support:: Converting genetic data to Zarr ------------------------------- -There are broadly two ways of loading genetic file format ``X`` for use in sgkit: - -1. a ``read_X`` function to read the file directly -2. a ``X_to_zarr`` function to convert to Zarr first - -Which one to use depends on the size of the input, as well as the file format (not all file -formats have both options). - -Generally speaking, the ``read_X`` functions are convenience functions that are suitable -for small input files, or where the cost of conversion is small. The ``X_to_zarr`` functions -are more appropriate for large datasets, since the expensive conversion step need only be -paid once. +Genetic file format conversion belongs in +`bio2zarr `__, rather than sgkit. +Convert VCF and PLINK inputs with bio2zarr before analysis, so the expensive +conversion step need only be paid once. The direct ``read_X`` functions are +convenience functions for small inputs or cases where the cost of reading is small; +the PLINK functions are deprecated. After converting a file to Zarr format, it can be loaded with sgkit's :func:`sgkit.load_dataset`. This is like Xarray's :func:`xarray.open_zarr` function, with some useful defaults applied for you. @@ -69,25 +74,46 @@ by recent Zarr releases, preserving string-array chunking on load. By default, Zarr format 2 datasets created by sgkit have `consolidated metadata `_, which makes opening the dataset faster. +.. _bgen_conversion_migration: + BGEN ---- The :func:`sgkit.io.bgen.read_bgen` function loads a single BGEN dataset as Dask arrays within an :class:`xarray.Dataset` from a ``bgen`` file. -The :func:`sgkit.io.bgen.bgen_to_zarr` function converts a ``bgen`` file to Zarr -files stored in sgkit's Xarray data representation, which can then be opened -as a :class:`xarray.Dataset`. +.. warning:: -The deprecated BGEN conversion functions now rechunk with Xarray and Dask, -without the Zarr Python 2-only rechunker package. They still write Zarr format 2 -and preserve probability encoding and packing. The ``max_mem`` and ``tempdir`` -parameters are retained for compatibility but no longer have an effect; configure -chunk sizes and the Dask scheduler to control memory use. + ``sgkit.io.bgen.bgen_to_zarr`` and ``sgkit.io.bgen.rechunk_bgen`` have been + removed. New format-conversion workflows should use bio2zarr, but + **bio2zarr does not yet support BGEN input**. Progress is tracked in + `bio2zarr issue 417 `_. + +Until BGEN support is available in bio2zarr, the equivalent read/chunk/save +steps can be performed explicitly:: + + import sgkit as sg + from sgkit.io.bgen import read_bgen + + ds = read_bgen("input.bgen") + ds = ds.chunk({"variants": 10000, "samples": 1000}) + sg.save_dataset(ds, "output.zarr") + +Choose chunk sizes and Dask scheduler settings appropriate to the available +memory. This example retains the reader's floating-point genotype probabilities +and dosages; it does not perform the removed converters' lossy integer +quantization or variable packing. There are no ``max_mem`` or ``tempdir`` +arguments; those belonged to the removed rechunker-based conversion API. +The ``unpack_variables`` helper in ``sgkit.io.bgen.bgen_reader`` remains +available to restore probabilities and dosages from existing packed stores. PLINK ----- +Use `bio2zarr `__ for PLINK-to-Zarr +conversion and `vcztools `_ for export. +The following sgkit PLINK functions are deprecated. + The :func:`sgkit.io.plink.read_plink` function loads a single PLINK dataset as Dask arrays within an :class:`xarray.Dataset` from ``bed``, ``bim``, and ``fam`` files. diff --git a/sgkit/io/bgen/__init__.py b/sgkit/io/bgen/__init__.py index 8d57ccd82..f45ee4ac7 100644 --- a/sgkit/io/bgen/__init__.py +++ b/sgkit/io/bgen/__init__.py @@ -1,7 +1,7 @@ try: - from .bgen_reader import bgen_to_zarr, read_bgen, rechunk_bgen + from .bgen_reader import read_bgen - __all__ = ["read_bgen", "bgen_to_zarr", "rechunk_bgen"] + __all__ = ["read_bgen"] except ImportError as e: # pragma: no cover msg = ( "sgkit bgen requirements are not installed.\n\n" diff --git a/sgkit/io/bgen/bgen_reader.py b/sgkit/io/bgen/bgen_reader.py index e9212d229..46142b847 100644 --- a/sgkit/io/bgen/bgen_reader.py +++ b/sgkit/io/bgen/bgen_reader.py @@ -1,34 +1,24 @@ """BGEN reader implementation (using bgen_reader)""" import logging import time -import warnings from pathlib import Path -from typing import Any, Dict, Hashable, List, Mapping, Optional, Tuple, Union +from typing import Any, List, Optional, Tuple, Union import dask import dask.array as da import dask.dataframe as dd -import numcodecs import numpy as np import pandas as pd import xarray as xr from cbgen import bgen_file, bgen_metafile from xarray import Dataset -from zarr.storage import StoreLike -from sgkit import create_genotype_dosage_dataset, variables +from sgkit import create_genotype_dosage_dataset from sgkit.io.utils import dataframe_to_dict, encode_contigs from sgkit.typing import ArrayLike, DType, NDArray, PathType logger = logging.getLogger(__name__) -GT_DATA_VARS = [ - variables.call_genotype_probability, - variables.call_genotype_probability_mask, - variables.call_dosage, - variables.call_dosage_mask, -] - METAFILE_DTYPE = dict( [ ("id", "S"), @@ -329,62 +319,8 @@ def _to_dosage(probs: ArrayLike) -> ArrayLike: return probs[..., 1] + 2 * probs[..., 2] -######################## -# Rechunking Functions # -######################## - - -def encode_variables( - ds: Dataset, - chunk_length: int, - chunk_width: int, - compressor: Optional[Any] = numcodecs.Blosc(cname="zstd", clevel=7, shuffle=2), - probability_dtype: Optional[Any] = "uint8", -) -> Dict[Hashable, Dict[str, Any]]: - encoding = {} - for v in ds: - e = {"compressors": compressor} - if v in GT_DATA_VARS: - e.update({"chunks": (chunk_length, chunk_width) + ds[v].shape[2:]}) - if probability_dtype is not None and v == "call_genotype_probability": - dtype = np.dtype(probability_dtype) - # Xarray will decode into float32 so any int greater than - # 16 bits will cause overflow/underflow - # See https://en.wikipedia.org/wiki/Floating-point_arithmetic#Internal_representation - # *bits precision column for single precision floats - if dtype not in [np.uint8, np.uint16]: # type: ignore[comparison-overlap] - raise ValueError( - "Probability integer dtype invalid, must " - f"be uint8 or uint16 not {probability_dtype}" - ) - divisor = np.iinfo(dtype).max - 1 - e.update( - { - "dtype": probability_dtype, - "add_offset": -1.0 / divisor, - "scale_factor": 1.0 / divisor, - "_FillValue": 0, - } - ) - if e: - encoding[v] = e - return encoding - - -def pack_variables(ds: Dataset) -> Dataset: - # Remove dosage as it is unnecessary and should be redefined - # based on encoded probabilities later (w/ reduced precision) - ds = ds.drop_vars(["call_dosage", "call_dosage_mask"], errors="ignore") - - # Remove homozygous reference GP and redefine mask - gp = ds["call_genotype_probability"][..., 1:] - gp_mask = ds["call_genotype_probability_mask"].any(dim="genotypes") - ds = ds.drop_vars(["call_genotype_probability", "call_genotype_probability_mask"]) - ds = ds.assign(call_genotype_probability=gp, call_genotype_probability_mask=gp_mask) - return ds - - def unpack_variables(ds: Dataset, dtype: DType = "float32") -> Dataset: + """Restore probabilities and dosages from legacy packed BGEN-derived stores.""" # Restore homozygous reference GP gp = ds["call_genotype_probability"].astype(dtype) if gp.sizes["genotypes"] != 2: @@ -404,194 +340,3 @@ def unpack_variables(ds: Dataset, dtype: DType = "float32") -> Dataset: "call_genotype_probability_mask" ].broadcast_like(ds["call_genotype_probability"]) return ds - - -def rechunk_bgen( - ds: Dataset, - output: StoreLike, - *, - chunk_length: int = 10_000, - chunk_width: int = 1_000, - compressor: Optional[Any] = numcodecs.Blosc(cname="zstd", clevel=7, shuffle=2), - probability_dtype: Optional[DType] = "uint8", - max_mem: str = "4GB", - pack: bool = True, - tempdir: Optional[PathType] = None, -) -> Dataset: - """Rechunk BGEN dataset as Zarr. - - This function uses Xarray and Dask to rechunk a Dataset for better downstream - performance and writes Zarr format 2. It no longer uses rechunker, which does - not support Zarr Python 3. Memory usage depends on the input and output chunks - and the Dask scheduler; no intermediate store is created. - Experiments show that this Zarr representation is ~20% larger even - with all available optimizations and fairly aggressive compression (i.e. the - default `clevel` 7). - - Note that this function is not evaluated lazily. The rechunking algorithm - will run inline so calls to it may be slow. The resulting Dataset is - generated based on the final, serialized Zarr data. - - .. deprecated:: 0.11.0 - This conversion helper is deprecated, please use the - `Xarray chunk `_ - function directly. - - Parameters - ---------- - ds - Dataset to rechunk, typically the result from `read_bgen`. - output - Zarr store or path to directory in file system. - chunk_length - Length (number of variants) of chunks in which data are stored, by default 10_000. - chunk_width - Width (number of samples) to use when storing chunks in output, by default 1_000. - compressor - Zarr compressor, no compression is used when set as None. - probability_dtype - Data type used to encode genotype probabilities, must be either uint8 or uint16. - Setting this parameter results in a loss of precision. If None, probabilities - will not be altered when stored. - max_mem - Deprecated and no longer used. Memory is managed by Dask. - pack - Whether or not to optimize variable representations by removing unnecessary - dimensions and elements. This includes storing 2 genotypes instead of 3, omitting - dosage and collapsing the genotype probability mask to 2 dimensions. All of - the above are restored in the resulting Dataset at the expense of extra - computations on read. - tempdir - Deprecated and no longer used. No intermediate store is created. - - Warnings - -------- - - This functional is only applicable to diploid, bi-allelic BGEN datasets. - - Returns - ------- - - Dataset - The rechunked dataset. - """ - warnings.warn( - "rechunk_bgen is deprecated, please use Xarray 'chunk' and sgkit.save_dataset directly.", - DeprecationWarning, - stacklevel=2, - ) - if max_mem != "4GB" or tempdir is not None: - warnings.warn( - "max_mem and tempdir no longer control BGEN rechunking; " - "memory is managed by Dask and no intermediate store is created.", - FutureWarning, - stacklevel=2, - ) - - if isinstance(output, Path): - output = str(output) - - chunk_length = min(chunk_length, ds.sizes["variants"]) - chunk_width = min(chunk_width, ds.sizes["samples"]) - - if pack: - ds = pack_variables(ds) - - encoding = encode_variables( - ds, - chunk_length=chunk_length, - chunk_width=chunk_width, - compressor=compressor, - probability_dtype=probability_dtype, - ) - ds = ds.chunk({"variants": chunk_length, "samples": chunk_width}) - ds.to_zarr(output, encoding=encoding, zarr_format=2, consolidated=True, mode="w-") - - ds = xr.open_zarr(output, concat_characters=False) # type: ignore[no-untyped-call] - if pack: - ds = unpack_variables(ds) - - return ds - - -def bgen_to_zarr( - input: PathType, - output: StoreLike, - region: Optional[Mapping[Hashable, Any]] = None, - chunk_length: int = 10_000, - chunk_width: int = 1_000, - temp_chunk_length: int = 100, - compressor: Optional[Any] = numcodecs.Blosc(cname="zstd", clevel=7, shuffle=2), - probability_dtype: Optional[DType] = "uint8", - max_mem: str = "4GB", - pack: bool = True, - tempdir: Optional[PathType] = None, -) -> Dataset: - """Convert a BGEN file to a Zarr on-disk store. - - This function is a convenience for calling :func:`read_bgen` followed by - :func:`rechunk_bgen`. - - Parameters - ---------- - input - Path to local BGEN dataset. - output - Zarr store or path to directory in file system. - region - Indexers on dataset dimensions used to define a subset of data to convert. - Must be None or a dict with keys matching dimension names and values - equal to integers or slice objects. This is passed directly to `Dataset.isel` - so it has the same semantics. - chunk_length - Length (number of variants) of chunks in which data are stored, by default 10_000. - chunk_width - Width (number of samples) to use when storing chunks in output, by default 1_000. - temp_chunk_length - Length of chunks used in raw BGEN read, by default 100. This defines the vertical - chunking (i.e. in the variants dimension) used when reading the raw data and because - there is no horizontal chunking at this phase (i.e. in the samples dimension), this - value should be much smaller than the target `chunk_length`. - compressor - Zarr compressor, by default Blosc + zstd with compression level 7. No compression - is used when set as None. - probability_dtype - Data type used to encode genotype probabilities, must be either uint8 or uint16. - Setting this parameter results in a loss of precision. If None, probabilities - will not be altered when stored. - max_mem - Deprecated and no longer used. Memory is managed by Dask. - pack - Whether or not to optimize variable representations by removing unnecessary - dimensions and elements. This includes storing 2 genotypes instead of 3, omitting - dosage and collapsing the genotype probability mask to 2 dimensions. All of - the above are restored in the resulting Dataset at the expense of extra - computations on read. - tempdir - Deprecated and no longer used. No intermediate store is created. - - Warnings - -------- - - This functional is only applicable to diploid, bi-allelic BGEN datasets. - - Returns - ------- - - Dataset - The rechunked dataset. - """ - ds = read_bgen(input, chunks=(temp_chunk_length, -1, -1)) - if region is not None: - ds = ds.isel(indexers=region) - return rechunk_bgen( - ds, - output, - chunk_length=chunk_length, - chunk_width=chunk_width, - compressor=compressor, - probability_dtype=probability_dtype, - max_mem=max_mem, - pack=pack, - tempdir=tempdir, - ) diff --git a/sgkit/tests/io/bgen/test_bgen_reader.py b/sgkit/tests/io/bgen/test_bgen_reader.py index 428014cda..047c72d41 100644 --- a/sgkit/tests/io/bgen/test_bgen_reader.py +++ b/sgkit/tests/io/bgen/test_bgen_reader.py @@ -1,21 +1,16 @@ -from pathlib import Path -from typing import Any, Tuple +from typing import Tuple -import numcodecs import numpy as np import numpy.testing as npt import pytest import xarray as xr -import zarr -from zarr.storage import MemoryStore +from sgkit import load_dataset, save_dataset +from sgkit.io import bgen from sgkit.io.bgen.bgen_reader import ( - GT_DATA_VARS, BgenReader, _split_alleles, - bgen_to_zarr, read_bgen, - rechunk_bgen, unpack_variables, ) @@ -201,117 +196,54 @@ def test_read_bgen__invalid_chunks(shared_datadir): read_bgen(path, chunks=(100, -1)) # type: ignore[arg-type] -def _rechunk_bgen( - shared_datadir: Path, tmp_path: Path, **kwargs: Any -) -> Tuple[xr.Dataset, xr.Dataset, str]: - path = shared_datadir / "example.bgen" - ds = read_bgen(path, chunks=(10, -1, -1)) - store = tmp_path / "example.zarr" - dsr = rechunk_bgen(ds, store, **kwargs) - return ds, dsr, str(store) - +def test_legacy_conversion_removed(): + assert bgen.__all__ == ["read_bgen"] + for name in ("bgen_to_zarr", "rechunk_bgen"): + assert not hasattr(bgen, name) + assert not hasattr(bgen.bgen_reader, name) -def _open_zarr(store: str, **kwargs: Any) -> xr.Dataset: - # Force concat_characters False to avoid to avoid https://github.com/pydata/xarray/issues/4405 - return xr.open_zarr(store, concat_characters=False, **kwargs) # type: ignore[no-any-return,no-untyped-call] - -@pytest.mark.parametrize("target_chunks", [(10, 10), (50, 50), (100, 50), (50, 100)]) -def test_rechunk_bgen__target_chunks(shared_datadir, tmp_path, target_chunks): - _, dsr, store = _rechunk_bgen( - shared_datadir, - tmp_path, - chunk_length=target_chunks[0], - chunk_width=target_chunks[1], - pack=False, +def test_read_chunk_and_save_bgen(shared_datadir, tmp_path): + ds = read_bgen(shared_datadir / "example.bgen").chunk( + {"variants": 100, "samples": 50} ) - for v in GT_DATA_VARS: - assert dsr[v].data.chunksize[:2] == target_chunks - assert zarr.open_group(store, mode="r").metadata.zarr_format == 2 - - -@pytest.mark.parametrize("compressor", [None, numcodecs.Blosc(cname="zstd", clevel=7)]) -def test_rechunk_bgen__compressor(shared_datadir, tmp_path, compressor): - _, _, store = _rechunk_bgen(shared_datadir, tmp_path, compressor=compressor) - array = zarr.open_group(store, mode="r")["call_genotype_probability"] - assert array.compressors == (() if compressor is None else (compressor,)) - - -def test_rechunk_bgen__memory_store(shared_datadir): - ds = read_bgen(shared_datadir / "example.bgen") - store = MemoryStore() - dsr = rechunk_bgen(ds, store, probability_dtype=None, pack=False) - xr.testing.assert_allclose(ds.compute(), dsr.compute()) - - -def test_rechunk_bgen__legacy_memory_options(shared_datadir, tmp_path): - with pytest.warns(FutureWarning, match="max_mem and tempdir no longer control"): - _rechunk_bgen(shared_datadir, tmp_path, max_mem="1MB", tempdir=tmp_path) - - -def test_rechunk_from_zarr__self_consistent(shared_datadir, tmp_path): - # With no probability dtype or packing, rechunk_{to,from}_zarr is a noop - ds, dsr, store = _rechunk_bgen( - shared_datadir, tmp_path, probability_dtype=None, pack=False - ) - xr.testing.assert_allclose(ds.compute(), dsr.compute()) - - -@pytest.mark.parametrize("dtype", ["uint8", "uint16"]) -def test_rechunk_bgen__probability_encoding(shared_datadir, tmp_path, dtype): - ds, _, store = _rechunk_bgen( - shared_datadir, tmp_path, probability_dtype=dtype, pack=False - ) - dsr = _open_zarr(store, mask_and_scale=False) - v = "call_genotype_probability" - assert dsr[v].shape == ds[v].shape - assert dsr[v].dtype == dtype - dsr = _open_zarr(store, mask_and_scale=True) - # There are two missing calls which equates to - # 6 total nan values across 3 possible genotypes - assert np.isnan(dsr[v].values).sum() == 6 - tolerance = 1.0 / (np.iinfo(dtype).max - 1) - np.testing.assert_allclose(ds[v], dsr[v], atol=tolerance) - - -def test_rechunk_bgen__variable_packing(shared_datadir, tmp_path): - ds, dsr, store = _rechunk_bgen( - shared_datadir, tmp_path, probability_dtype=None, pack=True + store = tmp_path / "example.zarr" + save_dataset(ds, store) + ds2 = load_dataset(store) + xr.testing.assert_allclose(ds.compute(), ds2.compute()) + assert ( + ds2["call_genotype_probability"].chunks + == ds["call_genotype_probability"].chunks ) - # A minor tolerance is necessary here when packing is enabled - # because one of the genotype probabilities is constructed from the others - xr.testing.assert_allclose(ds.compute(), dsr.compute(), atol=1e-6) -@pytest.mark.parametrize("dtype", ["uint32", "int8", "float32"]) -def test_rechunk_bgen__invalid_probability_type(shared_datadir, tmp_path, dtype): - with pytest.raises(ValueError, match="Probability integer dtype invalid"): - _rechunk_bgen(shared_datadir, tmp_path, probability_dtype=dtype) - - -def test_unpack_variables__invalid_gp_dims(shared_datadir, tmp_path): - # Validate that an error is thrown when variables are - # unpacked without being packed in the first place - _, dsr, store = _rechunk_bgen(shared_datadir, tmp_path, pack=False) +def test_unpack_variables__invalid_gp_dims(shared_datadir): with pytest.raises( ValueError, match="Expecting variable 'call_genotype_probability' to have genotypes dimension of size 2", ): - unpack_variables(dsr) + unpack_variables(read_bgen(shared_datadir / "example.bgen")) -@pytest.mark.parametrize( - "region", [None, dict(variants=slice(0, 100)), dict(samples=slice(0, 50))] -) -def test_bgen_to_zarr(shared_datadir, tmp_path, region): - input = shared_datadir / "example.bgen" - output = tmp_path / "example.zarr" - ds = bgen_to_zarr(input, output, region=region) - expected_dims = { - k: EXPECTED_DIMS[k] - if region is None or k not in region - else region[k].stop - region[k].start - for k in EXPECTED_DIMS - } - actual_dims = {k: v for k, v in ds.sizes.items() if k in expected_dims} - assert actual_dims == expected_dims +@pytest.mark.parametrize("dtype", ["float32", "float64"]) +def test_unpack_variables__legacy_store(shared_datadir, tmp_path, dtype): + ds = read_bgen(shared_datadir / "example.bgen") + gp = ds["call_genotype_probability"] + packed = ds.drop_vars( + [ + "call_genotype_probability", + "call_genotype_probability_mask", + "call_dosage", + "call_dosage_mask", + ] + ).assign( + call_genotype_probability=gp[..., 1:], + call_genotype_probability_mask=ds["call_genotype_probability_mask"].any( + dim="genotypes" + ), + ) + store = tmp_path / "legacy.zarr" + save_dataset(packed, store) + restored = unpack_variables(load_dataset(store), dtype=dtype) + xr.testing.assert_allclose(ds.compute(), restored.compute(), atol=1e-6) + assert restored["call_genotype_probability"].dtype == dtype From 402cca5d1507d531c7686fef4dab0dbe8f0e1195 Mon Sep 17 00:00:00 2001 From: Julianus Pfeuffer <8102638+jpfeuffer@users.noreply.github.com> Date: Fri, 16 Oct 2026 16:08:09 +0200 Subject: [PATCH 3/7] Decouple legacy BGEN dataset unpacking from cbgen Expose unpack_variables without the optional BGEN backend, preserve its old import path, and defer native reader imports until BGEN file access. Add blocked-backend import and unpacking regressions, preserve actionable dependency errors, and document the dependency-free API for issue 1331. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- docs/api.rst | 1 + docs/changelog.rst | 5 ++ docs/user_guide.rst | 14 ++++- sgkit/io/bgen/__init__.py | 13 +--- sgkit/io/bgen/bgen_reader.py | 61 +++++++++--------- sgkit/io/bgen/utils.py | 42 +++++++++++++ sgkit/tests/io/bgen/test_bgen_reader.py | 2 +- sgkit/tests/io/test_bgen_utils.py | 84 +++++++++++++++++++++++++ 8 files changed, 177 insertions(+), 45 deletions(-) create mode 100644 sgkit/io/bgen/utils.py create mode 100644 sgkit/tests/io/test_bgen_utils.py diff --git a/docs/api.rst b/docs/api.rst index b7fc6e59b..63584557a 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -25,6 +25,7 @@ BGEN :toctree: generated/ read_bgen + unpack_variables PLINK ----- diff --git a/docs/changelog.rst b/docs/changelog.rst index 5886f27ba..670138364 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -40,6 +40,11 @@ Deprecations Bug fixes ~~~~~~~~~ +- Unpacking legacy BGEN-derived Zarr datasets no longer imports or requires + cbgen. Use :func:`sgkit.io.bgen.unpack_variables`; the original + ``sgkit.io.bgen.bgen_reader.unpack_variables`` import is also preserved. + The optional native dependency is loaded only when reading BGEN files. + (:issue:`1331`) - Fixed bug causing high memory usage in :func:`pedigree_kinship` when evaluating a chunked relationship matrix with the Hamilton-Kerr method. (:user:`timothymillar`, :pr:`1335`, :issue:`1333`) diff --git a/docs/user_guide.rst b/docs/user_guide.rst index 942b9ad53..1204b532a 100644 --- a/docs/user_guide.rst +++ b/docs/user_guide.rst @@ -104,8 +104,18 @@ memory. This example retains the reader's floating-point genotype probabilities and dosages; it does not perform the removed converters' lossy integer quantization or variable packing. There are no ``max_mem`` or ``tempdir`` arguments; those belonged to the removed rechunker-based conversion API. -The ``unpack_variables`` helper in ``sgkit.io.bgen.bgen_reader`` remains -available to restore probabilities and dosages from existing packed stores. +To restore probabilities and dosages from an existing legacy packed store, +use :func:`sgkit.io.bgen.unpack_variables`. **This does not require cbgen or +the BGEN extra**, because it operates only on the converted Xarray dataset:: + + from sgkit.io.bgen import unpack_variables + + ds = sg.load_dataset("legacy-packed.zarr") + ds = unpack_variables(ds) + +The original ``sgkit.io.bgen.bgen_reader.unpack_variables`` import remains +supported without optional BGEN dependencies as well. Only reading a BGEN +file with ``read_bgen`` needs the optional native reader. PLINK ----- diff --git a/sgkit/io/bgen/__init__.py b/sgkit/io/bgen/__init__.py index f45ee4ac7..d1c087e5b 100644 --- a/sgkit/io/bgen/__init__.py +++ b/sgkit/io/bgen/__init__.py @@ -1,11 +1,4 @@ -try: - from .bgen_reader import read_bgen +from .bgen_reader import read_bgen +from .utils import unpack_variables - __all__ = ["read_bgen"] -except ImportError as e: # pragma: no cover - msg = ( - "sgkit bgen requirements are not installed.\n\n" - "Please install them via pip :\n\n" - " pip install 'sgkit[bgen]'" - ) - raise ImportError(str(e) + "\n\n" + msg) from e +__all__ = ["read_bgen", "unpack_variables"] diff --git a/sgkit/io/bgen/bgen_reader.py b/sgkit/io/bgen/bgen_reader.py index 46142b847..d5a17026b 100644 --- a/sgkit/io/bgen/bgen_reader.py +++ b/sgkit/io/bgen/bgen_reader.py @@ -1,7 +1,9 @@ """BGEN reader implementation (using bgen_reader)""" +import importlib import logging import time from pathlib import Path +from types import ModuleType from typing import Any, List, Optional, Tuple, Union import dask @@ -9,16 +11,29 @@ import dask.dataframe as dd import numpy as np import pandas as pd -import xarray as xr -from cbgen import bgen_file, bgen_metafile from xarray import Dataset from sgkit import create_genotype_dosage_dataset +from sgkit.io.bgen.utils import unpack_variables # noqa: F401 from sgkit.io.utils import dataframe_to_dict, encode_contigs from sgkit.typing import ArrayLike, DType, NDArray, PathType logger = logging.getLogger(__name__) + +def _require_cbgen() -> ModuleType: + try: + return importlib.import_module("cbgen") + except ModuleNotFoundError as e: + if e.name != "cbgen": + raise + raise ImportError( + "Reading BGEN files requires the optional sgkit bgen dependencies.\n" + "Install them with: pip install 'sgkit[bgen]'\n" + "Unpacking an existing dataset does not require these dependencies." + ) from e + + METAFILE_DTYPE = dict( [ ("id", "S"), @@ -41,12 +56,13 @@ def __init__( metafile_path: Optional[PathType] = None, dtype: DType = "float32", ) -> None: + cbgen = _require_cbgen() self.path = Path(path) self.metafile_path = ( Path(metafile_path) if metafile_path else self.path.with_suffix(".metafile") ) - with bgen_file(self.path) as bgen: + with cbgen.bgen_file(self.path) as bgen: self.n_variants = bgen.nvariants self.n_samples = bgen.nsamples @@ -61,7 +77,7 @@ def __init__( f"BGEN metafile generation complete ({stop - start:.0f} seconds)" ) - with bgen_metafile(self.metafile_path) as mf: + with cbgen.bgen_metafile(self.metafile_path) as mf: assert self.n_variants == mf.nvariants self.npartitions = mf.npartitions self.partition_size = mf.partition_size @@ -100,7 +116,8 @@ def __getitem__(self, idx: Any) -> NDArray: # Create a list of all offsets into the underlying file at which # data for each variant begins all_vaddr = [] - with bgen_metafile(self.metafile_path) as mf: + cbgen = _require_cbgen() + with cbgen.bgen_metafile(self.metafile_path) as mf: for i in range(start_partition, end_partition + 1): partition = mf.read_partition(i) start_offset = start_partition_offset if i == start_partition else 0 @@ -115,7 +132,7 @@ def __getitem__(self, idx: Any) -> NDArray: # Read the probabilities for each variant, apply indexer for # samples dimension to give probabilities for all genotypes, # and then apply final genotype dimension indexer - with bgen_file(self.path) as bgen: + with cbgen.bgen_file(self.path) as bgen: res = None for i, vaddr in enumerate(all_vaddr): probs = bgen.read_probability(vaddr, precision=self.precision)[idx[1]] @@ -137,7 +154,8 @@ def _split_alleles(allele_ids: bytes) -> List[bytes]: def _read_metafile_partition(path: Path, partition: int) -> pd.DataFrame: - with bgen_metafile(path) as mf: + cbgen = _require_cbgen() + with cbgen.bgen_metafile(path) as mf: part = mf.read_partition(partition) v = part.variants allele_ids = np.array([_split_alleles(aid) for aid in v.allele_ids]) @@ -155,7 +173,8 @@ def _read_metafile_partition(path: Path, partition: int) -> pd.DataFrame: def read_metafile(path: PathType) -> dd.DataFrame: """Read cbgen metafile containing partitioned variant info""" - with bgen_metafile(path) as mf: + cbgen = _require_cbgen() + with cbgen.bgen_metafile(path) as mf: divisions = [mf.partition_size * i for i in range(mf.npartitions)] + [ mf.nvariants - 1 ] @@ -304,7 +323,8 @@ def read_bgen( def _default_sample_ids(path: PathType) -> ArrayLike: """Fetch or generate sample ids""" - with bgen_file(path) as bgen: + cbgen = _require_cbgen() + with cbgen.bgen_file(path) as bgen: if bgen.contain_samples: return bgen.read_samples() else: @@ -317,26 +337,3 @@ def _to_dosage(probs: ArrayLike) -> ArrayLike: probs.shape[-1] == 3 ), f"Expecting genotype (trailing) dimension of size 3, got array of shape {probs.shape}" return probs[..., 1] + 2 * probs[..., 2] - - -def unpack_variables(ds: Dataset, dtype: DType = "float32") -> Dataset: - """Restore probabilities and dosages from legacy packed BGEN-derived stores.""" - # Restore homozygous reference GP - gp = ds["call_genotype_probability"].astype(dtype) - if gp.sizes["genotypes"] != 2: - raise ValueError( - "Expecting variable 'call_genotype_probability' to have genotypes " - f"dimension of size 2 (received sizes = {dict(gp.sizes)})" - ) - ds = ds.drop_vars("call_genotype_probability") - ds["call_genotype_probability"] = xr.concat( - [1 - gp.sum(dim="genotypes", skipna=False), gp], dim="genotypes" - ) - - # Restore dosage - ds["call_dosage"] = gp[..., 0] + 2 * gp[..., 1] - ds["call_dosage_mask"] = ds["call_genotype_probability_mask"] - ds["call_genotype_probability_mask"] = ds[ - "call_genotype_probability_mask" - ].broadcast_like(ds["call_genotype_probability"]) - return ds diff --git a/sgkit/io/bgen/utils.py b/sgkit/io/bgen/utils.py new file mode 100644 index 000000000..e6795c7ee --- /dev/null +++ b/sgkit/io/bgen/utils.py @@ -0,0 +1,42 @@ +import xarray as xr +from xarray import Dataset + +from sgkit.typing import DType + + +def unpack_variables(ds: Dataset, dtype: DType = "float32") -> Dataset: + """Restore probabilities and dosages from a legacy packed BGEN-derived dataset. + + This operates on an existing Xarray dataset and requires no BGEN reader or + optional BGEN dependencies. + + Parameters + ---------- + ds + Dataset containing two stored genotype probabilities per call and a + two-dimensional ``call_genotype_probability_mask``. + dtype + Floating-point dtype for the restored probabilities, by default float32. + + Returns + ------- + Dataset + Dataset with all three genotype probabilities, dosage and their masks. + """ + gp = ds["call_genotype_probability"].astype(dtype) + if gp.sizes["genotypes"] != 2: + raise ValueError( + "Expecting variable 'call_genotype_probability' to have genotypes " + f"dimension of size 2 (received sizes = {dict(gp.sizes)})" + ) + ds = ds.drop_vars("call_genotype_probability") + ds["call_genotype_probability"] = xr.concat( + [1 - gp.sum(dim="genotypes", skipna=False), gp], dim="genotypes" + ) + + ds["call_dosage"] = gp[..., 0] + 2 * gp[..., 1] + ds["call_dosage_mask"] = ds["call_genotype_probability_mask"] + ds["call_genotype_probability_mask"] = ds[ + "call_genotype_probability_mask" + ].broadcast_like(ds["call_genotype_probability"]) + return ds diff --git a/sgkit/tests/io/bgen/test_bgen_reader.py b/sgkit/tests/io/bgen/test_bgen_reader.py index 047c72d41..e82835c63 100644 --- a/sgkit/tests/io/bgen/test_bgen_reader.py +++ b/sgkit/tests/io/bgen/test_bgen_reader.py @@ -197,7 +197,7 @@ def test_read_bgen__invalid_chunks(shared_datadir): def test_legacy_conversion_removed(): - assert bgen.__all__ == ["read_bgen"] + assert bgen.__all__ == ["read_bgen", "unpack_variables"] for name in ("bgen_to_zarr", "rechunk_bgen"): assert not hasattr(bgen, name) assert not hasattr(bgen.bgen_reader, name) diff --git a/sgkit/tests/io/test_bgen_utils.py b/sgkit/tests/io/test_bgen_utils.py new file mode 100644 index 000000000..ce607381d --- /dev/null +++ b/sgkit/tests/io/test_bgen_utils.py @@ -0,0 +1,84 @@ +import subprocess +import sys +import textwrap + +import pytest + +from sgkit.io.bgen import unpack_variables +from sgkit.io.bgen.bgen_reader import _require_cbgen +from sgkit.io.bgen.bgen_reader import unpack_variables as legacy_unpack_variables +from sgkit.io.bgen.utils import unpack_variables as utility_unpack_variables + + +def test_unpack_variables_import_paths(): + assert unpack_variables is legacy_unpack_variables + assert unpack_variables is utility_unpack_variables + + +def test_unpack_variables_without_cbgen(): + code = textwrap.dedent( + """ + import importlib.abc + import sys + + class BlockCbgen(importlib.abc.MetaPathFinder): + def find_spec(self, fullname, path=None, target=None): + if fullname == "cbgen" or fullname.startswith("cbgen."): + raise AssertionError("Unpacking must not import cbgen") + + sys.meta_path.insert(0, BlockCbgen()) + + import numpy as np + import xarray as xr + from sgkit.io.bgen import unpack_variables, read_bgen + from sgkit.io.bgen.bgen_reader import unpack_variables as legacy_unpack + from sgkit.io.bgen.utils import unpack_variables as utility_unpack + + assert unpack_variables is legacy_unpack is utility_unpack + ds = xr.Dataset({ + "call_genotype_probability": ( + ("variants", "samples", "genotypes"), + [[[0.25, 0.5], [np.nan, np.nan]]], + ), + "call_genotype_probability_mask": ( + ("variants", "samples"), [[False, True]] + ), + }).chunk({"variants": 1, "samples": 1}) + result = unpack_variables(ds) + assert result.call_genotype_probability.chunks is not None + np.testing.assert_allclose( + result.call_genotype_probability.compute(), + [[[0.25, 0.25, 0.5], [np.nan, np.nan, np.nan]]], + ) + np.testing.assert_allclose(result.call_dosage.compute(), [[1.25, np.nan]]) + np.testing.assert_array_equal(result.call_dosage_mask, [[False, True]]) + np.testing.assert_array_equal( + result.call_genotype_probability_mask, + [[[False, False, False], [True, True, True]]], + ) + assert "cbgen" not in sys.modules + """ + ) + subprocess.run( + [sys.executable, "-c", code], check=True, capture_output=True, text=True + ) + + +@pytest.mark.parametrize("missing_module", ["cbgen", "backend_dependency"]) +def test_bgen_missing_backend(monkeypatch, missing_module): + def missing_import(name): + assert name == "cbgen" + raise ModuleNotFoundError( + f"No module named '{missing_module}'", name=missing_module + ) + + monkeypatch.setattr( + "sgkit.io.bgen.bgen_reader.importlib.import_module", missing_import + ) + if missing_module == "cbgen": + with pytest.raises(ImportError, match=r"pip install 'sgkit\[bgen\]'"): + _require_cbgen() + else: + with pytest.raises(ModuleNotFoundError) as exc: + _require_cbgen() + assert exc.value.name == missing_module From 8b7f89587e411cf0c23534c5e0619ba9c983237d Mon Sep 17 00:00:00 2001 From: Julianus Pfeuffer <8102638+jpfeuffer@users.noreply.github.com> Date: Fri, 16 Oct 2026 16:20:13 +0200 Subject: [PATCH 4/7] Remove native BGEN reader and cbgen dependency Delegate BGEN conversion to bio2zarr, remove the bgen extra and reader-only fixtures, and update dependency locking and wheel CI. Retain only dependency-free legacy unpacking and its compatibility import. Document the packed-store signature, reconstruction, missingness, lazy execution, and when not to unpack. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .github/scripts/test_sgkit.py | 23 ++ .github/scripts/test_sgkit_bgen.py | 11 - .github/workflows/build-gpu.yml | 2 +- .github/workflows/wheels.yml | 6 +- README.md | 9 +- docs/api.rst | 11 +- docs/changelog.rst | 17 +- docs/user_guide.rst | 92 ++--- pyproject.toml | 7 +- sgkit/io/bgen/__init__.py | 3 +- sgkit/io/bgen/bgen_reader.py | 342 +----------------- sgkit/io/bgen/utils.py | 58 ++- sgkit/io/utils.py | 17 +- sgkit/stats/conversion.py | 3 +- sgkit/tests/io/bgen/__init__.py | 0 sgkit/tests/io/bgen/data/.gitignore | 2 - .../io/bgen/data/example-no-samples.bgen | Bin 17334 -> 0 bytes .../bgen/data/example-separate-samples.bgen | Bin 17402 -> 0 bytes .../bgen/data/example-separate-samples.sample | 7 - sgkit/tests/io/bgen/data/example.bgen | Bin 665108 -> 0 bytes sgkit/tests/io/bgen/data/samples | 5 - sgkit/tests/io/bgen/test_bgen_reader.py | 249 ------------- sgkit/tests/io/test_bgen_utils.py | 94 ++++- uv.lock | 65 +--- 24 files changed, 240 insertions(+), 783 deletions(-) delete mode 100644 .github/scripts/test_sgkit_bgen.py delete mode 100644 sgkit/tests/io/bgen/__init__.py delete mode 100644 sgkit/tests/io/bgen/data/.gitignore delete mode 100644 sgkit/tests/io/bgen/data/example-no-samples.bgen delete mode 100644 sgkit/tests/io/bgen/data/example-separate-samples.bgen delete mode 100644 sgkit/tests/io/bgen/data/example-separate-samples.sample delete mode 100644 sgkit/tests/io/bgen/data/example.bgen delete mode 100644 sgkit/tests/io/bgen/data/samples delete mode 100644 sgkit/tests/io/bgen/test_bgen_reader.py diff --git a/.github/scripts/test_sgkit.py b/.github/scripts/test_sgkit.py index 1ad14f2e2..2f62e7dd3 100644 --- a/.github/scripts/test_sgkit.py +++ b/.github/scripts/test_sgkit.py @@ -1,5 +1,28 @@ +from importlib.metadata import metadata, requires + +import xarray as xr + import sgkit as sg +from sgkit.io import bgen if __name__ == "__main__": ds = sg.simulate_genotype_call_dataset(n_variant=100, n_sample=50, n_contig=23) print(ds) + assert bgen.__all__ == ["unpack_variables"] + assert "bgen" not in metadata("sgkit").get_all("Provides-Extra", []) + assert not any("cbgen" in requirement for requirement in requires("sgkit")) + packed = xr.Dataset( + { + "call_genotype_probability": ( + ("variants", "samples", "genotypes"), + [[[0.25, 0.5]]], + ), + "call_genotype_probability_mask": ( + ("variants", "samples"), + [[False]], + ), + } + ) + unpacked = bgen.unpack_variables(packed) + assert unpacked.call_genotype_probability.values.tolist() == [[[0.25, 0.25, 0.5]]] + assert unpacked.call_dosage.item() == 1.25 diff --git a/.github/scripts/test_sgkit_bgen.py b/.github/scripts/test_sgkit_bgen.py deleted file mode 100644 index 1d0a334c0..000000000 --- a/.github/scripts/test_sgkit_bgen.py +++ /dev/null @@ -1,11 +0,0 @@ -import urllib.request - -from sgkit.io.bgen import read_bgen - -if __name__ == "__main__": - urllib.request.urlretrieve( - "https://github.com/sgkit-dev/sgkit/raw/main/sgkit/tests/io/bgen/data/example.bgen", - "example.bgen", - ) - ds = read_bgen("example.bgen") - print(ds) diff --git a/.github/workflows/build-gpu.yml b/.github/workflows/build-gpu.yml index fcb021b89..d9f30a0a2 100644 --- a/.github/workflows/build-gpu.yml +++ b/.github/workflows/build-gpu.yml @@ -49,7 +49,7 @@ jobs: run: | conda install -c nvidia cudatoolkit # Avoid building SciPy from source in CI. - uv pip install --only-binary scipy --python "$CONDA_PREFIX/bin/python" -e ".[bgen,plink]" --group test + uv pip install --only-binary scipy --python "$CONDA_PREFIX/bin/python" -e ".[plink]" --group test - name: Numba Information run: | diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 8450fc622..b725e1420 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -81,9 +81,8 @@ jobs: # Avoid building SciPy from source in CI. wheel=$(ls artifact/sgkit-*.whl) uv venv --python "${{ matrix.python-version }}" - uv pip install --python .venv --only-binary scipy "${wheel}[bgen,plink]" + uv pip install --python .venv --only-binary scipy "${wheel}[plink]" uv run --no-sync python sgkit-copy/.github/scripts/test_sgkit.py - uv run --no-sync python sgkit-copy/.github/scripts/test_sgkit_bgen.py uv run --no-sync python sgkit-copy/.github/scripts/test_sgkit_plink.py windows-test: @@ -120,9 +119,8 @@ jobs: # Avoid building SciPy from source in CI. $wheel = (Get-ChildItem artifact/sgkit-*.whl).FullName uv venv --python "${{ matrix.python-version }}" - uv pip install --python .venv --only-binary scipy "${wheel}[bgen,plink]" + uv pip install --python .venv --only-binary scipy "${wheel}[plink]" uv run --no-sync python sgkit-copy/.github/scripts/test_sgkit.py - uv run --no-sync python sgkit-copy/.github/scripts/test_sgkit_bgen.py uv run --no-sync python sgkit-copy/.github/scripts/test_sgkit_plink.py diff --git a/README.md b/README.md index 629a68c5f..89ee63c08 100644 --- a/README.md +++ b/README.md @@ -12,10 +12,11 @@ For more information on using sgkit, see the [documentation](https://sgkit-dev.g **Genetic file conversion:** Use [bio2zarr](https://sgkit-dev.github.io/bio2zarr/) to convert genetic file formats to Zarr, then load them with `sgkit.load_dataset`. -The deprecated `bgen_to_zarr` and `rechunk_bgen` functions have been removed. -Bio2zarr's BGEN support is [still pending](https://github.com/sgkit-dev/bio2zarr/issues/417); -see the [BGEN migration guide](docs/user_guide.rst#bgen) for the interim -`read_bgen` / Xarray `chunk` / `save_dataset` workflow. +The BGEN reader, conversion functions and `bgen` extra have been removed; +sgkit no longer depends on cbgen. Use a bio2zarr version with BGEN support +(tracked in [bio2zarr issue 417](https://github.com/sgkit-dev/bio2zarr/issues/417)). +See the [BGEN migration guide](docs/user_guide.rst#bgen) for details and +`unpack_variables`, retained only for existing legacy packed Zarr stores. [//]: # (numfocus-fiscal-sponsor-attribution) diff --git a/docs/api.rst b/docs/api.rst index 63584557a..85a8c519b 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -12,19 +12,20 @@ See :ref:`reading_and_writing_genetic_data` .. important:: **Use bio2zarr for genetic file format conversion to Zarr**, then load the - converted dataset with :func:`sgkit.load_dataset`. The deprecated BGEN - conversion functions ``bgen_to_zarr`` and ``rechunk_bgen`` have been removed. - BGEN support in bio2zarr is still pending; see :ref:`bgen_conversion_migration` - for the interim read/chunk/save workflow. + converted dataset with :func:`sgkit.load_dataset`. The BGEN reader and + conversion functions have been removed. See :ref:`bgen_conversion_migration` + for migration and legacy-store unpacking guidance. BGEN ----- +Only the helper for existing legacy packed stores remains; it does not read +BGEN files or require an optional backend. + .. currentmodule:: sgkit.io.bgen .. autosummary:: :toctree: generated/ - read_bgen unpack_variables PLINK diff --git a/docs/changelog.rst b/docs/changelog.rst index 670138364..cf764e3eb 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -16,15 +16,15 @@ Breaking changes - Require Zarr Python >= 3 and Xarray >= 2026.9.0. The default on-disk Zarr format remains 2. (:issue:`1355`) -- **Remove the deprecated BGEN conversion functions** ``sgkit.io.bgen.bgen_to_zarr`` - and ``sgkit.io.bgen.rechunk_bgen``, along with their rechunker dependency. +- **Remove BGEN reading and conversion**: ``sgkit.io.bgen.read_bgen``, + ``sgkit.io.bgen.bgen_to_zarr`` and ``sgkit.io.bgen.rechunk_bgen``, along with + the ``bgen`` extra and the cbgen and rechunker dependencies. **Use bio2zarr for genetic file format conversion to Zarr**, and load the - result with :func:`load_dataset`. BGEN support in bio2zarr is still pending + result with :func:`load_dataset`. BGEN input requires a bio2zarr version + with BGEN support (`bio2zarr issue 417 `_). - Until then, BGEN users can call :func:`sgkit.io.bgen.read_bgen`, - :meth:`xarray.Dataset.chunk`, and :func:`save_dataset` explicitly; this does - not reproduce the old probability quantization, packing, or ``max_mem``/ - ``tempdir`` controls. See :ref:`bgen_conversion_migration`. + The dependency-free :func:`sgkit.io.bgen.unpack_variables` helper remains + for existing legacy packed stores. See :ref:`bgen_conversion_migration`. (:pr:`1325`, :issue:`1355`) Deprecations @@ -43,7 +43,8 @@ Bug fixes - Unpacking legacy BGEN-derived Zarr datasets no longer imports or requires cbgen. Use :func:`sgkit.io.bgen.unpack_variables`; the original ``sgkit.io.bgen.bgen_reader.unpack_variables`` import is also preserved. - The optional native dependency is loaded only when reading BGEN files. + Its documentation explains the legacy packing convention and when unpacking + is needed; ordinary unpacked datasets and new bio2zarr output do not need it. (:issue:`1331`) - Fixed bug causing high memory usage in :func:`pedigree_kinship` when evaluating a chunked relationship matrix with the Hamilton-Kerr method. diff --git a/docs/user_guide.rst b/docs/user_guide.rst index 1204b532a..9f8e079b5 100644 --- a/docs/user_guide.rst +++ b/docs/user_guide.rst @@ -20,28 +20,25 @@ Reading and writing genetic data `bio2zarr documentation `_ for installation and conversion instructions. - The deprecated BGEN conversion functions ``bgen_to_zarr`` and ``rechunk_bgen`` - have been removed. BGEN conversion in bio2zarr is still pending; BGEN users - should follow :ref:`bgen_conversion_migration` in the meantime. + BGEN reading and conversion have been removed from sgkit, along with the + optional cbgen dependency. See :ref:`bgen_conversion_migration` for conversion + guidance and support for existing legacy packed stores. .. _installation: Installation ------------ -Sgkit can read standard genetic file formats, including PLINK and BGEN. For reading VCF, -please use the `bio2zarr `_ package. +Sgkit reads Zarr datasets directly. For VCF, BGEN and PLINK conversion, use +`bio2zarr `_. The deprecated direct PLINK +reader remains available with optional dependencies. -If sgkit has been installed using conda, support for reading BGEN and PLINK is included. +If sgkit has been installed using conda, support for reading PLINK is included. -If sgkit has been installed using pip, then support for reading these formats is +If sgkit has been installed using pip, then support for reading PLINK is not included, and requires additional dependencies, which can be installed as an "extra" feature using pip, as follows. -To install sgkit with BGEN support:: - - $ pip install 'sgkit[bgen]' - To install sgkit with PLINK support:: $ pip install 'sgkit[plink]' @@ -51,10 +48,10 @@ Converting genetic data to Zarr Genetic file format conversion belongs in `bio2zarr `__, rather than sgkit. -Convert VCF and PLINK inputs with bio2zarr before analysis, so the expensive -conversion step need only be paid once. The direct ``read_X`` functions are -convenience functions for small inputs or cases where the cost of reading is small; -the PLINK functions are deprecated. +Convert inputs with bio2zarr before analysis, so the expensive conversion step +need only be paid once. BGEN input requires a bio2zarr version with BGEN support +(see :ref:`bgen_conversion_migration`). The remaining direct PLINK functions +are deprecated convenience functions for small inputs. After converting a file to Zarr format, it can be loaded with sgkit's :func:`sgkit.load_dataset`. This is like Xarray's :func:`xarray.open_zarr` function, with some useful defaults applied for you. @@ -79,43 +76,52 @@ which makes opening the dataset faster. BGEN ---- -The :func:`sgkit.io.bgen.read_bgen` function loads a single BGEN dataset as Dask -arrays within an :class:`xarray.Dataset` from a ``bgen`` file. - .. warning:: - ``sgkit.io.bgen.bgen_to_zarr`` and ``sgkit.io.bgen.rechunk_bgen`` have been - removed. New format-conversion workflows should use bio2zarr, but - **bio2zarr does not yet support BGEN input**. Progress is tracked in - `bio2zarr issue 417 `_. + ``sgkit.io.bgen.read_bgen``, ``sgkit.io.bgen.bgen_to_zarr`` and + ``sgkit.io.bgen.rechunk_bgen`` have been removed, together with the ``bgen`` + extra. Sgkit no longer reads BGEN files or depends on cbgen. -Until BGEN support is available in bio2zarr, the equivalent read/chunk/save -steps can be performed explicitly:: +Use bio2zarr for BGEN conversion, then load the resulting Zarr dataset with +:func:`sgkit.load_dataset`. Install a bio2zarr version that includes BGEN support; +availability is tracked in +`bio2zarr issue 417 `_. +An older bio2zarr release without BGEN support cannot replace the removed reader. +Sgkit does not provide an alternative BGEN conversion path. - import sgkit as sg - from sgkit.io.bgen import read_bgen +Legacy packed stores +~~~~~~~~~~~~~~~~~~~~ - ds = read_bgen("input.bgen") - ds = ds.chunk({"variants": 10000, "samples": 1000}) - sg.save_dataset(ds, "output.zarr") - -Choose chunk sizes and Dask scheduler settings appropriate to the available -memory. This example retains the reader's floating-point genotype probabilities -and dosages; it does not perform the removed converters' lossy integer -quantization or variable packing. There are no ``max_mem`` or ``tempdir`` -arguments; those belonged to the removed rechunker-based conversion API. -To restore probabilities and dosages from an existing legacy packed store, -use :func:`sgkit.io.bgen.unpack_variables`. **This does not require cbgen or -the BGEN extra**, because it operates only on the converted Xarray dataset:: +Some older sgkit BGEN converters packed variables to reduce storage size: +they saved only the heterozygous and homozygous-alternate probabilities, +omitted dosage, and used one missingness flag per variant/sample pair. +For these **known legacy packed stores only**, use +:func:`sgkit.io.bgen.unpack_variables` after loading and before methods that +expect complete genotype probabilities or dosage. This helper operates on an +existing Xarray dataset and needs no BGEN backend:: + import sgkit as sg from sgkit.io.bgen import unpack_variables - ds = sg.load_dataset("legacy-packed.zarr") - ds = unpack_variables(ds) - + packed = sg.load_dataset("legacy-packed.zarr") + ds = unpack_variables(packed) + +The expected signature is ``call_genotype_probability`` with dimensions +``(variants, samples, genotypes)`` and **two** stored probabilities, plus +``call_genotype_probability_mask`` with dimensions ``(variants, samples)``. +Unpacking restores three diploid, biallelic genotype probabilities, computes +alternate-allele dosage, and expands the probability mask. For example, +``[0.25, 0.5]`` becomes ``[0.25, 0.25, 0.5]`` with dosage ``1.25``. +Missing probabilities remain NaN. The input is unchanged and Dask arrays +remain lazy; lost quantization precision cannot be recovered. + +**Do not unpack ordinary datasets, new bio2zarr output, or an already-unpacked +store.** A two-state probability array alone is not evidence of legacy packing: +other ploidies or allele counts can also produce two states. The helper is not +a general BGEN decoder or schema adapter. :func:`sgkit.load_dataset` does not +automatically detect or unpack legacy stores. The original ``sgkit.io.bgen.bgen_reader.unpack_variables`` import remains -supported without optional BGEN dependencies as well. Only reading a BGEN -file with ``read_bgen`` needs the optional native reader. +supported as a compatibility alias; that module no longer contains a reader. PLINK ----- diff --git a/pyproject.toml b/pyproject.toml index dfd0ab5f1..a0cd46283 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -41,7 +41,6 @@ content-type = "text/x-rst" [project.optional-dependencies] plink = ["partd", "bed-reader"] -bgen = ["cbgen > 1.0.5"] [dependency-groups] test = [ @@ -62,7 +61,7 @@ test = [ "aiohttp", "requests", "graphviz", - "sgkit[plink,bgen]", + "sgkit[plink]", ] docs = [ "graphviz", @@ -189,10 +188,6 @@ ignore_missing_imports = true module = ["sklearn.*"] ignore_missing_imports = true -[[tool.mypy.overrides]] -module = ["cbgen.*"] -ignore_missing_imports = true - [[tool.mypy.overrides]] module = ["bed_reader.*"] ignore_missing_imports = true diff --git a/sgkit/io/bgen/__init__.py b/sgkit/io/bgen/__init__.py index d1c087e5b..abaaba5bd 100644 --- a/sgkit/io/bgen/__init__.py +++ b/sgkit/io/bgen/__init__.py @@ -1,4 +1,3 @@ -from .bgen_reader import read_bgen from .utils import unpack_variables -__all__ = ["read_bgen", "unpack_variables"] +__all__ = ["unpack_variables"] diff --git a/sgkit/io/bgen/bgen_reader.py b/sgkit/io/bgen/bgen_reader.py index d5a17026b..72857bc8d 100644 --- a/sgkit/io/bgen/bgen_reader.py +++ b/sgkit/io/bgen/bgen_reader.py @@ -1,339 +1,9 @@ -"""BGEN reader implementation (using bgen_reader)""" -import importlib -import logging -import time -from pathlib import Path -from types import ModuleType -from typing import Any, List, Optional, Tuple, Union +"""Compatibility import for unpacking legacy stores; BGEN reading was removed. -import dask -import dask.array as da -import dask.dataframe as dd -import numpy as np -import pandas as pd -from xarray import Dataset +Use bio2zarr to convert BGEN inputs and :func:`sgkit.load_dataset` to load Zarr. +New code should import :func:`sgkit.io.bgen.unpack_variables` directly. +""" -from sgkit import create_genotype_dosage_dataset -from sgkit.io.bgen.utils import unpack_variables # noqa: F401 -from sgkit.io.utils import dataframe_to_dict, encode_contigs -from sgkit.typing import ArrayLike, DType, NDArray, PathType +from .utils import unpack_variables -logger = logging.getLogger(__name__) - - -def _require_cbgen() -> ModuleType: - try: - return importlib.import_module("cbgen") - except ModuleNotFoundError as e: - if e.name != "cbgen": - raise - raise ImportError( - "Reading BGEN files requires the optional sgkit bgen dependencies.\n" - "Install them with: pip install 'sgkit[bgen]'\n" - "Unpacking an existing dataset does not require these dependencies." - ) from e - - -METAFILE_DTYPE = dict( - [ - ("id", "S"), - ("rsid", "S"), - ("chrom", "S"), - ("pos", "int32"), - ("a1", "S"), - ("a2", "S"), - ("offset", "int64"), - ] -) - - -class BgenReader: - name = "bgen_reader" - - def __init__( - self, - path: PathType, - metafile_path: Optional[PathType] = None, - dtype: DType = "float32", - ) -> None: - cbgen = _require_cbgen() - self.path = Path(path) - self.metafile_path = ( - Path(metafile_path) if metafile_path else self.path.with_suffix(".metafile") - ) - - with cbgen.bgen_file(self.path) as bgen: - self.n_variants = bgen.nvariants - self.n_samples = bgen.nsamples - - if not self.metafile_path.exists(): - start = time.time() - logger.info( - f"Generating BGEN metafile for '{self.path}' (this may take a while)" - ) - bgen.create_metafile(self.metafile_path, verbose=False) - stop = time.time() - logger.info( - f"BGEN metafile generation complete ({stop - start:.0f} seconds)" - ) - - with cbgen.bgen_metafile(self.metafile_path) as mf: - assert self.n_variants == mf.nvariants - self.npartitions = mf.npartitions - self.partition_size = mf.partition_size - - self.shape = (self.n_variants, self.n_samples, 3) - self.dtype = np.dtype(dtype) - self.precision = 64 if self.dtype.itemsize >= 8 else 32 - self.ndim = 3 - - def __getitem__(self, idx: Any) -> NDArray: - if not isinstance(idx, tuple): - raise IndexError(f"Indexer must be tuple (received {type(idx)})") - if len(idx) != self.ndim: - raise IndexError( - f"Indexer must have {self.ndim} items (received {len(idx)} slices)" - ) - if not all(isinstance(i, slice) or isinstance(i, int) for i in idx): - raise IndexError( - f"Indexer must contain only slices or ints (received types {[type(i) for i in idx]})" - ) - # Determine which dims should have unit size in result - squeeze_dims = tuple(i for i in range(len(idx)) if isinstance(idx[i], int)) - # Convert all indexers to slices - idx = tuple(slice(i, i + 1) if isinstance(i, int) else i for i in idx) - - if idx[0].start == idx[0].stop: - return np.empty((0,) * self.ndim, dtype=self.dtype) - - # Determine start and end partitions that correspond to the - # given variant dimension indexer - start_partition = idx[0].start // self.partition_size - start_partition_offset = idx[0].start % self.partition_size - end_partition = (idx[0].stop - 1) // self.partition_size - end_partition_offset = (idx[0].stop - 1) % self.partition_size - - # Create a list of all offsets into the underlying file at which - # data for each variant begins - all_vaddr = [] - cbgen = _require_cbgen() - with cbgen.bgen_metafile(self.metafile_path) as mf: - for i in range(start_partition, end_partition + 1): - partition = mf.read_partition(i) - start_offset = start_partition_offset if i == start_partition else 0 - end_offset = ( - end_partition_offset + 1 - if i == end_partition - else self.partition_size - ) - vaddr = partition.variants.offset - all_vaddr.extend(vaddr[start_offset:end_offset].tolist()) - - # Read the probabilities for each variant, apply indexer for - # samples dimension to give probabilities for all genotypes, - # and then apply final genotype dimension indexer - with cbgen.bgen_file(self.path) as bgen: - res = None - for i, vaddr in enumerate(all_vaddr): - probs = bgen.read_probability(vaddr, precision=self.precision)[idx[1]] - assert len(probs.shape) == 2 and probs.shape[1] == 3 - if res is None: - res = np.zeros((len(all_vaddr), len(probs), 3), dtype=self.dtype) - res[i] = probs - res = res[..., idx[2]] # type: ignore[index] - return np.squeeze(res, axis=squeeze_dims) # type: ignore[arg-type] - - -def _split_alleles(allele_ids: bytes) -> List[bytes]: - alleles = allele_ids.split(b",") - if len(alleles) != 2: - raise NotImplementedError( - f"Bgen reads only supported for biallelic variants (found non-biallelic variant '{str(allele_ids)}')" - ) - return alleles - - -def _read_metafile_partition(path: Path, partition: int) -> pd.DataFrame: - cbgen = _require_cbgen() - with cbgen.bgen_metafile(path) as mf: - part = mf.read_partition(partition) - v = part.variants - allele_ids = np.array([_split_alleles(aid) for aid in v.allele_ids]) - data = { - "id": v.id, - "rsid": v.rsid, - "chrom": v.chromosome, - "pos": v.position, - "a1": allele_ids[:, 0], - "a2": allele_ids[:, 1], - "offset": v.offset, - } - return pd.DataFrame(data).astype(METAFILE_DTYPE) - - -def read_metafile(path: PathType) -> dd.DataFrame: - """Read cbgen metafile containing partitioned variant info""" - cbgen = _require_cbgen() - with cbgen.bgen_metafile(path) as mf: - divisions = [mf.partition_size * i for i in range(mf.npartitions)] + [ - mf.nvariants - 1 - ] - dfs = [ - dask.delayed(_read_metafile_partition)(path, i) - for i in range(mf.npartitions) - ] - meta = dd.utils.make_meta(METAFILE_DTYPE) - return dd.from_delayed(dfs, meta=meta, divisions=divisions, verify_meta=False) - - -def read_samples(path: PathType) -> pd.DataFrame: - """Read BGEN .sample file""" - df = pd.read_csv(path, sep=" ", skiprows=[1], usecols=[0]) - df.columns = ["sample_id"] - return df - - -def read_bgen( - path: PathType, - metafile_path: Optional[PathType] = None, - sample_path: Optional[PathType] = None, - chunks: Union[str, int, Tuple[int, int, int]] = "auto", - lock: bool = False, - persist: bool = True, - contig_dtype: DType = "str", - gp_dtype: DType = "float32", -) -> Dataset: - """Read BGEN dataset. - - Loads a single BGEN dataset as dask arrays within a Dataset - from a ``.bgen`` file. - - Parameters - ---------- - path - Path to BGEN file. - metafile_path - Path to companion index file used to determine BGEN byte offsets. - Defaults to ``path`` + ".metafile" if not provided. - This file is necessary for reading BGEN genotype probabilities and it will be - generated the first time the file is read if it does not already exist. - If it needs to be created, it can make the first call to this function - much slower than subsequent calls. - sample_path - Path to ``.sample`` file, by default None. This is used to fetch sample identifiers - and when provided it is preferred over sample identifiers embedded in the ``.bgen`` file. - chunks - Chunk size for genotype probability data (3 dimensions), - by default "auto". - lock - Whether or not to synchronize concurrent reads of - file blocks, by default False. This is passed through to - [dask.array.from_array](https://docs.dask.org/en/latest/array-api.html#dask.array.from_array). - persist - Whether or not to persist variant information in memory, by default True. - This is an important performance consideration as the metadata file for this data will - be read multiple times when False. - contig_dtype - Data type for contig names, by default "str". - This may also be an integer type (e.g. "int"), but will fail if any of the contig names - cannot be converted to integers. - gp_dtype - Data type for genotype probabilities, by default "float32". - - Warnings - -------- - Only bi-allelic, diploid BGEN files are currently supported. - - Returns - ------- - A dataset containing the following variables: - - - :data:`sgkit.variables.variant_id_spec` (variants) - - :data:`sgkit.variables.variant_contig_spec` (variants) - - :data:`sgkit.variables.variant_position_spec` (variants) - - :data:`sgkit.variables.variant_allele_spec` (variants) - - :data:`sgkit.variables.sample_id_spec` (samples) - - :data:`sgkit.variables.call_dosage_spec` (variants, samples) - - :data:`sgkit.variables.call_dosage_mask_spec` (variants, samples) - - :data:`sgkit.variables.call_genotype_probability_spec` (variants, samples, genotypes) - - :data:`sgkit.variables.call_genotype_probability_mask_spec` (variants, samples, genotypes) - - """ - if isinstance(chunks, tuple) and len(chunks) != 3: - raise ValueError(f"`chunks` must be tuple with 3 items, not {chunks}") - if not np.issubdtype(gp_dtype, np.floating): - raise ValueError( - f"`gp_dtype` must be a floating point data type, not {gp_dtype}" - ) - if not np.issubdtype(contig_dtype, np.integer) and np.dtype( - contig_dtype - ).kind not in {"U", "S"}: - raise ValueError( - f"`contig_dtype` must be of string or int type, not {contig_dtype}" - ) - - with dask.config.set({"dataframe.convert-string": False}): - path = Path(path) - sample_path = Path(sample_path) if sample_path else path.with_suffix(".sample") - - if sample_path.exists(): - sample_id = read_samples(sample_path).sample_id.values.astype("U") - else: - sample_id = _default_sample_ids(path) - - bgen_reader = BgenReader(path, metafile_path=metafile_path, dtype=gp_dtype) - - df = read_metafile(bgen_reader.metafile_path) - if persist: - df = df.persist() - arrs = dataframe_to_dict(df, METAFILE_DTYPE) - - variant_id = arrs["id"] - variant_contig: ArrayLike = arrs["chrom"].astype(contig_dtype) - variant_contig, variant_contig_names = encode_contigs(variant_contig) - variant_contig_names = list(variant_contig_names) - variant_position = arrs["pos"] - variant_allele = da.hstack( - (arrs["a1"][:, np.newaxis], arrs["a2"][:, np.newaxis]) - ) - - call_genotype_probability = da.from_array( - bgen_reader, - chunks=chunks, - lock=lock, - fancy=False, - asarray=False, - name=f"{bgen_reader.name}:read_bgen:{path}", - ) - call_dosage = _to_dosage(call_genotype_probability) - - ds: Dataset = create_genotype_dosage_dataset( - variant_contig_names=variant_contig_names, - variant_contig=variant_contig, - variant_position=variant_position, - variant_allele=variant_allele, - sample_id=sample_id, - call_dosage=call_dosage, - call_genotype_probability=call_genotype_probability, - variant_id=variant_id, - ) - - return ds - - -def _default_sample_ids(path: PathType) -> ArrayLike: - """Fetch or generate sample ids""" - cbgen = _require_cbgen() - with cbgen.bgen_file(path) as bgen: - if bgen.contain_samples: - return bgen.read_samples() - else: - return np.char.add(b"sample_", np.arange(bgen.nsamples).astype("S")) # type: ignore[no-untyped-call] - - -def _to_dosage(probs: ArrayLike) -> ArrayLike: - """Calculate the dosage from genotype likelihoods (probabilities)""" - assert ( - probs.shape[-1] == 3 - ), f"Expecting genotype (trailing) dimension of size 3, got array of shape {probs.shape}" - return probs[..., 1] + 2 * probs[..., 2] +__all__ = ["unpack_variables"] diff --git a/sgkit/io/bgen/utils.py b/sgkit/io/bgen/utils.py index e6795c7ee..bb042dea1 100644 --- a/sgkit/io/bgen/utils.py +++ b/sgkit/io/bgen/utils.py @@ -7,21 +7,67 @@ def unpack_variables(ds: Dataset, dtype: DType = "float32") -> Dataset: """Restore probabilities and dosages from a legacy packed BGEN-derived dataset. - This operates on an existing Xarray dataset and requires no BGEN reader or - optional BGEN dependencies. + Use this only for stores written with variable packing by sgkit's removed + ``bgen_to_zarr`` or ``rechunk_bgen`` functions. Packing saved space by + omitting the homozygous-reference probability, storing a single missingness + flag per call, and omitting dosage (which can be derived from probabilities). + Unpack such a dataset before using methods that expect full genotype + probabilities or dosage. + + This is not a BGEN reader, a general probability decoder, or a required step + after loading Zarr. Do not apply it to ordinary unpacked datasets or new + bio2zarr output. A ``genotypes`` dimension of length two is meaningful here + only for this legacy diploid, biallelic packing convention, not for haploid + or multiallelic data. Parameters ---------- ds - Dataset containing two stored genotype probabilities per call and a - two-dimensional ``call_genotype_probability_mask``. + Legacy packed dataset with ``call_genotype_probability`` dimensions + ``(variants, samples, genotypes)``, where ``genotypes`` has length two + and stores the heterozygous and homozygous-alternate probabilities, + in that order. ``call_genotype_probability_mask`` must have dimensions + ``(variants, samples)`` and be True for missing calls; the stored + probabilities for those calls are NaN. dtype - Floating-point dtype for the restored probabilities, by default float32. + Floating-point dtype for restored probabilities and dosage, by default + float32. This cannot recover precision lost during legacy quantization. Returns ------- Dataset - Dataset with all three genotype probabilities, dosage and their masks. + New dataset with three genotype probabilities ordered as + homozygous-reference, heterozygous, homozygous-alternate; alternate-allele + ``call_dosage``; and their masks. Other variables and attributes are + preserved. The input dataset is not modified. + + Raises + ------ + ValueError + If the stored ``genotypes`` dimension does not have length two. An + already-unpacked dataset must not be unpacked a second time. + + Notes + ----- + The omitted probability is reconstructed as ``1 - p_het - p_hom_alt``. + Dosage is ``p_het + 2 * p_hom_alt``. Missing probabilities remain NaN, + and the per-call mask is broadcast across all three genotypes. No hard + genotype calls are inferred. Operations remain lazy for Dask-backed arrays + and require no optional BGEN backend. + + Examples + -------- + Load a known legacy packed store and unpack it once before analysis:: + + import sgkit as sg + from sgkit.io.bgen import unpack_variables + + packed = sg.load_dataset("legacy-packed.zarr") + ds = unpack_variables(packed) + + For example, stored probabilities ``[0.25, 0.5]`` become + ``[0.25, 0.25, 0.5]`` and alternate-allele dosage ``1.25``. Loading with + :func:`sgkit.load_dataset` alone does not perform this reconstruction. """ gp = ds["call_genotype_probability"].astype(dtype) if gp.sizes["genotypes"] != 2: diff --git a/sgkit/io/utils.py b/sgkit/io/utils.py index 49f2df8ec..48e6206c1 100644 --- a/sgkit/io/utils.py +++ b/sgkit/io/utils.py @@ -1,10 +1,10 @@ -from typing import Mapping, Optional, Tuple +from typing import Mapping, Optional import dask.dataframe as dd import numpy as np from ..typing import ArrayLike, DType -from ..utils import encode_array, max_str_len +from ..utils import max_str_len INT_MISSING, INT_FILL = -1, -2 @@ -37,16 +37,3 @@ def dataframe_to_dict( dt = f"{kind}{max_len}" arrs[c] = a.astype(dt) return arrs - - -def encode_contigs(contig: ArrayLike) -> Tuple[ArrayLike, ArrayLike]: - # TODO: test preservation of int16 - # If contigs are already integers, use them as-is - if np.issubdtype(contig.dtype, np.integer): - ids = contig - names = np.unique(np.asarray(ids)).astype(str) # type: ignore[no-untyped-call] - # Otherwise create index for contig names based - # on order of appearance in underlying file - else: - ids, names = encode_array(np.asarray(contig, dtype=str)) - return ids, names diff --git a/sgkit/stats/conversion.py b/sgkit/stats/conversion.py index 3d2ebf529..ce5aaeeb9 100644 --- a/sgkit/stats/conversion.py +++ b/sgkit/stats/conversion.py @@ -137,7 +137,8 @@ def convert_probability_to_call( Parameters ---------- ds - Dataset containing genotype probabilities, such as from :func:`sgkit.io.bgen.read_bgen`. + Dataset containing diploid biallelic genotype probabilities. For legacy + packed BGEN-derived stores, first use :func:`sgkit.io.bgen.unpack_variables`. call_genotype_probability Genotype probability variable to be converted as defined by :data:`sgkit.variables.call_genotype_probability_spec`. diff --git a/sgkit/tests/io/bgen/__init__.py b/sgkit/tests/io/bgen/__init__.py deleted file mode 100644 index e69de29bb..000000000 diff --git a/sgkit/tests/io/bgen/data/.gitignore b/sgkit/tests/io/bgen/data/.gitignore deleted file mode 100644 index 4685de1c2..000000000 --- a/sgkit/tests/io/bgen/data/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -*.metadata2.mmm -*.metafile diff --git a/sgkit/tests/io/bgen/data/example-no-samples.bgen b/sgkit/tests/io/bgen/data/example-no-samples.bgen deleted file mode 100644 index e8b88ed701490d6810a47d666dbd81b96bb21e74..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17334 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 Jx35Zz{|~ta8$bX6 diff --git a/sgkit/tests/io/bgen/data/example-separate-samples.bgen b/sgkit/tests/io/bgen/data/example-separate-samples.bgen deleted file mode 100644 index 77a3ac705569b231fda26119c0e10bcbb98a18a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17402 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 diff --git a/sgkit/tests/io/bgen/data/example-separate-samples.sample b/sgkit/tests/io/bgen/data/example-separate-samples.sample deleted file mode 100644 index c6e7b1b26..000000000 --- a/sgkit/tests/io/bgen/data/example-separate-samples.sample +++ /dev/null @@ -1,7 +0,0 @@ -ID -0 -s1 -s2 -s3 -s4 -s5 diff --git a/sgkit/tests/io/bgen/data/example.bgen b/sgkit/tests/io/bgen/data/example.bgen deleted file mode 100644 index a7d0e1c9aa39fe88d69e37997cb4417afe48ed1c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 665108 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

4!#+-aJK4pXD>pk5ES9(!^CO)#~(Z;?7Hk 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

q zgvO@bGD7oA-pQ&EuftZipGp_s>2_5C@M@OWq#0mm zA|AWKdszH9QNaPoMgl_&9M|n&k*kIRnniG*`K9KD-8<0LZ$Aw?a1BZv6Px26cN%W`_=9X` z&5Ct;-ETo9a&@AUDo4ImQiN*9`vsw>qjTTjbTVrs@0^@<9;%gG;qFB4At}x`^e*)Q z_DQc_Fql~vI8YUBzzP3)3G_$2tZ)Ve`yc37o2)9O1^6aM@i@cp_QtF2Bc_4%H_X;+ z@+NT&>Z^Z35hTgIb+}Ck5I=Ps<$>s7))1` z{g4rpX(^z5vjuQ+a@34&Q>gimNG%0}|KB6+2XO`>)@ozt`krLtXT65M{_utf(NnKl z9vLaIs1ioYOn*x$PK4$}^bw51w*P98B$ zW;Q3_NYhD795BFBbZRvXCH&$ZyQfw*usy^en(^pD$bmnWG1!UN|7%@(X?Hy=^og2h zcXtKp3dw3GnqpH~Nc1hgjnbnniLw{|`i3{9uhYdS;~uU)OPBNj zv7vY=pmvm9g3m1G<{~jCLp!s5Y~#GiWr$|rETmyehfPB~R~mS=<&5CaSM??jAwQZfcD@30E&C<`i?~^#J9y3ig(UZuFDtc zycrBrB=`x%feIoP*XCoB7{wjD)k#K68i&2d4 zUQwQZ#y&G_r_j9oSdlgehr8kFC-rI#%@N=~d|o*f1TX)-a#eZ(@ralqwGyjLYI;O|{53q!Q#q zJ2iHKP+5_XcHp{ZxzB;%IcfC68=GUUh$NhMxZ_s;ondk`(gXj;vN+t+-rws?n1tLA z)l+|_y5TMHv6HU;ttz}2qwafklW)sg*(u~0g$x6@!{q8(wKLZgo1-M@PMk8>RV0sA z?|~1B3(^)H#1eb_&MD^<2~jaLbPP!h=nWt!=_f0s&6QYpn(s zX_vb2GZ)W_*jLB1M%>9xlB=>EOB8}CSN z&A$Ujib}|EIr|^nJ}u@7YOHrna83SO`z8VTct*HVG4hd=OU!a`6Xj`S&%FJ|2ih?j zL?L<6 zSa&8pnaa$%Pq75gp|$LTKLQp5QXNx#TVs_e(Tjw7`@6i@<)-~c5ed>8uV1Woc?lPD zlm!qc^bf4-drjCeWASx+aXRriBxJQ!sTzXT3!{dn(tiAoMw{ge1k8V0bF=*_Q_X?; zu)RM?y-(_;brv6sW6xChr=v;b96tDx@|7eq;1$}7WXPxe_NXZ3VXDuVQ7{DCVlbof z`(8cz>8H+iyILF}s<@K(welT|`8F<&8-!OAeo?h6B4-)^{^IpC%HX8PeUgy<`%`@9 zG?xEq#?^P)L_emIJj1&(ykX;yHYrSxzilzk%7R`6_^E*hIA`Hnrw}esi}vEXa{0-t zv4NC;8Tq12RC#~*qQu*$dw~W#;)gtwSo~9Z(w9`hy3n`8agRF+u6t6L$P|b@2SH0H zA}gs5sn=4Kkdl75?B+(x@X2d)rs~AFO6f&uNu6hNuzPLF^`zgkgoa;7g}C(4^xI7; z>Ft|5B!)^uQlDpsDRHYZrV{84g(RKoBNul3+Mr~K`e4{#T$~nbQJ)6pcEefz!xgYUjkDNQkPVEY|=u$Ze`LCFB0Jl{M2+%n(q?XB4rzp?EgKYsPF zIQNRxXCr0T>l5KP?+RJxid~vhw@nn@{H^MJ_LwA)+^%`yh3-01yF{<2wC^kK?zel{ zZ9UY}F0S3IU2U3|3Tx@pOD0^0{Srq_ywScmuz_aT^QPQE5XQBDLBw|hxN8qo>Qjol zdD1R#BY|OqcfCS8dDqHofEk0KTp}A}rFigc_gVkaFUibhQ%cA973!Q0xVJE**rY^d zFZ3MtY(cCn(^XkpS3uabdU6GIKXY~yeE0Ioc$>Fsn-+U=eNkYx3qW%fc;6^kH=|n= z>VJHfa$#!{ju289$1Gq1bh!)G@g6DdHEQ@6r~aK0lCF5e6#*+P?P2B_(FDpmJB*}I z4&KspOS}_Obqh{IN8UOQWKh3f2)`=CdG9`9%;DQjOKcqQzpH)O#~3kx%BZp|kfc8k zhFpDw(kh#0^dr6KvB|Gl{ysZn-?r8jWomQCA#JQ;Ku$P&MFEr@=m< z>?$ba5q(=hxY8Rfc)E`_y>W?=U=}@C6t;xV(jI%3cOhGp$b8N4T*O^}=4?-95pc-6 z6MZOL6&plo#bYvGp(Zqf!cz;#6XeGb$Zm%^3dMlh6_N8lK8)+-JAndUV zH)1>~S|;mTLpZ%>Fq0nPfkZAYPric{t&Xu)hoebum}5R;a+KsE<|6h&Xl&Qsv2>n#xZeutNPe+!wZ1{VNghF^oaEb0`{@AC;uN+jq zxZD#{`~$=1j$>@&={pEvmxDoW15*3h+BecQ z8sKXK^4{*zWkhbm_ZO@5&12a(`{@K}Otw(~w2^+q8kkzDmf~#e=`9~)Y$|Z%bZkts zDH50`b`)&c5o<9avFpT5xM7d6xc`2%YjwSTLbUGv%XgTQSLqp=GBVTq89SCYbC609 zOSh~Y)M5%|tzhoMbi{H=qklLlpU!S}FC%s&^%_6=c3b_gJ%m@#pL>4Mf(BX5zE(e* zm(f1Q0tA(9n7KoG(2RFhgOlZut36lCP7qZV?e7il6|3)2ZXL{s*eAS#?(c#E)iRIu ztLW_NsJedQ!>>XbD2xg|ljF%EGLQPTx=KSu&KX`ZsG2CHO0;8kzWpPy+T>_!2gz0X(tz zx2NTAMC>d;L$A3cU!xqOo_0gm7Kx6u@%X+Wd+lbeI{cumRczC3TmGQPH-U8$^tvv4 zxznTX4hb!*ZHGit9ah}JRe{MfS1#PMRm>^dsFS)l=Hc@if5}d}lYmle8RZ*nvxAJ~ z2ih73uC9auk*1kSZ*?;d@3>e2sEx6bE#biaMzQHKllOXX62R@$y&2;o-a~0${&FL* z7p*S<>JpYXjZEHNKUcwixKd+-Fu6hu(i8Mtyf9aK8bG%G^PQ`H}_RA!jn7r z31J{_a9-ZLgwO3*q`HRIK6vhs-hs;v%vQcNl|i6>F#l|)mD$;Fh(|2IcDSrdy|$@& z=eri;mRt6fglB(;D>V{$8*lfm+hVX7Et9qE)Nc#aFng+rQnBk&&N763sLi#-hLFpG zuNW`%NH-T~;62+=-_|NSGE6G32iu-`)HLjBiIDPOklLi=b3#JvEUwKLboGkvPOO$&g_ z`TdeiQVGVY^3Gq^3wQn9{d!v7DOAj0JGUB+@!YO!^mMVrZr3>{AXJ~UIBsH8GOYUQV#{*+beqz!}wj^Q1wnWftJ?_0MF_ z;2aOck3XR6+~?ecn(;S#^m}*?rTvIR%Ns=U{8-oXC%YH)Cc4{8c!RE-etf>rYQ!Ex z4D!H#^+|?NURV)#;L#>%`PXdLqPj6b1Cbr?5(O@9f(?k?$OLRquyWs2ucMuHOtp;o zne0>Dh_X?_*QDDP5U-zxKzg$8=Wq%fFKU>`C}xeYRRZ=p4PsB9PgNp!Zk|xvRg~R= z7Z!kjkfn}@MeOd7UE!dXG)U!+Y{FS2A2jIJWK*RD=_?LxPZpQzFTCr2#Zq%CKM9I; zFeMEz#_Zon4QeoeJeJOS@NVF}N8Y^gPgTx&sCtY8k~TJzU9sO~mYo@=C5|S{(}K|z zLF~cjdNev5*IIn)c&bL)I`rw2?vGcCt~S#5JY#B&P*f?9$2whPLBE-Ggc**x?o6`^ z#}`?;>QAcezd{IhCX5ay2Z``|os{XzgLNwTyC%es24_OAg&DYaGmLbAV+zl`PA`lR zQZhNRPYGkh!2bn}W7qaA&C(HXDD@quCLlA#`75FLS`sC&bVu z=58F#tcywhR{1QcEGn`cp{Xs7fvumr{jWude)!U z&Dl05WR0idi7BB$2X*DebEQ>*&S#IU4P)iNp!Qcb6Pq~o(KOk=EA?5&4vEbw{@OL_ zMLgrj@3Y`(Z#~LNaV;-Dvo#0XX+d^Xud@=u$`RF8i?Qh_WmB#e-`30*kw@=5UcqRg zgEaa*nV2LoL6ssabT?KK3D2Y@E?wk0NgX-5b&imiHnoHPDP50g%*bVd+IoMg3*xJ^ z%WY?_8EDGVgTNcX&+R$fM*S7{Gi;}EboBy8Qg#{_rGzw*mGk^$9c@ErVd+&T@<%U} z2B^qEHhU+84KT0%kd^mgyPQ`34D14Q_tG}CnffE3tPA@)@DCrb#y{~u(LT`b)_bq90VJ1RGR1+o2hQnN` z0M6kDPurI~!xiOa#S7WnB_q!b!ihXltkR4N1hlGz3CJ-@>;6%CfNbJ>GBl5+;XTw+u4Ff&8iA?69aXS5s1e!!Tif^l_|S*O>wuFBws%f-N;yma z&&L3ZR0S!wWw=^hWMKL8z_^w*67^L`(zHP8Qn&U5Bqum!gzr@Az6OJSyXo#L{;g2Y ztCn3snlXgs*Vr$oN?CUX=Bdggl_E=xZ`iXdozqQPcZuSw6|M3slD&0fOf9l+(o_Mp zVzQS_7GBcZ*PH2g-Of6DXZ^XeCtCuxElY6&?&M56Y(0CbsagRU*N&T1ofS{SlW(t{ zXQ5{|>1;}ZZS2dT`Is;@zN7wXp2a@xrf8=*MYUt+a z-w@bMqY%ykFmq`}+`ZuG(LAc<_xn6j6!7i=^wfF9hQOXR>KS>?-RxFq$rhALb7(!o zGAfWMt!~Zb<|=F~>n!QKs2l4!kxPDAty_|hu}0kc+a8~M9gwl3*ZG%NbZC@tP9|um z!NXY<1VcaY5qjY|b2aNg1GR81sH*708&=vqfKG2K>otk}BV7RtBTjqvps{FsV*j%n(dD<)R9*QTQdjiOfW zJQRfkN&7n@_yrj&EAvAuZeW^C#|0!NBFwnQExV#K$7BvNLZ6++sgJxW^d{Wglk=%V z4RHFK^2Pi)CLY%Xw+;Z>=CN*TV*HWyo0ui%a}h^Ueg=aojY`AgU(bQ zdeY`TV=;}hmg*1K!VTKd|0M~Q|04;O|BwWn(*Kgg`u}T@`Ur7gt{ps|-+dV@xFXX-wYHczOHH9Bo^6dwin!a>kBeTQJujfs67b@)(>Bu1kEmOlq z(TGZe*O|vo-4FGQ#U<&aow#S zoAH+rKgSGOY9}-yzR`OD)c&s&xB4_cLusxxKyS$bX(-*l^5^Cx;jj7nPR31|*7r>E z?PQULa`8Tu56&O*zqgr>IQ#1s8O z1$pEt$v<_YWLn$3O=Jgs3m-JZPXu;FzrxvAk?+Q3qZ{3lVT+^hynS3VCFg37yRZ2@ zwt{D4wWEmb6yvCedL~}fuIldwn6yL*S7p7cOptm1)WR^!nt0V7KhFU~xT7s7ObJ1;NTyCVVii3dR zhSVcYK>N>C;%U=6Xsv$jObI_ql!k8(SZpP%#gw0&&%W4Myb`R4QInCQNacM?2jktu ziZb`w$r6>E_o}qX@D6)yPy4>r;?*6ZBcBM>zB^G(#s`XT;DjnZDO%=% zLz|!Vsi~|!u8NPb_Ypqa-l^J_e+im@dQV8I&fudCNEgX-8qhnGvnWi)Jzw(Wg{(j| zD(U};#EbyYKYrQQ3gezGfD;Vrbqo*^O+8ToNv^%IY74pYW%r_^^qSC^kT;(xN-MdSaV2y^IbV4n5garFo1 zprmfgTi&hCP<_@eU2pvux0@K--+;GC3%bhof?OLVqHTz!DP)EfN z!(AgRJ?B}K`6J*C)TGV2-M6mXWGtVg=XJ_4Qz>>9rUzG2Rc}N=&IJZJUuW%kGqlo;WZ zjcyXD+})Jn&lBt0wzb$5B13-_lHz&Yiaq~({h%9xYk(vVbNd9_^2t4t#f;@%8f*}r zxK&QS5YjTX-e26?65?r>7fcv1k+;H8WkA_-%6>yCpDY_ezQESb`y|3+O2VaNm^h&D zku9%IhcC?2wvW; zL=_mX{*D7bmf{%^*A0ON$Cz3Jo8=9?Uqy6AocVV6Ez-^Syywi(Hyj{nmu2&#FPYb0 zg4Lmspqc(S_5Q@4a_2_phdIFI=r#mjyl%HwXmuINvB?p(EPqWAeUf63zjFo}cz1-p zf8Kwpc39UgF&R7I^^jso--yE=^C7MDlNi${$y|_O+sE&gZV6wQ*o52W{32G)LVT?_ zN;uH(P{#~fSM-x8IZEn#oeO>ntJSx4aWd+X?!6}xuTCT?uWNDF3tl3)BY`J0Zhc#7 z^)jwrqgbM1%s2z4NbAj3b4~Otei^We@>d$@oMT(}a_f1P!x!XfOy?MmQ-swz#?kf^pEg%|{X2Z-lyfmwkcsFWgErZyEdABadpH%Nw&00$H)fG1MRY5&p ze6K=ewKycVZA|)j2CGze)>ML5+V(<6KN&INMqARe`Xdth-@4F3a|n%q#8?D$&VkTB$iPw!>Z;s%E`XsZ3c@zyl#&z(w|h*L zUYOKaK*W1eY+uML&ra&P8U=M#ERuC+yUCD@vSjh?n~u-)$kCqq`lJ`nBYAZQSjWdQ;>wqP-TTc$7~%d{4BYeA3-Elb z@Au0Mq<3AYqtF+{ybi(5p*|Quy|U!@sy4INt0KGKFzM7S>9E|dj@GcHFm36(K!0f@ zmhDmI4fZ1NU71F90|)C?Ql@_-qk^7CKRszD*7rCH1v{(?ZZ@mQdGmEi+IRAGVZLOr zfP=lCc@DUmSyZk)u}h|aPe*fy!@AGb%?dYzsOM@y0*C*)bepku+O;w$=2p43XV33roqI-g_ znIr#mYt(+p{Yw&F_ZCy=>*jL!kcpq*%*uhw-dq^hm(R9syXQ6G8nWbxGWM(~M)jRd zatHG2VJ=fE+;!^Tyb{__Z(V#33ZCqdGqP#~r(*JrF zP(5}T=A&U*F5O~*v<=!(3!nzOYhbZQ#Ij{Hq-7M(lH31YpTvywc=RS0+9`Zr81Lk! zWRTG#9*8?m=#(AlaL>GsNdAFLjY_v~*o{OFp9oa#YvFIG-=q6fD-=k%R3dAsQ&3 z$GpqlNIi&B>uX16DNa;w{nuQl{S)}(KurRCX{54@d%P7JWipoLZu>-8aP#Sa$G@J; zFhrOL(4h=NT{m>kyLMdU#O-=&v}?(Bv!LqI@Mg)sO6(}*To%=L7Q^e<5q7)Be4p1Z#J6RNc<|-gi(-}5-4wNndXSl~*lhfq!0E52l(-|F=Y7N23}npbv*M&b?SD~# z_5Vj*5|ALH1PKf?H3jU}+G6Bu{}!h)o^&|jc? z&3~2{#M07W2osZ#D9{9wDM_oM;0FAK6+;PNZ6_0fLlOCsa&8}VJAc%5x&GLh<_UlZ znn60|?Uoz9(iDGWC6M*ZEdYe-=26j}N+reHltQrqEa0$N^-h0#pU6a)bGQo)gj;!6?TkP1E!9Tzux8m$(2tzETGb zqQ+nRDhm4OV!R*TsVNPz8!oLPL8lI#%oIG(E>*j`{p#94R;)s3uUNFu#9=2kvdsb} zO#)0|PNW(*6#^EqkPY$Ysw0&$Gjy~wY`lmwN{Y(Bv)DG9HR0a{_th@E0pHt>`OU}{ zo>5uA`QIe7!{AkTuS(?S@r;rPxI`gs3Nu&{2y^yP(rAtXyG!R;?SwQ<%5!S%1-*;( z*H~$GJNa|JkCiEROfO#lQJr!qO@=*56Nf!a417-yhioFbiM{q(<<4O2e$S0|bW`Am z>o4BoWg>k}8Gd%6v!zg#S?kds%!D$e<7^m;RBz*Rc{ z!P4+(lR`58^DA90IL|4RgRjW%vF_ic3}TLb%YQ=wLOrOjVp1Y3kCgQ-hoRjDyrq_2 zkT@jt_z7){tvzSm;h906QeMa?qwDAdm}7E9`22InfuLCREwlYJ>qB<_qOgll)Dg+= z$l`q6ni|Br*tcKxtP2ey_~|9@x$&+qr++`K$Z{#d_zm7d5iuIUuLZ95N{VaTVgQSz z-(fd;`hL1AN2`U{KzxzSvRh% z1(Jl?R~lQOpg;z#9j`FEGuduac*{T_7uOTD7uRCHZJ1nrJaWo+9~423Bp&SUeav&6 z^jT7Ze69dxkl6i-gTOCB^(xp-fbl90%K2|n2uqekN{W96=4Ur{XuCnPqfE=+S7cVy z5YEBv9XB7(=GOCe3HW9O=?r@~bFyL!O2YM0ohW7H{6F7#;Vb!u%Q!k=ITxB(uxB2e zq&YSu=(ip?Z@=gsm>w6}`|ZAEE*1l$nqLq;{x8KYV3s2<2OPmjY8SB1DGPX?w|Yp@ z6JCp6in@ZzTO!_RUrx@hmG-|+k~W$M$f5poC;n?N<~r>JgSI zQ&7C`-8^^@GlA|er4i+EPTGEQLHvavVh4yc zAsju6ZZtzy<|}a{UGB8G=ySUxcN(vKWYqQOVi0;Nk0wglq3EkpMc_o7yI<6>how7} z32ErMBhr-Bt?|<<*^3gpS?&#Y#Lg;$`#SXLW{`O74R^?GEP3X?zLEKyy>-%(4b_rY z=aLm`4?>%WJYEIFs<#qzSq@7c)w_fr4~swWYL(dEla-k|V}lG#$s=Zn^C&Lt2xOIT zD)s?FuY7`qT|JiMNj@0q4LQ&4YHC-Nn{`>O=G})GPW?b+9~Gu+nw6h2S_8K1-OlxL zz&`{ajymSakZaLaTK;ioi79MV>@O3mM~UpxPn>^$4YUn`urG}P6o$t#>AwZ{OHHg( zXWfXH*y+XS`ErN2d+$$w+z36`$OXFV!TQiCP}4=eG3=f-T4b+6Ic6myJ0ye$m`d-=nA`II_Vc!P00HW{Dn>iH%LPG` zR415uDv?E`=NhS7NF>2!U-f;QQ<8Gz2dwzBv$B=+|NSfrxyQk3D!ipKJhxFcip%V?&_5CDaWSXBSdg*X4U8JpR$Ir8$E3 zP2u)Yb4|*k^YDx12ON3z_3>u>8EnKk&~iao_;CAWrvtbPYPVmged9!CXb%=g9jWxW2(Kby>0=%RBriB+C`lv zla#oShLm_=#5l_7dl09v=^V~%mL4T)cx?(# z#-flvBF$1IG+2)tp%lP*zRl@H-y4;$}LPe%^8*{Vk7xo&bXUjMYfqW^T**S#q-qziC zPJ>q>Kqh^|(pOZ>vEPPRz$jM}G~%8GGNSh5XG^P^=iA0+Q~c3V_W5!3?BwM=GUS15zqYLUp*m@A88Ha?8E_xs>n2{> zM&$Jg2~2<@UfXFIyd|DrL!L8bVy&>GEf@bJlr_X!gewx7hX+(*BJ_!>zg!pED@+p2 zzaD=}QC%naI5$$zjj} zSpbgZXyTi>bRi*YzCI~8se+0&+|LnlmXNWIw6lM@aJ6K{qEv%RLJFVP-79&@yy@A3 z>S_7xH)A~vSC~#aAVqa1eCz1#1_cTh;K&MsE{k+zrJgjMJ8kv1`D_t- z^=Pz&B04v1#Z{boF@dW|4gB%ImJEG_eFLM}iO>JIt@36+!h8g6_yoO&ZY7%Pmpzl2IW=b=jQy+#{cuv|;pJm?|WoQv*HGH_1!*d^b1;ZyaFjpg5 z0a3;^Y>t_{WE;;jjs`K)nzez z(n9#(Gj|jBlTXCleSzwKy9e}X65VFTMTjCd{hqY8%Bq|z&W`BxuYS4QK)oj1`);}$Vv9~|UKBk*4iV*5W1V*3vVEouHQ2Sxoq9Q5d^DwgVflHO*b z0E=P_9}Y`aTe2BML$+3oNR~!|XR(xuN;WA%9>Pj@)+72aP|n<3G~^4_6T9Cy-N;`9 z=1m$BIXrT0G?J5!miu(&+mAVgi5E<^M^fLm^wOvG20V;E-B15%wGuk~JzlfCqvad` zq43CNPcG0S9p_Is>xlC;slN0~*sL4ar0*F`HKpzv-=tPrv+u6k}7@pPl)cSO_32s*&}PEeWqn#(Rkaw@OeMPA(FBX+FLy0Is#ES*q;lZWh(aita8=%vl1iVQ>{AGlF5i-qrOE^p!~#janEqbtK8F_ zA9D-z)KfKV`a{(HXKR$Z`P5wNJC-pMfr$RSd}B2q`4as>6&>C6?S%Sp@a{d1PQv@M z24e$ET0$%637raB?E;kxzAEJ;y$T};H~XhtqeKe0Ck+<+PvTRBY-!uU@Dp|muful} zHGs;9PGxr2x^d+es7Gg%TwjT+&+c+L;9!~a9E(VZn&9Q9Jpq_*y|ngY1F4%;7hHE- z%Qc4}3S+%pLDNU=)FLIQZJe4D_icHkq-`e4)1-azq$JTmt$rOh6UZ@%gs%dU)yg|3}q1wpSKzi?Y+{*tTt39a}3-$9BiIosP{F z+qP}nww;@EKJ0zZGylX}V~klfFDq7SyjN|$jp08C*n4xYl-vd9jSea$ps*)JJ_qi- z^SJ9Zc8=Ci2Yl_AKz)PC{AM#`1%{S}D;ljVfCi9P=?S)kE5m;{I}6M0zRt($0X zi|h#Ft6qb6{M2zYg`)Q{P$Bl`)&S0srqF1)!XYJ$y6oD35c^4LQ=f~xLl%8S; zzXM-3&Up?5Fb=!o5^ZwpV*U%$O`)i3k#7fr{((7CP2FO`X@X(c!l_+S}lrc!6%WI*>`C)f0vqUzC;=M2Sa-d1l`d->`VY~E6pV*~x@e?v$q zzNScxSkZL^xoH7f+*>QHr+=Iuhf$|b+N;{i)$ZHKU2h7ebg z{_IY7f)CbEypdMJb%j^uTA)=tC`Y`g=!I%)pn7C4Q#VRG+sj0}44F=Mz;0?b_EV$X zcGfU0F*}QU%wB_^sPN=Jo*Y_g?`BOs!MfRMaph`px^4;PrHItNjf{?Dk);@U0Za>D z)5fysTpQ%2gWt&L8bWW4@W1IX@a#Hxjw8gK{@hvSGUZL?;ki!Q04umO9*F^-n)W-T zu=R3C7tUgxaF0@!Ix18kT-+p#NAeE;Qu_53e_Hrk+A?fT7sIY@@9b8uxuI$1!nnY& ztX%*^er+m6n_KOLYencbk1n`GxBtm!r|Aaw273#`^L+4jNrWi)7nwjc3#1ou{a~A! zD*FYWKd9{M;;w!aa}{htIwN|j*p75Z1_LQJ2d{D50fTMFi1=;5P(@Vl)XgRx`Ixt~ z_JKtvnPv&9wUP8AU-;pTc_>8I?q##>ruQN}AfR0CwnaFt_ZN3Rt_IJAjiL#X39 zz26BvVsQ1$&oAD+WFSce3alE0{2Y?p!%&%MpDtC?7Y3r$ z;)jnM8I6l6T<$sC!F!i_pDS_$zec+MIAIq;s=l~}l0Bl|JF~WZ&xR5=+0};n&ydFz zKP~lnskx@LO^6h1SzhhyT#&2BR2;-63MXYhR`aLuFkt7mW^GGie?z` zi>8vj;*=zr{YG%3h#pZ)*e@Fdwx8r6?c&K=5+@xtMMsQrM5&CiAM)g^i`@KcG}E` zacUD`rIfW3*4fV-ZL!%>*_lw{w{)Q?uO&BmJc3?iFPj>UI@F&}y10ay&8d<(q}5_q zQ89Puzq~Es4q*Jg`uisBbQV`;W9)4SKD<8UKN)(Wp2<~5#e1=y<$ibqWOs~Q$V|Y$ z2PDm(l)5{=Bd7QBv!l_rs+e?FE+#lOxs5q{6F&_RWQBKK_xgWhX3AvXq}T3afA42| z6x|#5d->an+~jHpr-UH|`X~`);KQoqVqa8yjx_l0PM+RC-1Aa@LR*QsA2;ixE<;iWH#c}FQT9v<2~P*c4`$5 zSO2_QM6RSGh09m8;8r3Y2E8CRNpxXNAuXRov4fp5u1YYp6Z87s``M`PRKTie{_Tg} zVB3Ur(5k<~+Nu%X@yChXL`*ENw=J?s=)@E(cm^sDA0B6u_qS-3*yjV@idB5{2klPcahs5uTZO(Q}odsLlp-~#B+XVrpUs?{GCQ(cV zHLW~}sO355`tCk1q!+?F z#YohNmtmJ8G>#YT;-5e4$=X@PSBC15wfH)PzwTNdSsj$`cdM5ZJ+d;YWZssodfD3q zU1ta&%DL&qOFKlg<>o!SeePd)c`Dq9b$rCl(yl$=3Ri}HwLKPsi9=*hd#vM@`J?UP z;Os}UsoYj;1r>lo%q*4dCdbY2?SCdPthei4B3>}z(fsUm!Af-j@wtDu*}uEO1ol|9 z6MNa$wv4nD&&C(EY1?&Ozra7F8vQoj!?+w@HhKC`NF~F|`sB00(0%j{L0g1*>!+?6~R( zRF?XQ=}t)b(||a9l-M5$6%keNHhbfC3 ziY1RyWfpKdtRQjpjB?EV$VyRym$9ir66JOcAjmz0GwZj7_VUDnt{J9Anbv*^2ul~h z5&KJ>bbl-YRdxQ6$_PQOpsPot*w5DwTCmCU$9tQ_peCeLqf(PJh4y(_?kjc*L>+Y& zlQ2ttkgKJ+8UYnA+2IdMaB&k@;zA8pR$PnvA3TJM;q}5Tkp~~O3lMA`eJ(9)$^ll56O8IqxacG|l(EWd$Q{bas#1yLhod@$ znkJ>noP|R8cF39Je@rmyWbFgw#Dd~!SRR-YxJsTw;H2TNwt}CejR`C@)Ic`x=u-|ZDX6io z+@YS4x<(il2go4D09icAM-$sxasP4)N5NZ=5poP&Yj9y+AJ|41B*Zc*;xwHAymMe7 z%IZ3^S?lGzB#l2v^g$!W({%_;6JhTU_0sQb4>+QxxcZc1OBzg-p^{Do8@u8Q4@XOb z8Ev#COY-0Sn(yEB`WbBJBx zKPG&L_?9T@YLba4>#F9vzx!X5ux-owy$)kO{k1;|9)`ZBR z9d_+##k94&*c^QaNfi50J&U7qTQA!S=_F`Fv{Y#zpJbmsSx%v5z*!+uzt87lKTy$| znkP4z&I#>Kb#%1X2&iNfOeh9B^h!T)R0E+U%8HmKWI&!$6M2&F$Gj8}1Qdf7OoG2f zo>bUav5(E2U!R9EqpUnQ@K&)MZGc5M0$~9!kLV|1ia&hh#deq1Yxno8gM|Lsw`@EwCcsI{9NXwZ|%TbGsSZdm`pBQ&p zAh(wmRLKMVXI|`nS3$PlvImpTFVZU)JOGmjtEm&xYnuCupm|u>Ere^j*F_A4wNI-5 zSPi(!=9W>=8e!kS(A%F{!dXHXWtd8glR)AHty*K;T4OY~t`VOoT_AZL+@Mi%?Ddn0p` zxr0)FoBrfuA9NH~X2z}X^M~c67gz16Kj{&W#Fg{K9~_q5-C{fK!j~uVxwFG_(PU~j zM(_@H9ssJu^!~Yxz;9;=r;y6tLZ+>Wlpd1rZkIqFdvc&DDLyD zlAP2GvMlLR0={$Y1j*9AY3r9>fH=Wx&qO`B{fPf5KJLh(dcXztNHHhp<-4$heL73E zazREk<|Zv)Ej_Qczph&htg{P9BNlb$bC<-aLd^XQGtQ`T+f1DZoFBmU45+Z@yK2d7 zbq_)17U(BENjj8VKwdh5UKydSjcp$9x93q9tgE!n)wgLjF<&00LdoSvmqxIE)6lwl zx5C3AxUlqnUG6C-{OgNe9C3RzF&tI6sUbn|7Wm2RcQ;HX;4@(ErtsdW9p)iRWv5I6 z-1g9>S(jX2EQNGK9BQfWhdSMo!F8ECN9xcqK4y1rVgZ1~7N98P>?#a$Lm*Dkl$bKj z2eo~cwPoAske!QHQC5nb&^rgbqMH_|atyJzU!kR2HN;9yi+oU$S8Xzeb6!e(a5(n= zN?3-RqAL<;xPDN%WMQk#d^kd+IH6{bvk12RU^^6DlRp3wO#UO7VAL#H6{rd1ugT(F zE9KUU&s9ZCe%O6FD6q|ybIt}b97s3F9CjW7-uM1niX$w+5>a7RF2uq<$aGA)a(SRkuNs zxw_7S6s?-kvDxt_ZByM#Qb9b{+WU%kz|wBZ5d;oxoh=ehCFj!$Guu|+@9bDVIS1d5 zX1J#|FYEI1U0J!icE{IQ`bPoKsS&0Pk&QK)zP<;*dF23^Np$6S^Z!uem8adzp8HzZ`;nGjvk9cmJ+KJ_;5xvg|Jhu8B+)kzk=HU z=0oonnt2k}P)ldjqY3TDt*mJ2{Djx!aJTu`w}sAYd2ThY zsJmG|otiYSVjzBu1NDLQjctZYd>^hsWc9?9X-W1D9Y>(9UoXX)w33gCJeq=7{BgA7y!Z9D-_6}R z|H~#11r{}u!^steTMRZ(bbf8JjXm?smt-8GU^p>7s%ncyCf7?0k8o=@6~ku;MFNJO zjE}g^F?fQQfnM#;G-|3%;~4kFn>XU0kt*~_88$Ib-E?6AwA+RF+;b0x=hyD{k;LSa zH6y?D?siinK~`~9yGfi4S{`wXQg+#=vr0MN_o<>w&eE_}^k2$}v<1QIJzL*KkNs)W z(UUc>`6bEztD0inc!B#X0|wt1#>_j#;%$BsAm^kV{E8HJ>sB`R3-S<2-Go&UgWEfm z(=q-d!u^w>D-zgkHEc-s&g7Vm5(USsfRBjzI21$GNqHGIxod}THc!mlmCu0ZVF28| zAops{unuBO>*IH2T3~26Wah|wlJ4g^sbf4hmK4S*)l^wPancpn6zD0mOZWs+fHL%< zSrFtU$)OsM{3-xDa-AF^G%g10(f_2WN$@aPX^C` zv(;5z(nPbMe{LDORU5tYr`jy=5fc^F@f^Ji6!`y2>x2g>|2U~Pta@d=4<$m<# z7-`FNYa~130EakECtzA~?!|sR-y5AG>fB0_P$Keq~yb4Jsh4vZuNt z?FEgPJQkV_=J^-9Yfk6LWghaDZH`sptH;VDbv|a)E>kMIRgJpCI_0=jAt37t&SljA z?#S?3r@Eu1=RNTmw+DA2{nZW0iSZ9#SmP%42?6KWRoAaqjjL_XyT*-3Z|*@k#q8cA zrGIWu-(w3P&e!#2d<`ZJ?%zvPhT3@En};B*e^2H{@Z*3_K9uJVH^8GqCj}#Zdb`Nt z+h2M6@QeRq$A9AT%>NsgFVX+M*m3v&VMmCIipt_wro$DD8&%*xAvomUfr9f`AmZTx ztg(4{ak*l|{zksOvw~^$evp*1BItyoh>`lg75D|ibHJx};;9j16@_4lK04MWSLz79 z2A?__;+i%!kFq=-H@loIei0IVeckz72SDteKCn7>MkAq3(m$1Q?w6U6Sui( zP!ik+y*5m6O=33ZjGNce4o`KJkBQ3YCNOE75l%i!94^W(|8WTEXO~|>MRMx&nH4lP zKO;S0q=8{Q;5lBWLw>;CZ*~Kh#Sv#aKuw-)y3OMmh%j!)I#CjW>y>OTn)0duiw=zZ z!a;Tym=IoB$}5u<%A5im<@_H90;WqzmP95cP63M2KVSJcYgYxlvq zAw|ykds3Pz%fOjlJzzRx*iKG4YnbK4a6IAK(VE4_^v~>2dFTy?+_74|MAtECSo{Z# zf)Lp$A1yor@UBPKw#Qm*BkG3^z@?<)J<7REnG{A}2F>XLP6w1%SS2CI)icl1jDwj` zC=rmlEWCfHmo>9cQdF5TcOY>dcctXR;cI9cc7MH`-r2YCcFvRUhz;GcJCYR`gzkF( z$=hmJSQmlMByCOruJqT#d|al^;ehavb2-mU8E*_Z zYGD*1_rYd?SDyHFAdhIaI5bId+~9A!Do^!sY{#Tf{2pdtop*XGA(n$OR8%b2BI=dA zgean}8xbqI&-9WFNq^YVb?_5W6i4lc^@8eKJMQ77!e4CN(C?`^4&TnL?=>;5u)8Jk;vvC`OESozxE}ydSf=_eCtxw#}fJ)|3g7= z169#?W?f|gP^hPMMonBvp$ppsjKwHkWvz~GaaNk2Hq@NMC(V;m`6vIXK$3M$n_(A?BM_~h4V_@(cX^1)2Pe(oTPz}vv)G0TM^jxhypck0(J8>aBmH?+; z8gfqk)WBpIc*%AtE}ajQs3%QVVKmVR9hHq9f)j` z^W+zmrwXCpow*i0YQKWoL-(qPv-_DHj9XOpP^l(k7II}GNx9!7DQgym5a*n;W z8>i$e7y@zOXGp>@0(uICr5d;Rbrjh8j<=HnQq~RNG)(I*2V1zScCtRML3wgYe$e#z z9FcBlZj*tSf_#K--;GTF7i;DXZg^8Y#9jr+1h=ztL!flmg4l9xKE=kgUpf` zhW@|z)s4kCcLgNOeR~^wJ&r7+5vWGP(f6fACy+L7hK`+{qK^3wmBJqCci@W3Lw&3O zWHzCsuIajVQR3ApLg;?;r$|lGNrReqv8sYc#NnruDPnZA<1naAJJawqQt0Z4MUS7! zj79bpY-IY%deqkTY#k);iz-dM$u`O}^5q3h_fM?J4P>OHCwp(N*?vSeDL0;gbrDcJ z`E!g!!+#i-203zpBWJVYMlz1n=ICbzjmIb&Muh`UwQsWrZ*KxR`~tI-jMM7a9IJ9r zPxmS_Vn`vT4?d#^qTZ2zj%(SYXShKYRGT3pGj|{=^mZqN}nUKbcwB$K#*lVUG^J-#W^C0K_eBn!qpM&}})W9TO z1bLO3Pp|P#50xr0_=}ok601RjTIe|~H-=B5woElDdL`|{g(=sG&EpO;=YJE|{CjuS zl|b08Ik79>^|EXwhEUxT2M#!xNSR1y4kZsD2>uZ_M8xCa)G0(0*Hk+u+>R^4jIP$B z^`gJX;=xDc{+G&tXBLRlnkcc#+eb-xBH23+Xp&3V<_31@h?pPx(E*x3ngy zjKhvBeeGe?5lr7U*04N&>gH_x0>yu4xE5DW&UHHN;UJO8h-XGhG-#rouV&?ZgJ1gm zN*+EzOQ;9{u#fl;i=TJ)w5{Y_$d^hR-Pxfk?3#ihC|kp6ILXa+r)b z#J-Gm$w+um+kg3GBj!`KBqdPxL2ak5paeQN_8WFqwixw}aqNOY9$aYCv9!;#@!;mS zFhj)KC$05Eo|E{Q+PrLix8svqnh9%gWK}Ll8M#5Gu~M4rbh(03$KL_%)o!d^FV$t! z;XarSJfgDAQwQe) zfQ$##2;oEVQ_8^=(BVfr9R<5`q@#Db$cjbxsSv9do(nrL)no4VPc(~5)oE3vn4ty& zwPtZp%(gKs`41H`uP`zdrFYRV3}Uo<%rj|>cT`;KPPEIj%P6RpB9e{qhQU2-R=C9S z1t@h<;S;cTGggxr^JC>|u`&femW(%T^XG@VO_j%l!TlM%`(0AxqBF(7M>B%E9rO(3 z%03qs&;IX6((rR+G>?lJy-w-Lg%wlC@Gs9|nq#g>t?-vF!TcNy(XEma{G-yw<#4r> zq7?%yk5%SX>a|=#Es3|E^j@<5nZO?_hj;bET*3h@RU;WvK8~K>=b(EKcd2(d4QGe^G+jITi$Rv=K{wWb)@5T>WikVQ+Cq~}?L`z(9F6Z036JSW z59RHt{o|?_Ugod!*@Jqtwws{2%*ipr)>^SEM73*hbXR%v5mV<9jzj?ZkswukO~T7s zXk6?N?**~9QzAEY__e^zQ+c||*4y229#fXbDw0}rRZB*I16Rbsu_j-(l)CP%fk`XZ zxsvz&HrHjpw4B4iFjxjqs5tM?9eS@pg>b0NA4HA=+e&0BJ-onx#;~=bQkug&eF-)w zqX?j$%q-HGS_OZKS3D@>9?@F!N#Vf$mVun=0sb4x6|lAA7I-5o%V&YwD$0Rbw8uGC z{w?1ruF}k?sEmNFci|`|(~-wxMi0+qW8lFvTugB({_@f;9>cQ1<#yHHJzV~~#Cjuc ziq>y7Sx$3dph@>97wpVOn6?{zX=)RN&lJ`)hr0BzMIa2ce)u#Bsguv#wCu~Ofqkrn z;U+~YsYOoKer;=Mh$phI%`v*BOH9J#yJaJGMhXh!c44+z#D6q}=Q#SGQ0cW7@ zuUhj#M*3OKV1z>Wxg67ZIzLlLp~zuPk!Hf_nnM!ClbS7bYwejO4!!V#?9Hl z>`)hC3+~m1fT9K<6D}{EM)yPF4P|CNgi%+V;U83?MWR#>`Z7ghbqTv!_JgGiSjH|V zT;YdkpdZbflH=*tI?4j@HQ)Ja`cKRGA=yC+&##u;y;MBWPd0oCaI8Yfa+tQ}y`aW! zO7BnPuS~u1kmaJ?1334HCHaA^6QxlTue33&)&M3E3YGwdY0Zs|iMTbx(>8|##Z002 zYf;kmqR%(!;nOL=isy*%uId)X(%e7APh`bEv|-_qUk8pWhWwaMMoa z(bn^6bxH}(Dc}HqHF)mfZx>57MiuY%fobW*eYB+Yn9RnVMuB1{nl#JKA%d`$n(N?AIpucAd(>`Vm-)&ffL5xZgw|k!&|Z<}5`s+q zAcJe9YjKDV7D-Ut@AaeOIm=Fr!j}FPNc8p&d#H{zRSQ>D)#ql!E>9aW#U?D1Z^6TT z_VshpsS@yCKKf5qo%w&W>aoWEmye$Re?Ia^_#Zy<*kVpiB}F6*+!PQLeFaw!uWn8d z4bQFgh5Ls_0!~#+Ny-X^Cn)MCF%lpWPN@A$P?UyFord8+*&%VV-in*ap*^h@9iLcr`Ds&ldHdd$M5IWY~%5mkfCBAj31YoBBg%!(P~ zCfhEVZ#e95N58rCbs00CTNBR-&K;v}26W2KZVf zgUwzU7hRud>1Ogk$1Z(Z%XB-BT`}tCx}fQ;IxvN!FQSi-7aqg@1kHQ0I7T`lFk+t0 zKE5%S*PY2H58{8m+E^P@S4qQ>tMwX2-Q-?LRuPVX=VJKgfw}5NWy#v6 z!Z(`o$ekA+q;G1gdx$)>xa_tBGOTtLZxcoZ_;l>{#IUi=g*&w62RuOzXQa|W zM#ztBWgSP7pdT{#SboP>#Pj4wA{@roiRp!Ak zyeG9mb{mld8c!-ILo9_(4uXUGy= z6I}@clUpsj(7=co>wya7rQW~FtT*Cbbd>Zeeu1M!%${eDkiZ_{(J1YxUf#W0!Tk<& z<0z|kD`&N*Vb^lc?ltl#9pkz2CgrTsdqLaCD)ejBqMW6m(vy1sOpb(?;lnz2(Y{>~ z&a?m=6o*ON5*K6PJ*@pWz;iPfa&BIA67nJ6iSuN`U_o`{zN6tc!r@E-36kx=2rj@D z{q8366N;ckW=Gs9QjsFoC~~`?Gt;x@yQGubQhcI0`lk$62b9A^gbf?!F<7yrK~P@K z%v}C=OJ(pOYV6rr&0KxCwFPMAAjND~4#34D4Oy-Bb1EgkI)-IY$c14%p z#>{f0+oQ63S^o{@%FGw_u_#)P>e(KthE&3Ao2+xx)Tb7Cb87ci^{SX<^B}%tPatZ? zr;hbD@l^s(O0$1bpZTD8mW_)Djb-J6|weO02{ zGW126`qU8dqF-Z28v)i{%?^L%c*h9*?X340kgunu#VznB7P%v)Hm5`w0EB=-Vwo2r zh_*tz3Bx*K3pp$lPliAq+sa~+qg-x%kWVk%P6+kW_w83&f!|857|QW!jcNM zeTaZ)+kF+Og#6k}wu!cLzQytqV?9mLd)44SItlSj8+54nQB~AMSSoIZVoIl4vZu9n z9F?GuW+90qN(0oAZvNtFK=Hbo(g>z=We#e(p>$ZIM6o^*YhaXj{NydzL-UBvEW=n1 zWSxcrJlr!t`RN6hChiN+qE3Hx@&ap@(J^(Xi6g9M@SO|ASujm;ZfyOYF0lF7Gxp z_0iEbh(E>z|0~N9=ANQwQOu20Ml(F>+Hx1fEgUg&?IdI1?-eI+v zBYy7CRWHggVXdz1O~LuVhmcll#ir!&I$DoFztLL9K#(4^?7i}HWW%kZ9@T9$_;|Rv zZ$5Z5|A;J=4`Eahp!4SY6&3Z^z7FY7x;i!#sPv|ik_=s%e8S*n{LIm#E*wbA4BGQb ze&;49ob-055E&64BwliCh4tK4x=$}gw*z|3->}Qe0+lQ>^%p=;J_ijq1J%hX^hX9# zW;!ZJd_lCyp`}}4w#ovNsC|`|_beaI?QfQfTC!~qK|7h7syjB)`52%04bBwW23L;1 z|4|dubTR4_?iD;Th5kO2$*9v@%R z(Wi~u4wxf@2rsevl_B9o-P+$sTj)_%WGtx#)+0D>Gujepk@LN-E&N2t6c1HL6P5AK z+Iw;be$#uHg@ze)y9Of^XUBLqWvS0xxMyB;Jt}wCjt^7d-Q%mRBGLQy0Sm(a#NF}tn~k{E$YWazQMl`-D5z~5 z;tl>>h;cu2QYQP{g4Iz>9pFr5?B*Zql4`Wtv!Q>B*bx|Apu(_}{qy?x?_1h1f>qN| z-s3B9t0jX0cTq${8skD zfGJIy{XVJhN#pIUY`@O5WV2US3fgMSshwzt(-85Lrf3s|yh*#_TwpR2aoVHZns-X` z!5gRT(7fy@LV|w{<1SGxw8D#1b`3OYKmVtS#eLr%JzvJ*In*U7K zp0`^dz*7E;kI$81mr*)%WnWBuXB5O-##9SsvgzS<{6*9}QO9W3d=e$wz$@DndNY`s zZi)sMebYL5vv&MlB{hbq#UgjGHsM%%o(m(s&PM%cq=)C#VFH-&$pc zyv9Cq60Px5uFTL>{sSHoZ>0@&fqNqummJJ^#pR4WxOrl@A{p&)|su)&jidlHt%Q9(AbOEriN2j7S%nIDNT~)6X#E=;}9Fi2^hS9#}Oh= zYq>Wf+}WzR)PSD~y;aK%ics%$%+yJ_ zgt7D45kdhb$Ya-dOxi-sQLt&(w6}IDr_eTVpk{IG&*0CHI7NqGqtq;>TL|RNO#|W% zf0jwvyKi*c8fG39>48ehrdMy_?Y`72zrRn}589JPv}swxCAa17(-uH~^ThB~ku5K4 zu=rU@B}J|lGr*DpH1*Ybag%3#>zr(bTX1tp(f&DoSKzHBh_heH9aFOu+H&40n+fOa z&cA`LcZ2MFn7h!`%xUBgW3V*2dDOq1J@I)k`g&1A5e^1%2gZpEfA2;=W^M+j_m~Wl zL16X^&Q-zSG2X}T>>{Ekbk+HPp8}LNNF23?j4o;p71(3aK|I2W!}yk@TXz-ZW+r^S zU%zuR;0!cI#iFnEpf_c44YpKKMkt;w!*OY%?shGt@M_$olTNtWWE^&>jTA#|v?D$$RxkV;Y*bn`iY9!ql??(0f5Bw61GJFEuD$WE!~|2ex26zdb;bjnQl>2bm7`+48R*s9sZq&6NvLH3% zx}HW~Ub;j+5pVtrN&m^oGyiW+-p%~~LXs!ke`1ZvAs)&Lt%F+)kDE$LA#s7o^ar+F zgp`ETu0Q>MQsez1A{G@iCk7GW#7#4!)Is`(j*3WvXRnYCg&*ikYp}QDV_qG&4FyAHLJ6>4h@La%L8+3A zF~=_0#S>ZRSgh)tm=%R(L4_T351fBGx!7*Jh8B&$XJ;@ITvMzqn0hWN?|e&LqDV4L zqD*$>pQz=92IA+*fuZ>yr(B>+eX$seZi^W-cA?ANXgG>}{#2?Msh2cpE?B$wr6Vn! zM}o3~U#QW&r4Kz?Y?iE^PIq7Nj_mF_`L~G(+APSXj>Fq%I1j`BetrR)IE<4QWYV=? z6eaVdO|Bn#Fsm+FV4s|eLO$Bn+|jW$;NHLlU*s4uxhzw@HzSWPjPi@C=wuV*I6wS~ zodInt-1H2GYrbfg*y*uBywW{w72Lv*pGOv99WU%E1J!J@fCKts>zL+lal|HhCeRnbG`QzYEx*`!>&K7A6ICNf{SKHY_ zd9zprf%4F9{Q)K!7^Q5NJf6rqd^hm0IO>8P=8tN$w??a2NIyQu9_0etmY8y>U)J|= zpIVW7qclgpGHkc7`*9`kK^0r*J;g#ZcN@};kZs9%r|kE)aXHaOkL*F=H8;9Nxl2#n zXmUzFH9_>_B2y<#Gt_z3L%qyPYVHG~IDH;g(UNk4Mmsp%XoB8p>+k}r55+8)PfQ}y z81FV&A}EDQ`=Rkpo$vi-);zDt=tBf~VQ z2g+6NduZrckPQ=Ac>H>gg%#>oa=A=9@FCZ`6ZD?Z6K8GAqz*{wJ+E6POfnX;>zcz^ zlgOnrFC4K9zO~bDu!qpuOJk4Lh@zbUUqAa#bgJL1V{e9VzGti^9qlag#2_kSxrCo# z(jiF`hmA=^vR|4OjX*>EIO185I#3{SG{-L9I*FD-GREl5s>D$B8uq90hN{Z4D08EH#4$0}MaVv%uQ~ z49P_sJK6xS4$FHeFpC`mL@xwzco79t0+|Nsi)a_M*3W+Qg@$^&iev+@9tYG1xOgeVr4 zAA3AfbECX9pC1$DmT>ik=rvK}_f<2*Ng+y~t_W$W$iO|M#$%o`QUkGO7B`nw3wx8^ zB+m0jYW?q1RA69{NIML2!c6XM!M%C^ZqEa*c~|VD^7w^Rt9^^{u#avm&&d;hgPq#E z%k_(DBbSXo*`^hoPQL@`+hu2;7sywRl9UD;AetEsy6$EbKfhdticJfwdh*>wb59$y znTD+jKAxbHxJD@C6)tqc%)fVnP_$-=lpd$NEM=EiIU=y?B+i7hYBZKNpnJxX7s6-~ zYX1_*wM&{ZJjb!l$J>?^f~f5v)k3qdC2fVd7Rb>k9)PYVKA&k*tUcfHyr(L?;0Yr4 z8&uARD~vXwiA_Hl1$ZmDj}HQ(HArubr*W4U9+$vlJT>MOHe}!qyqgUz-VLu3cZVKZJHIDTodC9>*6MR^vZ&Hc=3Na1^$H*CT0<0j?ffY6l2?Xhk3`y!W9kva z*Q2eN2MMz-=g8XCX}#Y$Dnxa0gnJR*3%)`Z4feufFI&~t$bj4;N?iGZDNit0DLkUZ zlqhn$OnfPk0NCVD>c>B!LbS-Qu|thJawnc?@r*%Ec^D^7`Lh?xXt)Sol@&ERYr`H2 zN$v1RV~&00G+oDRL(i`8-pYlFS@D#fdPH8AJ^`{}928Ca;PhgLvl(X0_AjCN3xoU3 zW!K{Q(FmK#0sq_(9DPuMmeImhkYH8#>7sZabY@i#JfDbO>d~;g7edVz>~IYss~gWy zWOH=C3!4}5p`m}#ndFhA730OyVB`>c{^Mt0$OSD232tVq(VPeNmXQ#?lAt+s7YJRs zOyne07XNu94~7!pLO-5NuU0#Ey0me$dxgmaClAoamCdnfRyvcqr+f&HE~?cl<>`y4 zF6gD2!~rdCe2-}SJqbD0F0Bc4jdL z!y&XrkHpcxm{vDiV(HxypJm8D4(grjEM!Qe!X$HyBZ-llb#FC+6O(tNU_+1*Y_yp9 zNuJU}1^tybPvs$BM+q?n=wykUx6jms@mU*jpT$Oro|t@5<>9KA-e(CZFsz%tJv>i; z1~0J856U{8yjzWECd)w@%k40s!h1w&V9T-tbTFM04szpl49+cO}VaD0?Rj{V@gfNq+2mm`}d0 zXbEW?*&^D1%s2GpwHF=F>f=3)4C^s=hOWF8IIc#4LZ~Y>z^`*^@-?j^IySe-sqDmZ zl+_6&E%UZ*)6#P5I~F;5)_>Pid9}~9v>}!TDIPU#qJ~>{u(5W|ejTFMOJ&~hifw?q zs&gLYYbm3dR70!Oi9g6oaIR^Y*SHIFUFf%z1D}*OG$UK8kYC3U`szZAWP|bHcqO-C z)eV#6kDqNOyZ=DBh3QP){uB6i=yb}UU1;eK0bYk#=t>l*u9VfCw@?Y863ZccyeIss zY&+pDliQ(~h`ybZtnvw}DKQolutC-U=;>BB<&7INtGurA3vl%IOy@>eG7E>7J*m0P#xqQQ(On9fQ#k+{>Wt+Q+*x06n;{|YIocmtUv zU(AUuD4Xer)FZx%1b-GkuqBCfrX|PJi@omXZ06IO1d`sFM_v)d!4RuXI z>+!70;I4LB;CnDB&tiasIwv-EP1~H6e9+#7C%bEXmay>k(nQ<{ik3l_S?k+4qMLr& z@n|vbMJg!Nihrw-@Ipe_C!3#M_Px37AHN^X2zU5ox_6V=57(7Dx0I`C40||r`^}xS zYjDnAVX89j2J%Fjd3X)E%Hy4(ccox@Rx`bfY6QUHrosy%s^2yCqSxM2V??{7F2wn> z;v|@%+d5TSlIT_32{_)bxhfMV`V>3h#o?oRYHA%09(L~A~ zN7qZJ{WmI;=dSKQ-mTkfS#eOP`x>(-&yQbHxmA{}^C>7gz74+uEa3 zL{VWcwa+ztuj1x}CO`nBn`ye%Z1)B9slZ|Y0ZoycqHKaH+C(8Sa~L&Sq6}=gyk*Mc z)`)LNEa|JrYzK7iY3HQ8`kiK1PD=TyR#_B8GBoiV6m)E9Go#NUJsSdr82$9T zIv5gSpa%X+^}|rso-HR+c_FXl=SuLq<_(|^kn||)e_;fwdbp%H9@oZh>OD8sjF6Nz2knRwrR21#u$E&UYlv*$ zYOPc*!vV1gzVW|=>d|xZ!+Gz#7}e8*N7&Q7HqvL=oBQk=3AQ3ZTR>SyFv*!FXK!OHS zRsbM2&?1$iqbq?y1By`_)J4G~3ebXrHNx}IjjE+{p^znn3O%M)Ji5H(UQIo97k43Q zCs&T}vdoL*K(JrGe7?&w+lAlvsubsB5L&1~=)>JG&Gd7m5ay5JT13pNK*2bh__g4o zdE1isO7?IKYA}ezkN~qVs?!YA70yiuNh;-%lw54163dvE%e494WG(~aA2z)hj}RkD zoklRzX-D+F@u>h34;6U1G_@MaTEOgw7?r)^ewmLL{*vx@B7P&_!I?*FTj3o+u!c?% z;&kZOO3l_uL=BwIQ!sUxCOZ)C(y4DlZ5jPSpT(}I?iQ=O+~s6BK;6?Hi*E0wB0ERt z@}FZnVFSQ_?6yz?o+yFDr zV&5Y%Dut(%*(i(GSBk36=@yt#pa$3}EQ=--$Wr_m7`k?S1Goe3Ay0<1Jcfy&U@ zop+WMU3Oy6D&OW|LGo7`665kc@+Jjv!%RBmQ+29>XCzIOtCv$8 zNhix{Vg97_*pNqiQ8_zq4rHvUI~+Q#s0_74SMV=r`Z|-njD0(uismc7^)K%%mvGFo zS~v9wPM5@g=Ebpw?;movMqF~zrL03-YSQiMD}$Nr$sxdxi#I{}Oi6T;y`qeDCAqzy zgCdMn1!u|UogUvQk2XRaE_Uc*?M8l2 zw#ir>T{$d&(LHh&8Ybe%{6DJRvAYsz-MTHswr$(0*tRRK7%N;+#kOtRR>ihev9sc2 zg>Uw4?e25VkC-3&e8w34HHX{)_CncX^waxwpCz{#ME&nWHi2YozD_!>X5Wg+30SXy ziX^=%JLRT~apU*(l~T_j&O)4w2%|o2CEf4sChf$}8i*Fmb!}03$1+|g{2gbhf6t1a zP_8oGvaaSJr<$U>k9(C8DGx4uH(zECbwx`14|8f>uriEh} zOYP>aLXhbC1lv=faZmX!_-~7`mDaL^QI;zyri1&%jCS9&0DlkB_(o{sa`>lnU0(8{ zNgaKBKIK&CMvMeFn_nxq+Xrf$5p{MS_mK_V)}`r1p+3(4T_l@$LlJ%%#dv*8`vkda zW)NZ6D^6tTx?3+P#Riw>+T3Al3(qpodzWiN-`)#bZB*>?pU*t*V7U(AKSFP(yryws zv8Y)HtFXtg^gy^`46vuv8fus-dGKs2t!)<5JU3KTxhb`yqnoOL`VIMmG*qUF_Uk3@ z!WjSV6$*xxMJbxXSfS^B{$hO~kkCS?rtF2B=?R*TbmuZF(?Z}8f{QE!P=lDCsSP}@ zF;DrZx_JraFcYjSH%(mq<>RE?qcT**T@i@M2_fxhZa!z?c})%U%v! zVI0DFlU27XzS-O@CZMS_-_)%Ou;`Q(2>oZ`bWp2X9u1h=EM(QTdzZ?7*R?8pJF8nb zR|Rx=>T$L_s(ZPTe>ZHM5z8LPK#Pc_4p6Doc(nn>v=$I2zOgO4i(|2eo zi)Asuk7)~(Q_G`j9)jL|5_S=*pENru;w@miw}<4|;lq+rMrH?3;-XpPu)Inj3<`{f z6k%}i|Ftl8L?pOIUUSzq&6hT*a*3zg$rgFv{}o)FLUmGNSaB7}PXDi4bgP-9#Wmf@ zL&t3ZxnZqi{B6}$oq(m!AVvLD(+cUZ)lY5Fm`!2GL-O^Svl_E5I_s`!#t^nFDgE|X zG3z-J|2@pgPq!^)bsuDx?KomaBL7CZHpdpWE{FKA@`o2Kk1{B;!3i%XEAO2$Ce@R9 z0#1N0Hf29(sI*KO=7u>v+bIO#XT4x-On^}WF;=so#tmqp)uBr9yE3CP3Llob{O4!21&j z(KJjrdkQ&jr#vfv25fqPP-zwL zDQX%5Q}O%(Zh@4xBbQSNBJ+&y%#YtLoE~F$VVASxJQYV9D5nQ+1Dauaa-dz!MNM(1 zt8XkghyDut5136#57L=7T8erc^DreN%T69ru*_LoTKP6_usxhEGHN^Oa2um(7O|>L z`@Q_nx^=LHkw@&B_bTOo<*tYX43nVLAL1u9;u3Q*m;-`&iYX+NW2T(UbK>nmJ3qRv z^iGe7;e6{67IK(dzLi|O+yw|pavkr;(eWkNr^`HMR+?+LWX6aj>m7NZ&=+GR-)tD0 z_oARaM<@AA{9q%W2#)51XTj{RqMeY}p3rC7lYPs-V+$z_nf4q`vmcgSiE$WC@1&DR zX}6wOade*DR<%ZR3SLVe0^1#Qp4qM!>#?IMrjjnJb}3}}uDhRCh_F)Jfvr5ogN`O4 zZOXjF2q*ifI|ZA#?%VjI+43 zeUj@@i;bl2jQD0UkGzI6Mz;56+FxJBYg2 zGv1vOaUH|bb$0^wpt@)#>|o&vG3M?>u`vUuxklz)|M+&;eqNNOR635&P6wyWq@sF1;P4TUQ}#%-f4j zOhyt2M>!&f;O|{LS-1<~AeVl0fQmUVXw<;qtdR)9jZIfbn2^V^5X~0J^MGHGYZHok zthsl;t!t}i(TQik!y+(!VnZmx?KxnfL=YQ|z`8>A5Rchw2C<^hWM%XuDGAC>hEvLg}S9`31?F;x99HObOJyO z4%YEktgH)F&i}y@p8sMA&wsE)+VTHliN^n6iRO!m+G3l&XAT>iM-Oorb`UZ;JS_Ey zsNXn)$O5&N63Q$oCovO-(iuZON+9fg6fuJpLvn~eHSCI2m0IJ>74^+bIB{_(B)MXI zFFD|0%Wyf(6J+RU?~^u>>HPqHcwW-k=BvQR~IR!u4FIUSTi+BDLo9Gi9YTAR3K<%-uBJ( z7dJ1IZ(Nf>(^x`}43?Tv)PjRqmTCB|dQb|%3?AB@AlCvxkVDem{n5m|T~Bruu9q80uCKp2>y%!$#j-UROo_L|~&Vt>!$CyL0Q z7^Y^aA+fKUWjsYxJ*7MoK5e8o z^JdWtj%qfDMs11lr-nSi(L&=+tDdW!%1X*BSC?oC&V180h&v)Zv;I zaa%i*72lB#$AX$5nGEL%t!Fh( zA91t~)mbqMo&5*FopKmd8}+=#Ln@|6#G_&|`b`~lK~`K$-FCKvVJYO@V#$W|BYU`6 zo!VZ?Q<*cHrIxUPz$rhxvPl=;CO;Tv`i*m109T`Vg|cpJ*ru)?`J(>Mk+--l`IPPM zj(s1D=Kx<7B#rS`ybV*3q?X)9yA8{}>=6X=%uI{2gb+D1s?KFNrq2=VYJI zq3ttf^^NABTf4RI&ausa!sWIuDqol&k#A*MeMIapWWC%by}gto`oC6unbUs^ZW&K^ zZ=~lW4>bu;4#6=2~HG0HQ`O!~|htsY>m=e9O?e^ByA?_pbniD$% zH8n!*Q#=bLNJx!8wjb5a z=As%MpI?x#&=bzqi-PryH9+;6NH1PRj!9@9+>H6E2POdFgwhza$-2l)Mn~3mnNh;N zfzCx*-~^bXmx=Z*TVx>@t7{cRe4mA@>(a2RB##5C*FI%H^Zi}>7izbv50JjFj0=l% z45cY~YZgT72iW(S(=Ry%Q&iz`nhw-1gIo2Y zB~~x%Sy1SV1t#$h6=9W42oKuOZ$!MnuXyfn`t4d!4NzTOdJkmhX0VX0)Rd*FbBeHa z8D3|{3S(;Oe~h0$l|DUM>{B6=rB)vsorQwApb)R>hzt1Q(fhkBu9FmRwO(-UY~0&> zqEC7mP~vQYsyU-w${>zpU$p8DK;m1CY%Q{eYJ1 z7Z2=9UlV(-4<(OG3(A2M05KAs8vH>e+ut|PQRi_@eW-QAYdU}W*h|Mwrk73q2^z*F z>@M8p@=t}NT=D{X$G>lo{a40Hq8}$gJ!w`RdL=u&Xazpe1J(g5JwI!B0l5t2m^->2 z+paqx+Z&t`w?xk@GEht&adY2mVb_A{TATM=7{8C$)QsU&KZMu&ijsR zlB&uXst>bfi3#`7i8{XDfL{?S>v3st4l@1zEKJMW5i8XF zSV#v5nF&j69+R2M;c!ZBPYuUKOX)y)E|_jE`W$skl+)jO$Gh!*&gSiyE!xAp>H3Q? zCnR2tP_GmwXD`7TqIV|mwDVeeh(Er|1BmCJ%e033yD>oDo$yL9@_bpW*!`!Vc?+Y0 z;_g7^#wl+tOgzkaD&mvNk}GH*yaYYB2=r$rJXlnNTxjb#p%O|TW3I9y*@N~a;cnM{ z-b3Lh3{nzRsL}9J(Vq!2W^hv>I(f?@TQJtKro8$1wc}ehq-FC`g`aayGu$f@|fQ zMzl|DIkr%xsh^o@b6ia46cty{4Sea(7Mqik-)GtChl2sC1++YdOM`|;j4|iSd@MrT zl3m54n_*win}Co7SA}w+-doE;9<^iq2bk!BUinxX2;b4{aH= zn)^Lq#!EOD2)!J{!w>Z_+WAsFW|VE2Z!hN9eLo{+(HZJt3V$CrE%>u9#2K*Mm}L`OW5+Y#f{g+5#+!ELfPUCtXhcVQA9f?*c0tnuK=C0R$!TY(YB1!iflz}tK!`7xHO7I)St)nD|(9$wKTMv~TS*Quj5=6(j;WeQ6p3fBicE>=W z8}ivAM*=o4CT<@_d@4N{tBPMLeDhuzDh4~z?22na9v$!qYv_=F|y?40cIi^qGU zb-WSng!ak#nWH6njB4nHlP;Y;`$$DC(Y+JV?UmT!=)ImBhX>ezRgxgC;(Tx=cf6ov zLZe$zZ>xJEafS=7ba)YaJnJ&=lGgc$?Sv{_7x)3t67KywP8)SZ6o`N&A5uvyu(t?8$&!>7IuGFYDL z#tmPv-{3TXIl^F(>t7-r#N?pBngyR&>~+ZA3Z!@F zaX52X15H6fVw7PcL1GD|QL}SGd=>uD;1#WnvfCVD6;pDnGf*Cw;Ce=*V<^G-45lx|)kmCCBz_u4Bjg?q_&G z{FMm2Dw}0A7=m}i(}9jTvHJ!gj}@eR4ttrOGr|4D5+HN;MIMc|E9UF<$1MMG*z8lE zjD#6CM3@sUWhyU6Tzu^qrBz5sqP3^8;;ZyUQ&J-R_|um~$KlFo{a|6NfBt3}i42GT zV(a|p678}niWP+z=&(&K*)=1T6;_Wbt2$dEsEdPLY2iBpzllgrI-r0S$G5kGvso@x zC02?JvhCsLtwMOYgVP#o-{Z~%5^emch)IxX>1%@TM2wC;zsj#4&97?2U4;_~}Gq6SjcQ5PT| z>XH{KtC*ERniXP3(H@#AcYOvnX{8Ill&kTB6mpA-@zAbFHWB4Sfbi}h)-Cw&*T+#I zKzPcA0Vn3*YVl^$rA4}j@b{9-_)W*hyKOS6eT0Q=`olH>VxHeBd9ha%(~U5wu}o|8 zx-v9~kW;gEG?-DNBt$-m5@8WTS`S#Er5sL<;%CAu5tzj+N@SZVA9L_qy|8e?IK^ zFU6sPuSs+4cal^BavigT8F#8`hA^sp!%;5o*_?Qs)>~1_aX(w=;2ajeyikZBL=me~ zLzMvvh1P)WGbRFr5Tv2I(oI|wP z0ns0Tx%RcsO^Do5=+i+`Bj}FQu4*>@dRFFZiDbzn(vQ3JM++Mx6;B&op=0!ZVh_Uk zv5w(gSIw9)nhSm`5m7}(IpdS0Y*Jj!vsw@RcCjtdJgesq3n%t&S zRccqmf{dNBCX44X=TglhIqE{IL#^lFTXV99d|9y)tbw9dM4;{wW$)-;q1=C59hqy; zexjB0rK0F$A?@w3zuS`h5q|XqW6k(((xi?xOvbVv+h#f!t?;NFGZk1Yaz2V3IF$K4 zeTk=6lAMxIWCOkrHzGMcB{!we(4M5~i*xo^^N^%lQxHpp19RGpv93SdaRcr`pEDPO zra9*C-Ck-}#lnq-o|Jx-8Ao>eMUN(&=k3NmLRuJjPsO#zZ=c|1`z2qp!#96pmwxrD zaWRiqQ$V8kLA1n7PEFvpAZ4F(Eg(9&Tc7hv&+`^zI+JcCiN?ylZE?#hw5vQQ z55{I8VyHT<#+6pY_j5a!nOeqh{T?g<1bC~Rl{*^FK&L2CgP4lgCEli4-GRB25j3@Sys)5D^Be%`RhOzT zgP5&n(Y%HXitY#llBh1g`Tq5vw*`vbJPscY9kQtqH2bbnMND<8(L=7~5VlQRHQAuM z2v<;uMOF}zcN+B~0T#OfN>E+QT+%U=~!K z&xq#yjAFa&D3HWDzs3pSA{#OOipK$kg_m zJ8ndp0Ou{SL}MY@q0ymv=$q}lkFM}npi*@mT*yB9;koicVgbO)Z!UCjb3Di+KN6Ft zY?em}=f&s8!hM$Q0ygT#*a-`Gu*1g;b-q>!kVHL zHS-EB;;~U%*(a^`%H~A3JjG^NuhdyS z_RqGRENb;-2Lp+;+$4zbB2gKlEx#61kduIU+;dY`G%=I+X1&O<0 zYl2@6P!1GiL43;;hjYq&r)R_*djgD!QUcl@y z6#Jmk^s*`uj6uZ^V2NCqbl-#nPt!xSlMpM@x}!1Qq{AB=T9hU=$%7|6+#QfrC{~kU z6K_(>7*R3TV4@5$ziHS+fK@&&T#I&3@Scg5b$16#`BH7poh2}t_6&IeBqN)tqX1)& zTNM23Ag1KG58-LD1x2+fF7cd^_@>AhNDKkaBd&Vzntrn;*8kV(seBqai$Zj?M|KG= zshgMqyJ1ZwCHy`uQ{4+!?AB5DLhg!!=^Q3aFJd-{EOq1C8NSJDe68u6IVsjGSj_W! z)mco^8L%&T-(dwx0F5asIR=8* zdJ2kmL>OoU&)G7l!{&~L;9ONH!axu?E37Y{AXSB|j~sShN84^UJy>(ebs{`)IAJ}q z1te23^yogU{WX%lQ;BKOwr()E+_=>)()|kpoG3=x6$v84I#+Y#bky8u;e;rE=M@#Y z{7Uez5BI@5xB>obzi)va_1-NpttKPnB5z`NC~tfS1{|zan3VRS@0(K4Mh>U}58md1 zS1K7`=n;qZx-A%*`cM?Z?+JWnUS?hr zULppN8rAGW4o|IHi5kLedZed=H{6e596*k#RGXy`xA{LVRPBT6>8jgqBlw0kDqOaG z|2zjyDI2!2d7J&-uof!8lsoTpZa+@=W#Z${|12$QV&MF@#cR5Pvg6!xiod%nN;I-L z$Qu|?-LRb@Ywg^k7eAv{G5uB&8Xek>J0_7TqI`9SI$ti=G*0Rd(z7k*;z4kM0QTR$_XyBgXPYdy}!B)U{8}ZwDV}Jg*%@6 zX*|{H00UoN7Vr|Q)K%~S7GEC)F+QL&Kpma`gIX;AMJ<;9pcanD|3$6U|8?yFo2ZF5 zzn5QLTvi5>lmGbv6Y=fa%}=FB`tPKC)bOnSf$~s^;)%notzS@u&2U1`uS}`_LHm=I zvJF6dRn8e96-55=H7>BSaQ>wGQDf2L$oxI>@j1nrH%nK28{Axu`6ux8WBH>GtNv*4 zpw!zODqH^a61PMI^#C`li4kkKanZ!Kr>W|?&0$!@_qTx=v)@9Z^ z=X;~dZo{tPpT3cg%X}C^dFYE`PoX&Q}P1=ydof&{8+pJ>JFZvvUxRDsSdX54T>V!V)Ryh&CUhcAo_7$lJ_Na0uo5v72C^`1&wFq;o{vzQ5gJh-uc=VG;O zk6$DbCX`0JWA|F%5<$;DLg)TmT*157xh2G1YnHpaxie@#+{mqsJ*L&8)hO7fY1poDopAKN@sm}4tgrQwKSR+Jd7(%?hV zUGDOZ2~1u!#m%Fr6u_NNgZ^ve`ys9Kh8dHlAhiNyebpD8(F*68^|CFj9#vME6UaFu zRs88zp6o01%>j4d`URP*vBf!IQsh1JLZYK@5KC2rk1_iutL$tL>LOR`HgM}T6qRo3 zTo#wWYxr3uGf$}$#UT0;`r~v0hM^(84*MtWedv$Q(cLfp$D~judLvi2{-J56cbIrA zeSG3C`L?r6cUI0lTtk=CEz6A$s8tlZi24iZ*(eB(gQF!i2lP7SKhjC)uH4$Vk}Hgz z4ZNgiw)$O@H_qQmDQ=s?yD>e>ME^py>R}W}tQDjv>9}^A*EXp(N(eyPcT+y6pUl7* zJx`#ehCO2&Sv`3c1o+kyx-C)Tl{DqW?beMTx-I_2c-Xk;|>a1P=eLmJ)@g8eK_ zx~3Vd=f$x1Sg-V+JXuw4dr8ScJ)^qxnk`H{yW!*-)Lr6gi((9nvP;?$JDQE$#Y1s$5i8` zBp`dFr8zFzKw+tV>{nrvN%^%xa>@v98;L~1eAs8)FltsnSIBEgu zIbQ4X8Fh2Nicwc4`x&!nbpcr6TR1a4?-E@C+n`utyRK!r%VNDe*;|e=6rnSvvi3io zc5=ECrU_>36j)_B9d_ZQ^88vDmXNtRE%&=5uP>4d99C3&vtcg0Xh$c?pZNzp)B~+c z#D&GmAnhkT$d!IqlRUteJ%^EYQeG4PZt3*_^L82w;!(K2wL+7LSo>nLL#z4ewd-;N zz!E$I=SP+4pNZ8s?T(~9^n%Y;e{DUn#!ME^A&jhOvE~>a`7d1Gz;KzYD4(AnC9I%t zhY3HM3G)Ef9vQvwC@}>Svw&TsXJvI2!D-vX=ze9C0`GhrV1=9>a{5riG`~IjJ=Wra zAF7qNMMh}^7IOmlWTs}MNT{HxbE*?J+zD1mSFW){`9%w|+w|kq2;zF1cP!Obyg6k= zYqOAJ=rIm9UE!U-0A1a3CESwwDxdw6EV&;Yb?jpL%_?9h$8xL@J;eJkm*m^?*wU!J zv0;w~oUd2Kg;h;dg*K=5D8q(!%uN57@y7=ev6Tu=b4mViNbkDUZIK$74KWvrx8yAj z-Qk}#Of|H0$JU;OUopl#ZHqEVIw8)Acbg&l^FfK9qYI4&))#51&*=O0?4Y~!X zzD{1q&VNr@2=Ea6GwmY^F(ZdL^L>jLzAgwpd|m+u;F?Wy#G#uCi;vJaBiK@L99&vB zjXnH=lOfIu!Bk-))zC4|FuZNe%6buS!^6Us2|729AqZ1w7p&2h+fKCtmbnUu#?&@b z;tk>$VZY4oh)@M<)^VXaS`3@5dz4~5qFzKN5BB`S;2kc?`6@JP0<=2*!;xDaH!rJ? zYU#JiJA_kK#$o-q891b+$H1a9e0y#m5?(2)PLPTI=*__vYgv`gHYK)U@%b_OGrclm z8|*t2F33&5Ey6{x9W$-0=%%Je*Tl#<_sz-So8_Y09)n~2rMosp%z$_Nvl@E{VN>+3 z$>SvMg)5w(HA8`^`sD3exI!Jwosb{0RccJS_JT%mCkBx1v>iab>{`kM24fc>Mh-G< zd{lk<3+VE+NV!y_tbr&CK$Qj7cg^o;X1^dF47>L0^jE>|Ta`C?WSMqsnD(_Q$;D zQM|UW9D0P#w=ga0QUR&1ixEPumYf)?dmSSjl(+4|8MIKe>&mmlcyNUt`F@Ym!jqpB z$u8QgqjRciD^?Zf=^EDQoU-OT;_0M_Hfd6y5ZK@LwxA6j+QfAbn@_)7MS z^5TSaDLJ@d28`%YSy&6r1DwfF!h-t)Ue2TvO1+t z??24si&+T#lyThsx?b+hah3&U3%o&3@7Z-m;ZJpm;mf2VhX#VUQEj!qf3O;*j{|hV zO&6}FUEM{_2Zz<^GUfBhqKx&)joG9Xh8FY4nyM9M^{NT8Ow-AfwQYp@duoevC z=!Wf?C-)Ij+{nMB_1oG%Ozx+%s3+R!&ngtOenh7&D>}F(&3T)jZWtPg*M8z&3w{`f z8&RX!AbI2W3`bK_B^>)*sw+_wG3ls8Qye&7VeS0=AS7Cqk1LGNV)~|T7N?A9m|_@0 zy$r1u)d3ZS_qTs3l{Z5no2Jh{8~MGBs@%V8a@WUj0#aK{^jQ{%dv=~&QEp4SL@Y~x zHYkLc1=1qyIk@=WtXLoYFyBl0jgk}wxdG!pQjA^WnEKa_=DunX z)YWQydh5N<=~0>RjbF5Z^vF`2dO+Zvr;;H&#>BaRqj5h-!mgrES{OxZt75*a+EE#$?B>+Kk*kSfB_|MxOFA ze)&X`Ba869xvs?;7&iU%I1uasFH>+u)G(VI#)-BOB= zBsO#_qg&th#5yYi!LwVGsz$M;ylU!p!b%moTj6Nuqi(xw*3Akp09x=NxFaD* z(97PPu;8k#C7f6H{;ARANr>UDeAAPq$U%tK2!RMW_$Fz)FGoE7G{Tp)yW)y`JIYNN zaPM)kZ8LQ5`p?2@U#{0p`NP2SI6Y+`720`6@HSCy*yR%3OpOwbcg;BXCW(2ifA9O1 z4gAOXe<+CczZAs!9}4>F{eLN_^M6y2uli!wXXcI1RDsw}>{}{xXdN`P)P!iD2<=xK z1Vy|mXj0_ZzHh9nu*#4HnBf>{RA0k(3zQi8zr(U(%-+N)2g4eL{vrlAfdr1uyL#TT z?{2q*uD9L}4zn|F1-6a6mvuS}zM$Uxe*<$PS_)a4ZBGMEmSqol1>9jKt^^GIcnVt4 zNM5Ds5MIC{Fue4W7KDQqJ!YHpAJ$n0kxQJ;=;vOj@~*PJuiMmVmrpLT&iS~w;jX{; zI>c&t#HL3Mwel}#S88N#cQ`j95ED3mA_QaJVO49@&_WG zcvg_?+S3I$kJdy(ONGL9s!aSfS-!!bLaOHBD#t@_HBfzo?~7yb4p z8ikqZ%J@C1^S=`UP_Y|H?A1B-Dw>JB{L0;IW2K}SMMEr@_Ck+Jv*$-C$ZrAJvXqbQ0vmOTXgfc=+mXkRXMu{t##(*y`Nuh|65|9nv_FM_%D(tDm|?~|$aY^byR7CI-L%b{|OF8=f= zysguv=gmN_fUF!_L-&Yk+vM*){u`(Sy`hehPPWGqki*nV(zXWAf>ldHLt9Upd0`#x z2KKhp!r+?%%Uz&w3KXlhzHe=)?k%0HhN{R~<}Fs4i;|PM&-2RYUeHj-;ncTrU&_sh z4lqA&+5C|QAQ#i4#as>*sVPhPE;?%YM>J}cuwEu8RftBWkng9{t_^R)wML^4y^RfZ znq2W3=7hK`i1mc4&Q+XETP2JP=x#icq$*Co@ENJBL}dK2a)b?Fcjs+t4BqBZ$sC?i zBH|^hQ3}Y2)^TLGYJMKLH0!FWpY-98VHcKERa_eqV&A0}S(j(S?_=z& zfc@RTFE6^uh<$|iB!U)&qI_%we~(pFtNbC?@MVHa3~Zd@tq^s89}6e12)k!%y4Tn( z+#v=#25zg$AM4RcmgrVC_z;b3vCeE6P}PzVx|&LMJQNsFqUV+1>{u3qw!G=av9Zey zs$}md{l4c;fxy>y|4a0q+MXBxJRV&Jy!kuv(& z>KMGQioeNccR}8YM)mG@Y$t;)((@&_i96%}1C9ih@j?bDQEsy>^6CVhv_v)}N8Z9! z6L}wKC$22A3uDgkHeq}ip)ec?plIq$?f{@5=du`IM+EHDrzS50l6 z;bQXIt2KZY#>d9Ce?$qHjp8xG!b=S)Tt;d0e3-$H`(jwi+b1%Bgl?&HMzJC z-wpDaH71Eu4a_@hdTt{%~mHV>D zN&?3+kN?q(=V5q#KszRddv7{^x^r`bDd#!)%WRB`c1DTVnBppY>?s|Ecy|OaLQtnH z{O1$5y<;F9vZRfxJ*5l}_+ymRTcK|Jr8D&jCQ;;PlV~k5T(yug5)!ApT4gEr!ri5| zIBzGpA|LtDijA+K_xktVOe5>C9#2;M4s!j#2nI=sVR1q=SkUZzTE^ENP@f|jjZ zaM@oxcfK1wTDU;m=Qg8P#Kr2W$5E_Qt_U;an$uBZ;tS4<>&6a!s_`EzNHrZqv&ySu zFJy>w)!`%!YY=b3okSq?v&Th^OOd{lNS z#G%0cAAu^odlDw7X9Lh%A=T$l<>2R+-w`BnqK%SM{rV-Dw5hh?8#3^B7`oeGY;iEB z-|3bIYP&U5lq5|AP#wY_pIAIrC*YX+JPbpfTJ2#bUc{@BNTNN{AL&#T2E{x%AQ*D# zoN9wOPKfNj=D)|b-#Rl5zF^cKv^1d+G_amK*XX|;cH9;!9Sj%eyXLUfE;qoF#J`gUX=f2!g#A| zdJQM)GBV=}Pa~0SK+WfJTauPA_;k5)S=51CrQc(-UPX@WFk6h7z7*%B$v(|9K}i@? zYu6NipIDI5@Hz2r|@k9o^4G-#xA=qeIC%>p7mPXP+qy5$UtYT)tj z;}`FA%RHlbIC2dLSPtWo81(8`AS8jKRa&k*c!veuD=?2EoXuFe{ph6@d->(2)ZV)6 zn#a3MfRlJ1xr3noMLXw&f!3^ZO9)iSjEva-{M=PFq z+xFCPkH4tN99vo?LpHuSi#10t@?4j(`B1%; z#pb~;q-5P<47q(8y;(&i|6nE%4$CWe_2B`_Cx@&OkqH))fO954qwX()b$!_O#25FW zZ%4ng=V@I%15zz=m|f7Bf*~bKAuR}R*8~p}Ao44i{vboFilruMHpz1*hMHCrD%So@HQW#fsFw1=hJxoxT<31B%EY4o|E8FS~D zXY`;YK&AI+Xe#WX$3yA)qa?HKgQGtC)w|O#vNr$a^4ZvX0 ziWDHm8t8)>4jBoX41MbvWET{7~`U{7j zWoM00=(w7Nr{E2ttt&(3VO#V+fG`Wc?KL|y(Q>B1!V=XrUNx0^q^;C7hg93P7ePne3XJgzujOE|V3 z8n&8RUU&=^v%FT88W+MZlo0Oea(t@4>@RZqHFs_ z;J~w3S}$6{d5BhouIumy#i>=#S{)~f@1)|d0$*pJ zM%84!)yd(+^H4$`H5h}y(sm1$+=BHLAso`>`H1l1Q z5_%5RW?2)jZ{q}1_Nx~AjA#*FjZT6~ZtJoOoxe0&qCG_yhp~#aT=O9bZp-JghhWemQ4pZ#|1Jzj5*sSuP1kMm_IjQHmP6P#(Be?DI`Q?4n$_WaY3F)WhMijI12=*k%=&Ju$xM^;p*3{wo6_Ok6W-AEOTx5d;JL zrfcRfb8jZx+k&MxmZvdf`?gSr#pqze&ig}X5gW8Es01JV+Gs4xl?==b+3FabS8PQI z3FbX0@kHaGQ|Va64#tJTJb4wyyHp}Nx%P9T$@+TFJS;`zdzSVvR3YMDvsZFx28k{JFe-ljUOWeV`hkGP3<`=4n~ zlQh<8mL`l&({Ja){oM3p%LLld!#zI)YaB9K&l86GznB+j@83kSvW-gwvB)k~m(%tK zO`om`@PepCniV<$NhnZ3m(HPPUUod!85GLLqCT57-cp*D*fuu@Xp39hk~z+}x`cM4 z`wc;F`C-!OY=%cW6gN!53Tv~3HxV%xTDClxyt+qTV$ZQHhO+qT}=_N{$C?A^|fSaZ#%%`tjU zVkidh+aZ@Y=yQ=gwr|JVQNgey$JmOOf<@c4>T8B6vErD}KzR z>?)K#DyT3iFp1ib^D!HTJ2!|cXRunbc)n3DvPFm`98q5_Yt7&cSYG)zYu%W{qszQ% zLg1UK+;Ob?uX0q@h(_ay&27x~U5=v)zH#+vy^$Lzd)dUT{C%TU5#lxqYW#y5oi5xi zJYb$TR8+5Xs`srd!SMc((BlqnmMx^$PeK5uf^^ALucM&acbB#mzhIXw#l0(FR+;53 zg1c7`|IPhJp32Qh-sJ7cxDo6RQKDRrgm2u5J<;Vv;U!OX4u5h$f5mTI4v&sC?-1WI z=-@5vZ;usO4Vs)48ZsrrQ)v7ipzrD=?ehaG+&Jr25c)Z{)HdSnvP@=60}Q73>`ys0 zgZ1COrH2h!EN5ktRxE41nCG0y{0~Sz_T^jRFX@g>abBt_cXF$!W2h>1h|#rc(- zRSyZQ#SpWqM7x{;z_Jkal4cR{cdowmic!s0C;DKn#R3^8T*q3e_zbD3 z7*4W{Ocu#5z=Xo_Ae)U5(CligQytq=N+c}oO3aiH^@&87(;=aQPf*v_0G_R{3Wocx z`MoP-<9=y8uYLHJT>s`P3xcvV%t~sR^$#kauxDIq=9$3Z-g3#@x^``iYYaHd72La7 zV!_TJ@Uo7nG=}qI_JY~C*(?NKE_EC>cXnD&-g{j9L;1YtW2uPy_oal_GN$Y)hZfWD z?w=di)WttT)uG+g*c6-;ZU#vc#GB`Fu_WPc=it~0P-w2T*s5(rsHFT zVT)x%rLh-Q7ompk(~S)4g3tCv zXA;jo`FG*$bB-n_k$%ke7mgT?zE83mVO)5UW4Zy@Un2W>@6I6+{ftm^y@0Vhdx@F3 zKMij_gtP79Ui=Fy6C7mR65r^FKL+<52A~47wIEY}(9x7>YZEmMyFL!>x2sbQkLLLS zEhM@{`Zuu?C#o@2OpCX|!%??*sw~U1#$zf6%(IV#7dHT3u7ju6w`m(WO8W`d@NN$2 zn7G>GpJ1ntoJySn;l-`WTY?X;g2SMwT z@RV^k#aM24T`wm~u*4(Cb;(=;)bZ@_Q@rum@_k;nmfk5#Tb+F@#k01-ESd&wkGBbf z8XLn{mR9-R$7l&WsIj~I)D6RGrcGxW7vvjBE06e(Rzv&^e=SBi3`hL!7>G-fd(Br# zfaYXQg%nB04d$J=-S;bFY}?123X2}q0R(+?6DkXR-deT1h(M32bw)F5DT~lFu@WfGhy44gUn>-k=tsIfYwXUGHP%Ofr`I>(h|=8hOJ z0sqb9*_vpHL;}dUSstviD+IlwE+0MX#daFo3t^`5)-09=cM|hI>R_`kMe9on^MyVx zs0kK&-vjcs!y7-_(YBoe)gVGy@?epwU}Qfge_qSrP%Vu&MRqYF3J~IcFZX#JKcgk$0ns~E1cXCz?#rb7+kkwB_vd(9SZOG}-JB9*X3ksaVUkQXJyVm8mhoVK_M%o4h7@oxgwFo4yh7W(vN*XHi*D{sLspr$0t> za+v2B^3A`lxZl|Lb=4YIN&oOM2@zD%ZWr%604yKdrYT$7q(G&UZ>Q5+MxF#ElG!XNgy zD!Sp`mg75c`kurau6-_ry;iofFLomm?*olUCHr%1R~mLK+e5py0?QT5vYqxVQc`5D zjzhWE25_16yf~9?zak#C+`q5hRN3B+yYni#6P<)b(3KP{}h^XoGZ`o^Zw8JqDcn+|V zCoqUOA5DKTeoZe5+BhRK#Qs1)7MHR9j}EN=r334K=rAAjf9Wv!KRTp_yD6)548L%_ zsH%t&LLmYqM@mOl^YkBni&!8&Ny1PHFHZdto7bg;TriB1Dafl;s8{F{Lo}8@s{f4$ zIYvrI-4p;6uUZo4FOyu+@siWHtMOPm66})(EKq zK;zV?AnFsy#s-WRe^JQK#LA-ME8&-}v6`bDs{w#ZhpAuDa37O;5%zGsPt@uYr3Sap zF=yPBmd#$h7{^rYp*HrMK0vqT&|4mLC1IVn#*X$tOD4{FtfP#UvN@06Sj+VFl%{0W z$9HsjPHrj;c+V4e^U}!rWqCs(rpUdLjhs>bRq;Nj^mgZafeKXSW|^|%O*%8RLg4=Z z=h|G!PW?7%s{R3|zYw^i_<=|55MUO#3;7}Nw0w1zpQJJm{iurfvErI;VVEqkqz;Vbt?i%?L^++9ZHFNp2^`qP_9NvhnuuFYAI>fw5YC2iQF^Bd+N#i#SyyH zwCTZVbbV;avcae+Qg(D&7bBQfw4H+aB!#rX*xLBVt5CUiWnW{iAGc<`0WapcJb^Et zww}MG;&)k{)oa5}z_A)uWnCHJsS(9k9yBcv=Ta7snnRV5QZf@=ArHcz?On)rm2C87 z1IjyKoDmPXnzTVflzkDneZz&5d@uWua83KH% zXJkN}lV5;Jl4i$(vRc;F$(`&c&7DK`vE{lov+E1roK&QgkN5C0(XWs?D0~WA7i@(D z&uR7eg~1h%e%=o`W}3=xMOOVb`KY@1Hbv6%Gg4M;Y8!);PhDhaN1*S}LLV{lO! zyz(e77=X`6Y)4GXr*LJ)Bl8XcuJOIk@Qhq6|73*$^ouKu$7W2Xu&ShtmMfqyJ_%%u z=2zk7BWIBuYt_=jH7c@t!8FPe9uN{e?VPwB<%vgD3jE_!VoEKI(=x#no&vPY(G46B zF}TgA5`ED&4B{1LVD5_h>32dtr*y+XS)QbMG4+U^a{Ge>x|xxwrpnc%*;8)_*hd4| zEK@%aP|(P!6r>cD@JtF^ON=|W3x{QA&Bhro?4<)ZgBG>z(7p{scEg+?6z9@EvRNvG z=QgfKjd|&CD-BE#M>Lahu&!vMlcBV*3;40^5vv*_oOlPrZlCEl(czxRu36NOT%A1n z1fs)VXXK2cPkFcq6xIa-SbeFw&S&txdHD}f_n!W4QL**LO8Rs-))YgQP9Ku6Nupy+ zPKle)?=A%oBqEiWD!L(bm?*GofK%; zNBhlRIVf>*OI8n?eG_-$MG_YVKF9@U=GqQiT8GRg$pco|B!oDhN1x=IWBbD_FJ3C zB+i?NHqIWlF3k1}bf&XQATkWJ-WJl(H%bgxl|*JQw)qD9ZBBzYx^a1_zRqa)aH+Z1 zhrrGIse6Kv_nrUf7~|}hc-!?(?aFceyS){26$D;8=GJUDme-o#nW*J%XM@S%|#@Ab)ULP`<$2YE$NF9ge5Z^f`?GLYmVt73;Wq z3NgpHYg%-9uniVCg0#i(>k9fffW`_*V51H$Bmy;cbZ={<`u@lZ$Xr73<{^^7@JlDM z+CiAJF~lr<6N=n|j27 zq!TvZd+F=mH`2~ciwVB&j2iwEzRJ;`epGGpg$vMUN@y1|s>ZpkN)0I$$(_7XvOc#J z{d0o`?~tlr_LJ!SV8E7h!@QUs!1wKp55s=YR&yYuqjz3#+X2nlXB+1QFRmLGt@cE~ zsNp!xe>eNQGOS!ENzaK(A;hQ^ULA{X{=_Pz%&+V3Xgc7xRG$hd+u3nOQrI%TH7 zNYSLp5S9FjUwAG!g{FI5JIO`b5(kV;Bh0~C{&xLOmLjNBmImyQx2Jo|nXsKQRsL%9^$lSKYr2YO1o-)%z zK_Re+e`S=I8FDc2#11((&apz{+Q$udgWeIW{-Cvc;f86o%C7rLBAXecM6(sh4a@7s zkMJ9Wb()KL2|Yc@oUXjrkRLrvJ9Q#+3d-awzNu6nX)O2(CHq4^A3Zm(ZN}E|@0qMe znA|Ty4`96vWCxu)TXtcM$9wI%+O8`Cu*q}E`9nd?DYqT+T*9U)646f09{LkLSOGP9 z7qAn<+Z**pojctR}%YNC>dC|+tP{GVj zl8rChNm+f_EzTj?{4TPe=edxZ`*N5FS!!brFG!ru5Y>Hv6S-2eGe{yiKjN{@)Zj>x zorVrgyU4lcg0^Y;uFxa8n6~2?vle2-LN~QQn3_ZQt!qU$Sr@nemmm{^1mL>XGT7kC zUi5x|I(>Ee!0KuaxK~Opz1r~7P%o)b4gjBjVEd`-jz@8)w(o(KY6%eC`=-8>zuEr5P0tHk)7mqgtX5C>E6HDQy1z6FXdC=CoC?Rc1@G0uys+( zRMry&U$X^2^BGvwOblqAz0|giyA7{8Zo_b5zi`Tw5&BggE9*wEGt`SS8fknf=^$7V^9~eF-@BC3<7CVIKvrnCqj_wV%=z-_vbZI7HgBGC5-15V z-7}=cq072(4glu;tJ;EO$DBRRhrAWJ?q2=u2hIFPZ2xgjd)WVV57hs{ z2-L#;WKQ0HdT#!u5sVwBlNJQz1?ftcTh39xENEIZ8jWBB}w{mEcFM9I~@KX)rrxS_oyI<*I zU(l8EnMWgRYf__R){~)@V8{!X=B3G?>)2CY;wt=>y*0C}(Z;4VvX@MnLpu>j(F1T@ zi6YA#XlN(ZD)4ymkCZblskl*L)AL0*Y6`JK$;6#(8$32hA-|c@n(ljXn}Upg@@Y7B z@}9%H_=%!b$6qmSYf316Uid>7?27oYE~L(DG$*#Ci&OT~7RXRB$|fz=br6zK=4{>w z!#G4n;D)m21C@Ynws2>y9S`&$h%@Olmj9A;@fpyo$Sgo2$1aUCC3UycTHFQ(EsJf9 zV28jy2;vm}X?i&nxTj~E!~d=4&iH%8AO$jh^c&UA^HU-L;V=kRQSy|N?w)jy=QWPF z3v-X#nbw$4%qy|t2(N?K)G&xVE@C^ z%gzv)j)k3=@941G{mq)6HVNKn4wLR!cH?F%PcK>y)7bZ_ri?F8KVFYqLPZe5*RTC6a#@TC-(DEA|>Z+cmoMqBDN=ax_gjsP*CC!2^ z-_z3cvFDcLnyyD&D_$@XGZa%pSg!y|bw@zj&vWAej2^reTyKt>O;24zGO;c$CTMV~ zmGtw7nPQ0wyNvkf1FqXD^bD6ik*w9Q)|OCsB|(q2n8RCPY*dGv@_L^94$8Jdxr#k3 z;*NB|r_@4Y`|z>(n`oiQ>aiMHi6#G#3ZPXo7S7D9= zZWzfiFt1Ll24WGB65+hAE1mK&K$7izRGxf#<^@c5jaTwz$?(8~Pj|$1#}iRSEnav2 z@4wRy@AG7HT3$>@g&Apa8YQghrCn=9=g2h7eJoS#m>inel`15cYI~|5QdNAw>d2%q z+gEn(+7vQUNOE{O22HwRTkJBm$!~DXQ{!SBO|e*sS)Sw68TLdu&!50EBx+qr%)-C6 z^FH>fuCiEv>vB#+@H;^^DI&!dZDE;^1FUh%GGh|=f|6fYdx`kH)X;iZEy+^k(PRPk z)IFXXyLS@b5JF5Lg#n1hW8x_vA5}3~IWYIuH7h{vQ!o)0fmvU{PXQt0gxm%m0P1E* z#RMbFwIq%7Gzve(#4Hh%Rymc}jC?xIf7`~&2wBg0gLz8dJF3|n{%&rdslpZe)*0{H zxWH$mtXEwP+ujYVkyg^(@5`ejQ1!k>as=8q!F zK(d`x%l@|NWvl!>{>gP-(vp8YT8Dw6uU~1wv*XcA za$#vXjLkQSy-Sbm!LY0xLwp!SZL+;vLf$~MkVUaJ3&X@q`%0Y|z-f$L_S6HnPuuj= z@hJQ>7^cRSL>0zsy-{xqcU*^n;C5jYg&Xaaf90;l5=RODs=H(s<}CtH40B4H)8Y-A z9JqP=?PL4g>IVmQg?3(KZyq)#lGC$xPR3%+=sTo#k7RlCiZr-N7QwyZKytJWex1kS zQ{u|h+E}+i4ev-G#=IA(CG;FQ!wKLvYWJA zainuWXUJ>bP6u3w@F510?hE$W{)IbW%!XE5?3`+*9jOJuwH!X-A;aD)dV-z@@rjsJr9V(+12><4jp??lSVVfu0iJ-J8WdL0H`c}uK%Q_8$9~x1Sd?h2 z_mRk?EhH4Bnnqtm8Q786aM(V)M8MxsfJ3vd#UZ6%U}OX4IVXOtZ;b?YL&;EIEi%ND zmT?<&hP$v&ztfA!bRLYh=LTQDl*Sh^;M+d*j_xOjGLXQ0oiX@#oJqj&Tr=;kK8DPv z@~>K!E8-5)r=PtGi(YOAf%prI#UeC&pHP(MbDCe)k?ET8N!)cW|4!lTP>)PM@Awd7 zBp81Oo`|r=z$wem{@e8N{if#It8{JD^>N=m+JUwd)qFh2JGIEVGK8Jvs4J(R3wLJ5 z$g~!cquM$@osdRGg0~OidDOFW!BZPySekPh(q@lmgr|?INA`zt>}2KIOQ~n!m0x;} zj(dvRtsLW~1Iz1fvLVRHlyF&1no*hIg#V%4wXa=V$D{S3_=^37H1ZmNF?Z?PB+jdtnU@$B68y0-ou_&oap6nccEG^u}Tnmqww{ zkT%(ZKn|`Zh>P)6u*4kn;L9QICPFU-GiR#W<#^vE8UFCfdP@(mUWpct4Fi337l7ar zZn(mp$)wga1T7MMOlOS@HHJ~VK{7a+d8JTEoDf}tq`hj zbjY*x*CDj7IGWnIc^-NQr?!ZyfC6Mm}ZJI#yD!^x-Q#pn@YDC3ktO|1JJ``8qQ zu;fVLhrj*ypv}LSICB@_v?F5H6Ly4ZBpqp9e@_%8tEu-UJVi6I$Y{bPtDu_{v0OzF zihau$5#?`)K`-K02qC;_f|D`uU24Sm^5CdB{9?m!FW--y``3NqE+>!RXy`&f?XqHZ zjAPeB74)#;>kbjQuq!J++eGQE$wDJ`!IV#;n{!k%;{6f~r)yT7Ab6#0eCOYK<8m$F z>ekCqY+8aOVf4*;%5%s)Krl92I=UZGES)1`NYZ=t-jh0bl<7BaXsv%Erd7n>a7d@*5b zqvgc`=JeW}OznGSno~Ldgeh!Uq1}tJc^r{jtB{;-et6v;$cJ&B_zSHT)i)!LAN>3Z zBF=mGpPJbJt0wmUs3||{|Eg*Be`-p7aZ^5C8SS05P)d{}N0S$VK?DU$uK62642dZc z1OrqqSS)E?Ak@}GXb(m&n4yd$2qjT3k5(K(NVx#)ANQNk+wA6RJNM=Vit+c~+y9i1Lcp;b7C+)YEdYwhK$qt5&LVR>qR|N~RT@yy!WVCY zZ?QU7i{=cxs7YOedt!&9G)FxFmFq%k2c{&ujWN*Ky9Ket{lh)XntVbdoS)V@Muo znZX^|MkX{97(;f_YgQ@S(aR64qqzBzRS_`_cj_2iq>pBi*1O}tLQ{FqRll|ggKoq` zorwjWgev?h8uAQ$ULcFb{#NF2H!aqHN2--(zo+HE$c$2~FvYVSTy{Kof0Suh|5^!$ zxiU35ovoC@TSGBfBb+JNUqH5wq0e`yNmtKkLq9{x{gcrzg7gtK4g8525 zUbDapb(IQ(ABf^5KTy5|Nh=<8#!Pk|UBMC`VhHY`6<8UBoL5+M&bseW?dDli+?t6| z91WsR)8olxuE>6!T*^4+6vLq)04<9~3O%#Va%v!Ze>K)eDEZJURbdZI+2>!rgCCM< z52AnV>DONLriOwo4Wo-}zV)O^G+A)BBl-X-MsVH*F_J#^)|TTE9UW$EVVfEBG8qs$ zYtol83=MFtIP3aK^Tac!%|N3We!oRWy(%+?#fG5OM z9Y0cFcZ9d())OFI{BV|Dgg71*4wJ4^n3lQYF9=WU38Y8DVJ(kCTi9%gi+ac19E)VK zPv0EAF0(px)sKaJOYYYTKMbdE#7LmGkfj0Xl#>Y4G5tBj= z{$?#uY^vF86}+LYJtNoIlBUFR?)i5GQ(S3?+7M8we7hFXo)(6=Dj#1L(RIPl$0wZI|H{*mDWUs0604u_2&5g41> z*?5OV{-L_)v1rNbJY75$q`WrYkD|hm7s#FaKJIdhM^k#CX*;fA_9astl8@q7I8nF9 z@4N#OFYL?ai;OTA8<6YVlDPGpzjo-8JI3*gA-p!vdYK?KD@4g@j zwsbDRQxxu;?pqj-0FJnKPh5#kN~wKi6YFy;Ds1?D-_k{Ts`033^U87cr7bbPz{(uP)xM9k1}$VHHpzr*ph@ipJF7{zYwfR;U(X(P=NFAHd1Z*Uw+ zISYBV!Hv9qERNhvR_yJ9=>3G4dFW+-Ue5ZM=F$2-u5+96VpMjdx8}RsI(pPne)x{! zi~P|AHATJs^*AjQh2qh%=^5&?1LJ%gEn&W?#CZYdg~wD*zPUfr!X*AgcuGO=)*_E( zJ!!gPa;euQ7~94RozGn_>{Am=?@YWo@8N;#P%fnKP?BrGVJG5?AxnB7Ht|(Q`&n8d zdV}yZH%2TY7pyUh>qVi?UB(uL@j$&Pdm6djTD&3a+?f{k_yC!C{hr@@#*Lxw*#Vu(%0}-U@eERTKjS z;6a6FpBbC*W?<7(@39dC1?B9+TfEq4O~8A~DJY*t7MuoduGcJy%~F^WsXo~q@zivx zX5Iu*IN<9jvsIX+s;4f%YFgom&)#}wKqZ>XY?(IQTEiej=_K+avT`1lVqZvyK6K2^ zVLuVRtFu@n)gr)!S@*ee3H=CpIZFIR+bq*_=F0+w0jcjEES0u4E z(c2+R@BB?sk>HGLiX;z@ZC_2|`J+x=2$GTCK5S;}6l+jdc-4>`8buh_#7nO^(ode9t$hj#d4{tFpO+Y(6)tOndMu*8PX9D(rdE%)`%zHAfP26571tLaPVn(0+V+4mG;Ws_D-bLOjD0 z#u|iml|Upe;P`ZeE$)i0uv`%;%RuSGq|JR zZ}8{lY-4TPi|r_)_VUP?m`!!Nj-s!`2wace59Zmc-4Qt59v3-K?Hr4Lq&vYTu;meA z%LLb>#gXh*%;sqt53O+G62$!_~1? zGzYHtuun{hYdQ89erCfTm&f9%!=Y83+%!_oqO?L1xAG~&d3X7U(?~tVQTjwKAxgP} zDVQJurHBd72f`P>G*P3(aoxKO^%)r-pfy?f3lri|x9R+0(WKm+Z0V%9`RE;sbg(dU`A^axx9a zoK~J-&Z#?QZ*Gv14-(`gIZ2?u8VsKU=cS1){o3fvG7>d}IK-ElhUdoS{sSf@eN?tN zX`)xcrScww-xiu5dFUk-;XFvNfP%NnNYBrWCy82{<|fv9kg%0V?yg)h?7f8&ac3(s zAWyXHF_q=p8AAi&V&g_hmY2tX6JY!>JjYtDut?tQMj44*5BkKYWIzAX4|-`r?@3g$ z$87Z%CHXjdN2V*jK!eLK+IZ_=1{L`|j)WbK0u+fs?ED@dL*DC&ls~MwB;-KzXcKeC z@GTA(xw%#sZ=G1T(Rx|#-iLJJH!pu71wU?~s5NZHm`57c=I`1_jJ6a}(p&x>GSxYp z1uE>^tYDU7o_Qtj7~1oNH3xF-%tXaqozYK?mE!YtOoNNy^b{d#$XRi#cG|-*FGjeN z_C~hZUm$0t5oiwWsW6MAthZ;*8>aj1HyA}$>`{o{MH&v77IovIN}$(TieV)o+=e-4 z+|AUnr|9U3t7GO4Js85NT<9HE+``^Z z&FrziQ>i6)ga;ZgC9T=un$1FW%;sLip2p|JEmZr?t+EN7dYiO2G0ly_`Du%8w`4t z;p7`HES{(VX zsDt@1?{@qC%I)qAFO~t6>kcq!6u-RQI35~Bskkl}{m2@@>DK$!fLSn}oO#VF@ARrs zm1QuZ55Mv~cO}twVbQI;b<1Z6el2Y;z<LwqOwK+Me1Mf}fx9RIZ+$A9b>9`}Fk7YzUFR}RvzU+!5~sV`b+tM9|R z7G`pGkJOOR|4iq~w1!6VjBHILB_e89pumb5NNUN-UL*FXX?Q6`TOUA&%>;x>OE?B} zh9?*7w1*1lKK$b7+5O`E7)@WF&3W=&(aZ+@1$FdO`x6NBIZ}7%-QRJu?7K#@9z8p} z+b@_AqFH~@{Mx|i(fS+eL2$%m_1FQ=9~^d^XpiiUZ-yDef&P6Rkyd(u?kaSjQ44mL z)d6$(8}#kKIEqnkz<0?IlR9Tnd&j{)OV)T0p8|NGAFhW~cWuP$4Y-UzU%nkyF5E1? zXS|%Ls8AA%ig$3j0pRbSfS7sgqAex86xN+XLts%knJ;e~GTh*j9cZjDfO(BhJQtitu*_ZzdParc{(vh&Z(3>CUgUZK`|TCLa^pOe?L zN{&eS2MBH92l5j(o@vKcA6&~HqO5$VUNPDb_TYm-ZBJYKRZSo$EHkApo2~ngmo#fq^D(zf6wPm#jJPgEN!CNvZMK@%_U%W1UR}_{ z+jfV%jPWv}r7-CMr?N*ZrohVx@ikzXPelF6L5}(SNKD%9mU=EMK+zV#V4I3nJ z3|-VXGa0D+12mYx26q>_5C_z;$ZmIncf&`d`vxCNMSLV?1#Bi5B^RTl>}+#h>( z=iZnbNP&sN4w%JJK@L}DK8dK^=Xzo~^n5@yeK*<-boa@4@l>Mu0v8Gj{5<=h(9+Nz$(>pA}pFg(3)siz- zePE^wzYNz*y442zI1fNew4V8}HoZd0mGRcu;&V`QHjND)_{_DFC_?+LZE=Nc(R~C7 zRyXKOcBbzgOcpn7Fhz^xGtT|5qZ9a(JD=daC!qe4?hJTaVBih@XE68)D-Z_MQR38!V!hTPt5jy$d^A>+$H4HI<=N zo~L5suE1E!??V3#2Q$h^-?-nk7z@wk<^jAg@BYq*J(~1okcV0HZ@|wO7cwIU|+VPaZcF zWiw6S2BdejJjmxa>ND3P_%Z$z*R+VZ=^Cf>{aw+!Z9AousdK%3!G`b~pLU0JJp?Wx zs7l!ipg50LUx8;t1{KkyFl4q6q&URmowFD)(eG0^Qhycu6F^amE}%n<%26H6cWDz< zO3johG5i2myAN}g7NOFy4wPHz*-`2-45_$#{aa;JcZ+guU?-28oZ=~b*tnHbqS__I zMTE%~@f!jeExj$@2b!1Y#30>($)VAe(%F#3W35LgJDSV1hx(mKTkvXluaVX<8^IPyzsjsBjsn{ zqm_8#VXVu>4&2b+1y4Eg#DK}~8AOKViS#u((DTW(A>Z3&*kpMZb73B%2bITZqk@=t z>jm?*8QdshD$Fj+lCV-AEQjq2Xp@qLo^Yz{#)Gtd_ObVN56|uDw}tVN&93zs>IFuO zq9LOL@UDee|7PJpVt-ZQ(ih^zt`=^LkJY3TvSV>@efq%*D1$l zvhRR&gerPG;o`oVB~le4dcT1v{dXU_5N!6{^9jKF&c>8wq|!9d>(HSe?ObwLT?gHl zAv&0KkMOuWZO}efe}iXqcot5mn!m zRL<1|ZCKS-v}p_MB2UZaf|cx8To0nQR`6^$Y)i~mtPB>=1!_Fv=53URq^&upzN3Hj zqr3eTzKqX|MVsCpbPH3iU|KVpFZFgTMmC^7JOqMMI1QoQ#bHjugeMz4_zO!p83yCj zM7xDcwY{Tr5m_+tRR|q+RU~i^w-W_=^Os>*vHS%uHpJ?4pkJkcrxkBjio;s$)Zf9B zjXtG~<``>YCd;NjHy@GI&FZE`uUJH7nQSWXk1KsL=lm_s!})&2No$7*7EX~7!4$T| ze9sa4_7V7foH=TmKgT#5XQXY+&wHWtpV%UdI0A4Rhf4{KwJpj73{?nG%jhSv){wAL z&cyY_fwRy-U@r=ioKqbLt7FZlVvzaljUudo1 z-iIAyd@>zyrb-3ZM0PiV1yT`s%Q$x&f;=}`W@XR^qiU@g^!-Q*;2Z@2h`KVrp|E!m zSMp&z^~Y8m>#M3hcULa{(g$~)%c_hT?Wts-8<&*WoTZoUF)n&z;|pI-A-*AED~R^+ zvR1N}DHl*Q-V#NK>HwEVq+dEf=wV!+SRn_J)It0wNYL;WM4qR!;5rsw8*EX}R=t#( zm^&M&kb2NdoHDz?u`hU8tnCQn#^pU#x zIkR*#k1*V&%7Rge8Sdb~`}ljKUcRVTI=R8F9Rfrvz8KeMIW!dO>5qSE-2n-D`*<4I zGV#`>biSFFq0|@F<9}HC_FXY-p|LK@wN1VT9dfdyo$IHQRsvVmlj(DL@ywmqIrG`SBqA^QR17452`)termKKKtH*4jf~l;YCUxkw9)i; zY6HKBUh#T~yNa#npe*y&7H;(fH<<>1A&sAF1@Qy7@48;(M_dH#1=KR>xZ+9;h1Myb z2rI*$4z_uos5gG?9!gO`r5^FsHHi+GS?e9RKGDEhF8nTP!~|`4AT+lb;5LLMtC^|s zvhBKBp^i5QAxuaK(FqYN#6}_I-=i2Cos9w$yvPn>DB-X@m|z2UzhXufNPPR-Q8i-{ z81T!N-?Cb5GJ;Vj0gC5IwqE$7 zGFEP86Kptu3(+hi5Go1**E)tUa@Thx8x9*<{O$5y`9_3Od3uZfirHDQ%0G2FlRgzg z4;KH*JD03m%OUjWucBoLeqd?Un zonZXbpzF#9zSH9ukX0E4Najzew7{cXH$~eAI}klo0PTql!s{ox`qytJ4noy2quUik5Xv-r>9l+jyF9fk#8gK{;4UW`O8n}a5( zp$EN9l6w?g72Ad$2p4Z}>LpTtM*wKYMCWEP&W5ZG9KT0Da6!Jp-PXjl!g?1T!qY~C zrV@|-ianx`GS|0=-^@Pb;Dbx*%y;~n2U>N>R(v#b^`Gf;WBw+%LNVD>XOGlIN(bhe zl0#j`euZxcYE)Gz5V}VIUBx^p>c&w*K4RX&-%t}8MFkDbaf-9Dz?&M5& zfM=Bwa*w%%wUs5$a3SK9$}x^5&V77EIXq(tcDpp$PqpVt{2MzJD<#%Mhh$yMZWwXO zl~Y{_yT0zIXrxjr=I2UERraoZMb*IZX#pJ)p$Y$od)|AL7cBEqi?G=Wkz9Ux1=2F* zG2aDQx71_^+6m8hU}v}=kKoIU{gW;oc(qKXsxh{}ac40mQg_|kEgfPNm*TFCD*c9w zA5pz>7_#&S*tmn|{eNQR{I6I!|07n1r2i{cyZ`OBsYT|_sC@h7KKSIc$1)8v(hEx{ zn1`WCDzIeI6Dzjp3^f=wS|jOfZEQ?bYfDFHc3NsGYgG^}{t2okBh_HSN;QZ|XEFtN z^z1s#nC>nmnDdDTGncbH8 zDTtlXQo$}T%IG9H!fZu}y_SX(%ibiSk1a7_Bo@y|`6YF(rxk@j%|Sqe6pip6jucYN zNKl)W>y1~9ow)wx%2&)*yy#xJ?(#k)k!VIN#R=|#SkYlz+!BvR< zch+`ALCk}F=|FIi;pt#&R>++*xDUgnz7%;dB7gjgapS~{7~Dv$RDo%#pP+YbTrM3G zV`-;sbm;w5??v-LK2$VTnpYY&E{)EMmkU8hpxe(BsAND^P4`GcODA0g!zWBvA9&!u zW>wXvuc`7Avpz}_Sh;?lP$scfUA|}Fk>H2P+A1m;H}hntf5YGCOU1iSm|{DOJNb&m zW&N^GPW{V}l~_6_)E!}*O3Cz=C_RFk9AHSXfLCtLkbF;!F7j}7n)jOr%Ze@KjMB5A zlq*bHYvnSG9BDp zAYap}`v0gp$HqFKwc9pL8{4*Rqp@w<#*TN=#!QXWA(I#-K9?TFsrrI$8_(D z%6*NB-;u^>M5V*eq^VYW7$3bDw9MnSsL`DWcU?G)&Q8`wut)Z znS{_NZzb~cB5Cp35UKcJm1tHKHI_fmm;NHD$9lx>I8iml{J?W^V;p;L||-0ADIg*qGi zKz*Ln8ad@EsW$d5y}r|V+yf~zu@XT;S9_FQ_nVsf|v%zb0`h~P- zSl{?*maGOp0>ZOAYx?7*7A6bw6>_B-8nfoWRQRSN&gvAh1AYzKk5-Aav3*_fm891v ziuXC0$Y&16yW0Y`K3uN`n_$Sqq!2~o0-RQT@(o-5mu@moJ4Ne)a`@v`nZ;^ECL9wz zckAt}@N?>%*W*1&van4AKNZU!_oq|&GylN=UD-$Hf`*F}A%>=0WD8SWO%=%U6Ou-Y z9)dYiRO468DZu9vkK9z9K}T$kl%x`RysQs;1LK-xujvwY%Ug(9q`TI!F_{dJ76j>{Wn9Rhq{i8)@826LZwEcj z6ox7-9S8#Tk)q-0#3UZ@j#E~##V?xWca3azbOnj-x*#DPdZApNLcANy)VD2+kKZtY z;POhiyfoHL=ld*2YMaq9Obo3$>f*1Xnm+xXzLZmSdPkCIBX*??+<<@porGx*_IhnG z#~f}FcO*Y@zJ;B#66EC+!kXj^lB4*l>-fdoU(G)p4y3bP_|CC~Khnc_%5oL(UAb2y z9Lhqb0O2TUg~KK$Onk4oz_CZQEtG~yfhU;x6HInxnQr~Dou?74Hd;xs7D ze_GC0PNyoJ6G)l3Q2X}}_=`83YJNpfF4>KiOCV4!)%@JFj7R1Z6q~Wda$zn(e=&H|O5t5Wsp=-` zVJ*iN&pBpSxKgtDWJ@UMqpL*;2)~Mi2r?@h6O{p~nlC_dxJ>gukXsu;cG@$@1kG>r z0cc8_6Uz_lrz^zu9Mvrl_3BV(_Ztg5IaM zxX7Lyb6BkBRnd)e^_LYvUMFRJ#&#%P={RFdQF{pi3hd8T9F0}+VeP^Q>yF#_b%8Yz zqchm55fW|3=2yJG-}JXi6mI3GY)-y7r+^^T+4j!IK_SKrR(!aWZhR3mJZ zmtRW)T=Dz9OMDp7`xP0W8RE33X%wZTNbW_CL3?XHw$V+$6~3FUFW4wM1<3U(elP;i zBGj1K_mLlc8qVK?Dh z+T^W(cDq*TTRG?PgfAKk6FtATu=#5X0&hP?Mi?5FaqS>+|ET^Q#*)QLMS zHxqZUP6gN*b;LbxAe;VB_mmMQjp2=P*qwJuvt(hCG{BJQbTbACaQ>NG3Rnv9Safx* zNNf5_N*OkHwV0zfsk|X#U+#7vTd{PIdDL<^P42E6-nq?%7TBqHGKkk+PVAsMF|kPr z#(Fg5ku`bvYN1=IM0n1*rTB(>9N**vq_kk}eW?$|`DA-zh9PcdcT*v~+Pzk}fxYIG zN_EM6C#zDloo3C+iY#8my`)m3H!2IW{g)v~N5r|+yM3aa~W$}yI zW<0lJJ&sJCEGsFSp-fxIFyy>;mWzuZv#^b#9low3f8@Q>Is|*&aABB4fFVs=;4tj& zkm#q|3SP?()S64Fd-p*ipq$Q0-au-}?yPwvO?X!|)rU@ImVo0_Shu@^2S5>13foV{ zOPlY&)7)<(-ZPy&wk*yrEH=VUQehC5@Lf36*)5&xy0=}HmusagLoYUz4UU>zXb_@H z@}6DtpiQVI$akso4Zy}*W)Es?^JxUK>rnU9 z(@th;P5w+$-iS5AIq+;s)$%En{hQV32#BxJPwx9v-Nef>daJl5nMf5|x!v?UBVL#Q ziXjARU+!^J7x{9OqyQ{}1^ZLEn}G+cQ<(3cHt{C_4ToirqF+yn zEVa1*SDfo(rY))Y=TsX1Oy?Z~&(cL0De=U)T}p@6WE-&`9KaSr{WfyTsfu&$!PO$I ztz}NI+#|RPUcgoTRmoQb?>!w1k8{xdw^#`vpAbVa+VBv4mvuMhN;v4sWAa_ijD_3PO<0i>a1F1u0 zC1x~J$=O)dY65BQK)E&YtZDX%SHgT4H=9~0zV>ENTUJEKe*a9A0U(Een%UJLo1A3j z3_1E~BVYZHJU);-=JDi>uTL}pk7T+ZE^)XmW;>lqMkxV5B?A>obG(H7dOCm%*=}o}&L_6Yl@A3HN{4L@V|GvI*w@m!`e= z$y(qJ*MKrvL6hlPEL!9!!syg_WK??o^P2G(#N~+KP0QLcYBtc;HC5J8 z*64G}d2^%kkESdMld|S*J0m-{-Jp>dpW{i^C!pTWxfdQB64CqD3!x7Z{&$C5|H5$| znz`V8MNcqKO>zK6cb~5W48p@mHt#QZE}D%I9qOT~_iS$q;aK)(olT#jr# z`iI|T-yifO&(tV!Kc2O+B&1Nnt~4mc ztw#xtCNzzP&tPEoI`i&+G77 ze3cyvy-UY(@Tb|cY`3s`AlBpxCpAJ{^vj$iW-3C&59|Ttm>qn~^7+Q@zi{{uC+N%! z#)iKYKhhuVp3LXONNDt+javx7g5vaXc?D_OKL+h=t{%l4mx$MkUc!na29Q>KaNdH9 zSt2Ml2c!~d-h%cjL!AEcKu-nhZ9AGo2|MSm17GAn^HU2+1U0X&E4d>1YoGO5kyw?I-rNd(gI|5G;>nBJ>#A#+XHi&ShgW=^q09h z$iT95Sj-G-QhS9ypN2V^AUJVPdX1v2<>s_0-XCfZ#;kFG7x6k&y%U-AfO~dQ zi3byb;!j2%L6Bj~7T>dV7RaNDL)C;KPqeb0VXx*N{+;mka{1#(@T6K`6Mb~oLcm%y z?u+q~Byl;|hC&*aUhb@*6q7RH1SX&VF-kJ&>DXoxcfW^0%?O28Ob0hb#mkZW62qJm zL8S<5$LZw+k|W1Qn34xY(LdNLW-p#^EtbZ;e9lt9mV1H&6M5L}{wD0VE?-UtRERxf zH!Plndr@5K<%z%H3lfkxBo+Vc$gBg0K{>ZiMkSj*k9fGFRc}s&R|%lfp>hO&RrOZq zX!b$58Dj635{%|diz8d*tPBr|3h{QrdHVX{jZWSG2yG(ovwlItZv>Yr;Qn1F$8fe? zo6J+L>eFD41A2g-SZ#SQXnpM`UsMcrl*pkfftZ@5m}h=LP1bITn{2OW)o@Fd-n{N- zlovNXFt5J$K|3=+GQ^h?0AjqZ>F;^V8);p&v@)i|j`uM^#0>S#=_S?ev$jP+$)an| zyMl}doL|~$)H8qUT47L(Tl4k9y=dQFoguPc2cxeuN{FRSdS8PQXODXi5|#cr&%fA* z&vZZib7_%aW=1t&R5lI71#+_=IOFo6QfDv}-I8EjR^@mM1iRLVg3tET3le4a9g?}G ztRq>97NU75xx0MBjiVA{&OZf;-EWGGSfWZlvTfXbK)V>+_Z591b?6A`B%Q+0;R&0{ zsCK3fbD(|WMO=RetbB_uFTS1#0R{HlffXV4dn|0#J>Tkv479`ZKRZ*Xj$&C?{9leq zSfBX>3s@qY_rwLCtj$FNQ4A4~+!afipbV~^``LPi!)kWYh^c|6@}a|ol-wv6YP}|g z06ZcR)#u0=Pj+pcif>L(B#D4Vp-zc40@UbwArCa4@XVu+(JJm>4SaA_k%5x8k*2dK z&87tTJ<=uYyzefvkQ-GxH=kcm60RGrhk2IEC%b@DGDw+D}iR@u#gj_kDE36es zHXD*FKA%zy^te?U?Xm05+dEFhhm;%(%UJ0*=OwP6v~Ok=A43ghvm#`S%s!uc#7eBM=tB?DZ0(b~N2t%f2(o_+!a=uNPktx&C$g&JW zBYRif$F1hQSz3|*eG6=|oT`K^J4h*NZ#}sjW8Fgya5@qU3oJ(O8clm7iBh2?Uaa?r zNZcG?6ovvklJyy2L=_1Y7%HzDIvu3!1KcD9#r2Q6Cfhybp|)PS5sBnozBf#vv&Gn% zwV@A`br>NtKu4U~DY#1`c^j5LldsW!ua%-I;^`B2o zbsGkp&ZJ}~<1$0T@GQZmPITqoAxcnQBDgErp21SmBZEqMK~Dp{kUY~QWqW{e3OVvDq{Au96IhZgyx(? z%%${Mezma-8H@)WWdM99 z5x(pDC3^QFS(t^li%OLs0>(UGxzl~FJ+!$_Lma8RM5k4f#nui-Hn!ihAG~~VjjG_l zVSDetdfNMmn+nuMKxQy~wQStaD_fMhxR`IpkVX?+cQmJDWKV198)-U-(@x=N_Rk)w(6*=mKLJ}bIqaLQ%lr_a$A~EPt z32xxtbruwwbQ36-=J_uA$=ih1N#19fCV|m#^FQen|D^NTy2Bk$`eE)}>Dwyh!l%fd(@CYzu|sBf&HtvP zcN#7n()O^-aY(-5=>XxM*5uz|{ffJ?b37fHAMQ^%p`FsOEX4{|!oZjFE0?e_g6ej7 zPZ(cBot?ml)EMG!y|T}D8iz@*ehGaFu4`0#U27^1Lie;5xQ1e1E~nVbWcf*bB(=De zI+Xm`krSRcL!H-7k7tZY2jWhp_@wUnYV84ag-&;hJc>8cDfxl$T4hr{2$QxRugt4x zs?V~|X|T$=LAnlOT3Yg3S`g6~n~VHPfKmVlP}<_f;vgs@vn@fY>{0@nXZNS6%XJh< z$9v6#!KLLAF|q$!GGl*XAB>a`t2ZI99N3BK7N(XnhH{Z#>kPJd19eMFa1*V$IOR*F zb@rc+vMQdi`Jx>v(ddEs;e$?{p}oisUg;`}(*qb@&WS5FFOKo_NG@fbDE&ajE1 zv?h$1^EFvFF9v=FgtXx!>Y@8pRG-CQjp0m@IO}QyPd@7T!hGz%y>1)IPD<6>(vwU4x*l}6j{X;w-!XRfNu4F4$yow=nl*Vh#nJxZ`% zq;`vqU*y)FjaBJJPREvPx1haU7nTDG#{x|Y!=9r7-!|en2;!p*>+VSz>R>8$w zx<_5~>{Z1;P2meNZp)5*{5I4uV=M<-AQZmaFYGBE$Eq%t{N?UTobu|HpALO)-2#o; z^%g+Q_lw>9%E}1?f)_wFQWneg!8+ONtyu*l94{p5AQW)aH+Kor(Fk5T&vNCu2jD3B zY`(#>wq5L(sAATlqJ~e40@(M)y4QiNg;7IpcVve=dY!l#b5Rdu26qbg=|-$_WnKRB zv#g7hM6fGK81LIo3aP{46X+v+EefF}x0>Mz!aSeH+0TC(j7lf)0b8j+&Vo&mf1)&J z>*<1wq#aI~m3bmFxM{0s$1BSDzFarm6gf5pEJ<8jH*IQ7r!g^Cwa=AC4WRaxg0WNG zk;K=nrg|;z^C*wR28n6C{AiQf>!}9YEyLP@zLaB%yuw6BfhInb)XnoX7pGBI;ShUs zjN4tLBWzu3;YzN~GyFRJ?H3+LdU48CpO+Ed&$3UeS!(wUfpYnK)gb)j<|MXRh)#c6 zFhsVdc`?u2*5DllbFT2sOXjAwbopIaW9xiGPspsW%NrV<5B><4Sd;fm)%1^Sl^719 zmHOn&{gs%{@>g2(N;7;rczkiUsw|XL^dy1&N2h(-zn4iyb45hA2GsN`tDOhT25+=68q7s~Y=W$5QmQ6;oKqJUOhB?xz7 zC}PuVvaM@1pi9LIHtTg}rfZL{+O^JA*G`rCf8s5JuK-MW?Bkdv-_ps%441_PX9D5W z3cd@t;b+Zf zqBHQg1*8PGw}40(K3NF{UlD=vIsB&4SUTgwSaK7}fJ3~(1V zNpQ{5E#Wm`Godq6Xr`t;Wn#e#2UaIQY>}MrRwFF)Fbt>(xIsoaqsoga7=t7LEZYzN z?$Jpn8{`p?V%|b$s5AnxPJxmmYsN)?yqgcOoHRl;E(gw35-A~4pYFMm#zE0z-%XB? z0ix0S?zc)97luGRIFUW0!q$)PYvcCTOVFNYfSzAFw3sGA1O?(=Gi4C_Y`6(Udg^h6 zO^(k|hLNVIyf_vIM$E6G)x1PY<(T7gKc*}b;5jJN9DUA2-~ZU)jA9OL0~LIR;5TAE zeZB(5Z>I*Z$1+9#9)Ul=9z%-Qa;%VR2JlcTmF(Iq{FJGz*g<~8i6p{202Js>z75RM zfggFQQnY42;i}2{!oQ+c_zg;3*n~-s>MxFyWyKs7$2oCGbvr+(MSjth$-55Als13$ zAH|vV1Y3o4->$*$h+$T2i`BuJ*fo5Kckbju^$yUB+QMOmJe_*YtzD=)krK}<=tO*rO&2a z2Bnzm>fq9-3hd!T6M!hNM{laMAI~zx>FXRX;iU+qOij+emp08MoWBxW`-AH;xmuSG z_dNHVh|jqb*6YXn5^t^0hfPT+%JH9gOgTEZe@c|4R9#$$jn?a}ABbEIChMBh z>Z_rkR>tQBeE&3ki+k0Xe2zsTje^yU(&L04?u){M=8%@q7wZD%9SG+J8jIlrJ3>!E z*Di(|LRO7NU~H)@H|HVNeZH#7%>x8RDY3BQvQ3j3it{%9l-t^sR2;~cnm z;(+!hmT5Zo;4ah>oydj#u~uq*dZ$l{E?vK&UwJoGJ)>jl#DMeTf#=!v>AIDSu1|*? z%qT0-{tlr&onk?hly<=^(FL=91Oc6cR%`55maFja&_CM&GxXHIYv zwu#?Rb+PYl4QozVp&_0Lch2P)>D4f8$pHMLz31Y&4Y1?)!*k{XUise>A7kg1Jg7bU zH)Q?h8WTxVompb?NIT%Hxw0zrd0NEL1;}%MPvp^1;AvZ8YNHp(FyC$KzmSjqSE!b> zPM)zTQ*j;lKBDdCS2AEiNTnU3Z_oplpIvG|E_5-Oe=xG74T*Y5^9f%E#9 zXS$(AML(d~+xcLhGhH&y<*`BsS}E>3>^)N(MOcrntwzik&DrVG)fWdA_o^5(0&5ut1Ww_rH18juN;@!QQc$WV)`N6#zuQ> zWLD}Vwq52SI1o9!IT2uxJLUB8T&284MXc3ls~dOr%$OSy+h|K(Jnp@Xw{}CW*fnEc zRK&?=PAuG%`7IV6zr9V{C9%u_yZ3x@CmuBxdk~JuFn^G0yQGfjpu%MFjyl zAEMg`R`M9Tm51+Pa|YDLbV=MR<3%V#SEgU{sT%YLH3=JGm)*-#@VT(SMI!S>TlcZd z*nz^hp+k*7J~k=FWv3EZULp^D{ek2zjNVF7tfsMKI#~6A%P?kaJV!slkxKc-ZOD%ZL&*Ey*#jVHld| z%faOfbm>W3V?MtA4QoVIeArCd*R7e_oXB;PI3FkrXNm)Kw>745-ADP1bK}_~ceR>u z#SQ^lwOVb@SvgR14&2vBqpH#y=3X%qs{=xZ8?T3(ZoWt!++`AxBZ16`I4ZxT&d3u_ zB2-1EhBOo=I3QC>W}{>=y|SCVuqx2k4J5c6IR>* zH4*#_v7iHh-w_gI4sBBRK#ds*LM0_I7)6Y%@JZEqbLq3@eZkMSuAB?d%!k zRC#Ovx&gEN$@7|Bc1+s=6*KRhC^qcreg8v^acOadT|UE6S3+5lwBlm%Msxvh(pVup z?apL*>H%)L-}djQ)h1(ow16#=(-V<4nYnvD>72r{=Lq*^MBU>-M~lm)s#m}k)eYxK z1j^1S_w;pXM!c-#IP$9%M@=D zDdn>&W1Y%{#q><+K>hgOA=^=7WfGTF9!Jy7W^BKUGzH8OV?Bjqw}?qWrjZR2>*<9A z@zci-mqRNc%_D0HYTAY_K;-C zjLK=&dTCw3QP^zMVLN&8!mI)3T*}~~gt)#$CR*Q=JSVAz$`cMY?2Azrg16={k8R0Q z)vvJiFvcaLWhb&P3K`j*Vvc=no`q|qA_#$TmkYXgq}JEvzjR0M4Wr8cgbft|MgQXm z=Kt~o^MCk(I`{wb!`J`#A?3wS^$2}9=V_alRf__a*eL8m=g%)Ow%@_w!Z7s{#v~c* zXiAFea-~p0YXMXd-~H>uprDkfey)kqLLt+jTgD2*6W2q0Cr-QEe(SzI#r}$N^Btoc z%kl*AgFL%I++bi>OrKw`gg$v%;65QVH1i-4iLIgSSS7@3DXD@;nshNydZiGIb(`CE z?ED&2K8E~YYXAyeoXv;K(ZVmbelb8)a|GWPGp~xlfOA9Ar?wdsxVE|q0}ZvoiL3aZ>?rj*`ZQm-e^*$h@jh=@<|Zz0?9u%iBs>Ulx0P>YQ0A=eS2%Ny{R z2?PtBd23sF+*U!z7Z_|ROxyhZT^i$8#)KZ0jFt>?TqVLm9_uBsfzxh-I1V!&cNG!c zr{cHf|3fZM{%^r$-B^%ZGiz?Utild1N-9b8GB()heJxDUHHZRd7%SA+B`8GIJP z;j}yPj~CRe;nC1f-{#01y8!R|rt%0|=B)1IpRFcnq=)PG9NqmwS|S;>U?yAC_y6v} z-|AQ=KRY}lw9iCs2UVCcw@~dxNTE3|i|z|ObB=KY0uRyG&z%udp;aUu38$5dv;2Lt zxdd2$`N!WTurc*|pz))(W>|4uX})*L_zBZ@WRso<>4E*Yj3HNd$JimvVWRCFbX*&aRJf5J#jaCjoY$cn7Ij z#mb$asNq|5gi}tW;t3uIBq=D#knqSnNlt@YnvVGG6o66~W7I%9@>3o3_u~}TsW*5A zo|rl8e@dmgl6|w8gE+FbZ4Gmjf9V!~Y4H&a*w1|(>v3x==_J=^fd21)1Ev@WGkgj| zEbv|MfA$U~IQ$p?nSxo7Bd$&9r#N6vOEY2^Cw;eJ(n|aW1#j`z%c|OG%!_qS9yzV8 z8g57>B)nmL^++_9`pDRBWxUHaN!?VGS{dD5)_<__QCt1&_;qHzVv20+5ozD~z?D$Uq zoOV4HGDlP1(HP9ZwZOc1zaJW{NNvnCKvh(GSx-;^f(Ja6aw&!O1VwBD_rGgrM2LRP z;yi)D&96|aq=u4)%&;r=x1Wc4%1bN_TM{WR+GbG;^r@~7fF6!`0Ln>hNdVRiKyy@% zLI~kyStftuDveUtsGDD}a#<@Wc;fKKv>TfqDsv@#27xJ|uV@|C?_$l# zr!F%4Swm9Xob|Wa8jgth{SWJIg0P)~Z*qVJWDB!;M(N3pd^4&ke$ylD@NQ!87}mPK z_xSBo(FQZy8+n|=(@sz8DUmSi(|9=Jc$#@4s)OU%W0{gFPgdQwfzuS+I#E6fs1Ll2 zHPrbkbxLxDIAO+ho3t=(4hV9fZnzO^914p*rj%TgANQiv{6wgV{$g0?WP7m0&z}Hh z<*HwlPuRy!G;U=Zi`s0WY50Zu%lWOM?xKfsF1S^V;v_R+&UMMzA(V-G0yY4Xo$OCJ z#Jff8e>1g**P4Uuc6n$`CIsg z!_$}%k6Pufeq$1HIXdgA-_EX?`J)Zb`V0|#Ar~48=Xv??i6LKk_`T7mAD;OcuIsmo z+MUOOI4!~wwMD-Xt9;vFF=K8Z*&koWvY1v0g}=7mNpHzf2XRx!^f?9sMHvgohkFq4 zN{CE;g1<7)N096ADl(y62e?8qrcoQGU9C783cy@|nNab{2LKJ8Am~#u&gYCj;G(l@AK@E>SYnSA6n}Q#)_LyrcAyB1H%+#d3 zC!}?ytug{*e>N)<+7|+^+ zNYTZD}c19-C6MK2pIQY`{N6bzD=3X)q>+NL70uI>j4Q z>CQVdw~wDPhdjeItTtl+t-As;6)z48&p^FaFHfUBkQn!{OOm%mb4D^v)ZZ%Ol6%v|E?kWaw<2rbMZd%AqshgGAlRf_Re}su%-8hqtCd)*#F1VHUIA z+?1T*ahC$8?kL!u# zzVoK#@q-}__h>`G`3T%%=ya>BJCoOr$+ zhB;mqubszxNE>>dwIwz+QI{o}#0|il5MBtvW8P&QcjeB&;=rT?|8yAZAa7lgd@*l- ztHcXm3NEvSU_$x>aqW)OFWB=;_X57NVr=|HoUUoCURytr!2!mRR|v_8tZ83O3VK;4 z-@KGgyV;@WV_3pRBkJl7iufVq%J{C*ikG@4R_^c_DREZxT!U6Z2~EnWAuLvjl?5X* zm*y{&vT3*V@f{nAnf(yQ5QbAKnRh;TcaNAcd0@VK?;y$)L5Q49 zBO?EhFb&|l&y#@_$$2$6=v<_-1LER9dRc+`?t#9_DiKPB7k}xRKV44AuF*9<(S`-< zgykRj>IWSMjGh z<@PM_i^H_n$3N%>py!eoR7@J#Y1pZW1zKO_r* zT_sH6(CmF2h^Z*Yf(*h!XJs;rURg|N>ii!E3EOuT_5YMOQ80~L?dsT6=NDxQXEq~p z&6E;YK5qEBWkiQ}B--fkNhBbbq*Ce*K}Ux%w%Xg6l3Z&5ol;#SF!Eonu$7njj{zj@ z4WC}h@bJUv9k4@<89A)uCJbC}V9P z$5@&?@AAmTX>ZWdKxj&w!{#q6*BGrej@&agIkb9R%S0WEzxIA}V%QvklT&`O-fqJ5 zs>bz>!;}{7ZTPvi7uL8YEgr2SVlznzygcH3#BxFWh<;j(;SxNRcmng|XgF1=zx$JP!N7$6`bJG$80Rc6pXF?BzO(m< zd(GREXc;c{CXDj$W{97`-=?c^p}f0-TaY470`3wtHn!fW70m1 zmVIdXSF1)BB~|ib%*n(0etlD8Qit%9{~SUJ(}v(L{^*8x4K{|>%=A$16A}mbPCM@S z*ehN!c%_}R3I++z4Ki&qr%_Z_92}HFZeb7MNC$r>{D3waaZYIwG{KqDi0qqLejqPC zfNWpST_gO6vaYyXs4n!+gr$QZBbw**Sj#B&dni_oY!O!U`fTDE{$t$3nJ4%?*tW<_ z??@uqU|sR22b`-W(~w_SHcZz|opUsSPUp$dzmKulz@=9ow6FxL6uexwO;|2m91#Ku zm(Xk^JB)+b5kU;0I(Ya8%SJ7%z@*Q&#V{GM?CIEWBzk5Dz6byh4tr@-0qMKRCJZpt zb;4;p*Is*Qmn)= z!=z{zV(>zH2zQAA;T*B#=7nErs$dyNv1@Tr=->}))zzyB_?3$-X_jz;)_u^;Dc**q zy$681b?7&9!dUVM-Uqb;?+ZJt)&mWWQfusUhxZDIy?^j$utU33St#|2&1p!ZiD!K2 zR;|zG07E0@*(%YR7wnFHFut zUg>a6;^ZYKDZWrY7*B2rseECasWG(t#@JL+=0&-z3}?+EH|&cx8iv(BHQ=H4VR@c7qp1=t2Y>Zst-#%!T4o8`Q0}tiZ}qbI9LYhg1I*19Tc+tn zS(DSSwBf@N4!U6$9+dAaX~JMz_5vDtctC}yrEPYj)*9@o`kFu5ETE@0_<#3+0-p@0 z^3R?5%}r^VBOn#=6M8r_hlQ5;!`ZjZq+nW`mK%-L(!XQf#KZiVMox_=*Zri7v!c4g z@b?ch;e@!$mt)84N|KGCj%`;a#q)tIKYIBJf?YEi0=t5^cChKtMsR(0y;^C;ho<;W z(XNQjK=nViguPbrhr;8IU(|BY8I(_Q!{JNsp z>;~tZWnmRfn^GgWj@$0qgFkf>ln3sPcV3Av1@rz#^_IQ85G~aw)gG_P3*FDrXtmHS zucsByO$%Egz~j#lRgOuH8IpOswzz5p_mxGw{Udvp^Wog;AyV!72DXMRJ<|1S*p(BI z=nQ+b(IF4{^XF*e=dYq9ce(9GaavEpu3YRx(aIM+_t7!~c>cL_XXFdqc5A@^+-f-X zOh38JLIBkk>UOKAY1D6^tsqKLg6py0j9?UBi9GE1gw=0yf{r7R(FQ+J2_I|>$gj?t z3d^K_%ML{Y$Olz`3YPEcofGqt%EGEtWcxB=MGl&ncb_;sreHWr@`rvVKl64TiZ!Qq z3OI0L{G5u|h`5&2`$NJ_x)`*BzOUB+g$4!@70;dK1Z~l-#>waVVr8C_a08z3?1+{R zl|()@?x8C=K$m}fBs0J=n4DsUJc5O17py~X2if)?qa9LGv z$XSN%FgmHC9xd#oU=sMBC4)e1oXfv!$ir%>c%YlSlFVRcbP-`>&1r~(LO%kEb+_64 zbPpZIydE}oRr;I*!j0FEizaZ}OA?nNJHRtcWAhKnmjVqbSeh8bC62vyLz zNW-D6Yz%GjIe7)K_+*J~i*U%zcl%QpOR0MjG&LRg?4_nHXndxR2L%#xu#Xq%arHdE zA(%?JCSk9Ic_dPFMtsw`)#4hVPBV&2jpXJNRNmwF<9$IYL+aqOxXGtAM{U7Co8+-! zY6k<=RfqWfbU8gIX5*Snk)wXk!Z*L@R-3KAC#^Ef+)Ll8?&Xd*<@3n2@>zE8;^Z05Q6W(kO}G{Jx0YL&QmXu^d1qzV#_pxWvF z{Qd$xSgZ6jHC|4FN+%?hbm26PpEN48ayHJhrm(Dw}&KjC3 zUJNvL#_v-en=surhKyHu zM=sdXVGg7;DNl@I*cV;DSUXs=1(JKY&Jr#S_;#BEZ?LRD6=zT)iqw*D(7W! zXtbvUbj1zCihG(I2OVQJt(wi_e$GpU3L~t6OF@~iM(QOI8kMwWY{#D&ldJ^Dk0upn za2s_m|A`+&ph95KFixO|;Frm7`u3*GSA{>!-c6XcO4@ST$dh>+w0DThBZqOi%YeI&yyU6-+8Bg=H&8+)E358cn< zD2?$kJu@KiP=Bg1^9I4?2!Cy*F=h=NKXU1c2FnW`zm~&5p>fw_P})*NiBQU_I7m-Y ze9iX2kCX+7(sofOQ;Zr0LsPOb`SqsrKzI$ei6`e^Quxu$lcV5F~Qnw9;RYetpU z;&}RLl%Vt2%Mv%vxnW#F9VB0_((oPh0`inE_T5D1`tFeG#jPN4lsXn5?0RE1r&`xT zywzrWyxNRaWvZxm_s_LZ!@Z)_X~y{K$!d_ifVJi1C*^81-fvBdG6iH>n9Lf{6!>`4 z!s8(Nle`#s@S8nnK0EEhIKxrnl&l3=TwEYtpzp~TK@W;!5L^aKOpUGpdGF3~Z2<=H z*^5h^cUy^?uW}QM%SsccbMjGO?*_&lEBIA5##n7EKyR^&eqqY?l6_D;I!*L$%^1U$XUm=Ix%^TNHqk6 zW7OKoh4bXN60ayHT==-MG!5%5p`X;}RH zJFTP7qVDT?r9!7}k$Wpu5tj|fhq4hFu`a$GMrh9#K+l7Yn!`L9Eb1L8B%fmDC8pDp z7T4CDSo~F3x%amEVV(F2O*m&PQ#7@BXjE>1oQv1_XZkN)L-fQucDe1e9R|;jZCY$} zfo35Kg~-(?K@!g8DpvqFSMJ>ASEovXOD^TlZh>hU z&v2c2{5$96H=bJPOSK-Gi|z~L|5D+1WKB!w+u+wlz{awGm&{Gz<;2(2473Y{_@2nQ z(umbWbi5itl6pLBMfpvZz8oVI%#u>Nn7U?5;`@;tM}?!p>#vDC zHeUf2wOmAZX!4{L5xLfvFv>3QKrh{b`G;*K^X#r_I(dPl(0Ak5Q|*ju`^DG5(4uAE<314>W6L3(toZxF49O^m#wMN-g9*>;~(4 z4cRzfZuOktUTm?CKl{?`&pD2lRTp#_V89=8Hn;4$^4q0!m}h+q1kGx0!J{PhX&Mn7QGo6*AHSX_J)6t7=F2HJxg+_u zqvgoN0_ZxKwAc3fY+v6uSV@s+`G}dwPBRsFxmv}$BuNB?{Q?Dd+ow| z#io7AIR2=ZT`cjn$E7UCMXmW0J}A;A|Nf@AT8Yt9n#$~ z#Lyuf(k0#9Ftl`cgLDtwokMr$@%?h%bN<1zo)3HNYwbHKkI!qytxThz2n#-<{+)4u zBj^}%8vIcHNotVOhU$8fEo)lk5n0oi#-G7mw9TMB8ExU%mT!KiQ1P$BqU^qjy zu&w3KwObth&??T8+{_o11Q#;xdFv?$TQoU)N2PA3bO|W1TfpS+H^6LXJM{wc4`sC? z4sl7$UPHA*-@K-_*)fiLY3gUG!};ouoymL-!UM-PTqv>yB*$HUT&4fIi%$R!{8Tdi z|?{>zAhdkoS<(5oqasnsPBiQdQ1mAHQX9=e7@)ug-LFWsBx?GVR{poG zk!pUa@&J0%{X^4D2-iFy?NVqZV!N)>>rO}rFGpud2UDX)lWRx0N+aU1MGn}=51HkR3BwMTeOy_K!)Q~08g+}wWal1W-A-vQEFg=vq4@u zI77!lsgQ0EUu^5NF$gF`7{KdZizdsnJ=Cx%Yr4)tL+68CtWv)$-Tls2v7M%cYz2%M zeIyZyvP~d-f;-w$hgc&jSSB|Koc@!1un+aI5+p6ljkJs^ol{05Q6eS8?)>$#mKYgz z>58P%EF3gnp?o98-a_K0tC-u<9l8BO$uhp{L|sK?mmXpXUE;q>^Xt}9Ya5S7B}w7` z6B~3M`#UZ%tA}g7E@C((z+-yf@t#p0#+@(jynODd@4ll?CYT*T0L(Qv2!?$VO!Gt8 zk2xXa9wdGXOZ5)CU+!JY+N;l!qyP((C6kjvfo&Ezg$eMPl<6~2JW|Za-PNv}kX+8o z4G_s}m>bulXT~r|)sc&d6SdGGG7px%?Kx%ZasC$vh;3}?za<9Z;0wKt&{X>0&-fg5>A(V#@-lN%}P^j<0%q%hH9l$w1V{B2_4`ICR`$m?sOLymi8}OuM z;K+?Rx-472>gJK5yKuIzy{r3okGZA|rsUc=4p!KqICvw!4PYa20PWUp1Yy>SRZg z$q(7@bZlw+Qq@xYrFM$rNGJJ_#)oG@^)$d|*ARxh0L<$w8{#BX!V*oj+edCfNKtnA zJw|=#gM5VIWVW>{F#g2ORVrvUUdVWC!~Sm}cazhqdO-w&Iea9YEP^YJeIp+oLF`D-F=y{mg(}-4;hC>d#59`rAA2fkwvLJDf zE@?iVZ>RjL*ugml=nG_jSoc6hAC*lX*FlM*w#!#2s)~%)W*hkkU(GI5KG)Y*0upTs@3T8*Wgg%^&4>g2CG*tJzJz&v#_ z9hxttQ*|^vc|jYO@)j{Of8vPQxahf9FQvy47mfTyg0(5qAg16Zy`^u9jbYFvBieaZ zH)a_;v4s8Ai8M|3W!fYbUY<21tF`^g=i6loS813F*6nTaec<7ie(wFrR%8~GDbJ@h zM_!462RK0uJ*0i6q+6Am&E8xtCacUfwmfp zj5+Q*S?2hL2J!X>5oYhB3nO_Q0k7Xim@8f}c=B(Rgj$xe(BA)QN2|cJ&K_cOXNRo| zv(x5#mm;L6e{Pwu{=u(ko{6rYJ>;-{t;h2t5+9Tz;(erW(ui8tyhE&Y;uSu;i1|XH zmMP7wOMblfLA#~Oo}|sK@`;u)<>Qz;0`NBy1Yrl$PQJQt!@O!#S+3uE_tpyvx<=a{ zo_hNk#{Wc7;i$ROySP`QH8I#tG6Q6J)c_?p#fX zeu=tbu#f6yrQp7wj>j*`-maHiI%A!0jA;^&$T=#Mf|sZn?`YqBBd*&+-aG@JExO+- z#U8FISrX0%u0d+|RP15RyyO|T_~#T1)yj8KwLt8S8nE^ZUYY-QcHHBy_af!t>dFy- zZxbbxM0HsDEUs8aP4A5-=ABhjw6zF3nHcNYK6Z9rX8;FvGOwe5|8&q?1w+6UR|9gqKw85 z;T`sKG|XJ&qdGEPy~9Mt`qqj+n!CwQd@sAYZ@J>#2msCM=X|@(a{moHdK=@Z8Jd~* zSd-&pEX3i2IteZ4?#}%Ti)FtdaQ3#MHh%-RXEykjm02mu;`>Mm;8METRCE>!GZRho zc`L@$#eCjiHj_aDe^DE}>M;16)z?&G>HS9`r0O8;+x8aYen3|OOC@8< zz!k->N^fGH83&&$rR1*?b-dR%Srv>uvGHqI(S1H_8tUkaDp@q1g= zI2L=S`Fkf^rA1`t$drGm%KmVIKbsvLAK|HTY(LCpT9Loq(0Cg4UW{L;&nC%@aVYzz zB5F#-Y|EflaR3jH{y1RIXBp3a>VEf}CAeq84#3WHcWhmwUpV;q*Lwfs!nonxOEd{y zhp*|DrWbl;9$fpxMv)=4z>DwA4+anDSnm_dpSO2rZ-K2|f-BA(zRy`^8Z#L^C1u=)JPRP!=Y>%J?*-o@`cTNRL_S9;1&WS-gdxXJ64pi( z7p6nRDiF)z_!Azg6Y;YwR4Jzd8y5%V>o>BMrt#J1yR--PWpFPK_|fdF&K>>1ilOC<4n1Y9x-Ja|01>+NSM|l0`f%D>gka5l=%x!#$ z4`!8%pq!djP-pYE=W%gbalXg_;$3XN)-98o~m1xy)FD-15(b?Ty@Dnkz^r7-!$C{UwpMv+B5VSoT9G@r!K$U zWs)vVvZa1fmbWz7{M~T`e8Mkfc;1qYtCR@7?s({Pr5u@s4>jbHSb}Npd6AwBo8xG87n8Dq30Fa_ROQ#_OVb4n;le?0U(bD;&S<9WNU{=pN+52kJOq~)$`+s6*P-HLWv?fTp~!fD|51*_0F{ML16U^0og)*9dpJU-BJm? zX|v|&vbISU>NEZjdFf&3urV{*XcCt+1RU2P#m=4>Zh|Mfwwp5m{_Ck7cFEbfxs+}V z_~nRI^SP2N*bcwQM#@T-X-RaRg0X3k-b z!~lJ!HF9pWhf(wsp6@MMs?j4Y$Qghi3r%}~a7m{{jr=g;j57Dug_A{?PxGOp)fs~P zn4#=Hu~q|we_dGrGNB_Z=uGV+uf;&DT&5tMfZy%x3V+OZMsO?lqvzr}D< z?u-?}40tP*P*j}(3zY;YM5Pxu))Y1!(spd-gxs0tdSC(9k8A1U{I%t%vfDc%6ukv2S)BP-FmNhVRbz}fN9s0lbkOQ(?ppqz!M zq*=%2KM3HoRq+kZ5WfhVWC|qY&6qMK}wh?t=e*SEF$_!17E!$J}cL!RZm-@;T*iLuF5+HKK=qJ6#YU6N5n3EKc?an^oBAt=dZwZ`w z@oA1~nf-%(p0F)!Bh2$msPynVYGlBlhtH~)CARf22@^Z1I!rW};m!#mPtsVt6Vj5E z?17#7TW|BINxxem1BkboYNEJoU|K{?a$K2*4-fNUcTQK7Jqb- zP(suV?XWyej2u5SX|N7NUuS2aa8RG;g*fbmV3LBg1|Wo=I1=7*rTX%&LE7raUu`_Aws z?a3_#*UjLyV>AbqG800FHY za!FBjCi#KlTQfv$s}R=nm~VEUqC1#?2GQK+?paBey!)*-m%rbduwWIxRqCfW`FKLG z5Dt4=TT20ZE|%vpTG5BLhy%)9?6D))Og#d#vYpRZ63r*bkF3%?a%#Vp37%dTBVVLG zdeksyJeu%14FBo$yeyZL$8K~aN$q*s-_%?@EsPgJY$EHk`m}!QQ+y8vle}Rck_ovq zyP71w&}}7H$!Zgk_6acorWee^N9Cp#Wqgl~yNarC<0NToKl9y=-r@LMBdj~+*JeSF z${=6ckcmVBq?PqV68}DdXI2WW z(g}Fn)$C=J3ViX6e(P)b+b(Cy%p4zqnYJ;?gG=N(G5qr+8HYw;LuD*1f-S7$Y(Nlu z)A(=<`BjQ@%GioZugBfGcm=dk%60Kb{UVDR_dco)7d*8y>ek7;lwdmhKG*u&Lpzf1 zHEXx`ct7Vg(Y9^zq{b$80Dqs`JlJ9P3VGiGe*T9vhjA|Z|Un6l;0ms>0#}->sla{8c>+(H2*a-q`rBG#O%@hjR{)4yqnDtQBszn z)in5c6^Z<1+PL5h*M$?ESdvk$HbdUkxq^Kq*`Tye;)w;}T8)i$21wSTkV?9Dxe_q$ zmfBGvjydr{^N7ChE_zT!A8L~on2z1&}V+HeXRp-FmEWnlN(?(mf1%o0bBZtKtTO14Z!BOiuMoTYP|F3o@&!E4Qw#wK1J zIg_^gGS4x*t74^wP}Vj%^V`Jd zBn0R)4p4jn94%zPVE)G8%uIrk4y@{d+cT;Mg|B&33hBBUyEv|!y=#Q%PLkMuaSVex zISvU>^gq#_C@`8Zby7V$GZ9~gp4?jVc@KW=rgHF$*&r91 zmCj96i!@a)+=92nDkW2~v(lgV;gNpm$k;?hQob*Oq^vPQ^YTFI;H1e})U z1Lio`jw$d;6hDv7r6nqe%fEQxRgN&I0A@(WnFi_PN2y8xm+|WX(^JH zO{q1wWs8huL&k1B?J0Ma&}14YOI#Ce-__{mZ%$Mwb4q5tn=NJgaN^sS0lyKB0$u)9)06^`@G`; z@skV0W|G`Rw(;vef6LJ(+GFo?rJFx)ZOB!XUGsPRS=FzCxg+;qu`bN0($9~sn9UD% zE&k_MbCuec)Fc}jJ6lfo-6A&1eZlMP7^c1<)DI*$$=3+&Lt9dJi(*$x^r&;p2Sq3G zMl80tDW50#(wJ|_ns=5Pc1CI7nsm^{d1jWS0g`qd^D}#A)5e~A3>>XXj{JF>a1{~aBCR>`qdG$D<$LxBI5C+EICzgxwiMev*Wy}} zi~L*N@q5A)K4#65SxaK;-)4zMuchpaH{ikAqjGvs_$%|$T-8pkjofnO1i9k+av@H# zDjoP44qYa_6t)OSqM(r8an(lD`DI4pXz~`+U1P+-blcp?%@T-4IUmuOC+ml@Hjklu z1>>qTFibtV5n5IEpe*WT?`2j_yeV*YX_9Op{=loCD|sPmFHSeE)EN$IZ4l`7)J-zR zop(Uf$!inDltb$jGrSvgi4#&rFAqRmdJ{RAUAdW-AB($`4olBU{x* z;ntu$y6^E-$T_+;J8qXh5M3SDeTqh>t>~~cWpd6lyew*E*5WPV_VO#>`sa-Zt-fqW z)N7oiIw|UA@54WFrl6$%30h24bGYg>ee5)F=#B_7Bi~^;$L=v1Hu}uwz=z!C#|pUe za|P_=iOXz+(wr(T3e1jVmL5Nm+P4%{%ZS_eH2xbPnd`e}fb2;e`gUX@F{+6}=~b&P zr?a-j`Y~8D>R(FZPErnE+2Ss`_9bTav^Y@>J=yiHk%jIFj3RkQnTEB`{CnR(0yoN< z{;CbE3Vn{z&LrK%lPFOx)Pk)K@`;I%Z9JMfrx(~&qsF<0?sFfpj>w;vY)morn_5+8 z00JGnYDTsT5{+$pOBm=%n%mlt(zr^DQw{z==Qjwt8*=YjQaM}cl44Lbr0RLJhb;;D z%|alQbc}vMnrvAM>6ZtqYzNlw22Rcqu%|R+s-A{aUVUc7uv@MLo4~ zW61+D&sUQl=R{E1#t5i4MGu)f*ERIYbdi1-Z=|0FY%23I=au$ZmxS+3K9+@8 zplR6Yrgbldr7ykehAx=Ut=-$)4Ywhb{HQamv}5lRKnnC^#)f-Cx;lllTa%8oVR~jN zo|xu^TVM3*hnbOYzA=zAr1COhoj(bKnM0J@4R$4ggzp&f{YSL~1oV4LBnr&gjX@tC zIK^-E`#R4zzm>ghvSmQqrW~*ge}Nl*uCMCb?{o&}wyb9-LGu?2QY{8`ldR+D#SC0x zVDbKhXy!+H29$Jv^cw0f$@dxsPbhXQ;eEeN3az9Ndsopl>@fJI0pz0Kjk#|55TLxP zsM!=a;l>3GgD{tBY8h&d5+(d3>R*6>M{j51Rx9Hwz+2eH;Kfe$%`hRrwf+;T#m3I; zukg7o-4|P-s48bT4;hI&VJ4Z|Os#mP-ub|89g4NtjAmtC)-MfbAt$zOZUawgd}@;I z+pj%5>DJ*C50ix57#u2!_C>tGEgErd#tqtjRMC5wl3JgK@ulyoY7k*mLfod@Fc&<0 zcVWGA%;KB{y}B-WQas$Xf>*Bne=YQ#DXH#=&&_5rli1L-3WfDrZ>qHC){I^EJ@aVg z>~9k+?6-*sr2W98S>vErqqj!)miQ*=A_9XfDJypk!}Yi8G-CbLk|t|Vfj*FmH?MPu zgPYAg$n|jFF*JTcY5_D#opr zk}xcL<5xb>wc?r*tQ#|QV|)DUTWd!C1vr&hxA>;eMS{F-y~=QV5|eTzv7^(7O0Y?( zfPGs2IyB4%w_~wv`mZKw_S^WM-N}RZC#yev8Zl_+_l5S}Y%tkdbDJ7x1D_Kkn1jQa zH9s3?c6?t*T0J%!5tP3M(!hv{B9cC#4jM(f3cn6B+|%?K-#J~qVd<2%%8`VjoG~p$ z=sOfH5GvwhN7CRLi!4IPh6A{oVOKEWwZPI6CTNMDpR38)(l38uS7BDI`P+c0+-qd< z&W)KNdq)`aOX?>@XlBWLuC3=s!4_s-W8sV93Th~mgBwGI>o!*;LD6mjx0DO!%bF4A zBtI6)SrBJ+z=i^mF1fe5iA13qQ$%taMF&r15XG2<2_1Bx-m}I->Vf`ncn*5>7W(80Zw>h4+d4}7}sz(Sl=2X&8# zgYESO_PZdt&#@l~J~lXkE*XCrLhg&HvM+V!oSv(DH%`0y+mr2VJNmPGg8m@jx@HYE zkk7+0msQ6`T7REl_OL~b-^S?=8>@nueY`LBG9gX#luoF?;gVbk#6i`Af`11HMrK4m z?c6QjqNA% z#%Hwi`eyC%%%RP+^L7omlZ0%x#15Yh6zrS3t>T~P&g1sXwEtM8Z?Bc`a`D`>$H36t zg>Ly9KTT{Bh%3?^se}RQQ2zASzv2-vShv{^S z@GKY_lyfyqzHmIlv}r%t2L*^_KtNxbjzx>>S7cEPbqkIh2`yr1CTISIGAUhrYu!5U z!DwQeIZY#M^a-6nra44H;tzD4T&G7Tk*$N70aF24sW<~GqGaAg_fO$o!dm8aPtYoa zC7P)=6zA<*b`@yPpxavP)?e*x<2?v>Jnw3Kj5?>-u5&z9nlJeQt=kmdpZ2IPK2bmS zTiTmMnwO6Bk#yn=x2`f@pGqjwFqCv}8T-&KfAK7+QM|z$f|J1IxM8aHgT!>22V>sz zq;cbG<)xg;qj;3KR%0i5e5diqBt#uLDkUrF+(#)uqI?Pl}3A2{NjyDJ}h>JZ(V41SN$o8?bl zH1rLBYPk?|{A^b--mm(kvP%zOU^m{l@cJ z%CGoAx>?F4+s&B~YryUGveBaU!`@{lq+&@wP{H1`nYOWz5oCYd{0seFTeXIYfoSul z*S-!TzhmPN5%5Nh4A8JKRQG^wOVy_HMTU9dyo<@AB57?stX(d$dP8?d@|7}^2JMZu zFsIrf)}ellE|%cBdo^H->%Cn5*t0 z-6PjTVwSipWZA?^Td*{2qJQH7?Avt<^bmIheD>{O8D49B^bM9=<<d`kqk!b6k}B z>5T~HS|?@9SHK@L zDs9NMt(@E1miUtBU>}rm^<$5rv`-j=7sg`RAh^KRRRFK4ZG~r$e?qtE%x5j_rzapf z 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

HfwXWm#FBf#) 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

A{4} zaEAr55Iqqs6{$0vIfW1+l8A`bzp!{3C7M4fUxmA{FHs)}cKB}^6O3R1V@*_;aS0fx z86hD@yZDSXuBI-pB|oFbH?C}E=0l&&LyykE-f!?9pZEODQ;h_!K>>4t4UcPzprw#h zK6YAVCLKHQh!X8T=D093L`T!)RNY9~FjmV< zMWW{+`Xp$S0DaavBKo~R{twua8AH_T-D%1da$|+t>&pFd-!dIV)&bQ+o-*b>geh00 zPHvct=yeBw)E+1?sL_Rb6x4b?>$ypuT>NgSL6KG2QCwtrVR)j)T z)#b{D#1#!$`I22iX*Weu7fVgV*;}p8Rzw#=JVS)lYA~B0``a1QlMbA8qLEE!Dk-dm zFY=I{5-DCc>5=uD_g4h_UB0niRMmPBQ(By8O&#IQr)&W3*Hpls;}egh#Gadl_K;lv z(@(SXWs0DD7HN7-n7LUOVIS4Gh^C&?xUU)OcW1bBdyc=tNPKZ()PoF^LsK}kf4gCh zHE+M^99p3MWdq3V%a?rs`bBy@=yms-}zaG=e1Qnpr_j!LRH+YNqSe6Hrig+oC)fY&m9l7bN zR&r6aj{+uLzO9P<4@coqtO-$g*~w{axI6T=bk7mCDk^R=0nO%6TGu@E9ayY5ql?QV z*IbmGm11B>_d4Clqb?5p8=H89*IdB&Gq3YW^>Z~NcQ9UpT@C?g>v zE|-6_+<~mEJywTtM&O)aQTE6#$ENav&_Y@;lKI`^eG&8r;BAFyLHSC+knBQ;)&R3D zrm>K-hnc}0eh{1MU~Q{-jR6{6|l;Tu=LQdd`%7d=b*|BH(O2 zPW7~Nn#W#I0~>RC&czz@%j6bOw+~PXvwT&_8@ZugWEB0z2zO^g;F53j>0|dr)^?;g zq_2GKQ4g%T! zWtHwS!BUo6@KR5hS`{WdYH45YRV!gPofNw%v+n|8iIs8SMawc#47i6Vshkqql5yKK z!wi(Dk+g9dnZmT6;u)rKHg5P6B7P@jV<78>pY+%f$7p5Q5$BYk=n;bsMcZfuArVOq z0o|*JN|rY+Qp)Eel7o4Q6FoH7sdo@-Gj&RsX7-=u&ik-MM%>4G!NSUT-$%H<76pkh z8QhqBtn_vQBKeE33$Ezo5K`|xbX6a4RkdsyDT#*$A}+}Z{@V(@L9(@fMu zi^=025Yh|j4`j3l* zGz_DRm13-g$l}|^ik(8$>ztlOjReK{ketS& zsEz#xv260VA%QbOYx|lk)Qy}F*%C;1teVWS^*$I{!M)XS!|td5y+MR^q;x$^3YupHWA@6~CGN_Y`9!d*dP zZEn*`Cj?jCXR}M=ZAMP^ICv4#MYbcl=|wQJ8rEXLt=Z`A?cI+aF)ooHMg0w3eEYia zjQ}y-yhxnTlffsyL?s6Qr0Ed_T)v(k>HUp6%`;e=$3IX7i9RAUsxxF!C!3}Syde%k zmE!VR%}sY{&Z6gyc*=^bcNbH0`Lb`uL}GJ|m5g z8xfL2z#R4CS;af>s3a!MKVudt0WFj6$Rx6iwOrS0+$Fx!yuFeZ3nVD)FkHOw7?*R z2+l??z=ReITUQ9c>f8crUNK-a?K(u+w7hOEiBJWX+!~Hwi(73(EafsZ6P`QG*(oh=) zLV?{L=_Bk2*GKss-Y!Ml#y`rg@4TX2^e>yj;x6PRT5$LAutP~~Q{1h(&1am36H|ia z{zUSVhDzopJzT;?mIt;u&T%lVjCC$Fu^|xZ68v>W4b;3Q0T_8KKlP|gD{2_NSzx_p z+{3*KyB^8s{}2a_tbLd5D3!<-0yQyEbHi!)=CS`#zE z+d;YB1xb3N+{6B=s6R`@Lz(n_1{3pZXJpT3THZGh^u){{$tRqBtD2Z&{V&;|bT`6I zDpR^^Z7cq8F6P>uGHD->TbJQsY#+z3&1K0#jkZWo#=VVQw2IoKxT@W-a8GqPqCOQrYqj#9c}bK`Ybq}(9k$}ZoPaKS9<${SQ&Q&qSnO5o+U z<-gkdw`zV0-bN9wpfYxkp~{%TC~N})h@Jlq(>|5NKh(?<4Q`U5$2(-CF%~mYJ5%iJ z*)bC*iA>8^u02R%4_r3+0O#61NR%hSXBMu8M6rN4M5oCAv{rmGIn*FAJj_*3^Z#qiU$d z^w8^TdHRJ9M<^fZGX={}WQl)Z2nkpZ5gv7OLV`BackUv!GhO*Y1uel{u6Uz?Cl;O) zpSS@pKUhZD<3UieeOG~VqVKr9s3_2gpcEoLDL~B=U0$%&16z*3hp@iLJkx3`-X4eui5y-#Hp0I@klid?sAXIiRZAR z4-aN`fa!zZK6hmju4`;((am{o*f#Ggb1tF2ENuO$vhdSU(O2N@cY$&R;-8;hO3wDN z*D|2%Mr&WU@3PMmyfC@zUG+K_0>L^Lk9;f;4uZsH3H73vKj0FL;HRW?JQWT$O6{l@ zr-}vCqtx#JjUj=dfFL^#{F#|fW)N;&{r*N#gR9+7} zxUagyh^KPRCNT>eaE@ULjoS$S$hE)O8GPffck8lFZ0y1<=8-U`yVyqnoo7hv&5zr; z^LPpT#!|is_khY@ep(?)4FaCtS0M{(^@sS*J|qb8*vYf%8%B2}3#!#?K=S}{{k0N4 zh6M<>;K!Qo80(6p79nHJ${UQN(N#vx(LzxoBjsnj)EVUc0(4R zN=V#Ex=j8W)oD3D1i@tla@@SQ24fQVVd4O(wpe+aX7H&Cy>jl*+K2{w;VpoN4zC;L znt%ORJC#Sgs4&c{6ZvD(;|0O~8e@T%2 zKO_j;{a+GH{4WWrK{%qQHGSG_eb@Rijs6ivsQDuT2W}}5B!CZON-_FdK(b!Wb)-umbf#UmBzLODbX9H26U?_tPmx zq_0d{f99S9vK;Muo25Xk_qitNTrTQ)FXN{Cch zaCIDd065$YezM9*vk?#i_YuZ{aW zAQL|-TUbmg^m{7oA`W@@c|099!{5FeNKp!*sQ3NF_%Z*(c-Tth=gy# zEs7hiGuWtUA6$8y_5Jc1HlHO4Ey7WDE&g!UcOI9F_9(lon%aRtxU;9dK%}VnX7NdC z!st9q>uVR{atBE-s;O`tkmf=u&rx?2__i6^F>yoMk0NRkC(jWO&p7Cc^jn;MrbvfJ z8jj0O`3FR47a9(fo!U>jTeMuX7E5neLxzJ;7VVJdff#<^NeVS=`ZeAQrip7UAVD!= zxe#P0iG>XRk;J-@sbLxWi?Sly-sjI8Xq}fd+BcfCn(Q}cr8%R&XWmHgB&OGg*QTUj z%pzX{D{YZ8ReGA}wTP^PxeSA|K3OG?yP|*a~0Nf}=s=b~@Y2AF--w zimIVmxPc@*i@Xn?N{^7%s+MMHZrCs`Y;?QuJ~qTZRK(w2aGNe3GjYlE!@3$s!$V4H zx>J~Mzd}5h^jnSf*PSy&Cx2RF^B}aZv$%R>_VkQPT3g6a4hG1Hkuw7tWxIS%R1w%h zkg}fS5TCZ~aYNZ|Efp$Nl;Vw#7Kf%s#KN=U{dMq*>z0$zjfS#16O%Ve-PmXeDA~!z zx%j&u+VNkRS1q4GoeQim8g8^yMo=OcZnowg!G%cLQ*UGYNrN`Jwf;NOh8wm4@y`So zP!oCSdDPX+?uz@8Qo{@9Dl@O1CB>MOEaj4>0fr}&21v$S7?>!;pmq7!BpCkgT`8&Zq+z8< zm@UsxAvij;ckEv2SV8-ep_Xl1unUCH(mgH_=Z#eLN|GaQ^NWl6TMXto!V{D${xI&4 z%^Lj9UTBMphZ)SIV52PQphFFIHH^F;vu?+)8KmxrSTxABk-Tgk)7TtPuzbo@&62zue9ukg)JRf-`4WT~6wNJnbA&{;k7NjVwI!i3vw1bU7 zoOex+6DlRQYguXEzN?2yjtm@W`hb5xA2W~F|4PE4CrkP=S%2&)SZ(ES$&NQXV%zfZ z(%EI}kO_5321S!P!)tPBcVkEL1<~%D9S@gjDet)BRT@D%{Rm96xX_rQ(ww@=T_ztRn0LEl?3bRirOSaC%!k=kiI%aRM{ZcXNbLdmp7(zGgKG$ zMW#y+f}Rf)*G0V6COb*o?-}GI5K2o8U#jnq0Y&FOH&MezMzQ6x)n>#8i6ra7OhE+F z24oczkb+@YRkgRH~%DJY{^I8mMD;S6r<4CJ^!q}$?OVZ9fOz_et{Kg zEt$Lf$K6Z4qU99!K3P)@bwz(q5n!zqCu{h;~t-%pmL4oz%_D zyg{#@K@BMfJIj^(i$nWW;f1RDsIwmeN*1P2!hf&s_o2*SPW?p-{!kAg7lsXCUjng0T+@kq9fk2)gbg6|c&jdG`V2g;N5Q@7zsNXKwuu zD$3Nr_7vQ<0EyGYzd`(*Z~Z(HH^9Uoav)FN@pbKeNkQNx70du(`s#KuPfK8;WYBfu z(ahb%MwVK_Wxg@DczWSipy|n!!6p;y-57OmAIOGzerYI-qodcwGn#86Sl$%O6#?wl zNU^yXOLc1zqi^UgSnm|*DpYqA;-^8ePsblp3CNUjA_jTMfQkEGUubS)st(8O+0`j8 zU)*>qk97tKyhHYq2Ps%L{J$+@O7eeX&h|2Z>;?KtJfqbMgF}YF*oP~EI9nH5bgc8c z^`qs&dfG|h($v;;rDe}*5O4rBH#9HP-8hCw7svahFS7Wg)670c*qHA@CkoeNg`S0C zJwQX$p%SY5Ga@Jy%5M64dXt)ftjW_L{W$ z1x(er8%TGz*U}eap6Q~6PWk9p*JEwW(*qZ?P+CTd7p++8yz-~Z2f0vxO>haM&))?Z z6)bsLOcfmddZGhrj!hJh9D|2!r^zVq5LFMz#azRwo)S1fOS>AOAIr`0P2?wfb^5)h zUgr~}RL-M2x@RA(%1Okhrn_I`*L(-^M5K}Fw_RsbTTF^=r};uQjeX^cT{52LmiU+I zvjD6V-*A{${uegLQybFRPmVr)o#Z_y>~JTP#5#!pISQPjgI} zJGMzp^+LNJzZuUin5-a50NY}5nNUmu5q)eW!dA;JW`R16)`GTz8p%LOZ7g*=!!m9` zCQz-!XGYbds47>a3=&=Vayi;^Uh^q5vONmi4D(eJ&lTCQB=z9w? z5liXd4(}vCdtLeX1GaB}SLIN|)}dl3-~mi+)esWrwnIol6S~b7my*S#S)Ia!s9=8w z-JMbfHRE*LM4o#qeB@JK-KtYqu|$(!_rdK8oF8bju`Z`-Z--k@BU%)_(_b^i?(${>LB6T_#Z^nGUf@n)z;2LduLA|@Ac$=w4 zDQ92X$;Gsq*|D4IEU)s>cIFn8vQaM1Y3m<%ZkiacnS;zH2gm{BE?zRtw&CiF=UMe(ZX%Wsi{HY-2Vc?7R{Kn%y< zplt!w*dnK>>ixWV%~LdPwFql}PQ0@ouJPL$Y zb&D<59D-Vve7{9r7N)V&v)d%k%oDNYJc$%fy0R$W>BNq=*_`GdmNoJ!WK&Z&;Hj*K zN-D2!X$klT7%;0R3we|98waJ0Ql1Q9HYYgrQiDN?j(Vwl;CQGy{3vD+ILcFGJ*g`q z8k_#^sIQXWx`$7zBCTap3%^ZCg(;Y>H#X9~H*kv_FBq!EM@gKsU=x-XgahabtCAE@ zs$a}Hhz*+(Ag(37D(x!x9d{^P%__ERU>bh&(`R8Bq zm=!XP!m=C|n&B{=aMsF5o$2mrYqUf7>3jh+)G`%^C}~cE_32aAUO8SF+sRsHCtlR5 z!PEFX8WB*;72IJ=qZ(gZ5NjX!TiI^)zvShx9`bhC~-YASXl@`GH7Ts0fzu z50YerHY&n>0(Rkn>`zMU2xS^5L109X(1Co7I7O%=qHur*`;YLSieNum;Zs*Us~;XV zGP3O__ucD`Qd6DZx}KUaQF3y>z8-w9gL+BHnU{$5)WGOU*N3%<>L$qxN?0)9wvvYP zO*&rjI!C*pE+Uh&!BR2iQX&>+;2ycClLXx8nP?tubc}ZuBshHq6T3%og*_ziwy8#9 zTn1+LQ7Ht#8I^gXSNKJ*Kd6Okp_Yu=>ts$UHo@sgc=cxk!ruGv27 zDxifg1vxL1b=*LyF67OlnU0Bykukk@M&^nf_l%xA24DBR*$ZOC$-a%loc_s)WMnzl z6(a{N<&2w?eHgB(9T!y8sxsF~JWyN#QMW+Z0g-1$rKMpg>Exfyx|5}7%O)1a4Vxfv9TW|$-11d zzVu!9J4f|Vi7sZ*Fy4CmhM9Yruz6;=$@*H#1;X9YHoD+RWi8x>cmk!}QiJWbVOP9C zpIPE!&N8x~iHw?T0`Au)gIptozSvsqYH~w}wrSkwbb~CNVh)6c*S5NXSxSHsC}ta> zA0{VA8%ow4tydu5MoR2^T@X)| zF`OW@lc`G0-*oX%kD~p@gD{q)V(VAn**|kIUj)!t`)OVSEVvCUx0NHJRlMPiZRHIN z$TJ`j`#JOVT`YCLx08~epNGyT2hzPFS7_s=bXgrUDDXRZ_ewz)G=pm{j4LapZG)nm zs!-HJgjiShQ*YMjFfLdJ)Mp);R8OLq;N_I5WhSF!n`TyqzH~(Eo(fJ)^#nlV{ZYxK z?Ybq=3?n6!T;^AQM{Kzr=Az#j-7DISR6x8`Ys`HyO8AS)T9W6Gx8PR7c4ZXv)9}b9 z{#;DxB@ObJ*3yz5VQH8u3Cg6>EX6;r8Q#l4ZW>?LzlrrTLTY3D@xg%83iiPs3S#4W z=iN@iqdHm=j~zOJ7F)ff&;YtMIWTiRN{V^_G8X`$V+7UBvS0-aH#3iP1YUlQCP!|$phTDOFDp>^;p<$ z*9#WsC%V{WEn|jz|ErJf2}&9OwjM zOl)J5)aivUuy&+SL#J&cOiHPp%F7T_WX^}E?Qt zub4q#im#b|al8-6F}0I52D;j>SUUoXyW%TZaR%m4dwM zpx(bjS0iISV66Jq*iQ$iMX&(BPnWBeBc+Y<#B~y>Ov>kaCgc6?lU-GmoSGNBG+(tW z(+CNpq!xTP8|bcBuRn!?+YY!07LU)VImbPsetV=m8Y%Wm~cCn$B(7Z`L950g8m&*vRcYyE7#6s{J>PX@-xfqr1H)#RA% zySq@22)Ts8avzOaxpn#PEA1|~P(wb?JVtHuA9X2>xM4vEk2PKwo6fVa9ou60rQ$N? z4v}uppt3hjVo}-6=!e&edxq{FOIbzmQ|fo@+(7_^{L1mzX3WflTkxSqr}Z{d@@l5Z<4!OxF}nKGk;WJK(;aBzp1o(+j&K1n z&*_X*t!@!`_cV`kYuRo`>ucORlbTbp>V^m(yTFI|GP&c7k{d@IIE?{jpA)v@&7aQr zv(57MJ$b@?HLyD)O1|dVFvD;Xg6dlhNopJYPb&Me6AAZzHL?UUL$?g|);U~bGLzMK z>@1o3{XXH(wIJHYWBw#+3PKnbIXDLL4 z!-j*L!XM^i9UEcaHf%j>b-)XEy~wQ^u(OR#g>F11D?tLa^Um@`UeBaEX1W~dHmvMB z#L{53)UT~K*h^x_Q?&r^$Vbs46+k$?LXPj^%YGNwgfS12XzuE3~OLZIweoziqtYv}{Vg3R~NF=K{2vrBDDd zzLY6%sn`S`q#jH4osVTBG0D_5i;^ga<*TKZqp1mdkD)ggIWZn5`hf%YaAi>@6av$gQCc=nxEb!LldFqsoy;- zPwq*d;odf58N8w>;YDj0?5@F^_k|X(#sxC)3Uic68O50{10ThtXS|D!MBi^!h>&QT#@*i-j?3uN5|g%E zot)+=r(v|#{4liRajwKNN#7aI-3L6lX)I%HPIR$G+~{%-Y9l14R2}FX7dYzjD6kO& zHXZY(E9@x%?Hue;eX>|9$FPGII2N#X-DL@48?kr_FilEECLAD8sB!|;!$ZHZ|^ z-(&dn6y)24S;%ygL`{A?ozR9H;5v*qHy%&Q#_cp5s!i+r=3B8O;eE*)yCIdyT>YW%)D3(2 zEht=nms782l)Toaz|R+DYixp{XD38Pf93j(0Df&8J%^@Xlrt{^kbvnYp_nh%Qt8XT%$p2JZ9GQxuK&zkrz(kf zV~)Q~sC@?QXWv(rqJA2-HNT>YT_w$pPd&vs!k2}SyMBThUd?L%ODnAO|39s;(*K86 z^iThnR&JpGt>03EbWK{99-bKkEZ2Tiy0%SZ< z&(Ye|S!r`RYDQkt2sf@KE?aGh?Eq@2;umI4wX8szDtrGG>%MNfZ~?^G)lYl?&&)3- zYra23f!xP<1%^S2Eqt4AKP4EPfm1%r3Sf%igyxs15=cv?7IKv3*NwDj+LGNIzgf!PKq z?GuaY|I*A+C(Q?U0o+1gNnM$xQpXA33qaguye?Z>R7#7m5;kc^$L_%eSUp$ZV2r8h zsfiPKdg6U$RYA9^VNfmCavf$5-?fh#)@m`r88fCxV@>itB`GsUB#y$r<~TtHcGv{! zJQf8GH=aJv(24~GI#Il7$9G8g65krNwDs^P)+9SWk!_Jt;dS2s19JyAMpk>2k9ALd z62-52_nF_{$GM(BSCSiCaUCn$2e+sVa$&^WMbEJxRrJ}kb|mfFNQ$JalSs2KQbrRO zRTk=;P^X$B*8qO0qGlv5PpYFVy(xdzd8JZc<}QGd{4?wM4X)02*i7>2b;BD5$a_#86qxjqRdJRLVw@DkaESt7}Rk zNf~#05C+wJkHMoQ$mQ^a+Z7bC7Tb{BU87NM*Aulfqa2yO$@GG!+yxYFQ{@HfyWo3# z-@vQQ!L8dA^!|5VCbYx#w^j!S@l*74TVg|lMxj_;E%NB~b;?0rQ9aQ_CE9aR$!3@l zCo$h%P8=VPvY@bkpG8FkPd|}TFq-N#*Z@R)lY1CiH(+0Ays~r})rC=l4!CPmTRU*RbSv*$c zrxR{VxTVHqdY#E3>~!hN*FPRTzWhsjVU+=vlpE6W1U{2@13NbRAbV~J{ZDGf8I%03 zOevb3IAtc(oy`7f=kAZEPd$Ldh{F5LyN)4}TMMkWYzb^yiNH@KhzDn969Ee6ExFU1 zWtM$+JfE!ZHq6J(gVEOg8^qTqrpIXMX^v;!ma3ooCtGDtg(MCOO8sX``&Z@;*4>Z= zsNOYj532A&KBVrG0t{TK!-;n?3gVZ7 z*>mHYY;Wm|#;>Y5<#X0R+HzBPMR_aS7H)Q|_Cx6z)S zQM)?y9o@znjF+8DUHMj?mOmdeMf*jGaCR751$wMKZ;M1<5rt7@Ia{dl(0eBWQ>Sn9 z4DDzkGT>LK1;{nA8r^?9*vA`}+$R~%=8h=$@!oyOJU&2<1z_d&EWv9jlUer{Ko1U+ zM16#l6Vyb?fsQu3FQQ#WXmCdx-&do(Stfzr*TYOY8fRcI z%@e2^n9tNZEr=y{iQ=zdpo(O0LJ8#owq%)XP1e?Xm9sB@MwpErfI2;i7# zB2UfR?=p7COUhV#J-{Qm76La&8Z7)6eD?WwE+a#=@MeG!pNg_;x|cgY#j#6=1KOw{O02|=Y#rcq;V4*R)$(jQz!N- z)bWY@MVGO(^^;H-;Ae9=Jbeo-9KFFzi6>gY%;Yw&Se7`xl49Ay?l1L9O2aJRd0CIn z32skq=oi{L0Kq4-qh+cHu^s7zm~Yix{kLW* zNSrk%y^@!Q->^eEzx76(fD0?j?%5yStyp!P{ep%cARP)7S0eUqEnd!uML+C6w~8IM9XB_|-(cz{_|RQzl>_fpEd|s+_<&^Nev7WJeT6^#05l7a>S-5v>fDi#|4N^9v;6vY% z>>XWJoUZ7{1$Dxmey74)3%l_T#}qOh>eeLe>l;Z-SDBF`#@mFAiPyOsRKh z$T36$`s8}tA*JxnU;Ep0C-nDlqfHf_vh95R@ zjG(w4e7_HdV|NZ&V+_v6HXC*s`bjJPZuN9bcn`4 z@R*q&)5|WGKfl1fmb!sGB%P$-^p|F4{Bf#gE+IM9A_|~~vJbGKO!pCkoPY^UisM&9 zFebo>r$FWjsvep6`;UgGA&A;kKXa>?+H|>Ds3afqM-7sva>gJL7S7L@tUTiH4~l~_ zuXR%T!9O#DE0?x~j)P1seOtfLz|t2?6d*SCX*eso;-(_BJ)>;%vZQxD4)kqH5Uoo- zc{o=+h!zL9q#T9T%w!t<;ChQEIKRW4A)M!V4eM0)f;=nu8lPK@cYVH}aT ztJB)X=;)^+?%MiF>hT7IZ@6czL&_8clB$Zhj5A!yKb&aY8D*#-Ft_D2cd`e020Q0P z6OjNv_uhjnnp3b>4)Jz4vhpWo4OkVFEpQWRrkA#&8tafh#@OVAZ1O*SSU&tnQwo$A zq?MO>oP(rnZ#+yv#yqq{DQVaM zN+J|GihHF=jR<`0tesRmZMiU2d#2JZe~QEfq$Fjs%o-_d_ajB+wgiQ-2bx7KEecF_ z^_980%aqUgQ9pt#{>HQN40xwRu_qo=HOMUrMd9~~hs|W(qiE^}`6O8EvfUS7+$0VH zYNyXIoQf3=X&WA_DG}1@oMql|;2z*K4gb{oTddRvKn#?#m~dUiSw{{2Rx?1enIZVF zO*3~I0^KUc)lLQ|Pec2kEjpSfY6;rzT2m)89jCQr>k5|2dzkNY>2cU%TGo!ZW!bpl z>L5QbXhp%xv0c{6y&RQFIthfU$zqAn7@aDp8+ZwBbjASD%Y=$4nfDj~df;hkJ1}tl zhE5qTj&gRfrzzIoA+QErwPAy=r73;vzUfEIYU?2Z(v@#5d~|0w%)QjT(c#f<%Pss| zoxlW3lpSlj9yw&O0BYCL8KT!lHMGn@_4bTwF{ABVRD#jk3 z0IOzF(qWfdTA&TyBNmgMC&O0yv*AJZVMh)H=CIPd#>P~)@7@-0xo`lyGuE)j)h_5KqvEYK6ZMHVL#u=HtccBq*;-fq!#^1|AIWYiF z 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≫8A}D*IKC;K{5jNXVac$vCS44 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 from bgen_reader import open_bgen -# > bgen = open_bgen('sgkit_bgen/tests/data/example.bgen', verbose=False) -# > bgen.read(-1)[0] # Probabilities for last variant, first sample -# array([[0.0133972 , 0.98135378, 0.00524902]] -# > bgen.allele_expectation(-1)[0, 0, -1] # Dosage for last variant, first sample -# 0.9918518217727197 -EXPECTED_PROBABILITIES = np.array( - [ # Generated using bgen-reader directly - [np.nan, np.nan, np.nan], - [0.007, 0.966, 0.0259], - [0.993, 0.002, 0.003], - [0.916, 0.007, 0.0765], - [0.013, 0.981, 0.0052], - ] -) -EXPECTED_DOSAGES = np.array( - [np.nan, 1.018, 0.010, 0.160, 0.991] # Generated using bgen-reader directly -) - -EXPECTED_DIMS = dict(variants=199, samples=500, genotypes=3, alleles=2) - - -def _shape(*dims: str) -> Tuple[int, ...]: - return tuple(EXPECTED_DIMS[d] for d in dims) - - -@pytest.mark.parametrize("chunks", CHUNKS) -def test_read_bgen(shared_datadir, chunks): - path = shared_datadir / "example.bgen" - ds = read_bgen(path, chunks=chunks) - - # check some of the data (in different chunks) - assert ds["call_dosage"].shape == _shape("variants", "samples") - npt.assert_almost_equal(ds["call_dosage"].values[1][0], 1.987, decimal=3) - npt.assert_almost_equal(ds["call_dosage"].values[100][0], 0.160, decimal=3) - npt.assert_array_equal(ds["call_dosage_mask"].values[0, 0], [True]) - npt.assert_array_equal(ds["call_dosage_mask"].values[0, 1], [False]) - assert ds["call_genotype_probability"].shape == _shape( - "variants", "samples", "genotypes" - ) - npt.assert_almost_equal( - ds["call_genotype_probability"].values[1][0], [0.005, 0.002, 0.992], decimal=3 - ) - npt.assert_almost_equal( - ds["call_genotype_probability"].values[100][0], [0.916, 0.007, 0.076], decimal=3 - ) - npt.assert_array_equal( - ds["call_genotype_probability_mask"].values[0, 0], [True] * 3 - ) - npt.assert_array_equal( - ds["call_genotype_probability_mask"].values[0, 1], [False] * 3 - ) - - -def test_read_bgen__with_sample_file(shared_datadir): - # The example file was generated using - # qctool -g sgkit_bgen/tests/data/example.bgen -og sgkit_bgen/tests/data/example-separate-samples.bgen -os sgkit_bgen/tests/data/example-separate-samples.sample -incl-samples sgkit_bgen/tests/data/samples - # Then editing example-separate-samples.sample to change the sample IDs - path = shared_datadir / "example-separate-samples.bgen" - ds = read_bgen(path) - # Check the sample IDs are the ones from the .sample file - assert ds["sample_id"].values.tolist() == ["s1", "s2", "s3", "s4", "s5"] - - -def test_read_bgen__with_no_samples(shared_datadir): - # The example file was generated using - # qctool -g sgkit_bgen/tests/data/example.bgen -og sgkit_bgen/tests/data/example-no-samples.bgen -os sgkit_bgen/tests/data/example-no-samples.sample -bgen-omit-sample-identifier-block -incl-samples sgkit_bgen/tests/data/samples - # Then deleting example-no-samples.sample - path = shared_datadir / "example-no-samples.bgen" - ds = read_bgen(path) - # Check the sample IDs are generated - assert ds["sample_id"].values.tolist() == [ - b"sample_0", - b"sample_1", - b"sample_2", - b"sample_3", - b"sample_4", - ] - - -@pytest.mark.parametrize("dtype", ["f2", "f4", "f8"]) -def test_read_bgen__gp_dtype(shared_datadir, dtype): - path = shared_datadir / "example.bgen" - ds = read_bgen(path, gp_dtype=dtype) - dtype = np.dtype(dtype) - assert ds["call_genotype_probability"].dtype == dtype - assert ds["call_dosage"].dtype == dtype - - -@pytest.mark.parametrize("dtype", ["c8", "i8", "str"]) -def test_read_bgen__invalid_gp_dtype(shared_datadir, dtype): - path = shared_datadir / "example.bgen" - with pytest.raises( - ValueError, match="`gp_dtype` must be a floating point data type" - ): - read_bgen(path, gp_dtype=dtype) - - -@pytest.mark.parametrize("dtype", ["U", "S", "u1", "u2", "i8", "int"]) -def test_read_bgen__contig_dtype(shared_datadir, dtype): - path = shared_datadir / "example.bgen" - ds = read_bgen(path, contig_dtype=dtype) - dtype = np.dtype(dtype) - if dtype.kind in {"U", "S"}: - assert ds["variant_contig"].dtype == np.int64 # type: ignore[comparison-overlap] - else: - assert ds["variant_contig"].dtype == dtype - - -@pytest.mark.parametrize("dtype", ["c8", "M", "f4"]) -def test_read_bgen__invalid_contig_dtype(shared_datadir, dtype): - path = shared_datadir / "example.bgen" - with pytest.raises( - ValueError, match="`contig_dtype` must be of string or int type" - ): - read_bgen(path, contig_dtype=dtype) - - -@pytest.mark.parametrize("chunks", CHUNKS) -def test_read_bgen__fancy_index(shared_datadir, chunks): - path = shared_datadir / "example.bgen" - ds = read_bgen(path, chunks=chunks) - npt.assert_almost_equal( - ds["call_genotype_probability"][INDEXES, 0], EXPECTED_PROBABILITIES, decimal=3 - ) - npt.assert_almost_equal(ds["call_dosage"][INDEXES, 0], EXPECTED_DOSAGES, decimal=3) - - -@pytest.mark.parametrize("chunks", CHUNKS) -def test_read_bgen__scalar_index(shared_datadir, chunks): - path = shared_datadir / "example.bgen" - ds = read_bgen(path, chunks=chunks) - for i, ix in enumerate(INDEXES): - npt.assert_almost_equal( - ds["call_genotype_probability"][ix, 0], EXPECTED_PROBABILITIES[i], decimal=3 - ) - npt.assert_almost_equal( - ds["call_dosage"][ix, 0], EXPECTED_DOSAGES[i], decimal=3 - ) - for j in range(3): - npt.assert_almost_equal( - ds["call_genotype_probability"][ix, 0, j], - EXPECTED_PROBABILITIES[i, j], - decimal=3, - ) - - -def test_read_bgen__raise_on_invalid_indexers(shared_datadir): - path = shared_datadir / "example.bgen" - reader = BgenReader(path) - with pytest.raises(IndexError, match="Indexer must be tuple"): - reader[[0]] - with pytest.raises(IndexError, match="Indexer must have 3 items"): - reader[(slice(None),)] - with pytest.raises(IndexError, match="Indexer must contain only slices or ints"): - reader[([0], [0], [0])] - - -def test_split_alleles__raise_on_multiallelic(): - with pytest.raises( - NotImplementedError, match="Bgen reads only supported for biallelic variants" - ): - _split_alleles(b"A,B,C") - - -def test_read_bgen__invalid_chunks(shared_datadir): - path = shared_datadir / "example.bgen" - with pytest.raises(ValueError, match="`chunks` must be tuple with 3 items"): - read_bgen(path, chunks=(100, -1)) # type: ignore[arg-type] - - -def test_legacy_conversion_removed(): - assert bgen.__all__ == ["read_bgen", "unpack_variables"] - for name in ("bgen_to_zarr", "rechunk_bgen"): - assert not hasattr(bgen, name) - assert not hasattr(bgen.bgen_reader, name) - - -def test_read_chunk_and_save_bgen(shared_datadir, tmp_path): - ds = read_bgen(shared_datadir / "example.bgen").chunk( - {"variants": 100, "samples": 50} - ) - store = tmp_path / "example.zarr" - save_dataset(ds, store) - ds2 = load_dataset(store) - xr.testing.assert_allclose(ds.compute(), ds2.compute()) - assert ( - ds2["call_genotype_probability"].chunks - == ds["call_genotype_probability"].chunks - ) - - -def test_unpack_variables__invalid_gp_dims(shared_datadir): - with pytest.raises( - ValueError, - match="Expecting variable 'call_genotype_probability' to have genotypes dimension of size 2", - ): - unpack_variables(read_bgen(shared_datadir / "example.bgen")) - - -@pytest.mark.parametrize("dtype", ["float32", "float64"]) -def test_unpack_variables__legacy_store(shared_datadir, tmp_path, dtype): - ds = read_bgen(shared_datadir / "example.bgen") - gp = ds["call_genotype_probability"] - packed = ds.drop_vars( - [ - "call_genotype_probability", - "call_genotype_probability_mask", - "call_dosage", - "call_dosage_mask", - ] - ).assign( - call_genotype_probability=gp[..., 1:], - call_genotype_probability_mask=ds["call_genotype_probability_mask"].any( - dim="genotypes" - ), - ) - store = tmp_path / "legacy.zarr" - save_dataset(packed, store) - restored = unpack_variables(load_dataset(store), dtype=dtype) - xr.testing.assert_allclose(ds.compute(), restored.compute(), atol=1e-6) - assert restored["call_genotype_probability"].dtype == dtype diff --git a/sgkit/tests/io/test_bgen_utils.py b/sgkit/tests/io/test_bgen_utils.py index ce607381d..fcdd4164b 100644 --- a/sgkit/tests/io/test_bgen_utils.py +++ b/sgkit/tests/io/test_bgen_utils.py @@ -2,10 +2,13 @@ import sys import textwrap +import numpy as np import pytest +import xarray as xr +from sgkit import load_dataset, save_dataset +from sgkit.io import bgen from sgkit.io.bgen import unpack_variables -from sgkit.io.bgen.bgen_reader import _require_cbgen from sgkit.io.bgen.bgen_reader import unpack_variables as legacy_unpack_variables from sgkit.io.bgen.utils import unpack_variables as utility_unpack_variables @@ -15,6 +18,16 @@ def test_unpack_variables_import_paths(): assert unpack_variables is utility_unpack_variables +def test_bgen_reader_removed(): + from sgkit.io.bgen import bgen_reader + + assert bgen.__all__ == ["unpack_variables"] + assert bgen_reader.__all__ == ["unpack_variables"] + for module in (bgen, bgen_reader): + for name in ("read_bgen", "BgenReader", "bgen_to_zarr", "rechunk_bgen"): + assert not hasattr(module, name) + + def test_unpack_variables_without_cbgen(): code = textwrap.dedent( """ @@ -30,7 +43,7 @@ def find_spec(self, fullname, path=None, target=None): import numpy as np import xarray as xr - from sgkit.io.bgen import unpack_variables, read_bgen + from sgkit.io.bgen import unpack_variables from sgkit.io.bgen.bgen_reader import unpack_variables as legacy_unpack from sgkit.io.bgen.utils import unpack_variables as utility_unpack @@ -64,21 +77,66 @@ def find_spec(self, fullname, path=None, target=None): ) -@pytest.mark.parametrize("missing_module", ["cbgen", "backend_dependency"]) -def test_bgen_missing_backend(monkeypatch, missing_module): - def missing_import(name): - assert name == "cbgen" - raise ModuleNotFoundError( - f"No module named '{missing_module}'", name=missing_module - ) +@pytest.fixture +def packed_dataset(): + return xr.Dataset( + { + "call_genotype_probability": ( + ("variants", "samples", "genotypes"), + [[[0.25, 0.5], [np.nan, np.nan]], [[0.0, 1.0], [0.0, 0.0]]], + ), + "call_genotype_probability_mask": ( + ("variants", "samples"), + [[False, True], [False, False]], + ), + "variant_position": ("variants", [10, 20]), + "sample_id": ("samples", ["a", "b"]), + }, + attrs={"source": "legacy packed BGEN store"}, + ).chunk({"variants": 1, "samples": 1}) + - monkeypatch.setattr( - "sgkit.io.bgen.bgen_reader.importlib.import_module", missing_import +@pytest.mark.parametrize("dtype", ["float32", "float64"]) +@pytest.mark.parametrize("zarr_format", [2, 3]) +def test_unpack_variables_legacy_store(packed_dataset, tmp_path, dtype, zarr_format): + store = tmp_path / "legacy.zarr" + consolidated = zarr_format == 2 + save_dataset( + packed_dataset, store, zarr_format=zarr_format, consolidated=consolidated + ) + packed = load_dataset(store, consolidated=consolidated) + before = packed.copy(deep=True) + restored = unpack_variables(packed, dtype=dtype) + assert restored.call_genotype_probability.chunks is not None + assert restored.call_dosage.chunks is not None + assert restored.call_genotype_probability.dtype == dtype + assert restored.call_dosage.dtype == dtype + np.testing.assert_allclose( + restored.call_genotype_probability.compute(), + [ + [[0.25, 0.25, 0.5], [np.nan, np.nan, np.nan]], + [[0.0, 0.0, 1.0], [1.0, 0.0, 0.0]], + ], + ) + np.testing.assert_allclose(restored.call_dosage.compute(), [[1.25, np.nan], [2, 0]]) + xr.testing.assert_equal( + restored.call_dosage_mask, + packed.call_genotype_probability_mask.rename("call_dosage_mask"), ) - if missing_module == "cbgen": - with pytest.raises(ImportError, match=r"pip install 'sgkit\[bgen\]'"): - _require_cbgen() - else: - with pytest.raises(ModuleNotFoundError) as exc: - _require_cbgen() - assert exc.value.name == missing_module + np.testing.assert_array_equal( + restored.call_genotype_probability_mask, + [[[False] * 3, [True] * 3], [[False] * 3, [False] * 3]], + ) + xr.testing.assert_identical(restored.sample_id, packed.sample_id) + xr.testing.assert_identical(restored.variant_position, packed.variant_position) + assert restored.attrs == packed.attrs + xr.testing.assert_identical(packed, before) + + +def test_unpack_variables_rejects_unpacked_dataset(packed_dataset): + restored = unpack_variables(packed_dataset) + with pytest.raises( + ValueError, + match="Expecting variable 'call_genotype_probability' to have genotypes dimension of size 2", + ): + unpack_variables(restored) diff --git a/uv.lock b/uv.lock index cadff5fda..acd9c31d9 100644 --- a/uv.lock +++ b/uv.lock @@ -191,15 +191,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl", hash = "sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b", size = 13929, upload-time = "2024-07-26T18:15:02.05Z" }, ] -[[package]] -name = "appdirs" -version = "1.4.4" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/d7/d8/05696357e0311f5b5c316d7b95f46c669dd9c15aaeecbb48c7d0aeb88c40/appdirs-1.4.4.tar.gz", hash = "sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41", size = 13470, upload-time = "2020-05-11T07:59:51.037Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl", hash = "sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128", size = 9566, upload-time = "2020-05-11T07:59:49.499Z" }, -] - [[package]] name = "appnope" version = "1.0.0" @@ -320,34 +311,6 @@ version = "0.3.1" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/7c/a9/cc2ee5fb2686292610e743324854059a6da6780479fa38999d725bd729ab/callee-0.3.1.tar.gz", hash = "sha256:056f95d7760c87ce470aa4ab83bab5f9bdf090d4ecf77d52efe9c4559c0aefd3", size = 19824, upload-time = "2019-12-24T14:58:38.579Z" } -[[package]] -name = "cbgen" -version = "1.0.6" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "appdirs" }, - { name = "cffi" }, - { name = "numpy" }, - { name = "pooch" }, - { name = "pytest" }, - { name = "urllib3" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/a0/97/cc69e0d0accb46965332ae247f3289832e546f8d30cb77218d6eb0f47b48/cbgen-1.0.6.tar.gz", hash = "sha256:edcf856c9b0cafae7f6e999ed5d08aacdf1e09dadec766b79990fe5861e8cf7e", size = 12387, upload-time = "2024-06-17T15:27:30.503Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ff/05/360448e10fbe7bed04450d2e2f9df6c8ddfa6e86beb367e426eb6b06fb49/cbgen-1.0.6-cp311-cp311-macosx_13_0_x86_64.whl", hash = "sha256:b97ab995397d56fa007dfd4e3d01f0ee7bc02ee5685b4e174161615af6a1dad0", size = 419458, upload-time = "2024-06-17T15:27:02.719Z" }, - { url = "https://files.pythonhosted.org/packages/81/71/260966997bdad39615e3430375fbca020ca103c1f601ec95f969e0b02296/cbgen-1.0.6-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:a0ddcaa25f19ea383931605d4627da06339662d0ef5bc07fda706d2592a11b31", size = 288999, upload-time = "2024-06-17T15:27:04.516Z" }, - { url = "https://files.pythonhosted.org/packages/ad/cc/0a735cc723989189177d00a57937e44184b57ca42245570b0b8e86720d57/cbgen-1.0.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:85560c53ea769902e9516b86d6bd2f3e6718dcac8ce4c3d7c0ac9fb43863b19f", size = 180643, upload-time = "2024-06-17T15:27:06.253Z" }, - { url = "https://files.pythonhosted.org/packages/1a/aa/7b37e68dda0f95b5fde96d20aab5163c61f35268914d4df110923953fbb4/cbgen-1.0.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c04f5860e7c35296777af14b0749c3b0c0210825644ac98cae9f169822a40bd", size = 578915, upload-time = "2024-06-17T15:27:08.26Z" }, - { url = "https://files.pythonhosted.org/packages/b8/7b/10cff399b0255d1426a1498aeb2eda7a94167a034fbd9f0bca5da2c66fdd/cbgen-1.0.6-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:9beb0fe67968020344b47c0f5f648418202ead39b1cc599adc481a49daace99b", size = 345395, upload-time = "2024-06-17T15:27:09.476Z" }, - { url = "https://files.pythonhosted.org/packages/c4/bb/fa9ed88dca04be210707e00bf329a337b78cbfc154c4cfa0250a7f589b0b/cbgen-1.0.6-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:fc40d9e917155125057adbad5477537a3974a7908080b60715449298f5c686d7", size = 729100, upload-time = "2024-06-17T15:27:10.633Z" }, - { url = "https://files.pythonhosted.org/packages/40/84/f0660542361cfe3a97e553d61e91d92bb26ea04a87cdd7d06522f1852dcf/cbgen-1.0.6-cp311-cp311-win_amd64.whl", hash = "sha256:733a11d2eb2b06adf4ef0dd7675ce18e011c12df99e42fea93b3222efad5293b", size = 243941, upload-time = "2024-06-17T15:27:12.426Z" }, - { url = "https://files.pythonhosted.org/packages/09/ce/6abc744f0b17d24ce47fd177b81aafc0a8afe005439b18e57db6caa564f3/cbgen-1.0.6-cp312-cp312-macosx_13_0_x86_64.whl", hash = "sha256:e05037fabfd12711836b0cd26da961fc271b56080871e3508177c6c08b1247b1", size = 554262, upload-time = "2024-06-17T15:27:14.2Z" }, - { url = "https://files.pythonhosted.org/packages/c0/15/7c42414b690d937ca6c4c75d08964e1e7bb19d9bb2fc06b5698ee18e53b8/cbgen-1.0.6-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:07d8d9209d24005f8f492b82f3793ac4ac8596263b07c5f68b7ab3e57eb0bc83", size = 380328, upload-time = "2024-06-17T15:27:15.918Z" }, - { url = "https://files.pythonhosted.org/packages/a5/36/3e8550e6d05baea8eb2eae8c27887e81ea0085f8246d13e030d73f9f87fd/cbgen-1.0.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e95a3b83d58343f5a7026dcee9dfce7ab9845406feb8b1c065151636b9fbefc", size = 767497, upload-time = "2024-06-17T15:27:17.117Z" }, - { url = "https://files.pythonhosted.org/packages/a9/24/6613c31e2346bd583ebbd4f32eccca4cd894364daf751ed0b632665013b3/cbgen-1.0.6-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e1279d9881844018d27d6cd3ec8475e08d68136a1862c8eadf41745b373393d1", size = 914945, upload-time = "2024-06-17T15:27:18.309Z" }, - { url = "https://files.pythonhosted.org/packages/ec/eb/493f97d94704a5078770477d03924c6bd74c2d98d041d25848f4b735034d/cbgen-1.0.6-cp312-cp312-win_amd64.whl", hash = "sha256:e56d6a01fb71d5c7fbf7039cc23089edd7a749fafb9f2898efffeacbd14a2bba", size = 319686, upload-time = "2024-06-17T15:27:20.306Z" }, -] - [[package]] name = "certifi" version = "2026.7.22" @@ -3084,20 +3047,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746", size = 20538, upload-time = "2025-05-15T12:30:06.134Z" }, ] -[[package]] -name = "pooch" -version = "1.9.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "packaging" }, - { name = "platformdirs" }, - { name = "requests" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/83/43/85ef45e8b36c6a48546af7b266592dc32d7f67837a6514d111bced6d7d75/pooch-1.9.0.tar.gz", hash = "sha256:de46729579b9857ffd3e741987a2f6d5e0e03219892c167c6578c0091fb511ed", size = 61788, upload-time = "2026-01-30T19:15:09.649Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/2a/2d/d4bf65e47cea8ff2c794a600c4fd1273a7902f268757c531e0ee9f18aa58/pooch-1.9.0-py3-none-any.whl", hash = "sha256:f265597baa9f760d25ceb29d0beb8186c243d6607b0f60b83ecf14078dbc703b", size = 67175, upload-time = "2026-01-30T19:15:08.36Z" }, -] - [[package]] name = "pre-commit" version = "4.6.2" @@ -4013,9 +3962,6 @@ dependencies = [ ] [package.optional-dependencies] -bgen = [ - { name = "cbgen" }, -] plink = [ { name = "bed-reader" }, { name = "partd" }, @@ -4047,7 +3993,7 @@ dev = [ { name = "scanpydoc", version = "0.17.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.12'" }, { name = "scikit-allel" }, { name = "seaborn" }, - { name = "sgkit", extra = ["bgen", "plink"] }, + { name = "sgkit", extra = ["plink"] }, { name = "sphinx" }, { name = "sphinx-autodoc-typehints" }, { name = "sphinx-copybutton" }, @@ -4092,7 +4038,7 @@ test = [ { name = "pytest-mock" }, { name = "requests" }, { name = "scikit-allel" }, - { name = "sgkit", extra = ["bgen", "plink"] }, + { name = "sgkit", extra = ["plink"] }, { name = "statsmodels" }, { name = "yarl" }, ] @@ -4100,7 +4046,6 @@ test = [ [package.metadata] requires-dist = [ { name = "bed-reader", marker = "extra == 'plink'" }, - { name = "cbgen", marker = "extra == 'bgen'", specifier = ">1.0.5" }, { name = "dask", extras = ["array", "dataframe"], specifier = ">=2022.1.0,<=2024.8.0" }, { name = "fsspec", specifier = "!=2021.6.*" }, { name = "numba" }, @@ -4113,7 +4058,7 @@ requires-dist = [ { name = "xarray", specifier = ">=2026.9.0" }, { name = "zarr", specifier = ">=3" }, ] -provides-extras = ["plink", "bgen"] +provides-extras = ["plink"] [package.metadata.requires-dev] dev = [ @@ -4140,7 +4085,7 @@ dev = [ { name = "scanpydoc" }, { name = "scikit-allel" }, { name = "seaborn" }, - { name = "sgkit", extras = ["plink", "bgen"] }, + { name = "sgkit", extras = ["plink"] }, { name = "sphinx", specifier = "<9.0.0" }, { name = "sphinx-autodoc-typehints" }, { name = "sphinx-copybutton" }, @@ -4180,7 +4125,7 @@ test = [ { name = "pytest-mock" }, { name = "requests" }, { name = "scikit-allel" }, - { name = "sgkit", extras = ["plink", "bgen"] }, + { name = "sgkit", extras = ["plink"] }, { name = "statsmodels" }, { name = "yarl" }, ] From aed7547660d5e9d78f1728f67608ea0ea49d0d48 Mon Sep 17 00:00:00 2001 From: Julianus Pfeuffer <8102638+jpfeuffer@users.noreply.github.com> Date: Fri, 16 Oct 2026 16:48:28 +0200 Subject: [PATCH 5/7] Document BGEN migration under changelog deprecations Clarify that BGEN reading and conversion are already removed, unlike the retained deprecated PLINK API, and point users to bio2zarr and legacy-store unpacking guidance. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- docs/changelog.rst | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/changelog.rst b/docs/changelog.rst index cf764e3eb..923727779 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -30,6 +30,14 @@ Breaking changes Deprecations ~~~~~~~~~~~~ +- BGEN reading and conversion have moved out of sgkit. Use + `bio2zarr `_ for BGEN-to-Zarr conversion + and :func:`load_dataset` for analysis. Unlike the deprecated PLINK functions + below, ``read_bgen``, ``bgen_to_zarr`` and ``rechunk_bgen`` are already removed + in this release; see Breaking changes above and + :ref:`bgen_conversion_migration`. Only the dependency-free + :func:`sgkit.io.bgen.unpack_variables` helper remains for legacy packed stores. + (:pr:`1325`, :issue:`1331`, :issue:`1355`) - Functions for reading and writing plink are deprecated, please use the `bio2zarr `_ and `vcztools `_ packages. (:user:`tomwhite`, :pr:`1324`, :issue:`1318`) From 7c72e2ce7f4f79aace6e2c589b9dc7edf11b70b8 Mon Sep 17 00:00:00 2001 From: Julianus Pfeuffer <8102638+jpfeuffer@users.noreply.github.com> Date: Fri, 16 Oct 2026 18:16:25 +0200 Subject: [PATCH 6/7] Remove redundant BGEN wheel smoke assertions Restore the existing general wheel smoke script by removing the added BGEN export/dependency assertions and synthetic unpacking example, as requested. Leave established behavioral tests unchanged. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .github/scripts/test_sgkit.py | 23 ----------------------- 1 file changed, 23 deletions(-) diff --git a/.github/scripts/test_sgkit.py b/.github/scripts/test_sgkit.py index 2f62e7dd3..1ad14f2e2 100644 --- a/.github/scripts/test_sgkit.py +++ b/.github/scripts/test_sgkit.py @@ -1,28 +1,5 @@ -from importlib.metadata import metadata, requires - -import xarray as xr - import sgkit as sg -from sgkit.io import bgen if __name__ == "__main__": ds = sg.simulate_genotype_call_dataset(n_variant=100, n_sample=50, n_contig=23) print(ds) - assert bgen.__all__ == ["unpack_variables"] - assert "bgen" not in metadata("sgkit").get_all("Provides-Extra", []) - assert not any("cbgen" in requirement for requirement in requires("sgkit")) - packed = xr.Dataset( - { - "call_genotype_probability": ( - ("variants", "samples", "genotypes"), - [[[0.25, 0.5]]], - ), - "call_genotype_probability_mask": ( - ("variants", "samples"), - [[False]], - ), - } - ) - unpacked = bgen.unpack_variables(packed) - assert unpacked.call_genotype_probability.values.tolist() == [[[0.25, 0.25, 0.5]]] - assert unpacked.call_dosage.item() == 1.25 From e014ffb9bdd5f902d393e955202f49fdc44fb56f Mon Sep 17 00:00:00 2001 From: Julianus Pfeuffer <8102638+jpfeuffer@users.noreply.github.com> Date: Fri, 16 Oct 2026 20:43:10 +0200 Subject: [PATCH 7/7] Fix strict docs links and Zarr 3 legacy-store CI tests Add the fsspec intersphinx inventory so StoreLike type annotations resolve FSMap. Use eager variable-length sample strings in the legacy packed-store fixture rather than unstable fixed-width UTF32 under Zarr format 3. Keep probability data chunked and warnings strict. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- docs/conf.py | 1 + sgkit/tests/io/test_bgen_utils.py | 33 +++++++++++++++++-------------- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 482d17157..eead605b9 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -134,6 +134,7 @@ def filter(self, record: pylogging.LogRecord) -> bool: intersphinx_mapping = dict( dask=("https://docs.dask.org/en/stable/", None), + fsspec=("https://filesystem-spec.readthedocs.io/en/latest/", None), xarray=("https://docs.xarray.dev/en/stable/", None), zarr=("https://zarr.readthedocs.io/en/stable", None), numpy=("https://numpy.org/doc/stable/", None), diff --git a/sgkit/tests/io/test_bgen_utils.py b/sgkit/tests/io/test_bgen_utils.py index fcdd4164b..7ca2c1fb3 100644 --- a/sgkit/tests/io/test_bgen_utils.py +++ b/sgkit/tests/io/test_bgen_utils.py @@ -79,21 +79,24 @@ def find_spec(self, fullname, path=None, target=None): @pytest.fixture def packed_dataset(): - return xr.Dataset( - { - "call_genotype_probability": ( - ("variants", "samples", "genotypes"), - [[[0.25, 0.5], [np.nan, np.nan]], [[0.0, 1.0], [0.0, 0.0]]], - ), - "call_genotype_probability_mask": ( - ("variants", "samples"), - [[False, True], [False, False]], - ), - "variant_position": ("variants", [10, 20]), - "sample_id": ("samples", ["a", "b"]), - }, - attrs={"source": "legacy packed BGEN store"}, - ).chunk({"variants": 1, "samples": 1}) + return ( + xr.Dataset( + { + "call_genotype_probability": ( + ("variants", "samples", "genotypes"), + [[[0.25, 0.5], [np.nan, np.nan]], [[0.0, 1.0], [0.0, 0.0]]], + ), + "call_genotype_probability_mask": ( + ("variants", "samples"), + [[False, True], [False, False]], + ), + "variant_position": ("variants", [10, 20]), + }, + attrs={"source": "legacy packed BGEN store"}, + ) + .chunk({"variants": 1, "samples": 1}) + .assign(sample_id=("samples", np.array(["a", "b"], dtype=object))) + ) @pytest.mark.parametrize("dtype", ["float32", "float64"])

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