ngio 0.4.0b1__tar.gz → 0.4.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ngio-0.4.0b1 → ngio-0.4.1}/.github/workflows/build_docs.yml +1 -1
- {ngio-0.4.0b1 → ngio-0.4.1}/.github/workflows/ci.yml +2 -2
- {ngio-0.4.0b1 → ngio-0.4.1}/CHANGELOG.md +16 -10
- {ngio-0.4.0b1 → ngio-0.4.1}/PKG-INFO +14 -14
- {ngio-0.4.0b1 → ngio-0.4.1}/README.md +13 -12
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/index.md +4 -3
- {ngio-0.4.0b1 → ngio-0.4.1}/pyproject.toml +1 -1
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/io_pipes/_zoom_transform.py +6 -1
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/images/test_images.py +33 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/.copier-answers.yml +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/.gitattributes +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/.github/ISSUE_TEMPLATE.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/.github/TEST_FAIL_TEMPLATE.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/.github/dependabot.yml +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/.github/pull_request_template.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/.gitignore +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/.pre-commit-config.yaml +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/LICENSE +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/_typos.toml +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/hcs.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/images.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/iterators.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/ngio/common.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/ngio/hcs.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/ngio/images.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/ngio/io_pipes.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/ngio/iterators.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/ngio/ngio.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/ngio/tables.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/ngio/transforms.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/ngio/utils.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/ome_zarr_container.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/api/tables.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/changelog.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/code_of_conduct.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/contributing.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/getting_started/0_quickstart.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/getting_started/1_ome_zarr_containers.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/getting_started/2_images.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/getting_started/3_tables.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/getting_started/4_masked_images.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/getting_started/5_hcs.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/getting_started/6_iterators.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/table_specs/backend.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/table_specs/overview.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/table_specs/table_types/condition_table.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/table_specs/table_types/custom_table.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/table_specs/table_types/feature_table.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/table_specs/table_types/generic_table.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/table_specs/table_types/masking_roi_table.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/table_specs/table_types/roi_table.md +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/tutorials/create_ome_zarr.ipynb +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/tutorials/feature_extraction.ipynb +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/tutorials/hcs_exploration.ipynb +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/tutorials/image_processing.ipynb +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/docs/tutorials/image_segmentation.ipynb +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/mkdocs.yml +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/common/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/common/_dimensions.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/common/_masking_roi.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/common/_pyramid.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/common/_roi.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/common/_synt_images_utils.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/common/_zoom.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/experimental/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/experimental/iterators/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/experimental/iterators/_abstract_iterator.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/experimental/iterators/_feature.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/experimental/iterators/_image_processing.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/experimental/iterators/_mappers.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/experimental/iterators/_rois_utils.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/experimental/iterators/_segmentation.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/hcs/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/hcs/_plate.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/images/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/images/_abstract_image.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/images/_create.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/images/_create_synt_container.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/images/_image.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/images/_label.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/images/_masked_image.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/images/_ome_zarr_container.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/images/_table_ops.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/io_pipes/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/io_pipes/_io_pipes.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/io_pipes/_io_pipes_masked.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/io_pipes/_io_pipes_roi.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/io_pipes/_io_pipes_types.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/io_pipes/_match_shape.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/io_pipes/_ops_axes.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/io_pipes/_ops_slices.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/io_pipes/_ops_slices_utils.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/io_pipes/_ops_transforms.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/ome_zarr_meta/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/ome_zarr_meta/_meta_handlers.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/ome_zarr_meta/ngio_specs/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/ome_zarr_meta/ngio_specs/_axes.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/ome_zarr_meta/ngio_specs/_channels.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/ome_zarr_meta/ngio_specs/_dataset.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/ome_zarr_meta/ngio_specs/_ngio_hcs.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/ome_zarr_meta/ngio_specs/_ngio_image.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/ome_zarr_meta/ngio_specs/_pixel_size.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/ome_zarr_meta/v04/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/ome_zarr_meta/v04/_custom_models.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/ome_zarr_meta/v04/_v04_spec_utils.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/resources/20200812-CardiomyocyteDifferentiation14-Cycle1_B03/mask.png +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/resources/20200812-CardiomyocyteDifferentiation14-Cycle1_B03/nuclei.png +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/resources/20200812-CardiomyocyteDifferentiation14-Cycle1_B03/raw.jpg +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/resources/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/resources/resource_model.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/_abstract_table.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/_tables_container.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/backends/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/backends/_abstract_backend.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/backends/_anndata.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/backends/_anndata_utils.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/backends/_csv.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/backends/_json.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/backends/_non_zarr_backends.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/backends/_parquet.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/backends/_table_backends.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/backends/_utils.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/v1/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/v1/_condition_table.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/v1/_feature_table.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/v1/_generic_table.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/tables/v1/_roi_table.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/transforms/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/transforms/_zoom.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/utils/__init__.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/utils/_datasets.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/utils/_errors.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/utils/_fractal_fsspec_store.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/utils/_logger.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/src/ngio/utils/_zarr_utils.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/conftest.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_c1yx.zarr/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_c1yx.zarr/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_c1yx.zarr/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_c1yx.zarr/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_c1yx.zarr/labels/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_c1yx.zarr/labels/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_cyx.zarr/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_cyx.zarr/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_cyx.zarr/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_cyx.zarr/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_cyx.zarr/labels/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_cyx.zarr/labels/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_cyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_cyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_cyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_cyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_czyx.zarr/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_czyx.zarr/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_czyx.zarr/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_czyx.zarr/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_czyx.zarr/labels/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_czyx.zarr/labels/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_czyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_czyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_czyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_czyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tcyx.zarr/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tcyx.zarr/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tcyx.zarr/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tcyx.zarr/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tcyx.zarr/labels/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tcyx.zarr/labels/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tczyx.zarr/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tczyx.zarr/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tczyx.zarr/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tczyx.zarr/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tczyx.zarr/labels/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tczyx.zarr/labels/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tyx.zarr/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tyx.zarr/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tyx.zarr/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tyx.zarr/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tyx.zarr/labels/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tyx.zarr/labels/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tzyx.zarr/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tzyx.zarr/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tzyx.zarr/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tzyx.zarr/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tzyx.zarr/labels/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tzyx.zarr/labels/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_yx.zarr/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_yx.zarr/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_yx.zarr/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_yx.zarr/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_yx.zarr/labels/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_yx.zarr/labels/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_yx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_yx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_yx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_yx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_zyx.zarr/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_zyx.zarr/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_zyx.zarr/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_zyx.zarr/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_zyx.zarr/labels/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_zyx.zarr/labels/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_zyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_zyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_zyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/images/test_image_zyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/meta/base_ome_zarr_image_meta.json +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/meta/base_ome_zarr_image_meta_wrong_axis_order.json +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/meta/base_ome_zarr_label_meta.json +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/meta/base_ome_zarr_well_meta.json +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/data/v04/meta/ome_zarr_well_path_normalization_meta.json +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/common/test_dimensions.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/common/test_pyramid.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/common/test_roi.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/common/test_transforms.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/hcs/test_plate.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/hcs/test_well.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/images/test_create.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/images/test_masked_images.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/images/test_omezarr_container.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/images/test_table_ops.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/io_pipes/test_axes_ops.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/io_pipes/test_slicing_ops.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/iterators/test_iterators.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/ome_zarr_meta/test_image_handler.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/ome_zarr_meta/test_unit_ngio_specs.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/ome_zarr_meta/test_unit_v04_utils.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/tables/test_backends.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/tables/test_backends_utils.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/tables/test_feature_table.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/tables/test_generic_table.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/tables/test_masking_roi_table_v1.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/tables/test_roi_table_v1.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/tables/test_table_group.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/utils/test_download_datasets.py +0 -0
- {ngio-0.4.0b1 → ngio-0.4.1}/tests/unit/utils/test_zarr_utils.py +0 -0
|
@@ -40,7 +40,7 @@ jobs:
|
|
|
40
40
|
- uses: actions/checkout@v5
|
|
41
41
|
|
|
42
42
|
- name: 🐍 Set up Python ${{ matrix.python-version }}
|
|
43
|
-
uses: actions/setup-python@
|
|
43
|
+
uses: actions/setup-python@v6
|
|
44
44
|
with:
|
|
45
45
|
python-version: ${{ matrix.python-version }}
|
|
46
46
|
cache-dependency-path: "pyproject.toml"
|
|
@@ -103,7 +103,7 @@ jobs:
|
|
|
103
103
|
fetch-depth: 0
|
|
104
104
|
|
|
105
105
|
- name: 🐍 Set up Python
|
|
106
|
-
uses: actions/setup-python@
|
|
106
|
+
uses: actions/setup-python@v6
|
|
107
107
|
with:
|
|
108
108
|
python-version: "3.x"
|
|
109
109
|
|
|
@@ -1,13 +1,22 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## [v0.4.
|
|
3
|
+
## [v0.4.1]
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
- Fix bug in zoom transform when input axes contain unknown axes (e.g. virtual axes). Now unknown axes are treated as virtual axes and set to 1 in the target shape.
|
|
7
|
+
|
|
8
|
+
## [v0.4.0]
|
|
4
9
|
|
|
5
10
|
### Features
|
|
6
11
|
|
|
7
|
-
-
|
|
12
|
+
- Add Iterators for image processing pipelines
|
|
13
|
+
- Add support for time in rois and roi-tables
|
|
8
14
|
- Building masking roi tables expanded to time series data
|
|
9
|
-
-
|
|
10
|
-
-
|
|
15
|
+
- Add zoom transformation
|
|
16
|
+
- Add support for rescaling on-the-fly masks for masked images
|
|
17
|
+
- Big refactor of the io pipeline to support iterators and lazy loading
|
|
18
|
+
- Add support for customize dimension separators and compression codecs
|
|
19
|
+
- Simplify AxesHandler and Dataset Classes
|
|
11
20
|
|
|
12
21
|
### API Changes
|
|
13
22
|
|
|
@@ -19,15 +28,12 @@
|
|
|
19
28
|
- Image like objects now have a more clean API to load data. Instead of `get_array` and `set_array`, they now use `get_as_numpy`, and `get_as_dask` for delayed arrays.
|
|
20
29
|
- Also for `get_roi` now specific methods are available. For ROI objects, the `get_roi_as_numpy`, and `get_roi_as_dask` methods.
|
|
21
30
|
- Table ops moved to `ngio.images`
|
|
22
|
-
-
|
|
31
|
+
- int `label` as an explicit attribute in `Roi` objects (previously only in stored in name and relying on convention)
|
|
32
|
+
- Slight changes to `Image` and `Label` objects. Some minor attributes have been renamed for consistency.
|
|
23
33
|
|
|
24
34
|
### Table specs
|
|
25
35
|
|
|
26
|
-
-
|
|
27
|
-
|
|
28
|
-
### Bug Fixes
|
|
29
|
-
|
|
30
|
-
- improve type consistency and remove non-necessary "type: ignore"
|
|
36
|
+
- Add `t_second` and `len_t_second` to ROI tables and masking ROI tables
|
|
31
37
|
|
|
32
38
|
## [v0.3.5]
|
|
33
39
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ngio
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.1
|
|
4
4
|
Summary: Next Generation file format IO
|
|
5
5
|
Project-URL: homepage, https://github.com/BioVisionCenter/ngio
|
|
6
6
|
Project-URL: repository, https://github.com/BioVisionCenter/ngio
|
|
@@ -28,7 +28,6 @@ Requires-Dist: pooch
|
|
|
28
28
|
Requires-Dist: pyarrow
|
|
29
29
|
Requires-Dist: pydantic
|
|
30
30
|
Requires-Dist: requests
|
|
31
|
-
Requires-Dist: xarray
|
|
32
31
|
Requires-Dist: zarr<3
|
|
33
32
|
Provides-Extra: dev
|
|
34
33
|
Requires-Dist: devtools; extra == 'dev'
|
|
@@ -83,20 +82,22 @@ Ngio's mission is to streamline working with OME-Zarr files by providing a simpl
|
|
|
83
82
|
|
|
84
83
|
## Key Features
|
|
85
84
|
|
|
86
|
-
###
|
|
85
|
+
### 🔍 Simple Object-Based API
|
|
87
86
|
|
|
88
87
|
- Easily open, explore, and manipulate OME-Zarr images and HCS plates
|
|
89
88
|
- Create and derive new images and labels with minimal boilerplate code
|
|
90
89
|
|
|
91
|
-
###
|
|
90
|
+
### 📊 Rich Tables and Regions of Interest (ROI) Support
|
|
92
91
|
|
|
92
|
+
- Tight integration with [tabular data](https://biovisioncenter.github.io/ngio/stable/table_specs/overview/)
|
|
93
93
|
- Extract and analyze specific regions of interest
|
|
94
|
-
-
|
|
94
|
+
- Store measurements and other metadata in the OME-Zarr container
|
|
95
|
+
- Extensible & modular allowing users to define custom table schemas and on disk serialization
|
|
95
96
|
|
|
96
|
-
### 🔄 Scalable Data Processing
|
|
97
|
+
### 🔄 Scalable Data Processing
|
|
97
98
|
|
|
98
|
-
- Powerful iterators for
|
|
99
|
-
-
|
|
99
|
+
- Powerful iterators for building scalable and generalizable image processing pipelines
|
|
100
|
+
- Extensible mapping mechanism for custom parallelization strategies
|
|
100
101
|
|
|
101
102
|
## Installation
|
|
102
103
|
|
|
@@ -114,23 +115,22 @@ Currently, ngio only supports OME-Zarr v0.4. Support for version 0.5 and higher
|
|
|
114
115
|
|
|
115
116
|
## Development Status
|
|
116
117
|
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
We follow [Semantic Versioning](https://semver.org/). Which means for 0.x releases potentially breaking changes can be introduced in minor releases.
|
|
118
|
+
Ngio is under active development and is not yet stable. The API is subject to change, and bugs and breaking changes are expected.
|
|
119
|
+
We follow [Semantic Versioning](https://semver.org/). Which means for 0.x releases potentially breaking changes can be introduced in minor releases.
|
|
120
120
|
|
|
121
121
|
### Available Features
|
|
122
122
|
|
|
123
123
|
- ✅ OME-Zarr metadata handling and validation
|
|
124
124
|
- ✅ Image and label access across pyramid levels
|
|
125
125
|
- ✅ ROI and table support
|
|
126
|
+
- ✅ Image processing iterators
|
|
126
127
|
- ✅ Streaming from remote sources
|
|
127
128
|
- ✅ Documentation and examples
|
|
128
129
|
|
|
129
130
|
### Upcoming Features
|
|
130
131
|
|
|
131
|
-
-
|
|
132
|
-
-
|
|
133
|
-
- Support for OME-Zarr v0.5 and Zarr v3
|
|
132
|
+
- Support for OME-Zarr v0.5 and Zarr v3 (via `zarr-python` v3)
|
|
133
|
+
- Enhanced performance optimizations (parallel iterators, optimized io strategies)
|
|
134
134
|
|
|
135
135
|
## Contributors
|
|
136
136
|
|
|
@@ -16,20 +16,22 @@ Ngio's mission is to streamline working with OME-Zarr files by providing a simpl
|
|
|
16
16
|
|
|
17
17
|
## Key Features
|
|
18
18
|
|
|
19
|
-
###
|
|
19
|
+
### 🔍 Simple Object-Based API
|
|
20
20
|
|
|
21
21
|
- Easily open, explore, and manipulate OME-Zarr images and HCS plates
|
|
22
22
|
- Create and derive new images and labels with minimal boilerplate code
|
|
23
23
|
|
|
24
|
-
###
|
|
24
|
+
### 📊 Rich Tables and Regions of Interest (ROI) Support
|
|
25
25
|
|
|
26
|
+
- Tight integration with [tabular data](https://biovisioncenter.github.io/ngio/stable/table_specs/overview/)
|
|
26
27
|
- Extract and analyze specific regions of interest
|
|
27
|
-
-
|
|
28
|
+
- Store measurements and other metadata in the OME-Zarr container
|
|
29
|
+
- Extensible & modular allowing users to define custom table schemas and on disk serialization
|
|
28
30
|
|
|
29
|
-
### 🔄 Scalable Data Processing
|
|
31
|
+
### 🔄 Scalable Data Processing
|
|
30
32
|
|
|
31
|
-
- Powerful iterators for
|
|
32
|
-
-
|
|
33
|
+
- Powerful iterators for building scalable and generalizable image processing pipelines
|
|
34
|
+
- Extensible mapping mechanism for custom parallelization strategies
|
|
33
35
|
|
|
34
36
|
## Installation
|
|
35
37
|
|
|
@@ -47,23 +49,22 @@ Currently, ngio only supports OME-Zarr v0.4. Support for version 0.5 and higher
|
|
|
47
49
|
|
|
48
50
|
## Development Status
|
|
49
51
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
We follow [Semantic Versioning](https://semver.org/). Which means for 0.x releases potentially breaking changes can be introduced in minor releases.
|
|
52
|
+
Ngio is under active development and is not yet stable. The API is subject to change, and bugs and breaking changes are expected.
|
|
53
|
+
We follow [Semantic Versioning](https://semver.org/). Which means for 0.x releases potentially breaking changes can be introduced in minor releases.
|
|
53
54
|
|
|
54
55
|
### Available Features
|
|
55
56
|
|
|
56
57
|
- ✅ OME-Zarr metadata handling and validation
|
|
57
58
|
- ✅ Image and label access across pyramid levels
|
|
58
59
|
- ✅ ROI and table support
|
|
60
|
+
- ✅ Image processing iterators
|
|
59
61
|
- ✅ Streaming from remote sources
|
|
60
62
|
- ✅ Documentation and examples
|
|
61
63
|
|
|
62
64
|
### Upcoming Features
|
|
63
65
|
|
|
64
|
-
-
|
|
65
|
-
-
|
|
66
|
-
- Support for OME-Zarr v0.5 and Zarr v3
|
|
66
|
+
- Support for OME-Zarr v0.5 and Zarr v3 (via `zarr-python` v3)
|
|
67
|
+
- Enhanced performance optimizations (parallel iterators, optimized io strategies)
|
|
67
68
|
|
|
68
69
|
## Contributors
|
|
69
70
|
|
|
@@ -8,15 +8,16 @@ Ngio's mission is to streamline working with OME-Zarr files by providing a simpl
|
|
|
8
8
|
|
|
9
9
|
## Key Features
|
|
10
10
|
|
|
11
|
-
###
|
|
11
|
+
### 🔍 Simple Object-Based API
|
|
12
12
|
|
|
13
13
|
- Easily open, explore, and manipulate OME-Zarr images and HCS plates
|
|
14
14
|
- Create and derive new images and labels with minimal boilerplate code
|
|
15
15
|
|
|
16
|
-
###
|
|
16
|
+
### 📊 Rich Tables and Regions of Interest (ROI) Support
|
|
17
17
|
|
|
18
|
+
- Tight integration with [tabular data](https://biovisioncenter.github.io/ngio/stable/table_specs/overview/)
|
|
18
19
|
- Extract and analyze specific regions of interest
|
|
19
|
-
-
|
|
20
|
+
- Store measurements and other metadata in the OME-Zarr container
|
|
20
21
|
- Extensible & modular allowing users to define custom table schemas and on disk serialization
|
|
21
22
|
|
|
22
23
|
### 🔄 Scalable Data Processing
|
|
@@ -60,7 +60,12 @@ class BaseZoomTransform:
|
|
|
60
60
|
target_shape = []
|
|
61
61
|
for shape, ax_name in zip(array_shape, axes_ops.output_axes, strict=True):
|
|
62
62
|
ax_type = self._input_dimensions.axes_handler.get_axis(ax_name)
|
|
63
|
-
if ax_type is
|
|
63
|
+
if ax_type is None:
|
|
64
|
+
# Unknown axis can only be a virtual axis
|
|
65
|
+
# So we set it to 1
|
|
66
|
+
target_shape.append(1)
|
|
67
|
+
continue
|
|
68
|
+
elif ax_type.axis_type == "channel":
|
|
64
69
|
# Do not scale channel axis
|
|
65
70
|
target_shape.append(shape)
|
|
66
71
|
continue
|
|
@@ -187,3 +187,36 @@ def test_image_require_can_be_rescaled2(
|
|
|
187
187
|
# Roi data should match exactly
|
|
188
188
|
assert img1_data.shape == img2_roi_data.shape
|
|
189
189
|
img2.set_roi(roi=roi, patch=img2_roi_data, transforms=[zoom])
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
def test_zoom_virtual_axes(
|
|
193
|
+
tmp_path: Path,
|
|
194
|
+
):
|
|
195
|
+
path1 = tmp_path / "image1.zarr"
|
|
196
|
+
path2 = tmp_path / "image2.zarr"
|
|
197
|
+
create_empty_ome_zarr(
|
|
198
|
+
store=path1, shape=(3, 16, 16, 16), axes_names="czyx", xy_pixelsize=1.0
|
|
199
|
+
)
|
|
200
|
+
create_empty_ome_zarr(
|
|
201
|
+
store=path2, shape=(16, 32, 32), axes_names="zyx", xy_pixelsize=0.5
|
|
202
|
+
)
|
|
203
|
+
img1 = open_image(path1)
|
|
204
|
+
img2 = open_image(path2)
|
|
205
|
+
|
|
206
|
+
# Also test with transforms
|
|
207
|
+
zoom = ZoomTransform(
|
|
208
|
+
input_image=img2,
|
|
209
|
+
target_image=img1,
|
|
210
|
+
order="nearest",
|
|
211
|
+
)
|
|
212
|
+
|
|
213
|
+
img1_data = img1.get_as_numpy()
|
|
214
|
+
img2_data = img2.get_as_numpy(transforms=[zoom], axes_order="czyx")
|
|
215
|
+
img2.set_array(patch=img2_data, transforms=[zoom], axes_order="czyx")
|
|
216
|
+
assert img2_data.shape[0] == 1 # Virtual channel axis
|
|
217
|
+
|
|
218
|
+
roi = img1.build_image_roi_table().rois()[0]
|
|
219
|
+
img2_roi_data = img2.get_roi_as_numpy(roi, transforms=[zoom], axes_order="czyx")
|
|
220
|
+
# Roi data should match exactly except for virtual axis
|
|
221
|
+
assert img1_data.shape[1:] == img2_roi_data.shape[1:]
|
|
222
|
+
img2.set_roi(roi=roi, patch=img2_roi_data, transforms=[zoom], axes_order="czyx")
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|