From d301ad761318e829aa26ed7c539c8e53abe0a1f4 Mon Sep 17 00:00:00 2001 From: Hideki Date: Tue, 7 Apr 2026 10:04:07 +0900 Subject: [PATCH 1/5] Add tests for mri/fmriprep.py --- tests/mri/__init__.py | 0 tests/mri/fmriprep/README.md | 157 ++++ tests/mri/fmriprep/TEST_COVERAGE.md | 125 ++++ tests/mri/fmriprep/__init__.py | 0 .../scripts/mock/step_1_prepare_gm.sh | 23 + .../fmriprep/scripts/mock/step_2_run_test.sh | 4 + tests/mri/fmriprep/scripts/real/.gitignore | 1 + .../fmriprep/scripts/real/_fs_env.sh.example | 4 + .../fmriprep/scripts/real/step_1_download.sh | 28 + .../scripts/real/step_2_run_freesurfer.sh | 42 ++ .../scripts/real/step_3_run_fmriprep.sh | 146 ++++ .../scripts/real/step_4_prepare_gm.sh | 12 + .../fmriprep/scripts/real/step_5_run_test.sh | 4 + tests/mri/fmriprep/test_fmriprep_mock.py | 681 ++++++++++++++++++ tests/mri/fmriprep/test_fmriprep_real.py | 46 ++ tests/mri/fmriprep/test_fmriprep_utils.py | 162 +++++ .../mri/fmriprep/test_fmriprep_utils_mock.py | 497 +++++++++++++ 17 files changed, 1932 insertions(+) create mode 100644 tests/mri/__init__.py create mode 100644 tests/mri/fmriprep/README.md create mode 100644 tests/mri/fmriprep/TEST_COVERAGE.md create mode 100644 tests/mri/fmriprep/__init__.py create mode 100644 tests/mri/fmriprep/scripts/mock/step_1_prepare_gm.sh create mode 100644 tests/mri/fmriprep/scripts/mock/step_2_run_test.sh create mode 100644 tests/mri/fmriprep/scripts/real/.gitignore create mode 100644 tests/mri/fmriprep/scripts/real/_fs_env.sh.example create mode 100644 tests/mri/fmriprep/scripts/real/step_1_download.sh create mode 100644 tests/mri/fmriprep/scripts/real/step_2_run_freesurfer.sh create mode 100644 tests/mri/fmriprep/scripts/real/step_3_run_fmriprep.sh create mode 100644 tests/mri/fmriprep/scripts/real/step_4_prepare_gm.sh create mode 100644 tests/mri/fmriprep/scripts/real/step_5_run_test.sh create mode 100644 tests/mri/fmriprep/test_fmriprep_mock.py create mode 100644 tests/mri/fmriprep/test_fmriprep_real.py create mode 100644 tests/mri/fmriprep/test_fmriprep_utils.py create mode 100644 tests/mri/fmriprep/test_fmriprep_utils_mock.py diff --git a/tests/mri/__init__.py b/tests/mri/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/tests/mri/fmriprep/README.md b/tests/mri/fmriprep/README.md new file mode 100644 index 00000000..2df2e5b4 --- /dev/null +++ b/tests/mri/fmriprep/README.md @@ -0,0 +1,157 @@ +# Test code for `bdpy.mri.fmriprep` + +> **Path note:** The canonical location is `tests/mri/fmriprep/` (not `tests/bdpy/mri`). + +## Overview + +This directory contains tests for `bdpy.mri.fmriprep`. + +The current layout is split by data source: + +- `test_fmriprep_mock.py`: mock-data tests that run without external datasets +- `test_fmriprep_real.py`: real-data golden-master test +- `test_fmriprep_utils.py`: shared helpers for loading `fmriprep.py` and for real-data tests +- `test_fmriprep_utils_mock.py`: mock dataset builder and expected-data helpers +- `scripts/mock/`: helper scripts for mock golden-master preparation and test execution +- `scripts/real/`: helper scripts for real-data download, preprocessing, golden-master preparation, and test execution + +For test coverage and maintenance notes, see `TEST_COVERAGE.md`. + +## Dependencies + +- Run these tests in the lab base environment where `bdpy`, `nipy`, `nibabel`, and related dependencies are already installed. +- These tests assume the directory layout of `fmriprep` version `1.2`. +- `bdpy/mri/fmriprep.py` still depends on the older `nipy` API (`get_data()`), so newer environments may fail even if the test code itself is correct. +- Real-data tests additionally require `datalad` for dataset download and `docker` for `poldracklab/fmriprep:1.2.1`. + +## Working Directory + +Run all commands below from the project root, which is the directory containing `tests/` and `bdpy/`. + +Set the Python interpreter explicitly when needed: + +```bash +export PYTHON_BIN=/path/to/python +``` + +If `PYTHON_BIN` is unset, the helper scripts default to `python`. + +## Mock Tests + +Run the mock-only suite directly: + +```bash +"${PYTHON_BIN:-python}" -m pytest ./tests/mri/fmriprep/test_fmriprep_mock.py +``` + +Or use the helper scripts: + +```bash +bash ./tests/mri/fmriprep/scripts/mock/step_1_prepare_gm.sh +bash ./tests/mri/fmriprep/scripts/mock/step_2_run_test.sh +``` + +Script roles: + +- `step_1_prepare_gm.sh`: creates missing mock golden-master files if needed +- `step_2_run_test.sh`: runs `test_fmriprep_mock.py` + +Mock golden-master files: + +- `./tests/data/mri/golden_master/mock/test_output_fmriprep_subject.h5` +- `./tests/data/mri/golden_master/mock/test_output_fmriprep_subject_exclude.h5` + +If you need to regenerate them manually: + +```bash +TEST_FMRIPREP_CREATE_GOLDEN_MASTER=1 "${PYTHON_BIN:-python}" -m pytest ./tests/mri/fmriprep/test_fmriprep_mock.py +``` + +## Real-Data Tests + +The real-data workflow is staged because it depends on external data and preprocessing outputs. + +### Environment + +For preprocessing scripts, set the environment variables below explicitly: + +```bash +export BIDS_DIR=./tests/data/mri/ds006319 +export FREESURFER_HOME=/path/to/freesurfer +export FS_LICENSE=/path/to/license.txt +export FS_OUTPUT_DIR="${BIDS_DIR}/derivatives/freesurfer" +``` + +To avoid committing machine-specific paths, copy the local template below and edit it on your machine only: + +```bash +cp ./tests/mri/fmriprep/scripts/real/_fs_env.sh.example ./tests/mri/fmriprep/scripts/real/_fs_env.sh +``` + +`step_2_run_freesurfer.sh` and `step_3_run_fmriprep.sh` read `./tests/mri/fmriprep/scripts/real/_fs_env.sh` if it exists, then fall back to the current shell environment. +Keep `_fs_env.sh` local-only; the repository only tracks `_fs_env.sh.example`. + +### Run The Full Pipeline + +```bash +bash ./tests/mri/fmriprep/scripts/real/step_1_download.sh +bash ./tests/mri/fmriprep/scripts/real/step_2_run_freesurfer.sh +bash ./tests/mri/fmriprep/scripts/real/step_3_run_fmriprep.sh +bash ./tests/mri/fmriprep/scripts/real/step_4_prepare_gm.sh +bash ./tests/mri/fmriprep/scripts/real/step_5_run_test.sh +``` + +Script roles: + +- `step_1_download.sh`: downloads the raw real dataset +- `step_2_run_freesurfer.sh`: runs FreeSurfer +- `step_3_run_fmriprep.sh`: runs fMRIPrep using the two functional sessions plus `ses-anatomy` +- `step_4_prepare_gm.sh`: creates the real-data golden master if it is missing +- `step_5_run_test.sh`: runs `test_fmriprep_real.py` + +### Run The Test Only + +If the dataset, FreeSurfer output, and fMRIPrep output are already prepared, run the test directly: + +```bash +"${PYTHON_BIN:-python}" -m pytest ./tests/mri/fmriprep/test_fmriprep_real.py +``` + +Real-data golden-master file: + +- `./tests/data/mri/golden_master/real/test_output_fmriprep_real_exclude.h5` + +If you need to regenerate it manually: + +```bash +TEST_FMRIPREP_CREATE_GOLDEN_MASTER=1 "${PYTHON_BIN:-python}" -m pytest ./tests/mri/fmriprep/test_fmriprep_real.py +``` + +## Notes + +- The split `mock` / `real` structure replaced the older `USE_REAL`-based mixed test module. +- The current recommended entry points are `test_fmriprep_mock.py` and `test_fmriprep_real.py`. +- The real-data helper scripts and tests prefer `./tests/data/mri/ds006319`. The test helpers also accept the older `./tests/data/ds006319` layout for compatibility. + +## Submission Checklist + +Before submitting, run this minimal checklist from the project root: + +```bash +# 1) Mock tests +"${PYTHON_BIN:-python}" -m pytest ./tests/mri/fmriprep/test_fmriprep_mock.py + +# 2) Real-data tests (only when dataset + preprocessing outputs are ready) +"${PYTHON_BIN:-python}" -m pytest ./tests/mri/fmriprep/test_fmriprep_real.py + +# 3) Verify golden-master files exist +test -f ./tests/data/mri/golden_master/mock/test_output_fmriprep_subject.h5 +test -f ./tests/data/mri/golden_master/mock/test_output_fmriprep_subject_exclude.h5 +test -f ./tests/data/mri/golden_master/real/test_output_fmriprep_real_exclude.h5 +``` + +Recommended for reproducibility: + +- Keep machine-specific FreeSurfer settings in `scripts/real/_fs_env.sh` (local-only). +- Do not commit `_fs_env.sh`; only `_fs_env.sh.example` should be tracked. +- If golden masters were regenerated intentionally, mention that explicitly in your submission notes. diff --git a/tests/mri/fmriprep/TEST_COVERAGE.md b/tests/mri/fmriprep/TEST_COVERAGE.md new file mode 100644 index 00000000..81a8dc62 --- /dev/null +++ b/tests/mri/fmriprep/TEST_COVERAGE.md @@ -0,0 +1,125 @@ +# Test Coverage and Maintenance Notes for `bdpy.mri.fmriprep` + +This document summarizes what the current test suite covers, what remains untested, and known implementation issues observed during test reorganization. + +_Last updated: 2026-04-06_ + +## Test Coverage Summary + +`test_fmriprep_mock.py` covers: + +- `FmriprepData` parsing and dataset traversal +- failure cases for missing or malformed inputs +- golden-master validation for `create_bdata_fmriprep` +- surface loading through `BrainData` +- `LabelMapper` +- subject-level BData creation +- `cut_run` behavior +- `get_xyz` +- `load_mri` + +`test_fmriprep_real.py` covers: + +- golden-master validation of `create_bdata_fmriprep` using real fMRIPrep output with exclusions + +## Functions and Classes in `bdpy/mri/fmriprep.py` + +### FmriprepData (class) + +Parses a BIDS/fMRIPrep directory and stores subject/session/run structures in an `OrderedDict`. +Internally calls `__parse_data` (subject/session/run discovery) and `__get_task_event_files` (events.tsv + bold.json pairing). + +| Item | Details | +| --- | --- | +| Test status | Covered | +| Real-data dependency | Replaced by mock directory structure | +| Existing tests | `TestFmriprepDataMock`: private vars, get_subjects, get_sessions, parse_session, parse_data, get_task_event_files / `TestFmriprepDataFailures` (parsing failures): missing events, missing bold.json | +| Not yet tested | File-pattern branch for fMRIPrep versions `1.0`/`1.1` | + +Note: `TestFmriprepDataFailures` is a single test class containing 5 methods. Two (missing events, missing bold.json) test `FmriprepData` parsing failures; the remaining three (missing confounds, missing motion columns, unknown labels) test failures during `create_bdata_fmriprep` execution. They are listed under the respective sections below. + +### create_bdata_fmriprep (function) + +Top-level orchestrator. Parses with `FmriprepData`, applies exclusions (`subject`/`session`/`run`/`session-run`), loads `label_mapper` files (csv/tsv), and calls `__create_bdata_fmriprep_subject` per subject. Can also split outputs by task label when `split_task_label=True`. + +| Item | Details | +| --- | --- | +| Test status | Partially covered; known issues remain | +| Real-data dependency | Replaced by mock data | +| Existing tests | `TestCreateBdataFmriprepMock`: golden masters (with/without exclusion), surface modes, empty list when subject excluded / `TestFmriprepDataFailures` (execution failures): missing confounds, missing motion columns, unknown labels | +| Gaps / issues | (1) Potential mutation-while-iterating issue: deleting from `fmriprep.data` (`OrderedDict`) during iteration may raise `RuntimeError: dictionary changed size during iteration` on Python 3.8. (2) No direct test for `split_task_label=True`. (3) No focused unit test for csv/tsv `label_mapper` loading logic. (4) No explicit test for `return_list=False` single-BData return path. | + +### BrainData (class) + +Loads fMRI data (volume or surface). +For volume: reads NIfTI via `nipy.load_image`, reshapes 4D to 2D (sample x voxel), and computes xyz/ijk from affine. +For surface: loads left/right GIFTI via nibabel and concatenates. + +| Item | Details | +| --- | --- | +| Test status | Surface path covered; volume path mostly indirect | +| Real-data dependency | Replaced by mock data | +| Existing tests | `TestBrainDataMock`: paired surface load, one-side missing, empty darray, vertex-count mismatch, invalid dtype | +| Gaps / issues | (1) No direct unit test for volume loader (`__load_volume`), only indirect coverage through `__create_bdata_fmriprep_subject`. (2) String identity checks (`is` / `is not`) are used for dtype and should be equality checks (`==` / `!=`). (3) No direct test for xyz/ijk extraction on 3D volume input. | + +### LabelMapper (class) + +Maps string labels to numeric values. Converts `'n/a'` to `NaN` and validates reverse-mapping uniqueness. + +| Item | Details | +| --- | --- | +| Test status | Mostly covered | +| Real-data dependency | None | +| Existing tests | `TestLabelMapperMock` (3 methods): normal mapping including n/a→NaN (`test_get_value_returns_expected_numeric_mapping`), same-value mapping (`test_get_value_returns_existing_value_for_duplicate_mapping`), unknown key (`test_get_value_raises_on_missing_key`) | +| Not yet tested | (1) Non-unique reverse mapping case that raises `RuntimeError('Invalid label-value mapping')` (mapping different labels to the same value in separate calls, as opposed to the tested case where multiple labels share the same value in one dict). (2) Direct assertion of `dump()` output. | + +### create_bdata_singlesubject (function) + +Thin public wrapper for `__create_bdata_fmriprep_subject`; forwards arguments directly. + +| Item | Details | +| --- | --- | +| Test status | Covered | +| Real-data dependency | Replaced by mock data | +| Existing tests | `TestCreateBdataFmriprepSubjectMock.test_create_bdata_singlesubject` | +| Not yet tested | Calling this public API with `cut_run=True` (the private function path is tested directly). | + +### __create_bdata_fmriprep_subject (private function) + +Core worker. For each run: loads with `BrainData`, reads confounds/motion, builds block/label arrays from task events, and writes to BData. Supports cropping when `cut_run=True` and event length exceeds data length. + +| Item | Details | +| --- | --- | +| Test status | Covered | +| Real-data dependency | Replaced by mock data | +| Existing tests | golden master, direct call path, `cut_run` (True/False), confounds with NaN | +| Not yet tested | `NotImplementedError` path when `cut_duration < 0` | + +### __get_xyz (private function) + +Computes voxel coordinates with `itertools.product` and `xrange`; supports 3D/4D images. + +| Item | Details | +| --- | --- | +| Test status | Covered (with patching) | +| Real-data dependency | None (uses fake image objects) | +| Existing tests | `TestGetXyzMock`: 4D/3D fake images | +| Notes | Python 3 does not provide `xrange`, so tests patch `fmriprep.xrange = range`. The function is not part of the current main execution path, so maintenance priority is low. | + +### __load_mri (private function) + +Loads NIfTI via `nipy.load_image` and returns `(data, xyz, ijk)` for 3D/4D input. Its behavior is largely duplicated by `BrainData.__load_volume`. + +| Item | Details | +| --- | --- | +| Test status | Covered | +| Real-data dependency | Replaced by mock data | +| Existing tests | `TestLoadMriMock`: 4D mock, 3D temp file, invalid dimensions | +| Notes | Code is largely duplicated with `BrainData.__load_volume`; retained for compatibility checks but a candidate for future cleanup. | + +## Main Findings + +- `create_bdata_fmriprep` has a potential dictionary-mutation bug while iterating over `OrderedDict`. +- `BrainData` contains `is`-based string comparisons that should be equality comparisons. +- `__get_xyz` and `__load_mri` appear to be outside the current main path. +- `split_task_label=True` still has no direct test coverage. diff --git a/tests/mri/fmriprep/__init__.py b/tests/mri/fmriprep/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/tests/mri/fmriprep/scripts/mock/step_1_prepare_gm.sh b/tests/mri/fmriprep/scripts/mock/step_1_prepare_gm.sh new file mode 100644 index 00000000..30e87415 --- /dev/null +++ b/tests/mri/fmriprep/scripts/mock/step_1_prepare_gm.sh @@ -0,0 +1,23 @@ +PYTHON_BIN="${PYTHON_BIN:-python}" + +mock_gm_h5_path_list=( + ./tests/data/mri/golden_master/mock/test_output_fmriprep_subject_exclude.h5 + ./tests/data/mri/golden_master/mock/test_output_fmriprep_subject.h5 +) + +need_mock_gm=0 + +for gm_h5_path in "${mock_gm_h5_path_list[@]}"; do + if [ ! -f "${gm_h5_path}" ]; then + need_mock_gm=1 + echo "Missing golden master file: ${gm_h5_path}" + fi +done + +if [ "${need_mock_gm}" -eq 0 ]; then + echo "All mock golden master files already exist." + echo "Skipping GM creation step. If you want to recreate the GM, please delete the existing file and run this script again." + exit 0 +fi + +TEST_FMRIPREP_CREATE_GOLDEN_MASTER=1 "${PYTHON_BIN}" -m pytest ./tests/mri/fmriprep/test_fmriprep_mock.py diff --git a/tests/mri/fmriprep/scripts/mock/step_2_run_test.sh b/tests/mri/fmriprep/scripts/mock/step_2_run_test.sh new file mode 100644 index 00000000..656b73bd --- /dev/null +++ b/tests/mri/fmriprep/scripts/mock/step_2_run_test.sh @@ -0,0 +1,4 @@ + +PYTHON_BIN="${PYTHON_BIN:-python}" + +"${PYTHON_BIN}" -m pytest ./tests/mri/fmriprep/test_fmriprep_mock.py diff --git a/tests/mri/fmriprep/scripts/real/.gitignore b/tests/mri/fmriprep/scripts/real/.gitignore new file mode 100644 index 00000000..df3f2f58 --- /dev/null +++ b/tests/mri/fmriprep/scripts/real/.gitignore @@ -0,0 +1 @@ +_fs_env.sh \ No newline at end of file diff --git a/tests/mri/fmriprep/scripts/real/_fs_env.sh.example b/tests/mri/fmriprep/scripts/real/_fs_env.sh.example new file mode 100644 index 00000000..b8f92900 --- /dev/null +++ b/tests/mri/fmriprep/scripts/real/_fs_env.sh.example @@ -0,0 +1,4 @@ +#!/bin/sh + +export FREESURFER_HOME="/path/to/freesurfer" +export FS_LICENSE="/path/to/license.txt" diff --git a/tests/mri/fmriprep/scripts/real/step_1_download.sh b/tests/mri/fmriprep/scripts/real/step_1_download.sh new file mode 100644 index 00000000..e7fab349 --- /dev/null +++ b/tests/mri/fmriprep/scripts/real/step_1_download.sh @@ -0,0 +1,28 @@ +#!/bin/bash +set -euo pipefail + +data_root="./tests/data/mri" +dataset_name="ds006319" +dataset_dir="${data_root}/${dataset_name}" + +mkdir -p "${data_root}" +cd "${data_root}" + +if [ ! -d "${dataset_name}/.git" ]; then + datalad install "https://github.com/OpenNeuroDatasets/${dataset_name}.git" +fi + +cd "${dataset_name}" + +# Materialize the exact tree consumed by the FreeSurfer/fMRIPrep helper scripts. +datalad get -r \ + dataset_description.json \ + participants.tsv \ + participants.json \ + README \ + CHANGES \ + sub-S1/ses-SoundTest01 \ + sub-S1/ses-SoundTest02 \ + sub-S1/ses-anatomy + +echo "Download completed for ${dataset_dir}" diff --git a/tests/mri/fmriprep/scripts/real/step_2_run_freesurfer.sh b/tests/mri/fmriprep/scripts/real/step_2_run_freesurfer.sh new file mode 100644 index 00000000..1bd42e12 --- /dev/null +++ b/tests/mri/fmriprep/scripts/real/step_2_run_freesurfer.sh @@ -0,0 +1,42 @@ +#!/bin/bash +set -euo pipefail + +script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" + +if [ -f "${script_dir}/_fs_env.sh" ]; then + # Optional local-only overrides for machine-specific FreeSurfer paths. + source "${script_dir}/_fs_env.sh" +fi + +BIDS_DIR="${BIDS_DIR:-./tests/data/mri/ds006319}" +FS_OUTPUT_DIR="${FS_OUTPUT_DIR:-${BIDS_DIR}/derivatives/freesurfer}" +OMP_NUM_THREADS="${OMP_NUM_THREADS:-32}" + +[ -n "${FREESURFER_HOME}" ] || { echo "Set FREESURFER_HOME before running this script."; exit 1; } +[ -d "${FREESURFER_HOME}" ] || { echo "FREESURFER_HOME not found: ${FREESURFER_HOME}"; exit 1; } + +export SUBJECTS_DIR="${FS_OUTPUT_DIR}" +export FUNCTIONALS_DIR="${FUNCTIONALS_DIR:-${FREESURFER_HOME}/sessions}" +export NO_FSFAST=1 +export OMP_NUM_THREADS +export FS_OMP_NUM_THREADS="${OMP_NUM_THREADS}" +export ITK_GLOBAL_DEFAULT_NUMBER_OF_THREADS="${OMP_NUM_THREADS}" + +# FreeSurfer's setup script dereferences some unset variables. +set +u +source "${FREESURFER_HOME}/SetUpFreeSurfer.sh" +set -u + +t1w_file="${BIDS_DIR}/sub-S1/ses-anatomy/anat/sub-S1_ses-anatomy_T1w.nii.gz" +[ -f "${t1w_file}" ] || { echo "T1w file not found: ${t1w_file}"; exit 1; } + +mkdir -p "${FS_OUTPUT_DIR}" +echo "Running recon-all for sub-S1 with ${OMP_NUM_THREADS} threads" + +recon-all \ + -i "${t1w_file}" \ + -s sub-S1 \ + -all \ + -sd "${FS_OUTPUT_DIR}" \ + -openmp "${OMP_NUM_THREADS}" \ + -parallel diff --git a/tests/mri/fmriprep/scripts/real/step_3_run_fmriprep.sh b/tests/mri/fmriprep/scripts/real/step_3_run_fmriprep.sh new file mode 100644 index 00000000..cd28b682 --- /dev/null +++ b/tests/mri/fmriprep/scripts/real/step_3_run_fmriprep.sh @@ -0,0 +1,146 @@ +#!/bin/bash +set -euo pipefail + +script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" + +if [ -f "${script_dir}/_fs_env.sh" ]; then + # Optional local-only overrides for machine-specific FreeSurfer paths. + source "${script_dir}/_fs_env.sh" +fi + +echo "Running fMRIPrep" + +docker_image="poldracklab/fmriprep:1.2.1" + +input_dir="${BIDS_DIR:-./tests/data/mri/ds006319}" +output_dir="${input_dir}/derivatives/fmriprep" +fs_subjects_dir="${FS_OUTPUT_DIR:-${input_dir}/derivatives/freesurfer}" + +participant_label="S1" +fs_subject="sub-${participant_label}" + +target_sessions=( + "ses-SoundTest01" + "ses-SoundTest02" +) + +anat_session="ses-anatomy" + +nthreads=32 +omp_nthreads=8 + +FS_LICENSE="${FS_LICENSE:-}" +[ -n "${FS_LICENSE}" ] || { echo "Set FS_LICENSE before running this script."; exit 1; } + +uid="$(id -u)" +gid="$(id -g)" + +tmp_root="${output_dir}/tmp" +work_dir="${tmp_root}/work" +subset_dir="${tmp_root}/bids_subset" + +check_broken_symlinks() { + local src="$1" + local broken + + broken="$(find -L "${src}" -type l -print)" + if [ -n "${broken}" ]; then + echo "ERROR: unresolved symlinks detected under ${src}" + printf '%s\n' "${broken}" + echo "This usually means the dataset is only partially materialized." + echo "Run datalad get for the paths above, then rerun this script." + exit 1 + fi +} + +copy_with_rsync() { + local src="$1" + local dest="$2" + + check_broken_symlinks "${src}" + if ! rsync -aL "${src}" "${dest}"; then + echo "ERROR: rsync failed while copying ${src} -> ${dest}" + echo "If the previous rsync output mentions missing files, rerun datalad get on that source path." + exit 1 + fi +} + +[ -f "${FS_LICENSE}" ] || { echo "FS license not found: ${FS_LICENSE}"; exit 1; } +[ -d "${input_dir}" ] || { echo "BIDS input_dir not found: ${input_dir}"; exit 1; } +[ -f "${input_dir}/dataset_description.json" ] || { + echo "dataset_description.json not found in ${input_dir}" + exit 1 +} +[ -d "${fs_subjects_dir}/${fs_subject}" ] || { + echo "FreeSurfer subject not found: ${fs_subjects_dir}/${fs_subject}" + exit 1 +} + +for ses in "${target_sessions[@]}"; do + [ -d "${input_dir}/sub-${participant_label}/${ses}" ] || { + echo "Session not found: ${input_dir}/sub-${participant_label}/${ses}" + exit 1 + } +done + +[ -d "${input_dir}/sub-${participant_label}/${anat_session}" ] || { + echo "Anatomy session not found: ${input_dir}/sub-${participant_label}/${anat_session}" + exit 1 +} + +echo "All sanity checks passed. Proceeding with BIDS subset preparation..." + +mkdir -p "${output_dir}" +rm -rf "${subset_dir}" "${work_dir}" +mkdir -p "${subset_dir}/sub-${participant_label}" "${work_dir}" + +cp -f "${input_dir}/dataset_description.json" "${subset_dir}/" + +for f in participants.tsv participants.json README CHANGES scans.json; do + if [ -e "${input_dir}/${f}" ]; then + copy_with_rsync "${input_dir}/${f}" "${subset_dir}/" + fi +done + +for ses in "${target_sessions[@]}"; do + copy_with_rsync "${input_dir}/sub-${participant_label}/${ses}" "${subset_dir}/sub-${participant_label}/" +done + +copy_with_rsync "${input_dir}/sub-${participant_label}/${anat_session}" "${subset_dir}/sub-${participant_label}/" + +# Fail fast if any symlink remains in the subset +if find "${subset_dir}" -type l | grep -q .; then + echo "ERROR: symlinks remain in ${subset_dir}" + find "${subset_dir}" -type l + exit 1 +fi + +mkdir -p "${output_dir}/freesurfer" + +# Always sync FS subject to avoid stale partial copies +rsync -a "${fs_subjects_dir}/${fs_subject}/" "${output_dir}/freesurfer/${fs_subject}/" + +if [ ! -f "${output_dir}/freesurfer/${fs_subject}/mri/aseg.presurf.mgz" ] && \ + [ -f "${output_dir}/freesurfer/${fs_subject}/mri/aseg.auto.mgz" ]; then + cp -f "${output_dir}/freesurfer/${fs_subject}/mri/aseg.auto.mgz" \ + "${output_dir}/freesurfer/${fs_subject}/mri/aseg.presurf.mgz" +fi + +docker run --rm \ + -u "${uid}:${gid}" \ + -v "${subset_dir}:/data:ro" \ + -v "${output_dir}:/out" \ + -v "${work_dir}:/work" \ + -v "${FS_LICENSE}:/opt/freesurfer/license.txt:ro" \ + "${docker_image}" \ + /data /out participant \ + --participant-label "${participant_label}" \ + --fs-license-file /opt/freesurfer/license.txt \ + -w /work \ + --nthreads "${nthreads}" \ + --omp-nthreads "${omp_nthreads}" \ + --output-space T1w template fsnative fsaverage fsaverage5 fsaverage6 + +echo "----------------------------------------" +echo "Preprocessing with fMRIPrep: completed" +echo "----------------------------------------" diff --git a/tests/mri/fmriprep/scripts/real/step_4_prepare_gm.sh b/tests/mri/fmriprep/scripts/real/step_4_prepare_gm.sh new file mode 100644 index 00000000..bd41ab77 --- /dev/null +++ b/tests/mri/fmriprep/scripts/real/step_4_prepare_gm.sh @@ -0,0 +1,12 @@ +PYTHON_BIN="${PYTHON_BIN:-python}" + +real_gm_h5_path=./tests/data/mri/golden_master/real/test_output_fmriprep_real_exclude.h5 + +if [ -f "${real_gm_h5_path}" ]; then + echo "Real-data golden master file already exists: ${real_gm_h5_path}" + echo "Skipping GM creation step. If you want to recreate the GM, please delete the existing file and run this script again." + exit 0 +fi + +echo "Missing golden master file: ${real_gm_h5_path}" +TEST_FMRIPREP_CREATE_GOLDEN_MASTER=1 "${PYTHON_BIN}" -m pytest ./tests/mri/fmriprep/test_fmriprep_real.py diff --git a/tests/mri/fmriprep/scripts/real/step_5_run_test.sh b/tests/mri/fmriprep/scripts/real/step_5_run_test.sh new file mode 100644 index 00000000..3e06040d --- /dev/null +++ b/tests/mri/fmriprep/scripts/real/step_5_run_test.sh @@ -0,0 +1,4 @@ + +PYTHON_BIN="${PYTHON_BIN:-python}" + +"${PYTHON_BIN}" -m pytest ./tests/mri/fmriprep/test_fmriprep_real.py diff --git a/tests/mri/fmriprep/test_fmriprep_mock.py b/tests/mri/fmriprep/test_fmriprep_mock.py new file mode 100644 index 00000000..98af1c39 --- /dev/null +++ b/tests/mri/fmriprep/test_fmriprep_mock.py @@ -0,0 +1,681 @@ +"""Mock-data tests for bdpy.mri.fmriprep (fmriprep version 1.2).""" + +from __future__ import annotations + +import itertools +import unittest +from pathlib import Path +from typing import Optional +import tempfile +import os + +import nibabel as nib +import numpy as np +from nipy.io.nifti_ref import NiftiError +from nibabel.gifti import GiftiDataArray, GiftiImage + +import bdpy +from .test_fmriprep_utils_mock import ( + MockBidsBuilder, + build_expected_bdata_after_exclude, +) +from .test_fmriprep_utils import ( + CREATE_GOLDEN_MASTER, + _get_private, + fmriprep, +) + +DATA_BUILDER = MockBidsBuilder() +DATA_BUILDER.build() + + +class MockDatasetMixin(unittest.TestCase): + """Mixin providing access to the shared mock dataset.""" + + @classmethod + def setUpClass(cls) -> None: + """Set up the mock dataset for tests.""" + cls.data_root = DATA_BUILDER.root + cls.subject = DATA_BUILDER.subject + cls.label_mapper = {"stimulus_name": str(DATA_BUILDER.label_mapper_path)} if DATA_BUILDER.label_mapper_path is not None else None + return super().setUpClass() + + +# ----------------------------------------------------------------------------- +# Mock tests (default) +# ----------------------------------------------------------------------------- + + +class TestFmriprepDataMock(MockDatasetMixin): + """Tests for parsing mock fMRIPrep dataset structure.""" + + def test_fmriprep_private_variables(self) -> None: + """Verify internal configuration fields are initialized.""" + instance = fmriprep.FmriprepData(self.data_root.as_posix()) + self.assertEqual(instance._FmriprepData__datapath, self.data_root.as_posix()) + self.assertEqual(instance._FmriprepData__fmriprep_dir, "derivatives/fmriprep") + self.assertEqual(instance._FmriprepData__fmriprep_version, "1.2") + + def test_fmriprep_get_subjects(self) -> None: + """Verify subject discovery returns the mock subject.""" + instance = fmriprep.FmriprepData(self.data_root.as_posix()) + prepdir = (self.data_root / "derivatives" / "fmriprep" / "fmriprep").as_posix() + subjects = instance._FmriprepData__get_subjects(prepdir) + self.assertEqual(subjects, [self.subject]) + + def test_fmriprep_get_sessions(self) -> None: + """Verify session discovery returns the expected sessions.""" + instance = fmriprep.FmriprepData(self.data_root.as_posix()) + prepdir = (self.data_root / "derivatives" / "fmriprep" / "fmriprep").as_posix() + sessions = instance._FmriprepData__get_sessions(prepdir, self.subject) + self.assertEqual(sessions, ["ses-01", "ses-02", "ses-anat"]) + + def test_fmriprep_parse_session(self) -> None: + """Verify parsing a session yields the expected runs.""" + prepdir = (self.data_root / "derivatives" / "fmriprep" / "fmriprep").as_posix() + instance = fmriprep.FmriprepData(self.data_root.as_posix()) + runs = instance._FmriprepData__parse_session(prepdir, self.subject, "ses-01") + self.assertEqual(runs, DATA_BUILDER.expected_runs["ses-01"]) + + def test_fmriprep_parse_data(self) -> None: + """Verify full dataset parsing matches the mock fixture.""" + instance = fmriprep.FmriprepData(self.data_root.as_posix()) + instance._FmriprepData__parse_data() + self.assertEqual(instance._FmriprepData__data, DATA_BUILDER.expected_subject_data) + + def test_fmriprep_get_task_event_files(self) -> None: + """Verify task event and JSON sidecars are attached to runs.""" + instance = fmriprep.FmriprepData(self.data_root.as_posix()) + instance._FmriprepData__get_task_event_files() + for runs in instance.data[self.subject].values(): + for run in runs: + self.assertIn("task_event_file", run) + self.assertIn("bold_json", run) + self.assertTrue((self.data_root / run["task_event_file"]).exists()) + self.assertTrue((self.data_root / run["bold_json"]).exists()) + +class TestFmriprepDataFailures(unittest.TestCase): + """Failure-path tests for invalid mock dataset inputs.""" + + def setUp(self) -> None: + """Build an isolated mock dataset for failure scenarios.""" + self.builder = MockBidsBuilder() + self.builder.build() + self.label_mapper = {"stimulus_name": str(self.builder.label_mapper_path)} if self.builder.label_mapper_path is not None else None + self.addCleanup(self.builder.cleanup) + + def test_missing_event_file_raises(self) -> None: + """Raise when a task event file is missing.""" + event_path = Path(next(iter(self.builder.events_map.keys()))) + event_path.unlink() + with self.assertRaisesRegex(RuntimeError, "task event files"): + fmriprep.FmriprepData(self.builder.root.as_posix()) + + def test_missing_bold_json_raises(self) -> None: + """Raise when a BOLD JSON sidecar is missing.""" + bold_path = Path(next(iter(self.builder.bold_json_map.keys()))) + bold_path.unlink() + with self.assertRaisesRegex(RuntimeError, "bold parameter json"): + fmriprep.FmriprepData(self.builder.root.as_posix()) + + def test_missing_confounds_file_raises(self) -> None: + """Raise when a confounds file is missing.""" + conf_path = Path(next(iter(self.builder.confounds_map.keys()))) + conf_path.unlink() + with self.assertRaises(TypeError): + fmriprep.create_bdata_fmriprep( + dpath=self.builder.root.as_posix(), + data_mode="volume_native", + fmriprep_dir="derivatives/fmriprep", + label_mapper=self.label_mapper, + with_confounds=True, + ) + + def test_confounds_missing_motion_columns_raise(self) -> None: + """Raise when required motion columns are absent.""" + conf_path = Path(next(iter(self.builder.confounds_map.keys()))) + conf_df = self.builder.confounds_map[str(conf_path)].drop(columns=["RotZ"]) + conf_df.to_csv(conf_path, sep="\t", index=False) + with self.assertRaisesRegex(RuntimeError, "Invalid confounds file"): + fmriprep.create_bdata_fmriprep( + dpath=self.builder.root.as_posix(), + data_mode="volume_native", + fmriprep_dir="derivatives/fmriprep", + label_mapper=self.label_mapper, + with_confounds=True, + ) + + def test_unknown_label_in_events_propagates_error(self) -> None: + """Propagate label-mapper errors from event contents.""" + event_path = Path(next(iter(self.builder.events_map.keys()))) + events_df = self.builder.events_map[str(event_path)].copy() + events_df.loc[0, "stimulus_name"] = "unknown_label" + events_df.to_csv(event_path, sep="\t", index=False) + with self.assertRaises(KeyError): + fmriprep.create_bdata_fmriprep( + dpath=self.builder.root.as_posix(), + data_mode="volume_native", + fmriprep_dir="derivatives/fmriprep", + label_mapper=self.label_mapper, + with_confounds=False, + ) + +class TestCreateBdataFmriprepMock(MockDatasetMixin): + """Tests for creating BData objects from mock inputs.""" + + def setUp(self) -> None: + """Prepare the metadata keys compared in golden-master tests.""" + self.check_keys = [ + "VoxelData", + "Session", + "Run", + "Block", + "Label", + "MotionParameter", + "MotionParameter_trans_x", + "MotionParameter_trans_y", + "MotionParameter_trans_z", + "MotionParameter_rot_x", + "MotionParameter_rot_y", + "MotionParameter_rot_z", + "Confounds", + "GlobalSignal", + "WhiteMatterSignal", + "CSFSignal", + "DVARS", + "STD_DVARS", + "FramewiseDisplacement", + "aCompCor", + "aCompCor_0", + "aCompCor_1", + "aCompCor_2", + "aCompCor_3", + "aCompCor_4", + "aCompCor_5", + "tCompCor", + "tCompCor_0", + "tCompCor_1", + "tCompCor_2", + "tCompCor_3", + "tCompCor_4", + "tCompCor_5", + "Cosine", + "Cosine_0", + "Cosine_1", + "Cosine_2", + "Cosine_3", + "Cosine_4", + "Cosine_5", + "trial_type", + "stimulus_name", + "category_index", + "image_index", + "response_time", + "original_run_number", + "voxel_x", + "voxel_y", + "voxel_z", + "voxel_i", + "voxel_j", + "voxel_k", + ] + + def _num_voxels(self) -> int: + """Return the voxel count in the mock volume.""" + return int(np.prod(DATA_BUILDER.voxel_shape)) + + # helper to build expected BData after applying exclude + def _expected_after_exclude(self, exclude: Optional[dict] = None) -> bdpy.BData: + """Build the expected BData after applying exclusions.""" + return build_expected_bdata_after_exclude( + DATA_BUILDER, {"stimulus_name": {"face": 1, "scene": 2}}, exclude=exclude + ) + + # helper to get expected sample count after applying exclude + def _expected_sample_count(self, exclude: Optional[dict] = None) -> int: + """Return the expected sample count after exclusions.""" + return int(self._expected_after_exclude(exclude).get("VoxelData").shape[0]) + + def test_create_bdata_fmriprep_gm(self) -> None: + """Match the generated mock BData against the golden master.""" + ''' + CAUTION: + This test uses golden master files. + If you need to add some new test cases, please generate new golden master files + ''' + save_path = "./tests/data/mri/golden_master/mock/test_output_fmriprep_subject.h5" + # ------------------------------------------------------------- + # FOR GOLDEN MASTER UPDATE ONLY: + if CREATE_GOLDEN_MASTER: + expected_bdata = self._expected_after_exclude() + os.makedirs(os.path.dirname(save_path), exist_ok=True) + expected_bdata.save(save_path) + # ------------------------------------------------------------- + + expected_bdata = bdpy.BData(str(save_path)) + bdata_list, data_labels_list = fmriprep.create_bdata_fmriprep( + dpath=self.data_root.as_posix(), + data_mode="volume_native", + fmriprep_dir="derivatives/fmriprep", + label_mapper=self.label_mapper, + split_task_label=False, + with_confounds=True, + return_data_labels=True, + return_list=True, + ) + self.assertEqual(data_labels_list, [self.subject]) + self.assertEqual(len(bdata_list), 1) + brain_data = bdata_list[0] + for key in self.check_keys: + np.testing.assert_array_equal(brain_data.get(key), expected_bdata.get(key)) + + def test_create_bdata_fmriprep_exclude_gm(self) -> None: + """Match excluded mock BData against the golden master.""" + ''' + CAUTION: + This test uses golden master files. + If you need to add some new test cases, please generate new golden master files + ''' + + exclude_list = [{"subject": ["sub-4649"], "session/run": [[1, 2], None]}] + for exclude in exclude_list: + save_path = "./tests/data/mri/golden_master/mock/test_output_fmriprep_subject_exclude.h5" + # ------------------------------------------------------------- + # FOR GOLDEN MASTER UPDATE ONLY: + if CREATE_GOLDEN_MASTER: + expected_bdata = self._expected_after_exclude(exclude) + + os.makedirs(os.path.dirname(save_path), exist_ok=True) + expected_bdata.save(save_path) + # ------------------------------------------------------------- + + expected_bdata = bdpy.BData(str(save_path)) + bdata_list, data_labels_list = fmriprep.create_bdata_fmriprep( + dpath=self.data_root.as_posix(), + data_mode="volume_native", + fmriprep_dir="derivatives/fmriprep", + label_mapper=self.label_mapper, + exclude=exclude, + split_task_label=False, + with_confounds=True, + return_data_labels=True, + return_list=True, + ) + self.assertEqual(data_labels_list, [self.subject]) + self.assertEqual(len(bdata_list), 1) + brain_data = bdata_list[0] + for key in self.check_keys: + np.testing.assert_array_equal(brain_data.get(key), expected_bdata.get(key)) + + + def test_create_bdata_fmriprep_surface_native(self) -> None: + """Create native-surface data with the expected shape.""" + exclude = {"session/run": [[1, 2], None]} + bdata_list, _ = fmriprep.create_bdata_fmriprep( + dpath=self.data_root.as_posix(), + data_mode="surface_native", + fmriprep_dir="derivatives/fmriprep", + label_mapper=self.label_mapper, + exclude=exclude, + split_task_label=False, + with_confounds=False, + return_data_labels=True, + return_list=True, + ) + brain_data = bdata_list[0] + self.assertEqual( + brain_data.get("VertexData").shape, + (self._expected_sample_count(exclude), 8), + ) + + def test_create_bdata_surface_resolution_variants(self) -> None: + """Create standard-surface variants with the expected shape.""" + exclude = {"session/run": [[1, 2], None]} + for mode in ["surface_standard", "surface_standard_41k", "surface_standard_10k"]: + with self.subTest(mode=mode): + bdata_list, _ = fmriprep.create_bdata_fmriprep( + dpath=self.data_root.as_posix(), + data_mode=mode, + fmriprep_dir="derivatives/fmriprep", + label_mapper=self.label_mapper, + exclude=exclude, + split_task_label=False, + with_confounds=False, + return_data_labels=True, + return_list=True, + ) + self.assertEqual( + bdata_list[0].get("VertexData").shape, + (self._expected_sample_count(exclude), 8), + ) + + def test_create_bdata_fmriprep_exclude_subject_removes_all(self) -> None: + """Return no outputs when the only subject is excluded.""" + bdata_list, data_labels_list = fmriprep.create_bdata_fmriprep( + dpath=self.data_root.as_posix(), + data_mode="volume_native", + fmriprep_dir="derivatives/fmriprep", + label_mapper=self.label_mapper, + exclude={"subject": [self.subject]}, + split_task_label=False, + with_confounds=False, + return_data_labels=True, + return_list=True, + ) + self.assertEqual(bdata_list, []) + self.assertEqual(data_labels_list, []) + +class TestBrainDataMock(unittest.TestCase): + """Tests for BrainData helpers using mock files.""" + + @classmethod + def setUpClass(cls) -> None: + """Capture shared surface paths from the mock dataset.""" + cls.data_root = DATA_BUILDER.root + cls.surface_run = DATA_BUILDER.expected_runs["ses-01"][0]["surface_native"] + return super().setUpClass() + + def _write_gifti(self, path: Path, arrays: list[np.ndarray]) -> None: + """Write a temporary GIFTI file from array payloads.""" + darrays = [GiftiDataArray(arr.astype(np.float32)) for arr in arrays] + img = GiftiImage(darrays=darrays) + nib.save(img, path) + + def test_load_surface_from_gifti_pairs(self) -> None: + """Load paired GIFTI hemispheres into a single surface matrix.""" + left_path = self.data_root / self.surface_run[0] + right_path = self.data_root / self.surface_run[1] + left_img = nib.load(left_path) + right_img = nib.load(right_path) + brain = fmriprep.BrainData((left_path.as_posix(), right_path.as_posix()), dtype="surface") + expected_left = np.vstack([da.data for da in left_img.darrays]) + expected_right = np.vstack([da.data for da in right_img.darrays]) + expected = np.hstack([expected_left, expected_right]) + np.testing.assert_array_equal(brain.data, expected) + self.assertEqual(brain.index.shape, (1, expected.shape[1])) + self.assertEqual(brain.n_vertex, (expected_left.shape[1], expected_right.shape[1])) + with self.assertRaises(NotImplementedError): + _ = brain.xyz + + def test_load_surface_missing_hemi_raises(self) -> None: + """Raise when one hemisphere file is missing.""" + left_path = self.data_root / self.surface_run[0] + missing_right = self.data_root / "missing_right.func.gii" + with self.assertRaises(FileNotFoundError): + fmriprep.BrainData((left_path.as_posix(), missing_right.as_posix()), dtype="surface") + + def test_load_surface_empty_darrays(self) -> None: + """Raise when both hemisphere files contain no data arrays.""" + with tempfile.TemporaryDirectory() as tmpdir: + left_path = Path(tmpdir) / "lh_empty.func.gii" + right_path = Path(tmpdir) / "rh_empty.func.gii" + self._write_gifti(left_path, []) + self._write_gifti(right_path, []) + with self.assertRaises(ValueError): + fmriprep.BrainData((left_path.as_posix(), right_path.as_posix()), dtype="surface") + + def test_load_surface_vertex_mismatch(self) -> None: + """Allow mismatched hemisphere vertex counts and concatenate data.""" + with tempfile.TemporaryDirectory() as tmpdir: + left_path = Path(tmpdir) / "lh.func.gii" + right_path = Path(tmpdir) / "rh.func.gii" + self._write_gifti(left_path, [np.array([1.0, 2.0])]) + self._write_gifti(right_path, [np.array([5.0, 6.0, 7.0, 8.0])]) + brain = fmriprep.BrainData((left_path.as_posix(), right_path.as_posix()), dtype="surface") + self.assertEqual(brain.data.shape, (1, 6)) + self.assertEqual(brain.n_vertex, (2, 4)) + + def test_unknown_dtype_raises_value_error(self) -> None: + """Raise on unsupported BrainData dtype values.""" + with self.assertRaises(ValueError): + fmriprep.BrainData("dummy.nii.gz", dtype="unsupported") + +class TestLabelMapperMock(unittest.TestCase): + """Tests for mock label-mapper behavior.""" + + def test_get_value_returns_expected_numeric_mapping(self) -> None: + """Map a known label to the expected numeric code.""" + mapper = fmriprep.LabelMapper({"stimulus_name": {"face": 1, "scene": 2}}) + self.assertEqual(mapper.get_value("stimulus_name", "face"), 1) + self.assertTrue(np.isnan(mapper.get_value("stimulus_name", "n/a"))) + + def test_get_value_returns_existing_value_for_duplicate_mapping(self) -> None: + """Allow duplicate labels to resolve to the shared numeric value.""" + mapper = fmriprep.LabelMapper({"stimulus_name": {"face": 1, "scene": 1}}) + self.assertEqual(mapper.get_value("stimulus_name", "face"), 1) + self.assertEqual(mapper.get_value("stimulus_name", "scene"), 1) + + def test_get_value_raises_on_missing_key(self) -> None: + """Raise when querying an unmapped metadata key.""" + mapper = fmriprep.LabelMapper({"stimulus_name": {"face": 1}}) + with self.assertRaises(RuntimeError): + mapper.get_value("condition_name", "face") + +class TestCreateBdataFmriprepSubjectMock(MockDatasetMixin): + """Tests for single-subject mock BData creation.""" + + def _num_voxels(self) -> int: + """Return the voxel count in the mock volume.""" + return int(np.prod(DATA_BUILDER.voxel_shape)) + + def _prepare_confounds_with_nan(self, confounds_path: Path) -> None: + """Inject NaNs and an extra column into a confounds file.""" + conf_df = DATA_BUILDER.confounds_map[str(confounds_path)].copy() + conf_df["framewise_displacement"] = np.nan + conf_df["cosine_extra"] = np.arange(len(conf_df)) + conf_df.to_csv(confounds_path, sep="\t", index=False) + + def test_confounds_with_nan_and_extra_columns(self) -> None: + """Preserve NaNs and tolerate extra confounds columns.""" + confounds_path = self.data_root / DATA_BUILDER.expected_runs["ses-01"][0]["confounds"] + self._prepare_confounds_with_nan(confounds_path) + fmriprep_data = fmriprep.FmriprepData(self.data_root.as_posix()) + subject_data = fmriprep_data.data[self.subject] + brain_data = _get_private("create_bdata_fmriprep_subject")( + subject_data=subject_data, + data_path=self.data_root.as_posix(), + data_mode="volume_native", + label_mapper={"stimulus_name": {"face": 1, "scene": 2}}, + with_confounds=True, + ) + confounds = brain_data.get("Confounds") + self.assertEqual(confounds.shape[0], brain_data.get("VoxelData").shape[0]) + self.assertTrue(np.isnan(confounds).any()) + + def test_create_bdata_fmriprep_subject(self) -> None: + """Create single-subject BData with expected core matrices.""" + fmriprep_data = fmriprep.FmriprepData(self.data_root.as_posix()) + subject_data = fmriprep_data.data[self.subject] + brain_data = _get_private("create_bdata_fmriprep_subject")( + subject_data=subject_data, + data_path=self.data_root.as_posix(), + data_mode="volume_native", + label_mapper={"stimulus_name": {"face": 1, "scene": 2}}, + with_confounds=True, + ) + self.assertEqual(brain_data.get("VoxelData").shape[1], self._num_voxels()) + self.assertEqual(brain_data.get("Session").shape[1], 1) + self.assertEqual(brain_data.get("Run").shape[1], 1) + self.assertEqual(brain_data.get("Block").shape[1], 1) + np.testing.assert_array_equal(brain_data.get("stimulus_name")[:, 0], brain_data.get("Label")[:, 1]) + + def test_create_bdata_singlesubject(self) -> None: + """Create a single-subject BData via the public helper.""" + fmriprep_data = fmriprep.FmriprepData(self.data_root.as_posix()) + subject_data = fmriprep_data.data[self.subject] + brain_data = fmriprep.create_bdata_singlesubject( + subject_data=subject_data, + data_path=self.data_root.as_posix(), + data_mode="volume_native", + label_mapper={"stimulus_name": {"face": 1, "scene": 2}}, + with_confounds=True, + ) + self.assertEqual(brain_data.get("VoxelData").shape[1], self._num_voxels()) + self.assertEqual(brain_data.get("Confounds").shape[0], brain_data.get("VoxelData").shape[0]) + +class TestCutRunMock(unittest.TestCase): + """Tests for run truncation behavior with mock event files.""" + + def setUp(self) -> None: + """Create a one-run dataset with an overlong final event.""" + builder = MockBidsBuilder() + builder.sessions = ("ses-01",) + builder.run_numbers = (1,) + builder.build() + events_path = next(iter(builder.events_map.keys())) + events_df = builder.events_map[events_path].copy() + events_df.loc[events_df.index[-1], "duration"] = events_df.loc[events_df.index[-1], "duration"] + 1 + events_df.to_csv(events_path, sep="\t", index=False) + builder.events_map[events_path] = events_df + self.builder = builder + self.data_root = builder.root + self.subject = builder.subject + + def tearDown(self) -> None: + """Clean up the temporary mock dataset.""" + self.builder.cleanup() + + def test_cut_run_false_raises(self) -> None: + """Raise when event timing exceeds volumes and cut_run is disabled.""" + fmriprep_data = fmriprep.FmriprepData(self.data_root.as_posix()) + subject_data = fmriprep_data.data[self.subject] + with self.assertRaises(ValueError): + _get_private("create_bdata_fmriprep_subject")( + subject_data=subject_data, + data_path=self.data_root.as_posix(), + data_mode="volume_native", + label_mapper={"stimulus_name": {"face": 1, "scene": 2}}, + with_confounds=False, + cut_run=False, + ) + + def test_cut_run_true_truncates(self) -> None: + """Truncate samples when event timing exceeds available volumes.""" + fmriprep_data = fmriprep.FmriprepData(self.data_root.as_posix()) + subject_data = fmriprep_data.data[self.subject] + brain_data = _get_private("create_bdata_fmriprep_subject")( + subject_data=subject_data, + data_path=self.data_root.as_posix(), + data_mode="volume_native", + label_mapper={"stimulus_name": {"face": 1, "scene": 2}}, + with_confounds=False, + cut_run=True, + ) + expected_samples = int(next(iter(self.builder.data_map.values())).shape[-1]) + self.assertEqual(brain_data.get("VoxelData").shape[0], expected_samples) + self.assertEqual(brain_data.get("Block").shape[0], expected_samples) + self.assertEqual(brain_data.get("Label").shape[0], expected_samples) + +class TestGetXyzMock(unittest.TestCase): + """Tests for voxel-coordinate extraction helpers.""" + + def setUp(self) -> None: + """Patch xrange compatibility for the private helper.""" + self._get_xyz = _get_private("get_xyz") + self._had_xrange = hasattr(fmriprep, "xrange") + self._original_xrange = fmriprep.xrange if self._had_xrange else None + fmriprep.xrange = range + + def tearDown(self) -> None: + """Restore the original xrange compatibility hook.""" + if not self._had_xrange: + fmriprep.__dict__.pop("xrange", None) + else: + fmriprep.xrange = self._original_xrange + + def test_get_xyz_with_4d_image(self) -> None: + """Compute XYZ coordinates correctly for 4D-like images.""" + affine_5d = np.eye(5) + + class FakeCoordMap: + affine = affine_5d + + class FakeImage: + shape = (2, 2, 1, 2) + coordmap = FakeCoordMap() + + xyz = self._get_xyz(FakeImage()) + affine = np.delete(np.delete(affine_5d, 3, axis=0), 3, axis=1) + expected_columns = [] + for i, j, k in itertools.product(range(2), range(2), range(1)): + vec = np.array([i, j, k, 1.0]) + expected_columns.append(affine @ vec) # type: ignore[operator] + expected = np.column_stack(expected_columns)[:3] + np.testing.assert_allclose(xyz, expected) + + def test_get_xyz_with_3d_image(self) -> None: + """Compute XYZ coordinates correctly for 3D images.""" + affine = np.array([[1.0, 0.0, 0.0, 5.0], [0.0, 2.0, 0.0, 6.0], [0.0, 0.0, 3.0, 7.0], [0.0, 0.0, 0.0, 1.0]]) + + class FakeCoordMap: + def __init__(self, mat: np.ndarray) -> None: + self.affine = mat + + class FakeImage: + shape = (2, 1, 2) + + def __init__(self, mat: np.ndarray) -> None: + self.coordmap = FakeCoordMap(mat) + + xyz = self._get_xyz(FakeImage(affine)) + expected_columns = [] + for i, j, k in itertools.product(range(2), range(1), range(2)): + vec = np.array([i, j, k, 1.0]) + expected_columns.append(affine @ vec) # type: ignore[operator] + expected = np.column_stack(expected_columns)[:3] + np.testing.assert_allclose(xyz, expected) + +class TestLoadMriMock(unittest.TestCase): + """Tests for loading MRI volumes from mock files.""" + + def setUp(self) -> None: + """Expose the private MRI loading helper.""" + self._load_mri = _get_private("load_mri") + + def test_load_mri_from_4d_image(self) -> None: + """Load 4D MRI data into flattened sample-by-voxel form.""" + run = DATA_BUILDER.expected_runs["ses-01"][0] + path = (DATA_BUILDER.root / run["volume_native"]).as_posix() + data = DATA_BUILDER.data_map[str(DATA_BUILDER.root / run["volume_native"])] + loaded_data, xyz, ijk = self._load_mri(path) + expected_data = data.reshape(-1, data.shape[-1], order="F").T + np.testing.assert_allclose(loaded_data, expected_data) + ijk_expected = np.array(np.unravel_index(np.arange(np.prod(data.shape[:3])), data.shape[:3], order="F")) + affine = np.eye(4) + xyz_expected = (affine @ np.vstack([ijk_expected, np.ones((1, ijk_expected.shape[1]))]))[:-1] + np.testing.assert_allclose(xyz, xyz_expected) + np.testing.assert_array_equal(ijk, ijk_expected) + + def test_load_mri_from_3d_image(self) -> None: + """Load 3D MRI data and preserve voxel coordinates.""" + affine = np.array( + [ + [1.0, 0.0, 0.0, 5.0], + [0.0, 2.0, 0.0, 6.0], + [0.0, 0.0, 3.0, 7.0], + [0.0, 0.0, 0.0, 1.0], + ] + ) + data = np.arange(8, dtype=float).reshape(2, 2, 2) + with tempfile.TemporaryDirectory() as tmpdir: + path = Path(tmpdir) / "image.nii.gz" + nib.save(nib.Nifti1Image(data, affine), path) + loaded_data, xyz, ijk = self._load_mri(path.as_posix()) + expected_data = data.flatten(order="F") + np.testing.assert_allclose(loaded_data, expected_data) + ijk_expected = np.array(np.unravel_index(np.arange(data.size), data.shape, order="F")) + xyz_expected = (affine @ np.vstack([ijk_expected, np.ones((1, ijk_expected.shape[1]))]))[:-1] + np.testing.assert_allclose(xyz, xyz_expected) + np.testing.assert_array_equal(ijk, ijk_expected) + + def test_load_mri_raises_for_invalid_dimension(self) -> None: + """Raise when the image dimensionality is unsupported.""" + with tempfile.TemporaryDirectory() as tmpdir: + path = Path(tmpdir) / "invalid.nii.gz" + nib.save(nib.Nifti1Image(np.zeros((2, 2)), np.eye(4)), path) + with self.assertRaises((ValueError, NiftiError)): + self._load_mri(path.as_posix()) + + +if __name__ == "__main__": # pragma: no cover + unittest.main() diff --git a/tests/mri/fmriprep/test_fmriprep_real.py b/tests/mri/fmriprep/test_fmriprep_real.py new file mode 100644 index 00000000..a053656b --- /dev/null +++ b/tests/mri/fmriprep/test_fmriprep_real.py @@ -0,0 +1,46 @@ +"""Tests for the fMRIPrep real-data processing pipeline.""" + +from __future__ import annotations + +import numpy as np + +from .test_fmriprep_utils import ( + CREATE_GOLDEN_MASTER, + REAL_EXPECTED_H5, + RealDatasetMixin, + fmriprep, +) + + +class TestCreateBdataFmriprepReal(RealDatasetMixin): + """Test the create_bdata_fmriprep function with real fMRIPrep output data.""" + + def test_create_bdata_fmriprep_real_exclude_gm(self) -> None: + """Compare real-data output against the golden master.""" + # Update the golden master when adding or changing real-data coverage. + exclude = {"session/run": [[1, 2, 3, 4, 5], [1]]} + + bdata_list, data_labels_list = fmriprep.create_bdata_fmriprep( + dpath=self.data_root.as_posix(), + data_mode="volume_native", + fmriprep_dir="derivatives/fmriprep", + label_mapper=self.label_mapper, + exclude=exclude, + split_task_label=True, + with_confounds=True, + return_data_labels=True, + return_list=True, + ) + self.assertEqual(len(data_labels_list), 1) + self.assertEqual(len(bdata_list), 1) + brain_data = bdata_list[0] + + if CREATE_GOLDEN_MASTER: + REAL_EXPECTED_H5.parent.mkdir(parents=True, exist_ok=True) + brain_data.save(str(REAL_EXPECTED_H5)) + return None + + for key in self.check_keys: + actual = np.asarray(brain_data.get(key)) + expected = np.asarray(self.expected_bdata.get(key)) + np.testing.assert_array_equal(actual, expected) diff --git a/tests/mri/fmriprep/test_fmriprep_utils.py b/tests/mri/fmriprep/test_fmriprep_utils.py new file mode 100644 index 00000000..cba455e9 --- /dev/null +++ b/tests/mri/fmriprep/test_fmriprep_utils.py @@ -0,0 +1,162 @@ +"""Unit tests for fMRIPrep-related utilities in bdpy.mri.fmriprep.""" + +from __future__ import annotations + +import csv +import importlib.util +import os +import sys +import tempfile +import unittest +from pathlib import Path + +import bdpy +from bdpy import mri as fake_bdpy_mri # type: ignore[import] + +def _create_gm_flag_from_env() -> bool: + return os.environ.get("TEST_FMRIPREP_CREATE_GOLDEN_MASTER", "0") == "1" + + +CREATE_GOLDEN_MASTER = _create_gm_flag_from_env() + +TESTS_ROOT = Path("./tests").resolve() +REAL_EXPECTED_H5 = TESTS_ROOT / "data" / "mri" / "golden_master" / "real" / "test_output_fmriprep_real_exclude.h5" +REAL_LABELS_MAPPER_PATH = TESTS_ROOT / "data" / "mri" / "golden_master" / "real" / "temp.tsv" + + +def _resolve_real_data_root() -> Path: + candidates = ( + TESTS_ROOT / "data" / "mri" / "ds006319", + TESTS_ROOT / "data" / "ds006319", + ) + for candidate in candidates: + if candidate.exists(): + return candidate + return candidates[0] + + +REAL_DATA_ROOT = _resolve_real_data_root() + +VOLUME_NATIVE_CHECK_KEYS = [ + "VoxelData", + "Session", + "Run", + "Block", + "Label", + "MotionParameter", + "MotionParameter_trans_x", + "MotionParameter_trans_y", + "MotionParameter_trans_z", + "MotionParameter_rot_x", + "MotionParameter_rot_y", + "MotionParameter_rot_z", + "Confounds", + "GlobalSignal", + "WhiteMatterSignal", + "CSFSignal", + "DVARS", + "STD_DVARS", + "FramewiseDisplacement", + "aCompCor", + "aCompCor_0", + "aCompCor_1", + "aCompCor_2", + "aCompCor_3", + "aCompCor_4", + "aCompCor_5", + "tCompCor", + "tCompCor_0", + "tCompCor_1", + "tCompCor_2", + "tCompCor_3", + "tCompCor_4", + "tCompCor_5", + "Cosine", + "Cosine_0", + "Cosine_1", + "Cosine_2", + "Cosine_3", + "Cosine_4", + "Cosine_5", + "trial_type", + "stimulus_name", + "category_index", + "response_time", + "voxel_x", + "voxel_y", + "voxel_z", + "voxel_i", + "voxel_j", + "voxel_k", +] + +MODULE_PATH = Path(__file__).resolve().parents[3] / "bdpy" / "mri" / "fmriprep.py" +MODULE_SPEC = importlib.util.spec_from_file_location("bdpy.mri.fmriprep", MODULE_PATH) +if MODULE_SPEC is None or MODULE_SPEC.loader is None: # pragma: no cover - defensive + raise ImportError("Unable to load bdpy.mri.fmriprep specification.") +fmriprep = importlib.util.module_from_spec(MODULE_SPEC) +sys.modules["bdpy.mri.fmriprep"] = fmriprep +MODULE_SPEC.loader.exec_module(fmriprep) +fake_bdpy_mri.fmriprep = fmriprep + + +def _get_private(name: str) -> object: + mangled = f"_fmriprep__{name}" + if hasattr(fmriprep, mangled): + return getattr(fmriprep, mangled) + return getattr(fmriprep, f"__{name}") + + +class RealDatasetMixin(unittest.TestCase): + """Mixin for real-data tests.""" + + @staticmethod + def _create_runtime_label_mapper(data_root: Path) -> tuple[tempfile.TemporaryDirectory, Path]: + tmpdir = tempfile.TemporaryDirectory(prefix="test_fmriprep_sound_label_mapper_") + mapper_path = Path(tmpdir.name) / "stimulus_name.tsv" + + stimulus_names: dict[str, int] = {} + event_files = sorted( + path for path in data_root.rglob("*_events.tsv") if "derivatives" not in path.parts + ) + for event_file in event_files: + with event_file.open("r", newline="") as f: + reader = csv.DictReader(f, delimiter="\t") + for row in reader: + stimulus_name = row.get("stimulus_name") + if not stimulus_name or stimulus_name == "n/a": + continue + if stimulus_name not in stimulus_names: + stimulus_names[stimulus_name] = len(stimulus_names) + 1 + + with mapper_path.open("w", newline="") as f: + writer = csv.writer(f, delimiter="\t") + for stimulus_name, index in stimulus_names.items(): + writer.writerow([stimulus_name, index]) + + return tmpdir, mapper_path + + @classmethod + def setUpClass(cls) -> None: + if not REAL_DATA_ROOT.exists(): + raise unittest.SkipTest(f"Real dataset not found at {REAL_DATA_ROOT}") + if not CREATE_GOLDEN_MASTER and not REAL_EXPECTED_H5.exists(): + raise unittest.SkipTest(f"Expected reference H5 is missing: {REAL_EXPECTED_H5}") + + cls.data_root = REAL_DATA_ROOT + cls._runtime_label_mapper_tmpdir = None + if REAL_LABELS_MAPPER_PATH.exists(): + mapper_path = REAL_LABELS_MAPPER_PATH + else: + cls._runtime_label_mapper_tmpdir, mapper_path = cls._create_runtime_label_mapper(REAL_DATA_ROOT) + + cls.label_mapper = {"stimulus_name": str(mapper_path)} + cls.expected_bdata = bdpy.BData(str(REAL_EXPECTED_H5)) if REAL_EXPECTED_H5.exists() else None + cls.check_keys = VOLUME_NATIVE_CHECK_KEYS + return super().setUpClass() + + @classmethod + def tearDownClass(cls) -> None: + if getattr(cls, "_runtime_label_mapper_tmpdir", None) is not None: + cls._runtime_label_mapper_tmpdir.cleanup() + return super().tearDownClass() diff --git a/tests/mri/fmriprep/test_fmriprep_utils_mock.py b/tests/mri/fmriprep/test_fmriprep_utils_mock.py new file mode 100644 index 00000000..2dcdbde5 --- /dev/null +++ b/tests/mri/fmriprep/test_fmriprep_utils_mock.py @@ -0,0 +1,497 @@ +""" +Utilities for mock fmriprep tests (builders, loaders, expected data). + +All fixtures here are tailored to fmriprep version 1.2 filename patterns and +directory layout. Update the constants below if you add coverage for other +versions. +""" + +from __future__ import annotations + +import json +import os +from collections import OrderedDict +from dataclasses import dataclass +from pathlib import Path +from typing import ClassVar, Dict, List, Optional, Tuple + +import numpy as np +import pandas as pd +import nibabel as nib +from nibabel.gifti import GiftiDataArray, GiftiImage + +import bdpy + + +@dataclass +class RunConfig: + """Configuration for one synthetic functional run.""" + + session: str + run_no: int + n_vol: int + tr: float + + +class MockBidsBuilder: + """Builder for a minimal, synthetic BIDS/fmriprep 1.2 tree.""" + + fmriprep_version: str = "1.2" + subject: str = "sub-0840" + sessions: Tuple[str, ...] = ("ses-01", "ses-02", "ses-anat") + run_numbers: Tuple[int, ...] = (1, 2, 3) + voxel_shape: Tuple[int, int, int] = (2, 2, 2) + surface_vertices: Tuple[int, int] = (3, 5) + session_tr: ClassVar[Dict[str, float]] = {"ses-01": 2.0, "ses-02": 1.8} + + def __init__(self) -> None: + """Initialize an empty temporary mock BIDS tree.""" + import tempfile + + self._tmp = tempfile.TemporaryDirectory() + self.root = Path(self._tmp.name) + self.label_mapper_path = self.root / "label_mapper.tsv" + self.data_map: Dict[str, np.ndarray] = {} + self.confounds_map: Dict[str, pd.DataFrame] = {} + self.events_map: Dict[str, pd.DataFrame] = {} + self.bold_json_map: Dict[str, float] = {} + self.expected_runs: Dict[str, List[dict]] = {} + self.expected_subject_data: OrderedDict[str, OrderedDict[str, List[dict]]] = OrderedDict() + + def cleanup(self) -> None: + """Remove the temporary dataset tree.""" + self._tmp.cleanup() + + def build(self) -> None: + """Create the full mock dataset and label mapper.""" + self._write_label_mapper() + self._create_dataset() + + def _write_label_mapper(self) -> None: + self.label_mapper_path.write_text("face\t1\nscene\t2\n", encoding="ascii") + + def _create_dataset(self) -> None: + for session in self.sessions: + raw_func = self.root / self.subject / session / "func" + prep_func = self.root / "derivatives" / "fmriprep" / "fmriprep" / self.subject / session / "func" + raw_func.mkdir(parents=True, exist_ok=True) + prep_func.mkdir(parents=True, exist_ok=True) + if session == "ses-anat": + continue + + run_list: List[dict] = [] + for run_no in self.run_numbers: + config = RunConfig( + session=session, + run_no=run_no, + n_vol=self._volume_count(run_no), + tr=self.session_tr.get(session, 2.0), + ) + run_list.append(self._create_run_files(prep_func=prep_func, raw_func=raw_func, config=config)) + self.expected_runs[session] = run_list + + session_items = OrderedDict() + for session in self.sessions: + if session == "ses-anat": + continue + if session in self.expected_runs: + session_items[session] = self.expected_runs[session] + self.expected_subject_data = OrderedDict({self.subject: session_items}) + + def _confounds_dataframe(self, config: RunConfig) -> pd.DataFrame: + base = self._confound_base(config) + rows = [] + for idx in range(config.n_vol): + row_base = base + idx + row = { + "X": row_base, + "Y": row_base + 0.1, + "Z": row_base + 0.2, + "RotX": row_base + 0.3, + "RotY": row_base + 0.4, + "RotZ": row_base + 0.5, + "global_signal": row_base + 1.01 * (1 + (idx % 2)), + "white_matter": row_base + 2.02 * (1 + (idx % 3) * 0.1), + "csf": row_base + 3.03, + "dvars": row_base + 4.04, + "std_dvars": row_base + 5.05, + "framewise_displacement": np.nan if idx % 3 == 0 else row_base + 6.06, + } + for c_idx in range(6): + row[f"a_comp_cor_0{c_idx}"] = row_base + 10 + c_idx + row[f"t_comp_cor_0{c_idx}"] = row_base + 20 + c_idx + row[f"cosine0{c_idx}"] = row_base + 30 + c_idx + rows.append(row) + return pd.DataFrame(rows) + + def _event_dataframe(self, config: RunConfig) -> pd.DataFrame: + rows = [] + for idx in range(config.n_vol): + onset = idx * config.tr + rows.append( + { + "onset": onset, + "duration": config.tr, + "trial_type": float(config.run_no), + "stimulus_name": "face" if idx % 2 == 0 else "scene", + "category_index": float(config.run_no * 10 + idx), + "image_index": float(config.run_no * 100 + idx), + "response_time": float(0.5 + 0.1 * idx), + "original_run_number": float(config.run_no), + } + ) + return pd.DataFrame(rows) + + def _create_run_files(self, prep_func: Path, raw_func: Path, config: RunConfig) -> dict: + base = f"{self.subject}_{config.session}_task-mock_run-{config.run_no:02d}" + filenames = { + "volume_native": f"{base}_space-T1w_desc-preproc_bold.nii.gz", + "volume_standard": f"{base}_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz", + "surf_native_left": f"{base}_space-fsnative_hemi-L.func.gii", + "surf_native_right": f"{base}_space-fsnative_hemi-R.func.gii", + "surf_standard_left": f"{base}_space-fsaverage_hemi-L.func.gii", + "surf_standard_right": f"{base}_space-fsaverage_hemi-R.func.gii", + "surf_standard_41k_left": f"{base}_space-fsaverage6_hemi-L.func.gii", + "surf_standard_41k_right": f"{base}_space-fsaverage6_hemi-R.func.gii", + "surf_standard_10k_left": f"{base}_space-fsaverage5_hemi-L.func.gii", + "surf_standard_10k_right": f"{base}_space-fsaverage5_hemi-R.func.gii", + "confounds": f"{base}_desc-confounds_regressors.tsv", + } + events_df = self._event_dataframe(config) + conf_df = self._confounds_dataframe(config) + bold_json = {"RepetitionTime": config.tr} + + events_path = raw_func / f"{base}_events.tsv" + bold_json_path = raw_func / f"{base}_bold.json" + confounds_path = prep_func / filenames["confounds"] + events_df.to_csv(events_path, sep="\t", index=False) + conf_df.to_csv(confounds_path, sep="\t", index=False) + bold_json_path.write_text(json.dumps(bold_json), encoding="ascii") + + self.confounds_map[str(confounds_path)] = conf_df + self.events_map[str(events_path)] = events_df + self.bold_json_map[str(bold_json_path)] = config.tr + native_volume = prep_func / filenames["volume_native"] + standard_volume = prep_func / filenames["volume_standard"] + self._register_image(native_volume, config) + self._write_nifti(standard_volume, self.data_map[str(native_volume)]) + self._write_surface_pair( + prep_func / filenames["surf_native_left"], + prep_func / filenames["surf_native_right"], + config=config, + base_offset=0, + ) + self._write_surface_pair( + prep_func / filenames["surf_standard_left"], + prep_func / filenames["surf_standard_right"], + config=config, + base_offset=100, + ) + self._write_surface_pair( + prep_func / filenames["surf_standard_41k_left"], + prep_func / filenames["surf_standard_41k_right"], + config=config, + base_offset=200, + ) + self._write_surface_pair( + prep_func / filenames["surf_standard_10k_left"], + prep_func / filenames["surf_standard_10k_right"], + config=config, + base_offset=300, + ) + + run_files = { + "volume_native": os.path.join("derivatives", "fmriprep", "fmriprep", self.subject, config.session, "func", filenames["volume_native"]), + "volume_standard": os.path.join("derivatives", "fmriprep", "fmriprep", self.subject, config.session, "func", filenames["volume_standard"]), + "surface_native": ( + os.path.join("derivatives", "fmriprep", "fmriprep", self.subject, config.session, "func", filenames["surf_native_left"]), + os.path.join("derivatives", "fmriprep", "fmriprep", self.subject, config.session, "func", filenames["surf_native_right"]), + ), + "surface_standard": ( + os.path.join("derivatives", "fmriprep", "fmriprep", self.subject, config.session, "func", filenames["surf_standard_left"]), + os.path.join("derivatives", "fmriprep", "fmriprep", self.subject, config.session, "func", filenames["surf_standard_right"]), + ), + "surface_standard_41k": ( + os.path.join("derivatives", "fmriprep", "fmriprep", self.subject, config.session, "func", filenames["surf_standard_41k_left"]), + os.path.join("derivatives", "fmriprep", "fmriprep", self.subject, config.session, "func", filenames["surf_standard_41k_right"]), + ), + "surface_standard_10k": ( + os.path.join("derivatives", "fmriprep", "fmriprep", self.subject, config.session, "func", filenames["surf_standard_10k_left"]), + os.path.join("derivatives", "fmriprep", "fmriprep", self.subject, config.session, "func", filenames["surf_standard_10k_right"]), + ), + "confounds": os.path.join("derivatives", "fmriprep", "fmriprep", self.subject, config.session, "func", filenames["confounds"]), + } + return run_files + + def _register_image(self, path: Path, config: RunConfig) -> None: + session_offset = 0 if config.session == "ses-01" else 1000 + base = session_offset + config.run_no * 100 + data = ( + np.arange(np.prod(self.voxel_shape) * config.n_vol, dtype=float) + .reshape(*self.voxel_shape, config.n_vol, order="F") + + base + ) + self.data_map[str(path)] = data + self._write_nifti(path, data) + + def _write_nifti(self, path: Path, data: np.ndarray) -> None: + """Persist a small 4D NIfTI that nipy/nibabel can read.""" + img = nib.Nifti1Image(data.astype(np.float32), np.eye(4)) + nib.save(img, path) + + def _write_surface_pair(self, left_path: Path, right_path: Path, config: RunConfig, base_offset: float) -> None: + """Create paired GIFTI func files with predictable values.""" + session_offset = 0 if config.session == "ses-01" else 1000 + base = session_offset + config.run_no * 10 + base_offset + left_vertices, right_vertices = self.surface_vertices + self._write_gifti(left_path, n_vertex=left_vertices, n_time=config.n_vol, base=base) + self._write_gifti(right_path, n_vertex=right_vertices, n_time=config.n_vol, base=base + 0.5) + + def _write_gifti(self, path: Path, n_vertex: int, n_time: int, base: float) -> None: + arrays = [] + for t in range(n_time): + arr = np.arange(n_vertex, dtype=np.float32) + base + t + arrays.append(GiftiDataArray(arr)) + img = GiftiImage(darrays=arrays) + nib.save(img, path) + + def _confound_base(self, config: RunConfig) -> float: + session_offset = 0 if config.session == "ses-01" else 1000 + return session_offset + config.run_no * 100 + 50 + + @staticmethod + def _volume_count(run_no: int) -> int: + """Return a modest but non-trivial volume count per run (>=10).""" + return 9 + run_no + + +def build_expected_bdata_after_exclude( + builder: MockBidsBuilder, label_mapper_dict: Dict[str, Dict[str, int]], exclude: Optional[Dict] = None +) -> bdpy.BData: + """Reconstruct expected BData matching __create_bdata_fmriprep_subject output.""" + + class _LabelMapper: + def __init__(self, l2v_map: Dict[str, Dict[str, int]]): + self._l2v_map = l2v_map + self._v2l_map: Dict[str, Dict[int, str]] = {} + + def get_value(self, mkey: str, label: str) -> int: + """Map a label to a value according to the label mapper, with error checking.""" + if mkey not in self._l2v_map: + raise RuntimeError(f"{mkey} not found in label mapper") + + if label == "n/a": + return np.nan + + if label not in self._l2v_map[mkey]: + raise RuntimeError(f"{label} not found in label mapper for {mkey}") + + val = self._l2v_map[mkey][label] + if mkey not in self._v2l_map: + self._v2l_map[mkey] = {val: label} + else: + if label in self._v2l_map[mkey].values(): + label_exist = self._v2l_map[mkey][val] + if label != label_exist: + raise RuntimeError("Invalid label-value mapping (possibly non-unique values in label mapper)") + self._v2l_map[mkey].update({val: label}) + return val + + def dump(self) -> Dict[str, Dict[int, str]]: + return self._v2l_map + + act_label_map = _LabelMapper(label_mapper_dict) + + exclude = exclude or {} + include_sessions: OrderedDict[str, List[dict]] = OrderedDict() + + # Mirror the exclusion logic in create_bdata_fmriprep (subject/session/run/session-run) + if "subject" in exclude and builder.subject in exclude["subject"]: + include_sessions = OrderedDict() + else: + for s_idx, (ses, runs) in enumerate(builder.expected_runs.items()): + if "session" in exclude and (s_idx + 1) in exclude["session"]: + continue + + filtered_runs: List[dict] = [] + for r_idx, run in enumerate(runs): + if "run" in exclude and (r_idx + 1) in exclude["run"]: + continue + if "session/run" in exclude: + ex_runs = exclude["session/run"][s_idx] if s_idx < len(exclude["session/run"]) else None + if ex_runs is not None and (r_idx + 1) in ex_runs: + continue + filtered_runs.append(run) + + if filtered_runs: + include_sessions[ses] = filtered_runs + voxel_list = [] + motion_list = [] + confounds_dict: Dict[str, Dict[int, np.ndarray]] = {} + ses_label_list = [] + run_label_list = [] + block_label_list = [] + labels_list = [] + last_xyz = None + last_ijk = None + last_run = 0 + last_block = 0 + run_idx = 0 + + for i, (ses, runs) in enumerate(include_sessions.items()): + for j, run in enumerate(runs): + run_idx += 1 + epi_path = builder.root / run["volume_native"] + conf_path = builder.root / run["confounds"] + base_name = Path(run["confounds"]).name.replace("_desc-confounds_regressors.tsv", "") + event_path = builder.root / builder.subject / ses / "func" / f"{base_name}_events.tsv" + bold_path = builder.root / builder.subject / ses / "func" / f"{base_name}_bold.json" + + img_arr = builder.data_map[str(epi_path)] + voxel = img_arr.reshape(-1, img_arr.shape[-1], order="F").T + voxel_list.append(voxel) + + i_len, j_len, k_len, _ = img_arr.shape + ijk = np.array(np.unravel_index(np.arange(i_len * j_len * k_len), (i_len, j_len, k_len), order="F")) + ijk_b = np.vstack([ijk, np.ones((1, i_len * j_len * k_len))]) + affine = np.delete(np.delete(np.eye(5), 3, axis=0), 3, axis=1) + xyz = (affine @ ijk_b)[:-1] + last_xyz = xyz + last_ijk = ijk + + conf_pd = builder.confounds_map[str(conf_path)] + motion_cols = [c for c in conf_pd.columns if c in ["X", "Y", "Z", "RotX", "RotY", "RotZ"]] + motion = np.hstack([np.c_[conf_pd[c]] for c in motion_cols]) + motion_list.append(motion) + + conf_keys = [c for c in conf_pd.columns if c not in motion_cols] + for key in conf_keys: + arr = np.c_[conf_pd[key]] + confounds_dict.setdefault(key, {})[run_idx] = arr + + events = builder.events_map[str(event_path)] + tr = builder.bold_json_map[str(bold_path)] + blocks = [] + labels = [] + cols = events.columns.values + cols = cols[~(cols == "onset")] + cols = cols[~(cols == "duration")] + for k, row in events.iterrows(): + nsmp = int(np.round(row["duration"] / tr)) + blocks.append(np.ones((nsmp, 1)) * (k + 1)) + label_vals = [] + for p in cols: + if p in label_mapper_dict: + v = act_label_map.get_value(p, row[p]) + else: + v = row[p] + label_vals.append(v) + label_vals = np.array([np.nan if x == "n/a" else float(x) for x in label_vals]) + labels.append(np.tile(label_vals, (nsmp, 1))) + + num_vol = voxel.shape[0] + ses_label_list.append(np.ones((num_vol, 1)) * (i + 1)) + run_label_list.append(np.ones((num_vol, 1)) * (j + 1) + last_run) + block_label_list.append(np.vstack(blocks) + last_block) + labels_list.append(np.vstack(labels)) + last_block = block_label_list[-1][-1] + last_run = run_label_list[-1][-1] + + braindata = np.vstack(voxel_list) + motionparam = np.vstack(motion_list) + ses_label = np.vstack(ses_label_list) + run_label = np.vstack(run_label_list) + block_label = np.vstack(block_label_list) + labels_arr = np.vstack(labels_list) + + confounds = dict(confounds_dict) + for c in list(confounds.keys()): + conf_val_list = [] + for k in range(run_idx): + if (k + 1) in confounds[c]: + conf_val_list.append(confounds[c][k + 1]) + else: + run_length = voxel_list[k].shape[0] + nan_array = np.zeros([run_length, 1]) + nan_array[:, :] = np.nan + conf_val_list.append(nan_array) + confounds[c] = np.vstack(conf_val_list) + + expected_bdata = bdpy.BData() + expected_bdata.add(braindata, "VoxelData") + expected_bdata.add(ses_label, "Session") + expected_bdata.add(run_label, "Run") + expected_bdata.add(block_label, "Block") + expected_bdata.add(labels_arr, "Label") + expected_bdata.add(motionparam, "MotionParameter") + + # Unit selectors mirror the column order of the 6 rigid-body motion regressors + # (translations then rotations) so tests can assert the same metadata as the + # production pipeline without guessing column positions. + motion_metadata = [ + ("MotionParameter_trans_x", [1, 0, 0, 0, 0, 0], "Motion parameter: x translation"), + ("MotionParameter_trans_y", [0, 1, 0, 0, 0, 0], "Motion parameter: y translation"), + ("MotionParameter_trans_z", [0, 0, 1, 0, 0, 0], "Motion parameter: z translation"), + ("MotionParameter_rot_x", [0, 0, 0, 1, 0, 0], "Motion parameter: x rotation"), + ("MotionParameter_rot_y", [0, 0, 0, 0, 1, 0], "Motion parameter: y rotation"), + ("MotionParameter_rot_z", [0, 0, 0, 0, 0, 1], "Motion parameter: z rotation"), + ] + for key, basis, desc in motion_metadata: + expected_bdata.add_metadata(key, basis, desc, where="MotionParameter") + + if confounds: + default_confounds_keys = ["global_signal", "white_matter", "csf", "dvars", "std_dvars", "framewise_displacement"] + confounds_key_desc = { + "global_signal": {"key": "GlobalSignal", "desc": "Confounds: Average signal in brain mask"}, + "white_matter": {"key": "WhiteMatterSignal", "desc": "Confounds: Average signal in white matter"}, + "csf": {"key": "CSFSignal", "desc": "Confounds: Average signal in CSF"}, + "dvars": {"key": "DVARS", "desc": "Confounds: Original DVARS"}, + "std_dvars": {"key": "STD_DVARS", "desc": "Confounds: Standardized DVARS"}, + "framewise_displacement": {"key": "FramewiseDisplacement", "desc": "Confounds: Framewise displacement (bulk-head motion)"}, + } + additional_confounds_series = [ + ("a_comp_cor", "aCompCor", "Confounds: Anatomical CompCor"), + ("t_comp_cor", "tCompCor", "Confounds: Temporal CompCor"), + ("cosine", "Cosine", "Confounds: Discrete cosine-basis regressors"), + ] + for target_key, target_key_name, target_key_desc in additional_confounds_series: + default_confounds_keys.append(target_key) + confounds_key_desc[target_key] = {"key": target_key_name, "desc": target_key_desc} + ack_list = sorted([ack for ack in confounds.keys() if target_key in ack]) + for ack_i, ack in enumerate(ack_list): + default_confounds_keys.append(ack) + confounds_key_desc[ack] = {"key": f"{target_key_name}_{ack_i}", "desc": target_key_desc} + + confounds_array = np.hstack([confounds[dck] for dck in default_confounds_keys if dck in confounds]) + expected_bdata.add(confounds_array, "Confounds") + cnf_p = 0 + for cnf in default_confounds_keys: + if (cnf not in ["a_comp_cor", "t_comp_cor", "cosine"]) and (cnf not in confounds): + continue + cnf_colidx = np.zeros(confounds_array.shape[1]) + if cnf in ["a_comp_cor", "t_comp_cor", "cosine"]: + ncol = sum([1 for k in confounds.keys() if cnf in k]) + for k in range(ncol): + cnf_colidx[cnf_p + k] = 1 + else: + cnf_colidx[cnf_p] = 1 + cnf_p += 1 + expected_bdata.add_metadata(confounds_key_desc[cnf]["key"], cnf_colidx, confounds_key_desc[cnf]["desc"], where="Confounds") + + label_cols = ["trial_type", "stimulus_name", "category_index", "image_index", "response_time", "original_run_number"] + for idx, col in enumerate(label_cols): + expected_bdata.add_metadata(col, np.array([np.nan if i != idx else 1 for i in range(len(label_cols))], dtype=float), f"Label {col}", where="Label") + + if last_xyz is not None and last_ijk is not None: + expected_bdata.add_metadata("voxel_x", last_xyz[0, :], "Voxel x coordinate", where="VoxelData") + expected_bdata.add_metadata("voxel_y", last_xyz[1, :], "Voxel y coordinate", where="VoxelData") + expected_bdata.add_metadata("voxel_z", last_xyz[2, :], "Voxel z coordinate", where="VoxelData") + expected_bdata.add_metadata("voxel_i", last_ijk[0, :], "Voxel i index", where="VoxelData") + expected_bdata.add_metadata("voxel_j", last_ijk[1, :], "Voxel j index", where="VoxelData") + expected_bdata.add_metadata("voxel_k", last_ijk[2, :], "Voxel k index", where="VoxelData") + + vmap = act_label_map.dump() + for k in vmap: + expected_bdata.add_vmap(k, vmap[k]) + + return expected_bdata From ead3e28f52523bdcb87b8bf3b4ea64cc1d5fee51 Mon Sep 17 00:00:00 2001 From: Hideki Date: Tue, 7 Apr 2026 10:11:06 +0900 Subject: [PATCH 2/5] Add test data for mock test --- tests/data/mri/golden_master/mock/.gitkeep | 2 ++ tests/data/mri/golden_master/real/.gitignore | 2 ++ 2 files changed, 4 insertions(+) create mode 100644 tests/data/mri/golden_master/mock/.gitkeep create mode 100644 tests/data/mri/golden_master/real/.gitignore diff --git a/tests/data/mri/golden_master/mock/.gitkeep b/tests/data/mri/golden_master/mock/.gitkeep new file mode 100644 index 00000000..5c027f10 --- /dev/null +++ b/tests/data/mri/golden_master/mock/.gitkeep @@ -0,0 +1,2 @@ + +*.h5 diff --git a/tests/data/mri/golden_master/real/.gitignore b/tests/data/mri/golden_master/real/.gitignore new file mode 100644 index 00000000..5c027f10 --- /dev/null +++ b/tests/data/mri/golden_master/real/.gitignore @@ -0,0 +1,2 @@ + +*.h5 From 5e77c1e7aef733297c76e82ad1e8ed4346696a21 Mon Sep 17 00:00:00 2001 From: Hideki Date: Tue, 7 Apr 2026 10:14:05 +0900 Subject: [PATCH 3/5] Add test data for mock test again --- tests/data/mri/golden_master/mock/.gitignore | 4 ++++ tests/data/mri/golden_master/mock/.gitkeep | 2 -- .../mock/test_output_fmriprep_subject.h5 | Bin 0 -> 2268698 bytes .../test_output_fmriprep_subject_exclude.h5 | Bin 0 -> 2260802 bytes 4 files changed, 4 insertions(+), 2 deletions(-) create mode 100644 tests/data/mri/golden_master/mock/.gitignore delete mode 100644 tests/data/mri/golden_master/mock/.gitkeep create mode 100644 tests/data/mri/golden_master/mock/test_output_fmriprep_subject.h5 create mode 100644 tests/data/mri/golden_master/mock/test_output_fmriprep_subject_exclude.h5 diff --git a/tests/data/mri/golden_master/mock/.gitignore b/tests/data/mri/golden_master/mock/.gitignore new file mode 100644 index 00000000..db3e253e --- /dev/null +++ b/tests/data/mri/golden_master/mock/.gitignore @@ -0,0 +1,4 @@ + +* +!*.h5 +!.gitignore diff --git a/tests/data/mri/golden_master/mock/.gitkeep b/tests/data/mri/golden_master/mock/.gitkeep deleted file mode 100644 index 5c027f10..00000000 --- a/tests/data/mri/golden_master/mock/.gitkeep +++ /dev/null @@ -1,2 +0,0 @@ - -*.h5 diff --git a/tests/data/mri/golden_master/mock/test_output_fmriprep_subject.h5 b/tests/data/mri/golden_master/mock/test_output_fmriprep_subject.h5 new file mode 100644 index 0000000000000000000000000000000000000000..e0f943011a3fc93b5aaeab7e4bbc867a53daa0f1 GIT binary patch literal 2268698 zcmeFaeUMz)bsyGCu9Wp!azJaNP%2vWIN0U%YzB?N$1XvLpc;#hT}Z(07?>qj!ftwc zy5Gz+(bL`R*FC^2$?~{FD^zNofaFrOa&4S(#3)pXb|EfSihr=2al}$lRVxQ^SY;-q zs*Fl3g{trmIA$E$#YFj?bARW)ukPs{U;u)0H@P_T?z!~C=H z7A~JVS3pe5-zbw6<{ou_6)j*w|D8hMg>$FprNXbU)^nuaq@3}wP_Oo?QP?Z2g}ti$ zZQ-k7wH|g0h4r;+N5V{AN6FJ8g`aeBnc$IvOYz9NT)=ZI;4o?S`Q4CwiTR%3mkN(* zoO0p#Uo9N}i+8&OKY>tr|E_nr3?E}pdG{lXUbwU9V!D6-I)f!m_m}^dMxn5pe0|^l zzVhNrXCHxKQ!T)tzv6pAZ-(N7??hd-1rkFUx5V=jI!yy(KwpH!Zg|Lm6v`m=O3hx@y0?)^^^zrRv*^8QoA??BDT zJ8*yht?ugQE)n-d;tsqOci^qK|5K(b8=j<_q+6th_l~_E6YqeyZ#J+o+dj=;OHN4(2>#CwytZxX*P(rwZm(n6KEla@&r zNj<(Mw@+knxA0kp{~Go6_tLnRiTfGiexCSUAnq55`#j|xc&ncIPl)>#aR=Ut`=3zW zAK4?`0de0Z-61Uy-+hU$XeqXtuKYKPh=fYtRIX&|))AGJa+<%?8 z{|52dW@HRb@)!zl;o5g!^O!+pvw@m)W#CykZXMIo) zg$wmiih3w5P+kJkGU*~|4)=iR3~!V7BQ6~F=W!M6f0f1^)yoI|A=bdvAD>nm)0IePtvS>8{UOghr=fM z*&^NEBcD0kr!u%3{zn;pmHPerY24A?iu>;q_dg)+e@NWlA?~*+@4#L4%um;8zY}-h zt+)ek)iZy4k9cnp_p;$hIt=d}dp{=Lf#J?_th{YL?~oRlZ$MfmT_nxn{$vJsllNmT z9P;RTcq2hJER_W!}kNk-JVU}k2BoT z*?g7p%58`HnYL?}^KFOUg|_P-7uzoVeB0UYi*1MdX4~Pu)pmO3pEBK_Fuv*ca);?j z7fCy$o1`~McS!G$7Czz9A0Q1#=SVk6Z<212-Xh&5y-iy9xXUjfEt4*iZjx@1Zj;RTcq2hJES?>pLY3q+)dt}b>ZbkX1+?? zH;MbN6ZhXB?!QSK-yrTcDeu5t_4^+Y_Z_we@K)S`xAWWV5${`!Um!jQNCVP2Qp0WPrGo6(e@Oh53Ogc}R zLo7Be3Ve)NwFPgkF-KczTGu{sA9nu``oFC=n{UZ+dvdy=C zKtBO-FBA9E#QhBMJ4@Ul*9G~#KzRr5s%L7Hci^qK18;4wo0RvhJ>osbdX0;>;W94X z9pb)CdYg2I^bTnua`inx8j#MBdfXp#@d}(D73|sc5OKHi3g#zZyq&(&?|;&#UDJ2? zeW&mG$Dj3G{@?AparI8$jjM%q+L7xH_h8+nn_DM8wBI-Re3NvG^cLwh>21>Bx=TMt zS|*(*T_o+0Zj;_7-66e0TDalzJ3v|{e)FV@q#e>t(wn4Pq_;?OxPOrKHQY_l{E`bt z`>MU@{RE5$9Ccj%m&E;F5%=#C_kT^?e?YtstUG!C8R8DSogGQs%j>iwiQ~9I_=1HXTN`dxX%%H;O*>4;=agqTco#0w@Gi4?vUOg9T)GL#C?=}8{Ts! z@5FDObdj_}x=DJIbc^&BX%2VJk38;__f6ss{iSm4{RG7Q0C9g0afci$eoqkhpCume zU3dCrE~YxJmWlg3(=9T-jjOl#JPPjuahxYzB<+xHk{aGye7-}P)h9W;P2P#$ZPFdm zJBBO!_W{y?bdEHKJLg9pchm2usedAer}q;O_kg&+pST|+eoqp2$aO(}ManyH*Kzd> zWtV`_>-uo;P_Xe)FV@q#e>t(wn4Pq_;?OxO0BwaW{D< z?gvbNS$hz7;HdrJ2ys6~{Eid%XNlhl$~kaWKfy-nT71@$~we&sn@XChz0}^-x?;52dJwQq)7K)nkj#w@7pH&iPSJ-k)>% z%taYL0dYt9D(`=jxL+ZD3&b6At$e&fyuqL9nTWW9PnCD@sqFEAF?5`!>@R#>9J`@wP~Bk#3V_@xH_G@(B4hyl^Q4QU9nx*m+oU_BcSsFy!)1}UbVxTzZ<212-XblN&XevneHM4K(>?Ac@5H@h zhcyBZQ+~=Ge9Vb0O`eD*C=~>bjNH3Cl|JMPRPr>YTlXIiCuV%=(gCBg( z=^s$V4OIOJ|K@Y9JwR37|Ly0>|KfK#ryl>|=gP9I`b6RLWt>9z+Alo%c{h)J?DH<& zPko;JP|pN>ev-6EI!ii7dYtqH(u<_?qzk04kiJUVA?=agApI2SCh2EL=UJZx(pN}d zC0!(~ldh6BNwc_bW^t#y7r3vcJmlN~a8&;RsNxQ)xc|Sz9aM4u|A;qm{$Kyu|8wO} zK^1r4t?N+0Thkr*d>N-fI;WmsJ;%lS1mlm3_aftui}z<4zr*_UNN+??Df%l^y{cDH*@n0eC zz}v0=F&*$$+~3P|qvYH0{xIW@l5fMi&iJF`+wgva@oy5pH%Z?jeVcTP^h=~)CjAO& z7Wd8P$^uWp>wS}V?yDJg?f^Kdyn`z4po;rX5O+|`_9s8@^b2rSJp-!p4*6Exfw!hJ zyv;u|%k*=k$4Rqzml?i5`U9dAJu_s1#kz+3eU@K)S`x8e@GHQoCt?*Y?| zi}zW^9~bW?<8P9FhIAO-Z}R|4NWV+^J<=@hn_1jV-b)U*VdoBj zqslv|;ts0#{WNh0Rowp?H3=(p6H!yTj*k@qUZ(?-0N5lm3A8hlVTTJxU5W)cOM#rCHnyv=?*oKIh^OJ9hxN zRop=pcTmOeJ;WVU%lqq;ci^si26(Hy18>D0cx$>RjX&BmBhyo$M~b<+wgvy z@lijm59*;5^-zj>C`CP#T0M$DZL-XwjK zG>i8Z!{w#{oV*`p_>gl4Xm79IsDCuLQKSg?g^a;`(;`bfW z?~;Cx^bYCwNq<24L((knn_1iq|7RRu!H{zYz)|HLRB;DY-2X0d2L0_inMS6hr3DWnHzK=AE zd*OM9j}JF_f7XSUhnzcr+$!#%iaV&{_c`JY3e*dQ&r{xkx9a!bChovnaR=U-4tT46 z|1#5!l5fNN9mXFe-**`A`=q1f+wguLaSxd8Nzx+eEa@ESanci{A13wqKH+fL%;IkH z{z3PC(e?w|IeESZj*2^|;ts0#eUZ3>0`)@SwWxzB%OF!CS-~RB;DY{2D0cx$?^P~LAb-MDyv zi}At?~}M6?fpR=?rhvGvng@$1G=Dylp%k7w=i(j{0eRP!FZ3 zhf>r-De9rr>hU!`f1Nao`(_q*llKwl4p6@04yw3=Dt?e>)ia>V$L|tv@TYnPRB;EN ziaYq!bl_9v-S~Wm>2H&Mi}c&1hW8GizfbxD(jStVd>h_2p8D~UxSBpO`8K@g_tba*@To@XHP#A8zt)`)Y=qJ3xCY?x2c0sN(l~#2r*||8FVpz+3gqe@EPbx8e@G zH68F)+^v4&;{6?#GcMjXo(5y$eVp;EeXYFjvfS^H-XR^@{wB{)I9xWfxZC>?=MI3Q z;tr~~gDQUikhp^??*EAL4xClbfU3L$Z^a#WYdXW*^vt)I{@bKk`OemVlzbcBHlB`> zZ^QcpaUa%iviS}hH@sXE_rk9@e0;dc`-pP~&=ZO~sNxQ)_(7gk&wwiK|CsU)yj9Nt zZ^a#WEAGHs)1m*Wynl0#c$>WK6_;W9B#ZZliTgb10_iKHuaYj3)=5`Mo1`A!_c~lQ z4R`Jn@cyw8=MLWcMTa}6;ts0#{oEHF?x2eM&wtVR3EuZbC-1=*9qvzl(cxZXx>?3I zc`x(%Ea?lR7fI(y7f4r0o1`7m9_bCzPm$gveUtPp(zi*sNWVndA$~p58>F8i-6Z`C z>1RpbAkE@lxajc7?&BzoIClUXRo+1rcTmOsZxDA-#r+qEH*i*Y2UU3o-YW0FThq;b z(aHO9rW+UUR~Ua>yf+ztT)e-`_&15)o1|}%zD>GC`X$mYlYWIXi~D94chfUvhug4o z2asFE9aM1#Rs7yh+(8xhDat$W)^T-)xC3v+9e8Ux;H`S*1k;U@Z^Qdl#vdi$hWBR} zf0TS1-d|z-Tg30Hq+cWbI_Wm)H%Pxp`VMIp_rfKIPgdS-Khv;t2f$Hr2UXlb6~Cv5 zJE-FR0m?gY)^Qb7lmM??s09NNACH)?07Wd68?k4ZHuO@Q1X3rfIi94v`4yyP;o^@OW zRotJZyaR95Gr(JM2i}T1@YZx6ro5M#Zd|1g?-0N5lm3A8hlVTT zJxcl*=}(bnaWA~+@X5*hh;s+PQRN*}aR*iW4iR@y#l1v12hOTzo+0kQTX6^8nhtoY zo;k~O3#6}*zDl}CYIv{m`BS8uq@N-EEa@AhH%Y%l`eo9uklrFSyuZfh1Ef!ozL)fU zqyg!Zq(xHTqBvx6-^}7}^8TEQKkVGW9B~I#+(8w;Bg7q4%R5SW2kxq8fVav!@K)S` zx28L5{Bd1-T)dl1H!j|9GXA)Df1UABKdleyp%nE{ih3wTJ(OBKUf}aZ(k$+Umt6du zyg%o{hn+h>`6}t0IxSyoF18>zcr-?i8R@{NNrUTxJyVY-8yn8HXT)f|A{BiOA2IF@~ zt-Kq2{uJpZ>9F?C;$E0{_~hh$#JL0DsJMeF?x2d_DdG;QxPOH54xClbfU3L$Z^a#W zYdXW*?3p^#uaY)Nht>ZLzQ0NOCh1$GZdyVi@V7?_tgwLcTgtopo%-F;s<$FJp-z^KSy~7-l}JSx8e@G6?fpR=@uyOuQ1)X zcz=rV_lnE7c)!E^Z;|e`y)1ne_suNs^o!YkreWs}fTPMgsNxQ)_?;u}po;r>$~kaW zJ#&e;18>D0cxyV~t$OBFrfZURNPDC=NDc2zKEFx&7U|ohTclqiH97n`pSMZBLHbQn z!|V1J%h~V96t!ab{z!v=kX#El^sjmt)w+#NuhDMl^Ln+}5AoL{j5kL*isZi|^IlEz z$RjSNF$ZT1~#b?|+Z_e$d;0Y=}=}aJlbB{X~%b`CPN@E1Ye>^T|ic>g-2PU%p}wF}<>Iwld(=dBNyGL-yR801s@%(uY8>BAChK>GRsEw&yr?{rt@*Ke@L1kYA_qsKTDb+I?~6< z{vl~HYAYKh_w3>a9n-icgByWr*Jjnv4*_DTESAcihtLtQChTjO>3Fr?R=ZwKgnpFGT4Q>nJTBqF|iFB%*Nt%h~oVy*dD=|5bWA*Nh9s((_O3N}Hl-G+9D_DxupK2qinmuBNG z(!72bX&M+klZI`Enarc(?c;Zm=GvapxMFQB=WZ$2+HEatLjRV-^?u`G?RCG)ndCpX zJtz1N#^piD%LM<21Al9WQS?E{#iX3HT#Ra$?E49RY5eXM55v{vHu~SYEoYK0-ClC)|$#d+AX z;XlDIjo*X9!|?xcr4I_H{VvDw9@Z}&_VE42<3Z(Txc<1}|DbT%?{W-xqd#u=?>8O~ zDnG+JOMhJOe^5B>cR5+Sv(FDZ{`-x`gUT<9^RVZK75@i?(|(sT4Ci6thX1&9SU&p| zzTbE}sQmU?f5UsP>F!tj2ZhsqmvgsxJS_O{Hy#fvzq`fV(*3CMe^5B>cR7aNz0w~Q z{`-x`gUat-@y@1y(D*+noc6n%EN=Vt{GjmPZ#*7Ue*1;vap|yphJ`;Uoc6n% zVfERsaKn4Q^2_G4-*`Nz{Id19U(fdo{|ANBewTB8Qn-~G0_w=yKRUQx5PwZPXPq}Ioj3&QDvxs-Y@%R$)*!gK@ zq2wv&=0aNP6BV5NIYHnq5cnCSd7C4( zDB9=GymV0&E(aq08{ra9en;nyK6_~H_@TLHgCoaJK6C8kGwx#p?{cpT_Cc&=d`Loq zsLr9k+%Kwysc#~@_3!h=giH{aATU8-g1`iU2?7%YCJ0Orm>@7gV1mE|fe8W+41r50 z{)e~!dGCKaeR!?aI~=VwdaH+)uFV}iv~;-fdVj5Pcm*N-rAilHBSlDOqun~ZRPSsY zs)y@`#4~X0(A<&3y)f!Uhu69d{j0K!zdA@!S;HqhOP!6AN1r)*c(uJ29`0=PR*^%s zRjsx0-LGSZ;9i(39XWEi*;wMsW2F;^`>h5(O&0YI*Q!w{89aL|`{lzdK=+vc2cOMm zn0dap{6BbXU-OUf`L;tHd=M6&f{PAUfU1CHs0m=lj%GeAxhMVy=Z{Y~w!*IDe&pHg z_bChakbkGyUs>5eTQ{3wH`4r1d@uw5KIFd!satXUpU8eNv#`JUe<&}l_m0nMyM0a3 zIeKD%Fx^A`CO>ie9(^YJ>Ck(@C!hbZBN^$uC;apIAElErAw>I&&yo9!&yl0K7T#C> zkIa220ge875BX2}Z+84j>rdiy-}~)uoUnzZjj*1kvc!^?i?XOo|! z&*rqlJ;{&hXUqTCk(_qBr~D`K`EbZ5O#0=<%Haw=4&LZhDrrOU9>y1wpF#Pbuz~m< z@~8P+sfd6&zAe{SkM1ddSW=x0sej&%jdM)@b$9t6`B2`HP3LP*Q&UryFdI8mulA~e z&ewwFb~li@TnW>)lFiwIqW=q@nvNRnR&b~nzVIGg}1-?$-XsuZIOC9-`c(rMn z^zdon3MlL3kXklyVZ@^K%XzHVP4@YE{M7uN&<5{8SeKQ%}A%jmRs@h z06%G#=Nk3sxqhQr54*D(xFipi@J1)B^}>2(Nt&%vT?VKKtTp@faQ5+;;l-p&ICJ^j z>4kHZ=U=*b_S}n=OQ)|aoV)CbsjP&(N~hac$M;!Xh_$|C|M=O{3#Tj3y?g=bF6%eq zQ=ArOQV~kZGXfufyw`%B#n;YPt6h8_T-*tPAb}j6Kni|kEp07?XQ8gy)zPSk@p9*kuu-fv zqnY5)M}imIt~`IMn8wv!$*x}MD2I0q6LHHM%b)J0lETWGsE0o)XeVE9zBSwGeV-9l4aOxRxD@aj66=AwLlWOP?k!j2yHam-XM-tdMA1%-bvU~0)zn=uYiTPS)sQvDHRPoA z&NrJVM)uY*TFkn89iL-wql687f?fI(G#J#EN)My#dvl4S6;PqYGmRS@PN6p?&xS(! zVJ6XHu^2cF79rzd0+7OpeC*OR2Ip*WRRxC6ukGFj7zQBx!|$&*J*ERcteSr3@b!-w0<+KTD8Uq zHk@jc&f*&iMs$>Fr28f5Cf@g=G=W+F7fuReQD7FrnF&8#nwQsHPJB*$+%DkLz2 zWf+0}LD?}gLsBiZFk5d zI7iA_rsu1TCJf4Gx49DIU;(hVnwZKrT4;hsdX@y-JN=$hqu$U_+kThMuM<&7DP|1q zCMJfNETu`89h-sd?uK34PAh6{Q=JX!j7ALY!~_>J#1w>#=%`!l#aaV)Mr$RZB`V!&17qYa$X}KS!S&U! z6~IXoYYfpb!XoobjfzeSsVtld<{=WrR(PXV6#q+_PmKr%M72}87H)`0Cyf3$mr}pg zY_zT=TIo8r05}uh%?gyu=yJFc-Y8z~w|b4WQ2izt!7@BYQ(1MuN!Wl%iNPsT>4ZHx z3|8N*_K50paDt???=W1ofH7c=85xYM&*z?im0SW0d{y{4(5Y0{-8XDy+S%^6>X8m^ zdj!}g#(Z_S)JiPvo#@oN39ZjT zL0gwDD8=f#yqj6XJp7X4s#XVR*sBU>ff%0X5^M6NE|bC)*fn7b-6s;WMm*=~o}xM$ z)8g8-il#jkT=nuN9enDe?HgfJ*v^chSlv-SUp5#9Yc}XPi2k)~;6+)L$p&81!EWBn zuo15-y>1ml;*Ig5ZHyP~^-N}Wq6KHhUd8KVO6eK!LEZGr|E$()4VlU z2`laH2KKtZtjji6Lv{oVeg)r72g?~@MW)T!bnR|qrGfq+Q`A8T7cHLet7RV7%)hwckRG!C8xaGO(>FSL=;hPs}9QU!cpnx~E2qN`dg4Z0XPn zo6DZ#?I3=1&1(=ETBDf70UJZoQ`O|gf!P86vrkUR%?;RPa71iBxvT+yAN};FeN9g# z@sT0d&0ca)!;KsR9aYylnEbnD9#p@2H~?>#3Uf&a$M|sXB5WS$0sLsShQcgDr?y87 zby^yT%1jCME+(uHY@HB+ygJ9}p|7UcHkE<1vdYTZE;9`bn>Dz3(REhPIM@nc{#Xk0 z3O21pJr_ZZslXXiDdCx(o>oSr{mz_zdEvrKFP;p1$igaoi^5;fhkueb8MDz@W>ktJ zUsw({+Wnvvx}}P0y&gn3+Jk`WE)O}ggGDN|KmPDc>w9PIrE>O6Bw38A>!Epvrb;|s zBnG6OF><-UAtW~AVKGqMv7>gs2WNM@^Mb26rPXKRImrFIdD6w0=J_o zczGV3?OgEEix+=2?)cc3Gidu&96_4I7X0svV%>FjkUT& zrpcT)DQ%f#rj2=*o*PwliIdn3@cS{6fSP$5w}h(4BSb@+!Yv(q`By z#w`nJJrb9*gk_VK@~aXeEhT(G!+JrIB`Hh~#h}Pc7}Na>W`w9YjQZT*RH@27&I&w{ z*yj`%q)HtbYPU&l!SpY(E~SCuh7PP-HOEo#jLNmPzr?!TH=2RNo_iH*dv41S3=r&N z=r0{Q{_OD&O}*weM#xBg7-q4&yb4?8D8j|!dhOF`F<`DD3dsV}a^MvUBr{2pJd8I+ z2}7|qyXSFAvfI;Gr3pk&jvlWh>Ym3eNwk-7OX9OL+H4{{Xi0=|1~-W}a)6UaV-0eN zhyw;Xc^eNx@{}93#vkwoCf{w)lLYa2G<4vTXyXok5_ew*K@ek$JD-V5pka1!J~!m+{q4F0l?M^?x*FLMkC{A zF$V67>9}k68>j1Ky4`@~h_U+IIELjIa-ZvpzF9@e;|w@E$5!_6##v~@DNfJR>L)wX zPx&E;98AFzGjXzA?LTW~`1-J9tn1^t`yb1IqkDjC;ICJ^b>9ap>3!-4qCRAt5Q|C7 zF4td;3*7*m39B4G0%st+McMEpbJwO`OIunZHcoNEpj&|LUDPp2{>iNIX~Q{B$;@WGsnj1KK<<5-38OH+BhkIf~?%AZ=Qzy|*soi$hT}vLFad#~3 zrC(ToNKFz|kcirApHBDMar(ySJ~38b7-vk&$$YXguO_w<8?_(x=L z)Ajyc&RB~2b;sI#5-ycQaQwo=t|M` zF4naxdO}$HJ-pti-AUciIE#&J@GV6r1NBzH@|Iy8A+HTS`}Z-)OSb*uh;zGJ#SyaS zFPvYv;C4~!h9XUk5;mIcYCXM8!sRR{P_CwrC>N0kzAjncltr{K;-aiP6&{9fSgp08sR7#L&3{GV$V4O8Vc~1nxeyxiXoHDa5am>i~5aAO=K~UCV0Alyh)p}LWb*i}3t0FB{KZL7%Cv=z3 zM>!akkw;*coLnBOWX9(&JjjZMb!@3{f{!s~xmv3@ix}>l{#E=-y3FsE_GW`3{Et>R zm-~*qme@=`B#)MyJ;g)>8CdFy)Wl~I=UP#4{EI~1u|b{Oj9+}Q-Mb)5uCn1JtPk2l zC-$_f%Z-iK(v4b^Esp(cSb*W6mTj*QuvcF-pt* zRt;A;G~yM&ApoAoW_5sgUiQ5Yf^Yopmu4Vw!g@dtOuJB0&46K`w}E93?PR-X%EXzG zr8X2@rUhiXU8@HR0f+ycJH_RgQj>~_-K~M!88`x+h5D`au*;=5BUfnj*5sgZdVZH| z$a(15qKh;mhmD)76|Ka8MvxKI^?wRMHf?wJwA$>I9`)aCE@c7U&xzx6C_5 zg?lVuhW9&iaS#OZIh(vV>m+ceNb{1XEt?wghIYsSopGw(Ut8P2oj;Az3O2);C6r)9 zE`o@sR2OCQ?hFpr>-rsM$q<7iT1v8 zy8~tn^xft`*P26xT~EMPaA3@=B?bcUt9~AT>b|5N*n0 zMdO{&?k3^_JkxH4gc|ne%~NOWsY@A`{7<#t`5Eg0G*j>5=r!X_C!^_9(2VoT@X9So z$5QR30t{;{)v56gmM4nx|RcHrB zvhOZ@`*Wu<5z@!?PTWUk92_xr4F&u8H(1TSDp6?LFV-`BA{Ad#ESg)2z_2t%I(^T) za8Q)&SUQ9yeM=w8WK!#r!X-o=7MZB-4U2Y?G5Y-jVduFdwnKiPCF2@6Wq@)tn4J3+ zfm+Rdv)Zo9dDG6tQ~F9a?MYHk`JM?wYUZQ`booydnB18AVgP0JM*TG*)q6GfNxZ6geNi9rs_*IopgOgZvXFz0(@dhE?$L2&fSH_LD_c?y++e zAs`CL`}c(}aAKmRSi0?2SBfJg{t* z9GGi9d~yzco^&iSRAeVP)WpK2YFct9^#8CaJJzOc82rI1SpL-6hMc zL{#T755poGuAs!eUwNztdjS%4$TJb`5~lEExO4YqW#{V9-37do7%Wx3tVGrrw#y$1{UWjYWxJsHNl3ebD;YbItm?Jrl{ zr;%`%?Jc1UP2W#_y(*S>TD3}b#gIvRIRwfxe(=l;rS09D3;uco1Oaw+>0K+=kY4As&OYbBJU zz@HHI_7R5{5P=MHKR@X+_tZTbG{B}MmSvUu;?jL4>oMOFCNm3!ha4-}rO zf)YK;L5ZUR6D)~ha6+EMv?xrR39f{+;h@|wLQ2ui_+glck)O#A*fr(x1^Si&aScWf z$c=Fj0%rvL?xEjP)O8yvgujW}{)#+7eYYFbznIIk<+{Yua(1A4^pz)#1@m8(&0&ou z$&!PJp2pcTG>=YBWX1-MyJ`Kder8?XZYRIb@*(%6{X+bO(3ilHd5pO_^>9Am6HWF$ z`9w3tj5LJ9dqePbGc>5R71sV#7p+8`glH+w!PTb2*={=DTb|a~weP(3C&|3o-}B zWzop^?TBt5AY(laj{-3FRRdvP{M3x}A_W=(?_j+>P{p_5h9Wb=bUGyQQF$rB;Ww}w z85qLGwja=2Hko|s3m;Q#xc~ICKSod>RmOo7l#!sZ&_#Mp!Y-)ntE~{?(F0~D*ejR# zq5TjDqP!+E=H^8|)fHuA{A^T1Bsu=!@XYdVUA`;Vm!A)nns*ZrgGj>B7-xKV5b+H| z78bBx^OCY>DNGf*Y86^^m(jxK>e|(R!8Ye|oU6_pwi?(O>o0`C$*9%kpO?7>H8X&9+x&Gpa~=F;vyp&@S0BUV=9` z04>Bx8lAh&qk)=I$kYBI^$!@qz0ZU?-AXD?-psUXsyyL4_|TDmk?~PM`3E01V&`zK ztK&y)Jas?*_~Qk-;$#kw7-dIA(4VC;1kVjl4vGDRRY>ek?S4-mMgH;m&D){cj98k! z&jOlwi}HQn7T(MF^dmZ!L<-)(9dHL7_qCAChFWxAGFvX%3PB7NKAd8#z&a!l`SnAf zW<|NsxzHJ79Shsb+zR$+$z3WMcQYPtjAT$Tfwa~*iKTHV&%EInvl}7(PJWh#9rjjr94r?C!PF4k47tw&$uy=X5jy0(Kz7tc2g1-VL-U%ZDJiFWF8-8dlhHHmxon5=5{dJsH4rs?Y}>PW2}tk2+1^a*zWJ zv7oTkXY6?kN?#`_hT!=ccBcp*@eFTNbSU)d7)dDX$UpT8;%`T$c-+-%PZ>D(Zc`9= z^BD@rp|BVgYH$YlKpD?3fBjNlil*rps;}=+Nwrp#5D;`&+~-ykG$4G8x+Dz{>SVFu zRYs7I3+NH{Vbn@P{{)i|@T>MviWpM&rbxAy^RL3=u!;89gUEr1d>b|kTS&9*X2m+m zkYwf;=O0=!1mJT(FQ2qHGc1K1e9V>+8FwBby)u;J4=i$hNREQ)rdYyz$l^pj#zGWm5Jnym^+M)9hlyguy;TMl$H~u!(MN=t zHHDMYpuqvO6qw(@>T3Uy0J~xc7y^cXAz%m?0)~JgUl2~vhIt%YHHV9yZ*Lx zecAO@ed9K5vn;#r!c}$EpSup9(dyi_+nP<>x@k5ukU9aGrtMwP-fW7tE5rBe`o8Fw zxAE(?UiMA1?!pD_wyv(ig(lwWcHPN!+uXZN(chv4Ipq-F*8u% z9=i8cwd@aF|GI7dUe-U92XDUY%eLs7_E5(^R^7oq-))Fuu|CwNc~`dUrdS=i_e1$# z+p=CBWc~YtA}oh@a6z|U>d+(C)F&<+pyz0CUi_4cN!|5Vh)P3iUGaPvQRXz`+LgZ2zt z&Agdp+WS4NW<>J3df#u`vI~5Et=|t0-)wt;oZ6O{_Yjwn85LJuv)=Y4FF)Gw3es-N z^#|L%tGe-!ZApub{6BBjYe?;tTpf-%YWW&t9&EO)>#_}aES288smnQ)ZbWj>7Dlw) z`~W9co0Z&#M!7%nV0YTvZkwx%>S{XJ6NOls=Rh;1oL9GYQ*BF;`Q1K zcqhv7%su_WeG9&nvfiAbHQeY_2IGK}8V-25MF*&JH#tu?qI%Q$VO+4$H?DZsR4aGg zv`)K$y{r>BFE1z1teg^fEw=0a@=c^I1Aj6rZ*H=_a&h*__{w}$w9A~Fw7c3?>(#jF z^S}HszO;gm9ABfD=J(BNyDs>k7O%fSh+I5GijeaEL%C0df)noxtwyi+bhORb9?9Rv#D0 zU?Mkdv)#B$NSoR-yD59QGM(I%(D!0JId>C;+?o!9LvPyUSYhFnEs+>bI+yMq(eyf8s^b0(1v=gOR<02I8*S2 zYWo8EdId|kNcv%D+lrCBPQZI!D03=gd6ClOv8J}g}?nj zoq0IML(Dowd%7w&2$cx>t20-ut3o{g)2Cj5p2?4w{4$egRAfpZyDl1w0g@W3#v<~w zWnJ9ot(8x%3fxGpT=^{6Vf@#Rv~8LmLI2pqvg<0+{r1Y{S0z?Buu71NNyIK? z8Z-C2sNEGBlxrCAJDPoed*Ob=4s$T@n{)S@*{9jJOrWvRrv*&!wrttq)8G6z7xMW) z?9*E;2R_{*ok*1ao7{8{Re$T?gexwWv9{02{~zCc_oo-BM?z2JDbD^-WcJ`QPf2nZ zBqayqbI_`$Uhgt^5vn~EXx{#vtmUJcr_vyWpd6BHbmwl>)W7My4nd)A%lkA@=C~Tv z4zs-3jdJXd-~ndKi~)hHY~hhmCt0sqE7`K}f{5LPoMBTe@33+_XrzbPscyK6H~`6B zE)zW#)h+9wFex2Xkkz)Omr0Uz(|fEUs;6MPd4Mzhc(j!4)0=g3l?@pn`v-XR3nTYW z+jS`5&5+6VRk5C;QL4n8GYe*jyA%_S+?*xqnNh~DCk3U= z?l)a>iCm%ijCMsQ`tcf9H=HX;X3_`>rz@LLYNiMs>~|!1=_I}qFCw#GUKfU)ZQ$&W zMcTtgd{>s673z5vWBOp#`t&L9Jw15yBPMl}@S_v^cMJ)=^!%vP{CEKb*Im_5-&JkD zEs*u(3;T~?+mo1A_52`-N4ZzAcz>pAd!(g>WK3(9=%v`~6(w7JvR30OJ28=gN^7b4 zDGC_5#|_*}VA7-Yohw*3s*^!?8it_e?0!L%B$@SiB~8qxd~Cn zxCt-D?kTt9P(%4xZWZCU%|NMp&@A=Dm$tme-oVPCEQ#zL zbrY1M&QgExJkNaTac?H5Ju-d7nnTKt_*birr|#drasSt|XaBc|?!LQ0;wCfT1l;`= zjB@pcL=@lq-MOqfkukT(N!&xz-ce+UQLL2d<>2>uKf6w@Cnqwhaaa~aL_~v&K-@FOeCqJk!gPV5W`7ORTvR(Fu#VPl~?=ro8 z`}Rb1@z6cR6?*x@9n#Dm#hbix%&pd&w!lIJyQ$QJ;65*%AAH6Q3RY#|WT*O%Ml9cQ z#)>P-t^Kxxr3aQ~-~GFyj}2VjEOGBMxq?MW67}El385B~nTDTeRbMv{aoBK#@K$AN{}Ok-9;u@ri8QIu zg*&9fxnjNi_BBxX^Y^ba#>s>@94-7W%PD{%OEZM6ZTSKAeeXdRI0yP$PJ_Oi(IjoG zu|xis*axG>$V8MwPcj@;`SIJD|9HRvJYTl*&uJ*jv(fBO zKRq}LY`n`h+rG8^utQz`p28eC3T5pObN5A6^Hk4;TNc}!+um*K@;z4KsG++=?q5Ww zWv+6XW1WSPQ^X#vM5FL_)t1E_a;9r+4}&T;&N=mk7-(Ng?=1Nsp@Wrxqn1VGl3Ag)T1#9Zo6UCeEFZ3k#}4v|}cL>i7>n_mlA+&;Hark->eX=Pvd#ydK4=wdBT(IH;dhf0uo{ zIG!#`!(P8uFSz5co6T5}#r)7CoU3mt*dETX4s`Jc`DpR`eMEaVmfWlnH;!CMR znA4_g>4n4Y6MV|xgwFwd#x&Eqb39Lf!h!N*-V%oNV$cZ2vuLu(c5n+U!$$Ua1BsXr zmaCzgnmk$Q_SX{>8OCM&R8yckdg1~~vrMq4-gFbj#xPWN&;84#d*({SAuO+xC-ZCd ztj~CcvNOkxm~1}TGFtSEYv}4+3*}fum)NG~`O7jg$r5^(#WBRCUdrm1kymN*rgFb^ z&)!NN%1`e14i(4|8J&fwP;kxcOle?wHOsBas{l&;jhOG04KMkha~F8H3?C9I864eh zvt6&K4Qc)yRoB-6Xk9x*K2xVhXrd^xd5mVRCt(~V%$`cvo0AkYRQILsilVKrENymD zT%2*sc|9t%z}J0=6KW_Ru@1RHscwl=Ki6)t;KF;cV9w6d46+%DVoTxvqBUXnqDCpU zsksB@u6CjVQbJ(WiMqgEhzdwxm^b)6Zj?ORW`mtetYcY6e#Z~pvaL3Kbc|P3jpP7n zDLI(^twG?J{2)!dVzXF^omZMYGJ32>JMM^1Cl3`8b+6ta;x!zTq46r!S=CA6kudk@ zX=#Q+4Qz1{o@{dxE@ySjcx|@q@(sCk{TgXV-r-9>x!Kae+y zdDA!7OgGW9ljRGRK^glLg52k2KYboT5&+(g{G=vq(TfuL3v6m;iW4&TLHLg0luq=m zqUuSJ1Tpj$Ime+mexy5^^B!55hTZ15c0%o$w=Vgg8TjPCsAy>%lax}rlI&m<%=FD$ zX@!Jzy2Jol+U#!ij)i=+38HB#gCZ~_%#nlds2|i^59AjYSZCu zt~hYjx&eoo%0N0DHerU8*yokV z_FkW0@ri8ec_0}{%~W8Q=|UP`1p4OUE%1l~BduMoi>`BD|L_gUvN-4Y-e+UnW0^y% zs(wC4_OZT(6TQd2%Kj4%cP2y1B=&oBQZjY|?$L1j&1J_ruJ(?G^S0=gigS$V}E{J7t&1A{RbWd=ZLc`vVtnUd@K3FTVx}4CsI- ze<0Aa&a1>cd&UDuA`P4JiK#c=BkqVBeCtPGAOd^Rxw?|N)g>GGz@?gWUt!<3zKLRF zr)--p?oWzcfLb=VsGsBv8pwx|dP7R0)MEj)faVYSSdl9E54vWbsw4aQhv&L7Y+65& zOpf3n`zDkXU)<0Sa_tn`Fg;JPQ=C4PM&3%H;)wpCT@I~sVdDe-kfjaiGDw7{P&oTz zG{b{Gk5KhZ@ZbR-MY?cb51$Pp^;A+hT+7c*Z(#k8I($;@wpcY!S*`T_qC9xldo5=C zNWmyb?igRvRfJ%2scmA_LrfH_DTJMBb?G<2NNcD7`8pNSNgF(3$Ffj`FXp2W5(`H6 z)4C_%!K735TVxHd9Va3b(-Q1sd-QFA#Y#+C9S74__F`K&{69Rj#g->QDc zBfenn_c^o*|xagbuQ>K}7kdZZEStvH1%(GJ14B;2ARU za`-V>e_MU8S5G)!Jt6MH3mq+eJy5-%x@0HsH%5EVZNxU06FD+qAeveuU{+I0S@(Gr& z@c5lN-%HeFhRTU6Urbnli6Tj2nF|i{dD;uuZzN%EaM{OB53oFZqvcc{$NBxAzy0CG z>n|qRF}yfl#%DSbGrSvZDmBO*KCN~x$I+>)eKYq@3kG5H_G2;NG>-ssJ_E-tkixhQ zhfSTFI0WIeXAq@@sGjSmD6yojGTd9QR!k3YB5FOwCV)Hua>+`E3ZE+G_ow|Nr5+%h zAINWzH;(h(yKq`w)IXx}l$oPNw$T@~e)*2@bz5zG(Mn~uqIvL9Xk34=&lFR1basQe)1yh z$G?%xF*2W!+sMP``d|?ZoD;_G1~N9Ot3qzsEWEi4RZXz~HGg?eI>`}nhp&=H8og1e zJq@Y^B92sxCga{x*qEyzna3b>q!EB0l?c_f_d7qvb$4i#1kb5^9*!VAl#nnUWMFQ@ zLoGbpf|?SmcFd2E4Mq{3I*x&9`Z!A*Fj`H$Q^miZ_;$L zud4P1zr8^iev2vs9CUz*Hu7Di&jd_Eas>sd&(TS1G~LZi%TmvYLT zBg?e}R>c{iu}pGcLNuLm1(MXkp>ztVy)R|?=p!{9sa}RmM;EWEnUX+Pf zov@Nn!CA@4Pyf>X98Mq=a(>!PWjElGcjO!ZGCu#M>UauLzMREl9#QqfKsvp!r{KTI zo=3;Cke(M(LiWy1{7au6*S@Ts?qG6{-YA0Fs($1G27-1m2I4!mxKCQ5? zxxq0H+ht2B62S=ci^DcUyJxfbcthL~$UW5{(BKeccou?~>1kHd2!9xoH)s{HrIOtr zmwgg0fkOCq-}{C;Bf@+@K`X%OJK4;W9rzb-T60loGU>gGUzBssXACm=u^ZUTQ#gUA zN-yNm@#kwelqAlho%1M4wOl?WcacuZMuVj9=E`(7o1HuSzJU}g;otoaY`mczzny3U zA$iE2U$Qivzy&RZ;Sc|lx%9q<;}M1-YkFW(OHO1^3mV-lIiEu;{}Z6p(n`YeagX?m z*hGEudzG_K?qnH&^_bfrr_XW#zj*d?AULm?kKlh&nq9G0#`F-=WR80cn{B&kFhd?sz&c@v#Is1(xXmrLk;2S4NjY=~w#!u_##t;DLC<6=dcHs&UrB;v zNuBz~KX_*PA*$hUtAaP>&M-aVrQ}d0B1jEyIvJf4LRlrbxfE(s53Ty)C<4zn$Rai} zC5`ZlML2=5tyg}_?KL;enAo19Xr(^}wwJqz-}D>RoPZMI(h#*k1RR`X7*HGJu;;q9 zC+?U2cT7hB-QWMymXY^7;nl2E&dMarJefF$kMK4aLS`ae<4DZ<;}_1>&r?FM=W{T@ z(WKag)(w#|FjKNadeT7FxJTY$zifN@uim;;TuQ_;#RQR(tnW_;g%K zf_KnKL|Ysv9Kq0Eq5!*@x$rvwymoP^hP^)M*oTO*6Hl`erwR6^oUBpt8&@~7w%}uF z_@Sh0_Y(=?QuYuayM{mIDT)SbxgNZTD#tAcQIKO6&*D}iy@ z{)2`Oq$(}E#SYVaS?|vI1TW%Rw&LPQ^n3dW$lw6QU=-y}HXr=vmJXS(=k>5-Cr1f~ zi;5(Uz0>uNFyoJ{`v@r`WpkH#Gr)H-gMb8iGE$_Oh78LH!m7|QMfIK3N?Cb%iShz} z9@9Su_mOF@e2xJZw@&LJVospMK7y_&6qBNX(!BjQsSf!X)llKtigehb_tEDZ-+b5tB|x zHjIM{_-#2HyiC9)Y6_p9^rQ1+vN7H}I4~vD_2>!lt9w{T-yvO-;_wO{t!$q%j_Bj+ zi5E1Qb5|AVj_g@V+T`_zm_bYtL+_=D0DzWZqO0~X%BN1T3!zbS;dU-^KmAcOX1nmO zk_{mLo8ogubreZc|3@-GmBA0(`}GBJB!9YN$?0k4zAEu-EOUB4o*t2ANm71A4@I+N zyGoFmGB&bcH7u}uT=+;X5DiBd9*SMUQ@efJxD8IrN_7vugkBJdk^Uf!{<47A65ha? zN}S1%h>sk(k40HD)NOnpUyBEXvS1k1pvcQd7XI0ke-tsY8D`oNIPgQe2r)rEh&V{@ z1`jrCH~lYI4z+vz?G#xq4KE?ct@{S`7LIX%-#|~Ec1o%jF7sawBi%!}?|4*$c8k)Z z2(3Nz40AYbfiQF+vWKxaj`qhuTE^4~d7?}f08;W^&yF)fnh-e*N(36RVyz`9z4Jji zPgj6LbqtJ!f59MVK0YYhqFwf28@jyt48FuG^CL0{hU9}8Vh-Agdu_-xU+u){)>~Dxn@YKznC@&-158JC?Y(twm zb$`UkBQBo(3-fkL@zr$_d{L`Vy>=0pN17>CwGk2Gf&WNh+e&S8V5>xU){Liw?M zB2o)~;2?Abg|tU>coeW5I(W-XFdkK3?96)U2aQ4i#ZSEs^&l|Behfq3S3-v47RCm>0Gk&cz- zLt;4krqGZo9=+CaR8HMjSUp0YgPBJ`GaEiG=f_q0F`S{RkARHF*D*tVkoi3<^1b(y z$5jaPW~V_YI`ZUwfJ-HqeDddSKta!CoX}yzd-3S_V#d z+I>q07{28YkR!1fLI1bI193&5=AB)S}YKNyWf7)RL}WUF>0DDl<7X z9)ytKBZ-11_3?=Uz(D`wx_@Zim;n0h11pObrmF`FIQ)?#Ur9XZOLcAYOG=s9@{wzw zeR)XYz$XSmpxkewKLsqj9pp-!psz}&MH#Z`jOqtEeqc!w)ICu@_lrqcK3&SML(MjL zWcaX3(2r0`ROUqExI`gw`Z8_GA&xgCYtjxv4HYmBb(oPbk?8iqh4H_hgUs=h=-$Ho z5f4a;9~>rklft!*;GaS{J_oSpon?a4ufh*XI!q5WG-&>~&p+xml`6E231)ozf)?8z zW#=FxU=Re4_QTX!34E+-7-owUIE`@F;zLvZOD)9~*~e8HL&sD1`n#{byKt}MK^QL3 zps)Bn@V}!XMUyS?Oa8LR=5JjnLfp)RGuSTqG7r%a?s*-Za2hEQmyOHgQ9X14R)=>f zLWA&c8&5|mV6-_buRh2V`x7CNvNT!RBM3gN@`h_!3gz{-WGUem>Md17t zw!%}zxjBTxva&jr(w4s31Uv8y)~I#i*eFW6IKjsv)1!KMn*C5LjG61?!SAYF;RoP( zLXtPM@`U?%9A84tReIth@SFd8>TA<5?&;~X-~FFwkJ}(!`s^e3s}9cTaA?Qkt;U1k zU;<@##CfWLm>RI+$uthz9VrPVii4OhTVZ=Fz-(e12JOST0~LWZxh)D8JGr=+=-O|z zB>zMz21gV}mvIC(H4KK1>#`w6>Sf2r>~!oH3VeI zU6%pzz`6UAydMV*h!czU2Wb6`Ki{cpUGy{7oaCg2{AMyrLUP`s>i8??eQ{UTe!46N zALEU0z47+r7n6}Y&+@+VLt(;7A^wJd9=T-!6VI@qR4IUDiPhd@hHzy*azJZw;1ELZ5&+4AV8 zCF*GmncPRsGpvDNaJ)l*m_}dP`@JY#)v!NT;H+i8x z-{6e=Dr5y(=%D+KJK)$eW7Gfv2oSc7dTlseHt;%hyTDr?7{SkZ&+uxJHD0q+ujag! zbE**FnF>4(RbAl)d@uNu#}|B)CZ38}S9i&W=={zdTJdLD@I&f26-b82sfZg9PhN`Y zY54SJ)xecAkV|#dH~b5Kf77?)y&|8swDIn4I^^s;AL864GMNc@yfS$RLFkqM;}73) z<-qT=rme8S70%?1FEf5f@&H#_X8G%pLG;(fNS0ZkHI5HXm3Pg&)p~Z5{`VuM;Y{i6!BzQf*Ncx z*BcdQWzW5jj5bsA?>T|N(&`}o8 zWu;WUFL<)|BE^&m%9WqW{v1+)vEf#(w?Km`Jdzart+HA6up*WhKW!Q1-+GRM3Q4ou%5ML|8y92$&6 zWWlIGRQ0h%`7fD#4APf_)4e!-1hR>hF8Rw`l2f~h3_sUy%oV>TUCA@FCA>tTs7|iSO+_@P|K)h!4goP;R$DKHXfrG z+&>CBWCI4QN{lUX?Bc*U&O%uPD>cy;XW_{u%J5%yi# zc6bTqysEDo_l2AO?%aKLhWC2nZEbwV8(Zr8@yhpjgKKJ@1UD5*Lcb0 zyJC%3Y+v~|>gmhr@*Bb!-v!4Jv^!r|IDcr1%{AV7Kjnux-z(Shg}&{%!~5(!wPgd2 zNB3tp6nmO}c1Imu(Yq(Dd(vGzS>eCwMRiZyblKpQ*z!7EzJHyc z!^>vV_qOZ#8qm5?4h0s@X~~yvx^M6jTZ%>AGdq1D@6QItej@9m zeY4)p9B~a~=C8_byY8pW)!*;}Oy65jgS7Zw@hM)rhc~0+RgGxI7iBIfMccwb_3?G_8X5ZupldbU`c z#kUg^1AV9CU-DJKeAhW&3VVwewnD@=Ni~A`%=lsY zRf$(*E(^B(tJ)Rcy@+=Oc73tDTbJ+3_2uW;>j?E7pSeIh&Z08+Wq;eOL^6b$uMnSe z&T3YCUu%Z=eBQTsDex7>xvf^^d=A<1RjE<1QQ%%2xc_Zar~8AKHWQ=Rfg?>5*9wRG zA4ONb2*{+jWwK`)fzAZq#F2nR#*Dn(6m9@-vK}g`Hj)Wb3_*msR%g?OntaV>BSpbm zcNYt#yjb`*q>{6j`j%8tpNFD@cWm!qY4}v2!*vA{4!v-tgQ)R}YdEkiUf_D$Y}YCc zQo7V#sBnXxbIn3U9p+EJ;W~Z@f(!Z@2DCHM*c) z0~cAB@B49TB0>=_GJuKU!wpzSx;7UEA4zs5t7;`#mtgDPn@m3E&9(=hB{a`tHA^8v z}=(;3yh4&gqZjF z>|Z_qUE}bMalUoFE$^FmrK@_^HBF5dim%trL$LC94RndKyDD)NZI@d~^gR`rg@- z>IAJ$UxYt;Kxssolv$^<0WX4Ik_vyTu3?x2z>mB-V z=xhSGpM6VNOF)oAWYZfnz0bjLBn>$oMoFLEyp3(Lp*^Fs>{3d!9&YhYdxb5*nfw7U zjn@OAc%hqZnoWipTMv97FYu4jMejF*Nxs3=y0|ajigEZabiI-O%wO!%yhzPEkbf_C zvQ`>$%Leq?kJ8)k!fuGdp%+)N;AFt>;ZE$RG31-U0xn8|4aR>HPEnoF{T40(%cgfo z%99&;(oP&!m7bmRq?lt$!#kKk0*{|GZngWYd+#c7C1wSwZ}5iGPryRQ1qxScUUi3K zLj54xqg@9$fIl{e-y*=wHupJ0n@m&p?-K#fJ!lQc>n$!9x*3xl#4a?+mKC7QfsfKp zbV(!G>>QcZruA#*%xJM}>$jZ#@Dbrw+pgb6iDspyKnZ~a<)0xmh= zBqPnaMDkP8_l?dS$B0Att7m8Kx4wOZ#Ls5(`+1CwC|d+?d-|E{gTjr2b>#LVX=bvMu4h3jxqMV^{~Mz6kC0oeTJ9A;sZfnQbD_nag z0UPfT!Gr0;OlxFJ4B}BneOa`t=Ajm6o}BWY&!+>9@+6&>NljO-GR+z3I`w^z4lnYL zPUxQ(KS=R|F@%kNWgKBw*!ZuDCG7l*;|V+c^I{6AWlob{`A4^fkRmyoc($X#g{_au zk~gt1`{Vz@W{7j!cxEAHa9Kq>fo+j8lleuIu|KltXPuCTJXi%@%b ze@#)4M6atF17-`=1566jK1zzFcK9M?#3QvN65d-Q`+8&d=Cild_~2A2I!Rbk#XQXo z_l9}OQL0(**j>FbrsoSEt=lwR|5QsQSLxtnK5xy>L7u!?peY;w>^8-ViVZ3;{#H5HJJ`0YktLFa!(%L%LRe9~^WM+QdwDaq2z3joo)U$W)!WGX+ zV0$KA%J-XfwXFK7a7j)>zj&eFZOTCH>^xpxS9Mu8mx20hK3_Jgaz39eoB4IscD*)8 z9j>c&Sr_-^u`YU7+n=4BoGjNx*SYW4+ncKX3*-QxFs~PF+qBac@0aCp3r(t%1;{d_*{%JucRAMf1Vmt9xflzs}tp7&>d9+$pd z1iagB%53K6()tXzd*Xpygzl@V>%T6R#j2d@tP@x-?ziir=Ug^-H}kganr*u*JI5|< zb+sk5k4<5Pc4NNhyyz|+|IxYsVbeC?x!=hghy*SW{yFtP(8!3iWxs7}#UPl#n+aP^ z-sV`|z-aoujd1eIxdZhArhfTtQ|E|!qP~v|ITJ?D-Jl;7jsj3=t*Su%0DEvt0>TlZ!nbSLL-lFxGTcC5>PDr!i*-IIxX-n6B=*z7Ju^Dh=N)qUT7;nW~hP49(B z=i2gyA`{b)88iS{4MAnzK}T2a*~PbxPR!9k!fAP%_>X3bE48OmwyrK8q+RE(cA>4X z1cBUMEQ-}id?B53H&rv3!|4cTXEOfphg{DFUA|bTb?l8hVtJ~QTsC!IRJC$+ma!xw z5h-O$K>(ym=FE+m2n{g4bFX3Y$59s272Gi_wi55Zat~F1OH*mf>*_sRMuEW8K~al# zc?(wqw~OZDN~o=!gAC|bRuv)_wF=(@2WUQ=tCz&rps^~iwl{EgH*T|SH%$jhJ1-!L zEtA6tW4P6;bs0k8LdH}CA1d_gwpU&GU)!?o*E?_xb&!$3GdRB&)p30zEHj#x?zUXR zY(K)0W!8Mon6_4k#zqKF^77g(7OBNzK?HBAcV#X8%6o99oP>bV$utO`OahL#Etkzr zjd;9rh`2zwg2DoDhdDqHoy=f3%FNM=kqH0Py=F|qTjjPoY$#6Zb1$t+_tVd#+j{47 znpH?Uj3L4LE>#m#HVp`D)1;JBs}9Z5}oqGlGSBUX*h--IM) zni>G51UUh(o8HkuYEmJX;6Hx<>xx_nozFFzmNO=yXB%rn3)GxUZcL&&YmR$O8EzFb0$*2VqRst`}b zz~0|BtM1(00ot4HLN3n`a{G#!GK4rZjw5hh+HuIKBvlC2jB=Fvj9z%gj8wHGyFWRj zg~UdViKP3wz<(3TJmRq>C*l(ne%+fz779-#G(dim)zUSwhZ+H73b1P=6Y4)Wn^QOR zP-@X#2{+oqTRzn8p)EEWsz9)QL}xYE5!4Z-JX;vGnI7gpMfl*1{dCp5knh8n9B^Ik zmBd&?M}z$WUbyDZWSouBp)rv`l$zX?V~>EUGNaSocBX=|?|lp!XP zQ-I~Fy^v6FlAxz;XxMsNzvoVJ=zBnRkB+EwHrTm)`V0!)9dKRb%nJfq7Esl`=iv@T z!2nm)h{()(>&By$RvMxrr)vA9$RlRiM(at6cp5`$mnU*JdMY+W*XuszQ^py z_h(oB9a9%SEJsXEro*=^j508ZLPPDCm@DbbVQ~QVrgN7yJo?LkSQB=m<-PB%?qDbj zKtH5%G^BFCBjp3}PLYw}0PLpm01SpTi_Yc{KWrWtLWgfK!gllxgI;?4T zQM~*8v`<(Nk@g1~Yeem4V&yAooTz%Ym&rHtQ)5@7qEW zH;iyWAdF4lcv}pMfIZH$x+H1x&+F5mX;K}wQ2omk#G4eZCsW$iAw3π^d*Pdt<| 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 a-*@K!2^#qO|EaC~2!H-C`~3&_{(k`GCTU{; literal 0 HcmV?d00001 diff --git a/tests/data/mri/golden_master/mock/test_output_fmriprep_subject_exclude.h5 b/tests/data/mri/golden_master/mock/test_output_fmriprep_subject_exclude.h5 new file mode 100644 index 0000000000000000000000000000000000000000..8a40782994777f2f8570542cf73cb3e687923bbc GIT binary patch literal 2260802 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�UOXVx?46?fpx zxC3vF2fSI&yrl6ON;^t>N^dANyl?9Bn@ZnO`nJ;BO247h4VD0d}Gc?KIfkGhLA1*3)&;C)!=1Q;Lq<)WS zCGNCWM2=UgjYiU|u3XdL?zytkt|5Z;lhWIzX%0HyDSO`8pm2Yx=b`;~o6~8cWBm0( z`$pV2T!~5v0 zKKW%{S9;xQE2-Qle!W@z`qk{~Zo5~xF*Q~68um=l>sP0yPPSXC?S8A47;8eGX|$KC zjm!15R@E=nXV>e!_x(X3$<| z7<8{g2HoqBLH9aj(7g^Bbgx4OPqveKi`sAalh+ycNFXS5C1lUN4%u_BL-yS3kUjT0 zWN&J!*R59@mELA2WHN!;={NdGr3JxAd0(ma;V#vGx>dop}oOy>&-8kvA zTS;6|9j2k%-TGP`vR&!+Ta{M7xh!pSgERy+qVOlLWl-RKk=JNM;ZI)U6wB}@uU`pY z;_yz+(p0GXx)2?UUMSXAE==|hiZei&WrMnBiZejdxiHy3D9!*im<{TlDb4^L>B40H zpg0+|l?{@6mhe%>H15&pM#S2+QFY_EY@~dg&27YabsKSRL{Qp;83Ut5ylp+st0VIv ztOxW3S-9M@3x6~^z7coP{-T6?jHupy%}%>J66qkHNt~n6b})bqx6*~h8?CT8 zv46Rm)RU+iuc1Fq+TFy&+HZ4{I7g$gG2p%wJx-zJNeuk z(R=!aZHAf5qwx01HsV~{QXI+F=IXagb*|m!!Y1^O1=stHi`Cct&S#Q-aeYqkFUDoB zqrN^iGt9+ZyZKQ0}V&Y<^uh0|{5GpIbf_1^H_t@N_# z>^2^Im0q?S_v`t7;lEcn?RGx*3+F-U?l%6rjmKW4Hwd5m{eHLb-z%JUJD>ZF@2K>5 zivMoou~+Gh!ey_%Zx{c)!fChj*(+Sf&ByQ`m+m$mdzId}cqrO7G`|<974S;=flo?RGxf zE&tCup5edScvyP(JAKP%LPe6YI85*_#wCl>{d%6@Kf#|6xL@-1pr<>L|B3wnJmgp|zsa5ifA8@2aF?Y+?ly?hTUe}?BEYWNPK4{Es{T)y&W_sgvhc80i}&HtNtLFd)e zfAUSjrFR*~>xZZ0)bS5L^zHvfYB4_V(nTqHrSRGmYA$uC)ngF6x4`nUDN zgiH{aATU8-g1`iU2?7%YCJ0Orm>@7gV1mE|fe8Y8hQQBOzw`G0()-_zA859E2a;yJ zx4wV*+Wf)&%LnSO_M7zsYk1RNu5@u5Dc*E8+pPo3wa(`LTD-BJJOhXJ&o3P4#YrzY z(CpUvugWU^>L5m?i7PzIoz0^Mk9_*Tdb=4P=xp}ZkwUdqU1{UquS5IcUYIX0EF5Um zm-XYJ@{t4mRvlN9CA|YH)g-0_o;q}B1R^_3|5H!h*YrPiXjjuuaDChU4labnRdC6H z3Q#4m3^fAm(80{bl3T*3IDK5<*owQ9`odG$`zfb(kbbApUt8NmT{jwWH{tY;d@5TV zJ5Rp}saq5Nk7O^*oZ1Ecz4Skwm)4#0zusS6M9}M|~ zNxxcOJ5a&p;Pqam5*ms-=wD2Jiqbz~9q|s*SM#}2ApsS>E!9+yZYh0OQk_jIf8LHw zQw;ywUiu54&Reo!y7n|ZJ$)XdvHi7buNv`qEn01NBO1$Gs;~Mq)2)bRvm# zs=alL`7DKtc$5#goxa{$v-cM|beVXyVTtr`weV`a5!-V+&9GHpt}e%osG3Ch(*oei z`OYT4>qz>oItpBGms|DKULC{QRm6Lk9WJ(&AEu5 z&o(ixa0MqsC51AB=(~&Ye2_T;=@n%S)#(Nj8l?VARo+!YYY-=j%7> zt&)jAc?rOr#QWK!Tv(D#3J`U=?TtEai(QMVD=WCbIO?^d-a2kOU$1s?KRCG)B0>Tw zia-*6i=10ChG(J1$<rs6*3+8rC4F#Fnk{?yQHAb{ z_V4Bo>52s{KZ9cGt5pNhEnYqfRN3NXooK|M=pW3L^ziSPVKO0%<05{Nx~NT9z@f1zJ(lq}J5#ZRhIq1HgsH;2}SD6VnrELG#XQmc38qG@PE z(oXdaIJ)f9^fs8axE1ZykTm)=q{QXUR~sotZLMR}m^Jqru48W_hfQ3;PVEUA4C;%e zM}zEob&;bLP@%>%l^Y!h(3_@bLm_;a^=d2?1JPg!5*{P~0Y=Klkg72_=b|etF#7!R z@H#*@0O22}4kTn$TnE;bLRKZgU!00ihDTL|0i_k8tx`cARxKJ4)iMom;Lo2%CkNRvFQzs5WXWuA*Q>CqX6MFG)A?-igvAW`|Tz2vA`S z8RiSav>RnJ7k2c9SB1X08XQ$uq^w6*)M~%caJ`+?TC>_)S&u!Q!=R+ycLsHKsGleBoQJSng=N@VGVeeRMV5JM$i-l#VE z079)OlLL*7n4Cyze_H_0+Bn-PO=lQ^{z2X;GXr8Rw=r0HC26)uel-a-}B!%-4& z@AP}3MxCLMwLBtlxNoovL_R=*?CV|=g3%dEa=)?sI~ z);ujy=~nCLBZnY=i2_8|*W*?MCrzp`NXHP1nr6@|iWXv7I2K)mNR(Rfjb4fTFCm{C z5DtiHr+h8mB$4)v{xp?xztyO>u6ea|9ZLYj#FtS4bD3O<*Ww$cOZ`@_-i+CAf*vfx zb26P(2RaBV7?c>CG?e!2(Lu1fX0=6BPrwNhXx~A&at33-nle(1tV?G{z)~s^I=(9W z9B5Rm>+T!2H0*5mTeXBcw=DwfB4fNdSZXO0w@x(bVM6Ot8z8qXopI4EEp2v0TnE9o z(v6|?)a7OaCUMo7Y9d-A**F%cm5k_$LoJAdZWA8BT6}DJquuB?;|lC*3~i_LK`mn% z1|KUP1?MCAx=&d1-{iwn%dR+xk5M-k2FkWR7q(*Rt=T5u1QJ1UT8YTYcp9!7f1zI& zw;sDUGzl?=mJ`@kfu3_Uy&Do!TSY2C-FYRecCL`i&1E?Ia=F%RckqJCcU71n3b{Oo<%?AWjT$-f}G|CNnUApHod;xrBQCQSFX&{AQb(1ztK;i znws(S%V2Oiz-!t`eHvHgKFw&Gf?xW>c#}RirII$ol(R^_$A3z%?{AGS0&COGCa{Fn)IbcgTgh~ zHE|2gCn2+jJm+CcVI7TO@yfLd$2}HZaq>qEeENmogi9*($M9N^^TGsPcHy>R@}Pg7o$#!?p`^x;lFYt_p(r0N^;3*yO<iZn0`aZ{}zRz*l z!>nARf>j4OPQ#8cQ@ty&64u(?O{{f+S(mM@I;{vO{siAn2h$mGg@(=9cT1>v}eOdHqW9YhOdYoX(mNn-z}eIW{nXnR@y# z(|$=Nm#Hh@py&eNHz57*rpIJF6j=N^C5^;Ntxg%nSuLCf7k05WpcAVngPY*KXgzMw zTsj=7>{Ljn6r_LSWfT$S+Z&tI>FIh3j!W}^>8guhy#*VCa~Aq&WJ^=7)aoleGLvY1 z0Z;4lni|e30O15J>EHsJ%U=82B7S(zs|XD)QOaV$!jN#N>MtCaEAXFvahgtUz$$|U zvi<0=2K;^S_19fVkNNmemn)-}9Mo_lr$8swW(R|Rspg{c)#3uYB^Jh#5RUQT9wKZG z=mLJYSOZ}up<~-4g*uc5MP;^(a+f?S1WPAKAg|2p@X!^LY@15qsI0Qq95T{Cx48m0 zFPhF8DhEpe%pa@5yoN<F%^k16$sDF%nUO^^>_04^GjzhJa;s5Z;IpgIX1gD?VwtL_)@o6Ltvz^gUDBXEJD8+G{o@bEG=CRsFG$%j z;j@@jH)8V+O_z0h5gCxY$4F9vLx^m~17x7ewxf2x2WNM>@LJNLExu&tF7iI~`qk?%e0nhL3eQMa!?!08}L=r{Z)n*Tf*vOWg+)7rysq z^;!%!QBuO+mnd6yB8N??QdV>_qZB{O9X`yQLJa{Bqm7(rC4l&wwXZerqw(}iy zqg-~dX|b@Dr^q;(c#}fQBr|NxyY!@2BJ^Jf}7$Rm&sw2P7 zgXEQdxu}h}RZ43X(z=l5vy5qz7W2yzLN!HvLBl#hqA4j156Pg&3>d?91~Y=x9D03S z;8dy7I?f6_kyz)HX2ePz339XXmteXNS(j3wxS;{_Qq6G`yav^|wqIi1?kdf|(UyA! zb9=Jn2nGn&G4z-BAAaiar>9?*g%Q+KAAng*AFsexIf(aUalQO{Ci)|mYb1s&^huO%$lkzyiGuDX z)(jVh@n)Q?YN(!bfCjobNA*j?=axt+L`v&B7N z((lsvQs+5`40BGh|2mTS(ES>XEj+IAaNNv8tYCm+YM+;gi08Msw{VTyZ=e+bY^~sa zT8<$a89$3La9>Qvq0Micrk81U1=A5@wYhN&%Q56W*A!i~l9Zs>_|WGLnv}E1&_?8(T3W8R?YDBVak~2$9eTXrU6H{09wFbt9EOy4OrCs)DB2} zP(MKy6PaDoUX2T00GxSOIlKU8AiPD{_Y3pare6*%EfO11oG|E?V0)LiPojS^b9`KJ zqEUHpx79XD@#(kao{}TE-jX;=tC>^Of41B{E%H{oN{TnMy;{QKv|9^1y8T+nvD$Ga z@PPi4LWO-Oy&2wkDFppe{fv>`cji*yFQW% zPB0nLz%Pjxyw#4xQo{;pUzcksX_qTWTcSD7o1VUA5%U z8F$6fR@#NNhhUJ%f~2Uu{Ce1G$7vg*+r(IHVVpiKC-Z(~Uh$R^)HZ0`9o#Is^q|;+v9^n^fGy`wdSC^&dT{W~+aLk0l6H5x3@>#hNSzMY4oS*_ zXNs&-PJlx}SC{p&U{v=kRCZ%$y6oM9<`{b`CVJ}AG z9O9vsrCYxd2vH+m#r|g02@1q5i(3;p zda)ahUl?x?4&S4QiP-fm#9Tg4_&EMd0!`sORY-MV&%homTymY zxpbI=Q3*K&hNL8EtSd7ved2*;G^}A$fjvIP80B)Q(j-#2bNZL@FY`3NOzq7@CHNmL zbDi#6c-dP_KOl`3?LEan1PNH|3YEkqk)~QHfo5s5abvy0g(#>5>OrObs}N-4c8AC1YOna+uVVzWPM#{DjPilgtn;A<$j1w` zy{$+vD2MTdBh7h)ZXO~TqD5#0K5xYwA{)mWjrMigHN*iiVebitq#{c+umcf$5+NwG ztO>SI%#yMvBCRZl?4ng&41pfqBlc~R!*>H~-h*R{tP;4s1JT}1at6#8=*!|k zsm+1H&O2Z$*f3^R5>{CZk#Ntr`9dGZs*sZc8>SRwoYTZ<)Rjtmstmr7QnxLJzb2WMM+ z`qp#R=ft#u%wSV=w~8ca51%;@T!K7U2?U5fRd{Pv;7oEcNKd$Jg0fkbn9A?4(uA%| zuiEAWOz^=wX}c3>=`fTWO36r&a&}QxcnLl96*OSX=dac8%$8 zL`-=bxGBq30S^Y#A{zV^Sck%d?eiScWU=oDM@K;kI`DgKoa;?SrB#8}qE<%e$x3tA zkpXuIzS}0K59{eNr=PHM&m}dTdS}E!93p8h61$C3#cEcCEkv{Df}QM+S>MEWm8&f@ zn+`v-S0X%D!^LB>&SLrJ_LZgwO}(=!n4S$+J^J|{^B+S0ITwPeKo%tym8l@Y=vjim z=|8@m5$45$>1t}=3Pl&fTpt25uh>3my2SH?dA5i2dM*L=#LQ#SSy~S|DdjexWtVrpDB)740NB#wn>{k zPh_2{6hCea50~6N5+R8WeYN{Y&EWI z+8mHGx=HHFU@bxg(?N#A*7;_JC9_wK&P7EHod-zM{2AWf%(yscu40R+ZXMlLZ6YJn zS~u#L48q)Sr@xG$iO$qL!0ps&i6L0H-i%t2-}(HK_e3L`!V9@xWXG-3>*2QCeR;l+ zll>mrDUU2z1e7EjJQg>DCGo(pvCARL$C*^K*fhrX&4-VD+fg)FkBaUFk)&DS}^dT zTQzC=6;ng`ARIJ*=z2Xb#q#mq*5r#Xd$u%5z=mOa^a$t9ykXx8W zOrZ%sJ0ms?5T4x3iKtrg!swe+PxMrsd)`Wu>)Bf zQ_i+5V;o_$eC>*Cjg~8uDb&BWx;E`8ZBSYd~~vX0edn&Yu(y_(>NnXbFQ1m=u<%SChNY`D0lPs;iRTj+!%FNgf43E5c3 zA}+n(YmYP(E@7Zbo)}&RjO77rxhfYSigbZkpaj7r-RO{IG+d$Kc*KGIIH`i}x4~I< zhRmECTjA^^D&v6o4lBtogP~t$tSHh76A%93T7^$U8D=g)UixqmzxcV&Lv~CiY4J*z z)}UZ@H0@J3d}@EAehpg{=zNvXXH{K=%^z2utU-1#{Es)|(v#XF z=Avt~-j5EF<%@jy1Qy(PQDPY{9YosMzZPaQ(_tI&iqwZLywG%k6D^o8(kjNI5zd)HtGUv~K`&LbpOk$|NAi^tR%8L8eX>~$_;L=V5eu9~ zjmAo&ox~+nP}(nKji5l(5ABwyA38Ny$^%GcG0QxyLg9a~G6kL375*DbT=XrLs<^lO z>5#5n3E%Q3svC1~QO(G@2w!-^CcsOf_0lhH;&bFyKFYINvVN^#l8zFlA4|QHYsA|| zyOTy2NYl=FVl7nAZo#6bSB5uTDVOI`%}O9@awjcs!E1wmJzAc(Mh6S4&v)zN8$7hS zl19I{#m9yea!@Ca$uqkiNPb2cJg0Bq?i}g3^^zY>+wu`3D(J99#q%;xO!K4i!-0c+ zpv6ekHr%-1K2&%G{TSWpIa)q{_!RR)*0M}^ui`X!tnb6JD>1Y8FK_Ob^SGe%n*pa7 zr-8jOr&?Xhqd_pDg~xR1YI~%3C9{7B2jZv8V_hQ5ZzgZE_<6=X;A&Xvsct6#ag7=! zGe_Mmj^lmh8aNFrq(uCuy^?FJ$`O$=X1D2lr_z2X9eyFlJ+b!;9es?$n$KWTW62d~ zNVgJj737vO0Y2T*FffeNq$|ZA{Zhl*(~v12wq%4X@Y^^14JeqZ_ zM~r39QfBYowpO64&bf%D>n}d%A%d;=42tJAEzuu*>*InL+QdB!XC6qPv4qNi01n#g za4q5~wiKSAiK8)db5x~VO5392wm_!MA`Msx(oM7T8{C+xgE>lYtz4iiiWP<54w3vX zr8dCoWX$|jXoaX=uYy4|_Sn#AL_r9X?(D^>P#76@y4AI26$6hp{05i`@7gV1mE|fe8W=1SSYf5SSn^L12Qw z1c3@7gV1mE| zfe8W=1SSYf5SSn^L12Qw1c3@7gV1mE|fe8W=1SSYf5SSn^L12Qw1c33-Ro9Y;^pefHA|(p*@=@!9--U2qcZVN%;K)#exs)^`@MR@ zK9rJPm+v{B!#&-raitq~x^q!wrQL7!aQ*1&YNgs}R66}GT|XXP%1gIs;^&85ui}R4 zKC0R%Iaf{Q%J;;@cU6F}fT$j527_XB4GTo+JX(nrx1W4CgaRXo5%depD zxJ2`jQ)kbdsa!aJc4_JKDZ2c1=B3sta7MS9KAuD?>$r+~r5AS-+?m^2D@QZ#PFrCR z|IS>FQDJdowcM=U;JCeZ^c-%BjzE(b)!Zx3ASb!;{qnVXha{kM`o>D!A^i2ed#Zj) zQ?6X?t%HHsg5cKks2Wj0I87u$iOSvT&nJDLxEXD>`;e+u)Q4bE1}7n5<-~HE#TD5R z@zh?8=q6YC(4kA@Yw=3ETkW;G3FlsKCA}C|t|J&-8A~CUm0G<*8g= zZ}%Iu%e{7IV3C%PAv2E(L)a)m;Cw>Qx9s}g%l(y=I7vpQcfFcKNxwtlQzK+ntM$fQ zwA}9j9$ZsfYt8gNkut0`P`S|Wt+bnQNrXV*rz`3!xEr_Lt5ocE+l5p}Wd5?a z(l!NA)<2uoR&`D9rzHfbmM>Pjz0)`1l|F<@k)+oZQhB($JfTt?W3W6_+l?9k;A%&X ze#t_n(l9}Bd)>{WE+ApBS&thv_eL60^oQ~0a=Y5CokcOa-F~MR#vy@EG0-^HUL%NF z9ESI~1k+*t6B81ET3TEySMhJFRw{W|Ks}b?+1a#4HBYZig*kSri8ND6T>^&z@D4J( z+9nJ)ld?TR(NPTh;qqZm3Op$e6Qkf>IA2;U;UL)<@;@MjwA%70rP;8+6#-@0c~DWT zeZZj8sISzan4;xwT)hS@*^O7@Zroalqm|8-Mus7Zp$P5&OtjjqHsc6?*vqgu7V;Qt zbN4M@Ov7_vi>|hy^r(kW90s5yEv^Uv)SO$35MT|o(+AJK9A(Rr*1qLC2jB>O zDGX#F8>QSqFP(}}PHS31rEE2(!q4nQr;STii#JwMUWnhc42Cz}NVaGy>DM&YzUcCG zz}3Evx(BY*gRj=RFn3(wa͙d2sN*7v)&=qX#Zh9XK??~B&rUJ_mJ)_brFqwBDA z#O5HgsJCA2MeEQGu&3C}5hH}+vF=ZEORmhntfD}jC_3V5lC#vFZ=n~g)yanAs-}=? zrlr;mB~H!8*;keqwnA7E*gt@0pD?;ddkJ)4*<{uPhtpiN%;(opioImA&xGAqAaMo@qQ+?_chz1dSni= z-$jv7na{44oS=|ZSs+RTw^{fo3R&nb3Jpbi7|nz-g-|X;T8YX8tSzOU44DO=CC z8f0XeCBAhQZ7`rFswd%+ma9HrZgO@x3y?Dv6$Tg8xthV>wNA|f3ZYb~d+B-!M${RQ4uZbvU{n>?q|s_rPmb-o>HzM> z>j}oRJoYML)`ppt6JUP{mNpFoPm0}sRN5!^{NYH40U`U`D+rqt?gQF_``b%~m4($1 z#lT1(`l|*b`+TzIrH1i0k_gi*R{%t_+B*-K!YG2r3S|Tg(@5JrndjLgboh1J`lAx! zyRmlVc#_23-X)5d5FiRfsR$h~%UKn`<5fdCkg=EWKCHzzvZKVJ93ZH{_|gHI>TCwc zQU+l5rvo8GFsK#MyYz#kS~TH}6bLm&G9uG)qmi# zaDeg0<(Rx0um@^vk2+qVtH}Ko>6jK$*oOZnUb)8YwHnQU)fus^xFKqDdpcrD(%-tMNuRurdC?!hFrQ~Uzw%s13LW$NplK%h`0 z8iZ6xwN*UbM(Ej3x_{~_Pt$O$H1jx&UjjB-fbj*3Y&nKwY$kf#71?5DX-R4>lVt^i z-pnvg*`~@1#gkIx=prOy*0K%Dbuq^hol2%Lfb=A2J~axGFJYHt2ClPuYopqz*CMS4 zDmCNJ0+3n)mQN9#VQ-n)(SRu`!L8LR!CLB;Y>+XR0f4!Z(H9jrHKXW*2~7pfNXJ)b zNCZ|;136)!xD1}x{QR__ji`bul^_|htfS-bKGk7`ixA{-%qC2p3_tO(Qm)r~>�& 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

-jv{I5|3D_FGI+ziUtbVM@~1nNoStUx%L>oN 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 z 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 literal 0 HcmV?d00001 From 387a009138cb9250e883404ef4c4994227cdc6d1 Mon Sep 17 00:00:00 2001 From: "ken.shirakawa" Date: Mon, 11 May 2026 13:33:18 +0900 Subject: [PATCH 4/5] Add surface_native golden master, split_task_label mock test, and real_data marker Phase 1 of bdpy.mri.fmriprep test code opening: - Extend build_expected_bdata_after_exclude() in test_fmriprep_utils_mock.py with a data_mode parameter supporting all four surface modes (native and three standard variants). For surface modes, the helper now loads GIFTI files via nibabel and hstacks L/R hemispheres to mirror the production BrainData.__load_surface path, and emits VertexData / VertexLeft / VertexRight / vertex_index metadata in place of voxel coordinates. - Add TestCreateBdataFmriprepMock.test_create_bdata_fmriprep_surface_native_gm: value-level golden-master comparison for surface_native with with_confounds=True and exclude={"session/run": [[1, 2], None]}, mirroring the existing volume_native GM coverage. New fixture: tests/data/mri/golden_master/mock/test_output_fmriprep_subject_surface.h5 - Add TestCreateBdataFmriprepMock.test_create_bdata_fmriprep_split_task_label_single_task: exercises split_task_label=True. The mock dataset has a single task ("task-mock"), so this verifies the data_labels suffix format and that the bdata content matches the non-split GM. Multi-task coverage is provided by test_fmriprep_real.py. - Introduce a "real_data" pytest marker (declared in pyproject.toml and applied to TestCreateBdataFmriprepReal). CI can now run `pytest -m "not real_data"` to exclude the real dataset test cleanly. - Update tests/mri/fmriprep/scripts/mock/step_1_prepare_gm.sh to track the new surface GM file, and refresh README.md / TEST_COVERAGE.md. Verification: `pytest tests/ -m "not slow and not real_data" --tb=line -q` => 245 passed, 1 deselected, 0 failed (Phase 0 baseline was 243). Co-Authored-By: Claude Opus 4.7 --- pyproject.toml | 5 + .../test_output_fmriprep_subject_surface.h5 | Bin 0 -> 2039207 bytes tests/mri/fmriprep/README.md | 9 ++ tests/mri/fmriprep/TEST_COVERAGE.md | 11 +- .../scripts/mock/step_1_prepare_gm.sh | 1 + tests/mri/fmriprep/test_fmriprep_mock.py | 89 +++++++++++++- tests/mri/fmriprep/test_fmriprep_real.py | 2 + .../mri/fmriprep/test_fmriprep_utils_mock.py | 111 ++++++++++++++---- 8 files changed, 194 insertions(+), 34 deletions(-) create mode 100644 tests/data/mri/golden_master/mock/test_output_fmriprep_subject_surface.h5 diff --git a/pyproject.toml b/pyproject.toml index b33316ac..740ad8d3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -98,3 +98,8 @@ mypy-init-return = true [tool.pylint] disable = "line-too-long" + +[tool.pytest.ini_options] +markers = [ + "real_data: tests that require an external fMRIPrep dataset (e.g. OpenNeuro ds006319). Excluded from CI; run with `pytest -m real_data` locally.", +] diff --git a/tests/data/mri/golden_master/mock/test_output_fmriprep_subject_surface.h5 b/tests/data/mri/golden_master/mock/test_output_fmriprep_subject_surface.h5 new file mode 100644 index 0000000000000000000000000000000000000000..bcacdb209bf3251ce903ebe816f8fbbae9a1f18c GIT binary patch literal 2039207 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

RzeBxT`? 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

-=BCfVLZDr5*O!pQ<_ZdZjmat7av2#BrRUU?>!|1f z*X~HM#C&eRp?miA>2nOSRP>*H4owPGBfW%6-PDgRE+{5oQAK1tq#!Dz@o)%`d;%xz ziADj^b-9LM{RgE4rU=$)RorDmfmA50X_#&!`WkEkv5Z>7AJiNO7txQ3Ja0CAH|4-G z8D(V%X<%3w$R;Fd7%TGA7FAceKNYKO`Lu1Db~=Gvz_hxX;ti%dQOc;uXeUPzOVaV& zB{k$le#qeQpenEKD)`^I$(;6SvRipsE&5%;LOfIJjKN(JtQtvLRzwHtkM;T_o+wxCZBJ;Tztto|DSDh@k>!PRc zdcDVY)a8!GL)WXwR8_;`yOM_7O)u}bZWM5N=upDi#3EQBI0>->&L_*Snr*#28ZUl9 zI7W>2u%gP^Q2CX&b_-5AR~9YYB7E627!+KaoKw03i<<&GW6Aek!H^bNf@|u?V04`K z@JAv2HSBR2{wuf}bCPM_4magKtgrx-*U3E03@#P3+nNhIGMq z57f%0{R1`gDgQv#FiogNSdZZP&VT;%&woZT;il*qOihvcId+rH-R5qNEJz1ELVn_^ zL2#qMyg^a`p3Wf7f_lA>sM_^g#G_PnEN_*%R}yi(F7Ix!1S9@yueXd>oe=S>S+EEy zJxtg%Fe92kf)S$$WEQ|H^s^dQ5Tc=%LMzeaFscrz6c{8WLi4{s!U=W>p|kou--Du- zYL4dOf}t0hY>E~Gqm4%^x)N#`Lp$0KsvBGdpDmjqRfL%wK*1W2gJJZ+@d0A~nFSt` zpo+bA--aZK1f9e7KKz*;9lNOtRk;$6B_{5`N(&>8#Ga3TojZ)U`6c6j#V+q-5Vhl`OtemY;@|<{@sSQ+7y>1c)DhdHG86EGh7dQ-b6nmT>&ME!}NX zf8KLeFxOnNAv#?g0wo!chM558S6fI4s-QqIkh;1Wx>t7_jph@pLr|qMnH+|^*S;22`|mYHIe{-Rkve{Po=_Dg zqLrR$EUXwx)EFJHr!F~I@;}vf$468SYK|Hen&4RGq%$1}YH@fOT)9rEa_SsX6o!e8 z$&4H`?K>3Jf8Q1>+7uDj>Cusx9Rcz2IU58>lxZ0Ub#;^}VuLUtU!I&RvR+bHcI*`Q zm@}CFfavi>iF}rh23CTW8@}y|u&J{qfFc5gf4ZiZGD!J#Ow2*(pVREnJJYP6a0n9@ zqBi(Z!<3l#G(IOUTs#p^QQ5%kjT6fR2RU9aH}|f!O7pr|Zdc{JY3E|he0rF2E>4mB z&QOv(6=?w`{)tFR!Q98%1o7;AR0iMpp<=Q|&d@aHazsQ-lIE-KP?O8pum(9F7eL^6 zc{J2u=XX5}X0)*@5<$po#@;ACGHCb!lBkOTnOKZbX9~7J>J^rAgjH9XO7cHL*^8W# z=Yaf@B*PUB*m_ULvWKu|ta5N|?>ON1fieJ$7ukf^PjY5(pNdpgp2njzK;pJlmnfq}CsX;&!c zUoSY^Ur6~UbmaM$*^EjGd)@8HwvMZ3dV5a`>3N(tznb`Az0<$HY2VA@AW0SalWaw7 zAq~;X?#45E=zeNxNx>;hIQA;BB`A1H6WWWYkh#*#Gp60&sdUG2r>^H=Baq93pMM%3 z{>f&4re&{qo-p=Nr9i; zXlC3b8}DG^W9RU}7&j=0I485U*@1luN2xjY{#bc+qRjgcpU+~vOJwOV@g4G4NJr4{A#N1MrWTcFQZK|&0zB6)tQK4+ zh9jaS#W=;mfY%ml(f{Vf5dfZ8XrWP?_tA!gS(6`BL0kuYg-Ch#9*fa#Ka??@gc*?Q z;86|)PKi0k?J!{7&G=>LsfH^2JNeefy;E$>zI*RCoC~;pIJtnZMY3dKN;rdr#c8ye z6A9nBAt|sT!6wF({%y*bad49vea)hu#^H|gFo72T;+Vza^{RYRu1>$&P2jM`{;^-S zW$`*08&=G=9D#2_RgxgG>Sr}F0o*kYSv^pad`jwSVCjh%*8!bG?|@LchU*G~H=WPH z*@tWy5=9(17CcD90}|p%(7t=;Sm}&CV_5wslq)U>qKC4xcMYAWk(BTxXt{{V>Ozo<>(=W z?3VwRI3^T%p?QvNLQ46v$3_KPw9T5^;HF;$Eh^Syh& zgMFrehwcYGs`4K+bD}YBDcJ%q7|J66Ar|}`x)$#o{>=nX(`Q zsX6EcagJ`s$BSE*3?wh&UJb-*zZ<4wi9_J5yrrg-8GJuG9~w9va}?F-+p%buZ~M0J z>x^IKf=XoT%zi2ExO)I!DdhC}lD=5cR#;e&q3MxqAcVCh88}Mc0}>6KBkBaL8bTz9 zOr{Ok38UntodBOR5GN|z9v}TAc>|d95Z3x4O^>D41Cc*FjWLM zL+&#xIE@}dl9vj5+pAF%?FjlD;6hwTQyE=j@DI#02YFrGU6ym6iMsPq*WEydhNAN= z>*2u(6bqOO^m&?oWby@VqVpViq*@a6@{MOxd2Ul&g zcKzL^s;^0s&7TyjRdKm0_mwS*uHSe4yK1rb`tQrSY^%k-CV#Bv`2FC_~aU0EqMDk#0s52X&tH<@x~<&p~fk+-!RcFm>|uZRM39 za6GQ@leUQS@i4uYudB_bTs~as)zg=+=0E-N>d8+(K0P?7t{k*__ND}wO+BwLduJzK zox88y^zV<|mtP*895{SL>&qY&*KM=i1V|~_k-y)wM5w;X6)7X4rej{d?aP{7M#TSE z^<|6cPW=T?){w!_+sm?JtKCXyEHV`;W-X3=5;qaI5=3A zSH5UoESHUl{*(e%wkJ*{>&QL&#yxN9QpchYoI0&EyDodVGMz*|TG4h$=;YWRc`o`N^Y4%WbPRdvY8v7YiD_(@EDiZJAvMyya$B+N>3e$*>0HZwPgcu&4l7*CvZJd0x<2v3;&dAD7!i}r3BE~qe2nkKK3@e{$Ej3g_t z*|}3UZVn?Y=1(Pb7OM)I@z)&aenMkb7XmN>mrYkb&=g|+rdVyu>BQId(hDmRdv{fr z=?O)+g#@+QMc?kBuG|xG6rP>SPs$cRlZzNl-_ANXE-+N=zMFcpMC!gKC(k!f4P_ZW z;O(a9ioS2BD2FZvPA3@=t?JxT=DmOwt(UB>G7S=S(`#WOo()Tzb(qiT>+{+-TOK)gNH3~9an*GV6+Ww*M@4=2NQo*2q1&MTscXP-+rnPX zyK*y~oYKMsbq%BI{M3}I&YLWb@qvb)b!iSK?z8kmF<@&MCgw=~o}I+5&b`sboK+kr z)`r@Z^>z&d*OybNo`H>V1yTFjeWl)Nxrs<&?TM5rn`zjC5v-~ja_C3N5`Nu3Y}n-W(dFSDa$4g%57+;mmeeuVB3 zhac;c_kUh>CuKXo{0Rd@5N$j|z+XqU}x z4Oam6f6C=))QJya<{^ZcLgLpaj&9entKmWD@8JKRvEW>+>1ETbRBS4)@fZrL&g6$6 zF5hPA4a`G7tL7Rb2V4s2skG7W$8OcYk>rvqSHmxzQBPpNXX5ZQu&R~s>)K=a$$g7) zbu=no0LI+tfHUYY&J#z7fD79tR!`gzOjO{!90;g?gn>Rw;l;TE4BOh4{|=i>;~fkw zF@jB+`;xRuWVIQj(y9ucq2|esU8LcD1Rn<4zErbFO*(Y1Zm`ZY_393t(p4E>^Qrh7M&Qe2`7k!&$glrchrN@kRB5h2 z`TGLKJ~Ol&2#e+rgnUoP(%HZS{84~G4LX2CpY(Wu_x2Y+ zO13jE`_Qb4MWVZJ-#&f6yAftTwEowX$#3&Jl?GrGq&C_S8WbnC*mS}E3#C`^_8h2= zeZf$T4d`DXRgKm5J^QOBvKLmO+;b*Qjhf22Y0QSqUvlIE2uuVCD$rH=5%C(b)Jhdf z%LiO8OGd=7y~ToiLIWAo1Z*aeNez#oT}R@I{V!?F24-L$n?LoQ3Q0A9+OmZb%sf96 z!w9QbWDtLe=hz>LWjm~~kOty1y*Sd**trgYuzBsR#!uiQ^W@ogY<~T8G#DYKT;**B zVuR5?s&bum=p0%4pmK%G;im5#tpQeF8ab`rj?A_jRNIQ#d|THj%c+tgC+pe^yA;B| z$4TQEjEdFjj{kQ|Q2l;852Czwm+HF!;G$Sc-2jzBFwR;UH=CbMi$v@Do7y^`7nk{5 zBOom;m_NhVmzUeNkUChHj^F&&wrozx_&kY>_$qTQII%dytk`BK|yhGqXf?(%o*6S)AW&O(xahyM49Jb z$J?We!G%UZoKb}mmhi1;uNfEX4^Z0iyVrl0%G$}>H*Zc~p3nH>9i2&CTuD)$rq!yt z#wZMc5N}==s6bHyUR;@X@5tV}cP@uUHc>2Lozbw5{5!47kuta_>uSyVzPc@EtHIlh zmJ!l2*h51NIxMB&;swWvG4hbeD1S29uj~gC>3beBw0eXy2T`K+7H;^G6=%d|F;fP7 zlsqJ84AO9 z)_H-2%5dSZoBf9FqfNER+>n0SA^ug&F%zL}!$JTI!`Or(zNmwbmCt#~Fm2j;hz-?$ zE^K%VWOek2z%eh*d?1Kgp~fq5B_a%9P#VX8l#xUJV-U}@#dTHRVZIx11`&bx9lEUg z__nGw*wNmu0%HaRj~9sKsr>Wi&8s(ICyQm6yU|K=u)w5b5UcWy5 zKBg4c9O9wuF8|5ySb|~$wLbfzb4X=F94cfSPs`X{o&GXamiW7u{ycvC{&vx*j)w$C z7thHdQo@7tsmv*@m*%bxjS^5f-k)$f5eno%lwJEt=qi6-XlI#0(#@evKOqk~2R4dH zoL9nqgwVm#(LWRY;|bWK5S$Xi8Mftz0yfy5`ed9*3ONw2D4&R@@ttvIpd=)1?(^%Y zbY|}avTl?0WaeIWP`fw*S3F*tR+s<4G3NyYN!PTanIZp&89X6n+BewAT2e$V&xmha zAnG-KDQLvu6I5!uTp)3<)Ny*0YxLn(3b1@EjIAKK5r{}U0lyyH1V#VQd|xhTA!Wjl zVOkI*Z%~Qu6e@u{bmca0KGF`v7UIyHx{X3EgZSp-251zEhe?+>EQ2{)!=A?cYC&~q zGJAG3lJ#@T#=yCcWEjP&0iw&`jL`C9;=4$YEeS;VTKE_`b;8sAKG03Q+SDTI+ z2?NQoQAc-<;CI?N_PZDwU`Dhuo@oxfk?{qd-NFS@s?FjOI^3^X*xAg#fZC76-DL$Q z`GR(#-fkReD^e!_juv6W^T`=uR6!!_T7*Y^UF3_qXl;`<)!faCnA=anXN6ayGD!!1%n9pl01_Ngv(6(-Z6OqFWRr|NTJjRfv?4=geMpm|B7t zR@q>&bkg4kH5bc*bUgQ&J0gh>wjwE}NH|70g4{;2yQ3}5huA;{q4|dS{UYeD%k&B0 zkae`uS}SW)tZj?vde*p-o-Ak~%T9*Gh#3{G9Tcj65(Z-)hQ3VZF<&^2gN;I7Ch_d1 zn%}5Rk&a`Un_M%S&yvRB&6g3bHhbt21z*LF*;960eShCbSVp8@gfnap92c(NFa==X zqoxO6ILpA`#3V$4N}mFWF+MM`gPD;$l%i-3!Gr7>JaXC2WgIKceXU&3s z5purOq6ed4zjd1hBQ(n2epAH)G7j}O-3A918r|1!2X#K8Vk!yW;WT1{!h@E)DHqBr zvajWpq%YPs1m^r+hxg@e{AzTsaI}N*m$? zm!T3j^b=qmbWwFA@W+l~o_lqo3|T5i|E~VTQZ4E#%m7QcHQA*oU*xd?4IoOOn4!t9 zSRbC}a7EoX5Mh;%*kGZck@HZAIW%tjIhhzM8-WGuY%ye+$Yi%S<^0C1@;glC;X)?I z@MI`4=c5KYcL(z>thtjB0IDwgD1c@OvtMR65J_Mplki%^={s>YsO;WUnhH_^_ISzp zvI*M4vapS_nW|5x@axWlMAtR`X$AH1gwLQoEaYA8(M|V88J`J2!T}Lu5y4j|i@b-p z(61@T7V`w!eL{f9pvIX7FPCw5t**mO<=%PQk`1{XO9@>D26AkmsJTKr3qjPOkx+nQ z+?LpxEy^bKHIB*GxY^(#umlBV|IiWKK;~GvguGCw$e*7BBF#DCOu*7|fOp89`YZxo z2#TjS{wUFs1Q89|ko=m5!B9|9J>*4qoV7#AaX@DYcb_ll0WS*zC`i%};0_0PCB_o4 z`SGz8aN4h1=eszAsdpDgj3sQjm#FZHAA-|auNQ3J6)raN7OXpqVDC0AAoGFlZWP)$ z;eY^fUC~U6kyL>^cHJ!x3-BFewW@ep=Z^?-egdmOXIv7N!VdoXn#33GJD9Y;SA>v`gIZ|J*!JDq`B zHX(lDQe=B4@^3I$+E8uqyxMdhJEkV?OShTYrLn(fi^NnKkOt7bcSqPQnApGFMjt3h zDiGSNHP)~U#flnXnRmdb6$bIy;{m&M1Z9smsgSxocZwt)e=%AXr0_H3TR z`RTFlt`;~FBd&u|wR4BVD?d1m%x#Rev$-vc{8?|NxI#uo?1m6%_QYlEpmS`mXJ`r% zL@}*r_Vx*`J9kQR*f<`YM{tsYE#gGX*0W)#2>J{AkVz8H>RHHLgaa^8&v>>{&+ELo z@d!l3>&`pL2_1xD zfI8@enMm7e34$ZJ7~p9E!?r>Mu;QBpaS@e+_}PUs8jIC-r{M_S4n9v*=}+BT8<}tH zj*B4lJ!J7}s<~q7xBaz86yBbyRv2h=ZS|}BZ>qan=%JzN1WEq zPDNzC;%=nkClBhZu+EUH%t+YIFMbFVQ1sHW)|tO6sM?LV?(8OKnF&4{0VJ>KqJGgb zD3tr;I1j{E-T=hC9VTS3@;EiD-HcW3itdQJ-PH$8ZqBwFoYteDROlTayQ6%<%ZzQ-;X3$kgt5e*M_inrdVxS+_~_a;%c;f|9&gbF`kx+kkO=oRVQHh zl=&cxl{m_$N3^@#Wn=~B7e@A|?JX+2-NhA_4j%s4;3|uQNAAFqHHgfX^*OmrYHyna z*_I&$uGgQB_IDNzd%fkE@9q&(JUT2+Eh9tOEu(!oR@R|Ju1 zW99e(EbwB(f;`}L3*2^sWhnob7ogfo<}Pw1RseI~T!@+}wHWBfWysF^+v1AwJ3HeV z?0pCF|18=f4IB}h;*N^6kzwvLFGk1{vaNV^cC)vWh_9uS-VYEwbR$cMmg7N1Kz1Je zWf$c&pL@H@Dy1Kfop6E<_vYO-z?HHqCPv$~Rs}_t>)53dxSffG+QR%rvi&TU?HIT( zl5Md5tS5SWSd6$-EAWby!uxGUIwjL7};s*Mn+FQPl zI(^l9g)j;hFM88PKbb51`Y9lsjBA$Vq;7t#5-tbJ1QEOuX?9*}A`CV(1p)Tn0R^Egsx2SNYRkofCmLmPj2n(?jjQws0Qa{& zSfmRf0t?+7jL)^Sj;4UEUBKS?r+o1xtl`Lv?Ug6e;wR!?j)CJ9cNjV}uNiva@Jt0l zG3j&(^GtyUg)`%qku#S_qs3Hq2JO`P$Q4JaFo!UP&vhG3{B|s($h}DI;imU!`UD(d zYUNFW zD-b7)kBZndxqM_+TeuON;Mkjrc)da|2T=q> z(^98)KTrX|9B*L@X_PgJskJT^l!!vqmmyh2Lp=+*N9G!7%edb>*_XW4y6&}aY{bYOSA42G?OM3q`PsX_4yQeQNssOB!|i}0=y#XR zc)CkE05gJiLBe-OcF4=ksy^{uva9Bri0K7a9;Qkz2#xeLhF`g(s9gtp3Dqnly94OmMt2AELjgF@vmE>Bz^~I@XH2?NdZW(&5rB(V+?7o&y745A?~|x)@7jvl;V;*-VsBukFOa1`w3a z^mt!%r8YXW>+t6{sdu5)FEqLZ%t9W|H+ZYot>0JV{y+V%i4rdffrLOpAR&+tNC+eZ z5&{WD>RsLwOJOcV%_F#S*@E9MjhZ; zRk!AHap}G;@;09@^QI{p_o(vUn!D!Us;*Y1z1x)QYm(&flYF_%FPFu>wt3#P`<{Pa z&i6k5p;#AnIo~(rr*c23R~s%UU+x=ozQv;VHr#FYKmYsd)7i;?o}T>p;^hzb4g6bP z?`wLy1|J97GO7z=(>RQmCx9+sAs~Y_*{XP}j>mfqt*z~x4wz(5IuzS^( zE9{)|V4Fs>d9^4;{Ks*7`f*+eswX#jxeok%!H5^@tLk&)&x;ydBrJ4f#bN}Upe45fL>Vv*Kf0tU0Ae{HL-lYHW9y&w;Xn47%CQiiV?hJ7KWMlZP;XEL~^rOTItBUy`#9)-!}A(0;(A1}7G+U&v5 zKhEbgdXquZR&^0Q2fW3kT(_Yo)|PLV?S#CCr>mmPKjdKJWi6vbe?v27c3oJsg;C!VkrO zqh*=cBl$ZW`>8Ih(Z-&YTqk_P+7#>U3I?t%GU*&sB0p-2yk1ndYlH%@{~6s=ZxWlr%v=hSLE=|q!?0^;)`%eVw~PO$Y`73> zdRbLV6`PVi9!p`@k^B(E<=aT3ftj0USzTl0fJ-5r$Qb=TG|LKsBwemNb-#2+ErAZ7 zfy0SoRXg7|wZ-zQ=N98?XjH5K^tsUmN6=xNV?&653&#ak$EFJ=I&fbO1k|5kpr;|d zxKMy$TkGO~V3TRQouMU0ut_u961+szn@K9Is^IB*j(6-L4fio(7-;)K%_24F(461E z&s6K>9VVr@MjUxXjTL(IL3MEqB!(tO3rri9VJ`2yy17sg1{b}q@^ZPY3&esX&W~~h z@ow!JvR#wC%NkAJ#LN*C&9FQyiaDT&EiE*)38otGTd}bzBAgz2dYezh-!KDT1j~oD z2}jod!w=gaRjJZkf%0E-82iZ3av^M*F?ySkfbbH`ko7PRktW3Vkk;ijBkL~jSvDWr zRd<&CnPJX6=+GddL7SA?q4_i8X$GPQm(-+aU=P9gfITmYwd@G;BI0pqZu50(uD0tr zlE}t-9~EF`KeYbWmC0}OJCz1t6r?uV5gHUHw%ByR{tKm7@b(<2j(x#UjSc8uAytjl z_C5QnCbAb+qTF*PPK}z%xoOOX%wKZk0tie52`bQ4`4RCNveZfyO3MdaE=xwlu)W2C zdqM*l(*$fLkx31Ypjv5*GhGQBv`(b%~Tfv|b)t;SE_BlG0hcWi$BbTk+trd;K124aKJKdN$_b?6*f z`k-=!%;Bc*9IXLXUm7{B-j2++8&unh*?e2qD9fpmA}8zG3%eA;zsE`A8H|e6>W=?+ zOi=xPI}f6~c9-hA0N|onO5FgJLNLx+8aJDtPK!kA`k+j6QTTgk&X_MFOvK~}QdQl75Tdkm-c@w?Z5m&)47+c$4cU!KqS;~kwzU0g{~o~G5Ry2dCBfDmt97pOo{ z0$yC1ckjsFyLT>!MmA9_VV%*ikNi8W%aJm;DC=s?`o6j?XRE>6jFu77GT1{y4LU5P z;Nk_xi81n!$S8j@*{|#e6X|;%GPHVxGY3(k^%idUk`-sfW-(I+e3U#SXbjSY!W=&P zw?F)0h(G`F$A1rMehLIh01W@u$%pc z?xRh$$=r~B+9Cc`%rO(8ZNowU48z!jBEG1DkCo4P$}nx(dWa3xe=clz3}kimh`=!~ z&U_$@NSw z?pT6i1GPT;qH{=PLmVn(98b&GU7h|iRhIa>m;O9{{Qh>)sE&sOM;Fh@AyUGF^Qp`! zt(WGm4vi8}Io_XeIuQ!wL6lwlN$4tnUub8ULDJ2kOg|wHItMn2Nt{>0eT2}#($PN? z{o@JPqY#`D!Wp*ZhXOX(p88~*NeVd-t|*^~r}3R}W}qY_ZSM2ysB~uU1hQ_E^Tp;Q-eko|g;S*G9 zyIde~u+(vSlxy_iRtm6uER3xnxeR#Dn@sNoMTNv8SWaXehf#XCnS@Z_!4`2;*WpJ$bIq&PoB0u@4gBfIW1) zd+2fcAT2k@(u)nTjYLJ_hURMUc71~w1U|-J7T{JuoH59#qgR`b8VLi*u~A2Nj^KCN zIrh648em4WGM;G;y^-++p54L)QmW135<1+kTG-jlzku40#oc8EC;5VQq26vBX)97E z0FD-6#Pi7+VN^jP>{^6JeO=^>yJ&5bHP%Cshlv_+J14A^tW>~bSaANPXmEIjg>lh; zLvl8-kHGl6lAvbYYDpj6zta=z@1k22BmezC?p27Ck>|`_b(mU$7gpI|v2@bk2Q?SV zf^<-^ z=z7+;lAbJRA2xZU=QfqGBou-{CZ3gTjNByeSvTDzdNTm837$HU#Ga z%R~EMZL8*DwgwnmhD9fw@obzRl9GBn0;haF$MF-d-CQ{gTuK|_1ec)_H}n%=9duE3 zB=E&xHZ|OC|~5U0SzEZpqQb_uUH?R=Ws>cI1pi# zkJwufP(naE_fH|6}stnxcd=HWsn$M9q*G3TQOJ9h{3 zF08qe5df+#`zU~B3A0~jHxNl+B$M!3#OXV6HmL00RGJD>0`_>x`LYSx!m_Z9vze+- zr||2}gGARg{%HmE@r2KyJuKv1?$J&6Mj4+8K*9kLV-dkuD2u#@xX`aD$QJVi+I>QR z$e_lV1}~R!cdf3&P37Ks+ma2r9ZLya1_p9$ps2Y*I}1V7p^;F4V%(P4nJvmD^)-&k z*SOi>A+Q7mW&h9-+(717xrDq>sK}q610u~i;!MEOa)5Wpo%$>SUI>b(H~uKmk^~VA z+K~L3hrv)#Q9a~Ecbv6D$#Fnu33s0_=m9Sa0w_q*5a136cqPUXu=(+^6>!?GTj#qt zgQ<5HM~o$GxtFN$iXVd0S+5st-xV%4@)oQ+i(v0IE+F%P?rs#?IN^W*ab3|&ijh=- zJa*kJ4-4=eWVNbzTIY`la()7E>0)r@iJ$H&E9)BY4Pb!S`flj3LsdZLp_%>ANEXtoD@Ov>_pGT`yK*IW8YRuHC0mfJTq6*iMZVG6s_cU0D%8j{uVd~e^*<7_bvJ(P)onRD zG+sh&ELx7c^l(v zq`0istiEAdb!O`7qdGCKXhNoIcvvYJpNCt4wewwq3FLxFG?{ZXrXV!-y71VzY+;}m z2PD(b5-z`LC3!%)u7l9-R>xV^4K+YsKb+d4P;jeTWELpyGa=@Y*Q#1bL#1N97ISlz`R_qXV_Gzv-E}k-M^H0q2Q_S|f@C9h))-Xh)pZ&Q3*SzT$4A;wKO4 ztgz0ItISB)&M$rl6j1civeucuE2!FyxbEyGXPF5;8v!J*>7stoGANY$WM%8=Tgopj7A`ALLEC5xm5W3tPzMc(t1+lFe9$ zJhvAg9i?x*>^=WkjF^Efdm5f{r=S1TUXu~tqQ+>*vxkPDQKn%g5b!}J2}n|jFmXbr$@BA z++}11<`+ixsO>E(yxqkWmJS~N*x)LQgGcVbk~N6Tmi0NgOlohN1lg7$1g_VgkM?&K z4tu@jneXlqQ#?8>PAwxt*)60ST(3ptmm3_HN<`}hYSO_(A6EpCX=CO10W9!h!-72E zbqm~ff@LWGmlvSgO6D$dBvt@(-&}~ADYY2r$7RUQ``hA*@H;!>8ti=s^8YN_A`Ki7 zo8pd&w2@)%GcQKS6SA#%b#}A2lZdaSlim*yJai*Vh?e6)ML>2Q{bd*BHJ^LC%POTG zkDYLW4)^BWHNcg!D<($UwpIm2mh0H161bg-h1$aWMY8=YmhBk0FOqGr{;Vf@eB>pM zQ1ByCt?&cw4jkAn-(BE1qmt}djz}oj6*9YPb9>Mg5cGEqRzMgx?#PFWkd#F$A-tU= zvvr}^FBs3hPB6ZvyWP&uOt2q2ixVXUvh+LY#QK1I>6Es84%N+(w7%!0%oQCLc-NGb z2~4laNz=viwNk1gZ5zedAE%SVx+oCs zyHpNw0CmERuPYTgqKJHjzoG)~upPz*T$Dov+~lLQgG z5ovZ_Y9b6aGz9_n-T?)nEvhXa%4*BSf+refa*P{}YmKY)2mtrDJy@g*Ap#5C9E{Jk zw2r2LtzE$0`KNsGC9L7djO~>t(&8uLUygy}6?YgqG_M(Y;P6ZZLNV!d3G+;W2Zb}^ zmyt7+3F9%TsMC2u2^)S;qb5;D<{T4Fr2qQ{U`5gX@S#&_f$%r+HK~HwN z2-%L-K&_N!z&?x$&+um5qPW0@xT=6hBr481IkIk7H-SMHH7hC(zras@#b^idbNBKA zVR9Ee)fK^5qr3_ugg3tCHw+-jldZJ7SptsBroz3?W)2?+cY>P@(MJ7(x}|^ji57=^ zm~2(#Ytp?f9>KsN$|n;(BtWjt-)jE+Jjxrx2WK#X<%;)p$MQh?9Me*#c0W)K@b;OB zoPCv(vZ2}qchs;}h4+ZM*GE7x>WrfeMDk$=yQT`}i}OULXM}eyVLguw?)L03I~|*z zq3W3_ve$hTk55#xf;=`uGs6TCSG+<>>FCw-0W=OH!g{+)BWYcpmqMgqd>VhyhGC(H z+*S>;?Yi!@Z*0WK9#?#-JndSz-TB$OzYeE8d`XY(?!)bXBj|UR&3L*?Ish|*c0s~- zM|Q}|&8j}}U9zj@nuzHIS01KHE(neEHHKfgqo`d6d*xOTv1H$5>IkR&FAXwGAWGEP z+v#|G{FHB-c$O_1f#g0MybG`=Zm>ArwCnKa zH>r1_)-N==198=)T<2_lrQ&INC;o!XJKJ;Y%Ty~G0)p#;V8~;iuwCl*(fMo(rWR!c5ga|clG>C>a}fx$<#zHm};U02(UgOrl(`TKz_LiIdWq=<-` zj#=@sE!LdUBmPs_7B#jz%;!K^K?dDyXGOzNyPYstWXg4nWDI%;$v8MXI5bunHp}fb zXx>!S`(|`-aIh$@Y||`XEGiNGi~?5FW22IFWRAZzFROK-Yf%U$MmvqJi&maw1J6e- z+71aF49!3_Qh(%E=rb8y)6(V3!I7**Mvube@{q_6j*l1HT5a}V=pW~E8okM&X{)-3 zo&(-uQm)(36Kl)2%XUKE!_!sK<{xsf@iH2GQ!F==!P!l9YhIdWS>4isG)24J{9bH` zXT)SLCr`{(RU4T8BTL~c7IKWOispTAF;~kf-?N-2qbE=P_(kjaxm=g4d}$o_20Pyr zFeHmcmQb$e%PoaU8tkf3_|D?pF+EcOd{Ha9K6Q14AL^AM)k4$Og8r zm0nm8Kf5WLNKYujH6*CkDcX7ub>*Ijqj7p6KPg)PO&(%3Z9QrbxWG_x`X;kxiPUXR zZk`>W8p<|)z}rpUnj$(>nDJ zQv;6M8uoJ56q{@?p@nhk>Q>j-ttpm`HCbHa0|UQl!X6IHH{pk3z|pcy?2-JPj{Q^@ z)@WnTO0E;WVQq@_b_E017MXO9z{a|qs698&G+He-9x3=9PnohAmfcywvRp$B?JC*A zk6)j(iX>@+{yWIxRbrxVt{ZbxE*8alWXxO0{_%$ormajv8`$0yc;a~(9R+jXh<;p%NO$95P&pkVE(YBU39{Bgz~*?#H>(8}iKH<2H; zMP4te+ciP~*#C^~sW*vDVP-Cc$sqBov0>OXG;2f<`rF0-Q#M?PHNC8=rHV~SACIN5 z>qveG;__{z(ZI~jv#hSMa=@jKPGpRJADU%_K$0$3p1NPUqn1F2&%oitv8tW#o7!Ue z)pLt+H8d(#0Q%hMf+Og#&aojxz=h)it7Fpz6CJoO2LkF(FwoPGUR)@^u&s6RKd{L( z-pdhpTR#otHJ;ytCk%s#iF$}bQp=ObqbZE|R;Ag7!@(z>ITqBOW zqQ(k6`k=Zv1`(6E9&~6B z(V$IA?a=(0@iYTbgiC5tG_Z$Ye88R;#aea*c@gnAG`IP>HCNm997$wjy^jhovmaXj z>&oP}`JGAwFbYx|?FbEu6I*P$VE={ED|mYjRL8zxsKy5LuaK(7YWtr3RTJ3@D^cz_ z6Q@Q^<=ix8L*_3zasdP;f&>-ls{Dv}4OwcX3Z>-(E|(=EV%Xkd!9AgYjA;TklgOlo z$Iz}LamD_Zv}OY{FptfjdQXL<8bEE?LJ4M`pNV0FRV*@yzr=Iw55=+_)>udbahYBm z>1ga+hd|i8_EzI3@R51)>^nBUemWYA5L2%5HUqK2=pR+N&N_6CEPYV9LgsMOcaGKo zt1pe5R&PgU+YPF1#caN6 zT>x-VETwLMN+B3$EsdMaPp3tq_5Dq4ozIKQe6A6YmKMyPVeHGxZCgkkEKEmpsNxhe zA>v}!X~oUb@%0E=|0w)DG-u405hh}C1gWa-KnT&^rfS+1{I*E-OZd00=EPiloJ8HuGzq&FGWp{lvXGDqs&49P_w^Z+ncI3j}(1 z22X^ubcv4I%Nc_WKd8=2M6fO}=!HAZT1L_l%xpgr_)6Jzw4LX_PkdcJ8w7SErOzlx z95LS8RiL1txVTY*=Md%$Y}sl0NHpou&^)5d^RMIW(Z%3GBOuPGLJ3RwR07%)57F@7+6> zLnE6gmaxuf*hl`I*5ybUT$FXSW_@4Xmb2C1ZAQxoX&LOHp#~k6QgHEt-2-yfemp)Jlx{wPZMs%B&tK6UH7z(QrXaM;a$L-*09+GK7>KkX3z zD(0Ap(6(VA0ES^~LJ?oo!N>OU7YJO;8ldPLxu7iT^YM6FQcmADcS z1~4d%V?fHtA^$OmXWHVrs_!u04LE~{!21qeR(*V1)f((*Z&!gagM!BkMDkSrdGqGg zo3N9`GR)m*B{^7NQnK;Kz&4Tu{q5lF#}}_(pMD=xifaz>PC-AjKSKYo9^XjI2Tf}@M)VCm?eiT?2f>`@3#3E>Re z@|`w|B9~{xH!cwM8ov}Y;_wM7wOuZdI9Td9J<2uu za4Q8^J{HDSklYAFB%Xj@4{m~@e`vlh7qpNvVaPBo2$DCbM0X06Kpwhsn>Qb62Vx6x zXinWmA(ugX^Kk<-ip9gEOB|NLoULI`V}7-uIy9L*I~wvZc=VUW<$rC<_9)tW#3q=g zL>(PDXj`LrfWrK3!0v(B?MkB(1v&6#7fMz3PwI56!9h;A5f=kh6YP^%;0gSoX5vA8 zq$D%;=h)NHXf%{vq%#r!x3_2`WQ1`sot`{bXJ@4V$k+!7aljrr-aYg(c1F)TQLQ#3d{!@{`ezacpr*hgS|UP(~1 zZndP3?%(N&^>@)Nijn_*AonUn%E)tOuR2UE!3(Qwuvj|j?}M6)WkEWg`^+7Y#0OiE z6jLM|qZ~nQquAZimgYljAcN3+!~A{`bk}A21aQbYT4}A7wJFxNMRYxDTuDzBw2);d zLt?~?3fB$_)jtV?F%LsuCi9pt9LK>%Aup47c2mu7)TT(sG0jb`nayWOYYMJFdRJZzL=u(l5dpwg-+2*Ke2tFz`{+gD;$AU~pm*qClljfy5Y}m)OC~ zNFGX2G>70p_6#1mY-h8e3Qe)R3P+{)3Q6ell^Y%g#(Nb%^+1P*Jsd;BZv-F^cpSd^ zs~$e$Q|qS+-aXQ%(dga}$^39NXzW2OS@*MMLB9w&-)hl=(XijT&4Ljc!yae~WGi5vO}unxMYIuiI}M={U6I#Gr! zm7{-Ge`2W?broiSCES|qQj{<9*nkEQB~Z-JdmwgmK zvxM0%vm1ycFp^1lE#mZ@I2%-UZz@d%DFJ)Dj}@F8AoBd!vlc1R&vnh_Q&^E0jgvLtNWJ$E&~HOHc-@Dp`C>w>d;6iKrwDh?93KrllmIR8#faw(klT8+i-Xokg&B8yArIKzBC^ZJcmGfVi$`CdEjqKpwm9mWKuS4zgNR zJgxIb1UWx})u1yj3Cm$jl(JdEE?cuBqV$ZU_zB^w{&owr>fkXw=sPy-)^H16eJZ0ZPprVScYOnjj+r+VAKkO`0Vk3 z-8zD@$D340-JUx|5|2L-_a_xb`ambr`qVlrG<+K>bQa~$5OPaaLiU#u+I!a2t6jO0 zJB^ZN*ODzrR<02U&LZDvZB=%`ausT1n%6ORllmVC*}5CQ_Ug8r9U3p8HWn>M@AhYf zi+3m5Qq?lG{T0tnk`T)i{E3v7Q@T`=m%}no5|{C0uI%WD@w|=kHBwwwYgXSdtvWMx z^--OeS2Q8hH9V}8jL*ZZz}opP!31)_B$~{*8dDG&dtG>JT(&UKivyBrXbG2JwURs_ zUDrWqcdO$p>xLR2uOCirQ7E|8Eiwxf_n8p$$ZJ(CwkYZI`fE0DZBe`h=H1iSx`hQ$ zs1cMgOwxOBth;GI77s+~hm6iF?r@S(5(;}Z&*A*^Sa(+o9ElOvL8;og!{L=5oJQt0 zM%&rkmPP)oH&a|8BO`W02sC@*GIr28w%0Q>1qq^<)-!wi1lOHAr8#UIkIo}FNx>Fz zB4+E^FjNHng?-2*iD&gJ!WoUlYP-{Lgl`9*C#v+P?yZf?H+IKG5c(dncs12rG48vw-u&L#+`-f{sm@1GFPfYiFk-GGB2wQt^`qbyiqs$W>+}Z08q0 z1PUm6X<6&c-xXBtMqGDxle5eOpN#;L*K|?8Xc-jBeR7-!;wx_e;@%DuGFW+>8rE*c zs&++p#NF=dgC;j;+YL_ZQBW%Mjt}xC-3VUd#)U0pbG+Kk6Uk<*L!R4?*&?wU|6A1Vq6NL50f4Fi(aOUqvk}JqpKHzIZ z*gI3KHZAU4cusLOTE2h373dgGOGU_NQoyPcFnr2<5XMRz<1kH=0pL5F+u?i%1q z*%cF`ZCk5?BFlB`QVHD7#6oRh{vz3a7Rz=F+!x6kEJq|1>=%q@Undw} z)7@_8XC~N>oyCcg0$KWQs#;d3%qN}$^@#RbP%{4QPiQ_ zBE>TqGR8^myq(HyDhaI7Euy!k_*8@VPA5J-l&&b`dBYHubl8C(xk7yc3*^gd_9*)z zq>S1#B8a?8OEZurnt0eV+IL%z2@7!peNpW#-$$Lk>b*i31&bHGX``Ra6@L8`kXM&N ztW>7=-Z3Qy^!vh|u8j5;(T5l@>!j)8`C2Jek+zLu?2pq)VqFx7_FXE6H~_pzC+1%= z6g3pT0f)RehMxCvMWo@>X5+qoM8SRsmAK@Q*#l#CaX06x`cVAz=Oh>@yp1WOQg|aDm#OA zYJKF2qg0qf7{lkfjV69OmQmzhr1o&rdo+Cljxe@62j}UbOsm$3CP)Y(>!OnARsyT> z)?DD8ChXE!OpcT@x@HhMh?}$wV{l;XC^>bz#_bh|6UIkHY?@p?GOI1z2u^V9O+~z3 zp_hXw0wVGfuX>niow+K0?0yRwcZ3n8seBIq#wp6ZHVtWjQt z5yBf^^BV?`x?_2ueU53VQ@bB12YCC;M9#j-N!d{Cf;(zh ztHOIk-RmQu7egI!Yv^Tl~0(=)<5m$05k26uaQn4OMI&rtQu6xr*(ipM7^ zSwS9~p_yTVh$~(prF8V_`2ZS+5n;XErIEBQ&r2avFg}exXv473LvE`E*>+v`+BY_0 zWREL8Ri1V&-0uAB-Cu{(9=@c?B^`hnLAxN~yCXZ~o7gS~Pqh*+|3GIfMg{+9+BCJ-g+?Co?sK7Pu#O+3pM zjX-iA4&DXW6F1lI!`NM1`N~qU%;$Q;^N@se!FS=429olvH^PAMWQ0o^O-2!GI zkLMe_RqNL8D{}vz{?|l_mxMq%Jnr#a`;KUT;`X{Vqe=lZ`ys&zc1%|pZ`#-i@Kce8}d`RpVX@j7nCpe zjXB?9(R&;2Hv6Cd{q^bWu3{+&<7Z)E zb8IdEWHHa%V&N#xZ;JW*S=lHkUD9g+;P=ZSUG*q-`n+h1)dM76f?l_|+O}9=nB??h zX_dfn-0$&9NBI4CnBLj@agUsggYwEit4ALSfLX0)C3bH* zes*D=o9thQ=IPU;@qxidw7zgsaa~v2jf0eu?fLtGEkgA?R-}lCnvPlVu`Sk|(j)#; z*%mdnJIv=mSwRNfY-dHoQM;WmSY*m|jARUY2+24&JUBE~88*x9HE7;c)%#|2aB#3F zu58mRUo0vS{fq)u)MKNPb!3jeH7~1mp=(hHCPq7ru8UTlWCPDfE!qwV9SqGtHBx`% zSLibtT+`C!%fXSXMMjUpn=gTdH zN*e5{mvA;CGw^s1zE>E>MkXHlHFt!^ZT_s;u2y+{m$?Tj43wt9c`$w=n1h~VIW`+J zG5z5%(qjHpLPx%rn@CS6 z!ZjqQ)+yS04|V09h@)|OAwMZw08JiZHElg=5V*ilar!2+W{K2oPi~$apc=|He!$yJ z-sEjtXK05mI!*@>5$$TsLiRm}6W&Gfq1km9oAq!v-ic_WSOrn7rFU3 zHXr>S4Z$6)Y%w{nx5be$hm4|%u_>?DP~qviI?mU3$4XQ&aML>V4^sn<+Zy(A))bp; zFrkHU>grb4*sUp+jWtO z^>zgV*A|&{kHE&doTxoF&oo*sHXbSX9#5IF8J68y!LnRK4(%%0!jE5{w2CBYgZ?|n z;#FdzZ>}42Q!W<8dSuL7$o}z%52me5LmSxM6nNr!865?4;D~->vSqQhD>TPkzVA=o z19lwI{dHLv`Fqb|m-DN^uYl1*GJf)G^z7XZ&%-AK8BD2++#r<~NZawMAYps@pX}0oebH z?x{D4O<`s(g~=fCtFd9&H8g8P5c=E2|5G+xh&8>es-=oeNgt1;uq|w04 z&9khov2wtrkWOTbejl1;g+P)nSDw0Gx}%mrhtI&_#IdTK@0;3U`PFlaaWyn5Rsj0k z=z=5Yu+Fg|M8JjP0;^-w1rr^(F9!nZPcYEakX~FUz_6`#@jtN1G~Uk85+m58nQaMP zBI?Z~l~z^obUnvAc9Dkr7%>dAeW7NNnsjK+Z{TOD_3{pr(p)2syrRYmJ^G-!I0h0! zlcNQu4a+c>cV69GC;K`0ZIG%|X|6!|uQ`l;WN5h% zHq98l%}79a31-N8n1@Ic;(JKz@|ux#m-j52kL{{E%l^zTXC8ED5YeDbO6}16nej9O zQG`osQZ%rKV0^%y7sXn31bGqhI5fBUx;0nZ^&ClLW4(_GFtZ<8|Le-+xA~n)1276w z8|?@UiW6IGx?ul>(kpm-4phg!V5r6h^skVr#%lYX{Z$j$3oB9XITNQwP37D)W<%yL zIdTC6CV~VN=&JmPcnw)h><`7V9oAS#196#N9O-E6T!%o|y!KY( zC-9MZ^6Wb{zkWIzj1W_<@-_pp!RQ}Vxz0Ltjx2ppxkBb}(|3;60IM&JoK|l~X4?&_ zZN+T9t!tF!R7sJOb?t>+3gO@5r11obEx7JGa=$)*J;Jg((&~O zTK_2gJv3*`mk}mnas;WW?m!69-ll5W73FJ%HC%45Q6RYXtg}Yq*9zh1k~73Bx@K5e z*DfnYhX4pIIf|skXg2d}p3Uf!=>5dKIx1if6&&-pg>QR|nhOMacLq;{vvi4$+RGV( z4L_*POGL0PFzAIl&RRy&5zK5q68K8lb+n!5zfXK!KN|#gBc;zMNE|WV+f|^Tpt!hE zg69zC3~bqH`baeC(a=1i%=53~?a{^HLL(r~s6q)#_*S&njEnULDDC*&>%U87?d0v7 zH>WSpXZ-Pw&ZI7`q$p3*YE@lh6b3+uH?Ip+peO+^uFSi4WbfTOmqR0)D3-9!XxK;o zoz~?@8C;ZgwPt-^-IlY};B7|B2x%GYp`ivHmQrx>g5$&(c}QfGKbh=T_JfJ^Jr5aL zJ;IrTDA9TgH+;#8Gh(xtDFZ%A9uhPL=|W)+pZ(h({xHO!|M=s-2Q_lj%3l`0m(bH} z@ZTSwJfSVlNd72F`Ko4Q7e00Cyud}T~>X3Th$uuXm3}6F@u7~3q8X zL?oVoUk`4AqJL<XN;q)Qx@!JMsOPh)c!0wE zZNTn<+3iZB5(PQ%Wfw|S_D||`tieG}xDgivRTJ!!Sl|i#pl0GheWWBa_UG8s(P%W3 zU8FM+|F^ejBV>eeF`b?~S7&FX0La(}330$4I^I3>IDL?o8)WIlhS)};B5^}=HF&$e zK@0*P<1Y(vD6{E_yW&v;Q}eu zW^oA}?pH1BZ027;?Z@KovVxO*LAy|IH;%LwsS^N4i!kE(8U zEsBxX0JL-Ex`+`Y_M25>FH5p>sO`UG&uI$CM1m9;6>wncP3Yg|cB7POFMCqrVyj0)Ed3e`Ue zgE0?7UncXIFC53gMjkJuj0q-DLbyd zzi%WgBhoLz8MX(G3)gR$0xchx(gtg98hV?rXP$ zIv-Inm4xqb8nHp)K}+703uP7A*YZlz7i$}WbAjcdeXzDwb1_>3j4i{W6V7-xP7p~+ zJsyEmKA+?GiPvtf90o3>4RM0YP>CD*39t^js5%n(V@EO1y*g2bER~~wSASxu7IhV7 zfF<0T>{663^4Nd|5G7E|(BxOF56^SBqHY|Bu*yeluu#y*d8ou38n^wNOpKL{z=CzQ z7_v-cvfG<-eq&bo9VYW|A(LZxGL)F}QG=bkgLxO$+{p+4RhNAfK(mC|FS8qnBruXm zcrD`eoj4m*c5f<81t|f0yySe@1Z`ni*v8pR)u&VVb>~5%>l**Gg8F#EXV4xN@-Fx2 zrhB7|&jcXhfQYe(;473x-a}mI*A!%nc>?V|AwXnM<4l8>%ecE%*Wspe@4RivhTM*& zgf0UEIW|z#T%nzXAnMRaC_pi8OYF=RWs~|E$K-3=Z150Rf`YPt=m>5gbF5rKUMN)L z&(8so<{WV*U}-tPJLFD%76C5=#nT&qlxRtUhz4y)e$B&RD5$6&@}fJ=+M(n)ptFR# z&lmK7mjwY7Bxwk6hXcG4V+q*&_}B_K?bogIU7W$xyNe^n61Ln+RCvV?!Rf5m3%2hH z7aMsC)}2MLcN-Uw`9OC!3T>QlK!CWeXePx-sz4sQ?v{rI_ztpKRXnZpM+7-Pfz_Zh zE(yzFOq8-&!Y*60Bck+-r1%NptNwNiwCdn7J>=1dYzcuvC@Vnu<^ZZVB#Zn#m^zPy zIXdHxqo0WNJaM`=^xeOm&cH335WjFKvb_`eHyA8!s5W?BZMu&gQxo^4+f41!*x$27 zVk!+t1L)qnBkUGT?B8yq4-_O72yNCHYgmS2MUAk`J7ClbgZS+6fZaNRvd5cLNZp=0 zMG}uc5%(t*M*2V}()!doD>Qr?Ds&d*&k%A;Rzmid654y#)T>>&k~@u(X4jG}NLH>9 z2+ktkXl+$?!EzO9WSZA8ca!=b3E8?EzxL|3oE;i3p*9vRNALD$g^PD5+EUdrwfz;( zPLdGI6a0ykmQ%V^l9$6WPZF2$WUlP!i1ECQ@ikIhR%=$@Fs(W>b@fr5m{&9*(=|M- zl#I{At-#v(F2MwH!6cf@xf)Xt8hc%MY+SZ5(2E0-X=n+TU$v4vAYIo%Xm_jQEbE3E zAg>=zZBZz=)h#j$6!)1B^T=yeEw(7>^ZIKxaBWe%1?Jt;*t&%UP^b}W7TZEbefUQ4$J!HqYVw^jLRS3ml0N*FmY;xx?X=ADl+!Hb&do+?GZDtT$6! zAtNJpLkKi`;xcy7Ikwj`GzAHwnAS6U`vljWJEb{n9FNW;I7z`4aUy2x*)UWD{e^wV zB#CGBEaWc20T`%fJX@*fb>7@~1R~;f=b@8j49p;_S&iE%?G5S6(f+#PHyph;ILZoh zb!CghBW$cdcBYZDi4x_64ni?N9dyD>q;0hX!I4}H@U(zoTOk5i@lArbh{{3y?7|t1 z#cI3LaD;CMpC_vHr|zwd%r|z&MG*QPvUoMsTru_A{@SDRhHy$iYlqQ++S%XqOx?&` zS+jui#6ztSMS_k^nFF*VPHShUA~IibH&XGF2X$6hXUJ7%By8swKLiRWdTCkf%-VqaX zXWI=<>rqfD^o|emCfx{L;>Lw7WOKaQ%@fIHtV5pLi;s@dw_f(1|13t#z?MA?Pr1|2 z|7x$v2yaniH00SsL(nMGFcS#)AQOc3$A7qTLvZHrN0KYZS3cltL)bf0tTrv~TzF1# zHCn!ZzZK{hPfJC}Xi~tc6EJ+rd=SP;9Ocs^+FkB4vI6r9BYV{L78Ty^;tER#4}WZM zmBqm$cVNjHL}ttSoLnZgw@rd<%Mb$B>(58~I}3-s-tx?M_lPMT9TumSk)iAs(haWH zqVmfPj!Pw?bpti&V4{yJg2=S7a{K@mc(GwY9`L#aZacv;l>f^MP;Di17da9ufVpoj zM9q|14D{nNWas^DaYgu@opBBJz61Gx7HyFRj)+ZhM@8DmF!z}kBjgF$R=hg9+1p9P z*V0Mv2M8XzktIaS@t`6gJCFXdi}IS!z1?M%(vQbZI6;Sd^X?kpO4$_?qitKOf+EXx z>{1Eb&cs4(Vg4f7eiqAi4BQvVHduew6Folil1C``5vf-Afp!NDY?tpYaGX&|_AEyv z6zmF_-L<(r=n4q>y9O&Dj2n04!$nBSqLmQdPLkQWQ0y0sXJ026U(?-g=VvC^kDbMd zk^))!opfS-K)!TJ+dhZt=15xKb5iDt4hy_%%E|<)p>zp>`n8~~N3Q^iSw2;PV^J1;d61{<1!0DJF%g3uP#mJemM z{ReA(~``aEY(uEL#g>DYU=UQ4vQ^3|PVDJ1>zW5T>aAd~z$`fhv z6Y(#{!10PZ3>})+3_WmorUIdubh?Cjroe;3neofWnMc4~d(ilbDRLm0#7 zx{W4&JC;%8UZnPL(|a_10*)}YI|t|Kp-ijRi6%%0BI}}(=vD%&@zz}6o+j+lSWJ$T zGrDFFI*6OJ3}bL$>?k>PyT`g_yUZIzRC;}q#60drg zX`Q($e(Zh=8Fz#crKx-l|HdpjpyFi2n#7iGZ~hY?}D-KCMVF3(FLQZPP^KWM|S&_iyk2HAF9_u4l$Vq}jiK2@G}E!^(> z?A>37(;mL0$9DJOcEAzzyUS)g-6b7>89}=s;kzR{RdY?m^nxo7QzaLK zM*14VuiR18u7kaDD~MRKZ!&d+Q~s9*872@V>g?@wJU)KPw@p0D7L7o19}eCH*b_I{ zCQm@t8-{mRsss0M=hlt04lY>gDbA#!037I9j{S7t*J-aaCfzB$QRn{%z{M->%BB`w zd}%0@#=oH2?rz1wAM77z_q~$(wR+=GAgp%v+PM7pC5>+oEaBrmorw z4W?Xemc^=Aw|QGu>t=*e2Y6Q1t+`xWy0448&F9O!X^O@@s{FU+t~t1>tCeZ*Hs$)7 zBsu&fUoP{@WwEbqo;U5j=iis}z0ZFr);_YL`}+)wJ&h6~D<`^KDavFN=Gcboms z|Ni=PcJiO6CqKS;`NMq!|CZPLn%=I#$APwt>Vnub4kK((@kSo)Z$HtkJFV-gMn6lx zPsR3nh|oDUJ#L?E?nDmkUbW>4JEuI@rqOI(Es7EUaonDMoEL)X$xU9a13zCd;>G%^ z`W*T5q6QcFa+mPDT5a;yv2n#tU1IZUeN|qM^7?v{*G(jZuko|6usJpt0J50pZLx3^ z=QqXt{j6*hlrHHt0Py=|k*<0aJAGcX#p(ePFF~){Ty0w{Fidj#v9wCyIPUj&r6c@) zJWTKGeYx2bi-$X%pPrr1UcEg(dG+(@!9jUtpw*)f1;DJE9Y4D;&rSBPL-X|M z(fGjNBU)cLskpAI?Z!b$$@cvHz!sr;9xGBrL`}!6_}CU}PU#WNKj(dZhZweTaMI%cn*Yo9;LM07$)k`>=kr{Zr z2j445c3cDa$95r+t*4jtcai8lue{36yX{YRO=LNy@$GT zPsGtUy^x=jEr2Euv6{9XH3(c_s5pI-S+hjywkJ2w4p0qc8$aOfCU5e#tuwSk7agaA zh=_JIW+D5Y!-}pK?5;8m66>nf#y~t;mJVyMpV|B3ZnDf*my6td9Gj1RkA~omR<@X& z*W2RAm_tTU#n_bBYpC#aT^;A^yJID)7`SPj`iH3j$88OJIcthdHki=DICXWaYwXq( z%f^~4uJM6^-!x$l2j-jbLowiJStj;K{!Yh!staqhv1cXM3E!|b#d^DffoqFQx<_DR zT~5@Vn`auW78{Qge2=G0*$m6>tYBHLA%}LAY~jbRPg+Hiv_bzJWbrC7(KpwPxhWTm zVm&hEEoA@r!w1t=rlAdNZwfr|yo`>5IdDY3G1;EE_i~PN3 zvCH|@;8(!tAsIh;HhOmTsWI~O_NG{mpa1ET{$fZ{EjwwO_FYdL?A(Zw9tdI4d zeWPPLj37|3_Ea^RfiwO%>8RiA_)EM;{PcdF2tH%R@G9)rlgO@QrLAQKLm04HqvNd=H^*e*H}5=Qb;E< zM!yfuvO*w9mn%=*FWpf~pu=b2aN=0i&i74ivHa?}#kd+86)OOJZgjyBbXe!u5F+5h zae>vb>4J$4+?N9Z^(PqUX-F?F6kyoay7(X1WEyX0Xo(SQ(#*C5FA?=-l1i&8c)FhB z9lJ=weT*0e+P+Y;__UIIF(2~pFY34VQSK`d3_5%)70yG zOiFW&IC4de6?*hRtvv-2GgG1krVYz5*Y{D~LMRA>i(ad;TJKtmSdhf|aa=*Xd%uS1 zzRBKaji&G1ED#hGSRNL|98koT7Mj`wQw{jN*!UC?P7gh!&8OmTnSn2p<-^*9Bk%v= zhkcOhsM1`4@;4=neP(F65H=Nz-U<>BUXmH|9_BI9g!lo{Zh76@yUPcb&DVa_gJr*G zSTGN6XcEz+O^({J`HJy015t!a&ZM}&9)j@}dv0wlJA%B3cpRI%vhK}lS1*u6cHa9q z0cQ3?>wnXj@~*sh(g2K-)Mh(EgA&9Rn=aUYp!5pfkprh=A28I#2K29xs?KZsf&FzR zauimg-1ADD8a0)3)0oYezm&)Y5SR!ORG?M$4)GeY)W#{4D<5#VEEy5Q{tgQs2@Pb- zC18a_CM`UM>pB-#9G|3hIx!RTiTRJwTOsKTpljJd35v+ixnYE5ms5zp#B=Nq#qu3$ zETn_DTwI>G(b%~GfwX!3or|Bq$25{>-!t>$PbZT(V#-a~PeE)l|4UQV(*d0mPajlP z$Q*9R&e0oS=SwrEHQJG4w?(zh7K>fmqAcf>6gk<@UihUD{sT@L?_gBCRuBAtV1nxR zxAP#%>vyTWPXI3MTIvR<6oPTq(zx0D3|b^wKit%}<-%T<3l{;o(t`O4#=g4V^;YU& zX*!xiCr&vNA})TNUfevLSdXCf&%)nh^NRU0!bD7tAl0cm5JI%KZMuF#`PyI&*Si}O z2yPA<=n%T`<^)gW9q}1RDZ_QMePVWhNcT%#I_0pDDY6cJTZUiErrV zgTP^=^d1GtBgO~23KSHS5I0KjoWh)mFFRd)ESmK3%zR9l=ik8F$Cr~!7XfibCzP;+ zKZy34Gh4rf(w<$t_>)xDp8oLi<+JZz7ks#)GimKgit;qAUe#TU!T<>I=8Z)KiW2aA zWv;Hs-qlsep^;74HLNol4w1idbvaT77ggKTtnWLw6>K$lD`*)ZEt3N@oI!`B6kMX< z1TjV)k{RWn%=Ab0gNckij~QBhj57yOqIw56e9ek8VzZnn13oGq5_AUXf;GpV|F3`j z*BSo&=fC}XQll`f{AKZb4LzMs{`~H<&uELMB!7~nd`&m^3%>~Kyu?CfxNtbkepC1P zw%Ja@ka5}}{#DE|6QNzlLI4cInMp-_QHK~Szvd~!Mc218Y^eL^(uc=D){UMMIOfIE z7zmU5|IWlD9vL)%E&SQF^Fe+d(*V{nC}*xK}6tvXCbRTy=z(*?6}^c0%InY z#|uRAnf&we<@YbsPTF;vyK|M~WPwS^#~%~lND}n7lUKie{^G^6uX9Ry%^@Gk?(%=x z9ZyhfpsUY59~@Ho5Qhqx$I~))U#CAzl_mZjr9Yp1^5$;YIUP?4j$1q@he!zz!KX5( z^j?~~Ix~)dljFk)XAq%89z@x7oP=)5H`aBQ86@4D$@J&s!OekopOP}|8|-8&DI%9=#5XPx^_sX8G~)0H zDz#fLkvMqjI6W#|^buAHuwpEXtsuEMh)6sEzn?mZMEu{uqK%Ld#>I3-@?4#tl>#7RA0@;A z2k1oiFyi!4T49iyXb9`H`X(ehjVAZ{hY8;vQhz$VZrN{w!`5W z7RE*Y0m<3KzXIcnMuM8UcO`vv|CKwj{#AC1VjjOA$-N4ZGV(n2R~;@q!Aq}fuvl)= zPm`L9WkEV##>^d LpH6jLM|qZ~nQv)Db*mgZw@AcN3y%lv+sbT?%B1aQVWTIH>k zw<+GXWppEJT**ilTp`O(hQx>&6|Nmvr+*R#V;+XSOy)6PI*x;lLS82E?6z6lI-4RL z&uDH+m)X3RG!Ab*jBv9(K$j@QDt^wMV<*)24~>LnMEXTI)Aqn|;rb0z00utJ^xz9; znHZdyq$tqQr$Ay%%uD=WW+acLC@zQKL3RO;T=hkfRH3u$RXQqtP)JgjpSj^_V7^!R z+X!@eIl?hD{EYx40-vO>@v29R_?-1~3O+p2r_mVR51Gc{&Y-aev1HxPn+5kp$i-HV z9*lcyJ|e%7tSU+1Gj{ z>5I1w$+^Jt&^~zE>T)q(1I#VMauCi$Hl8Aql6pJ>r*g5t@e{AztO5ohrA=`{$WVzJ z`U$WBx~w{q_+v*g&!alg6j>@q|DyegrCQWgm;qLBYqCpOzQ|((8bFjlF+*3bSRY=L za7Dv75Mfn}*kGZck&9G`IW}SYIhhzMAAu$7>@j4S$V~5UtHrI^l=qk{!i7wZ;mJ&5 z&W}6n+&#>@uog~60H|}>CkZr9nEj@H1Caz~G6}CmoPH(F29@30#-)OkfCFA~vF?(# zuq^E3Y^LfL7x3%BgJjn={%!@0@kGp^BP`@y?$KQwj56L6fTRN=#v+2RP!@Slaba9j zk}c*5wEKhrkwJ?y4PGwe?s{E^n<}I8_9Yu~dnP4x8JNhifua@)?JNXQhvq^7ig8zA zXLcx?v^O{=uW_>>Lf{Ds%JF3&xP{EIatV2%P?5hl2Sl247<+q&2#7)*C}an4x6mwSl{ulON2Ek?ay`&PKv$Xl@CEP}oJynxIXZg;cLCI|-v zi0jH`au`V!C}KC<^0a{1L00P&&(--ef}Eegx}Y;J3Cm$jma=)mAzSk!vh<9k_(|cb zdkzcq>JTwK=Fy0334uZ=D?r8O1gbbBkNg9e29Ja}2IEe%N5p!OINcli9^TGi;MQG= zU$_+6-gEgk87$Y(Z1KL?4qpeR&cl~sGquab{*f&bbJBn`fbM-b!f(O3|2u4qfr6w0 zsm)ts7nY$|(IPC14j8qN42OIKT!UGQ9`8kx)Mn7c{+ zkA!^PjbBG~Th0!RmrxsvmZNw7*x=&bQ`ge8GPQroXD3OBeZ#cQnK@UV)romU6EfYx!%E5cb-ESU2Hz!^KrWa>leti1 zNxV^O*KGXKfLfoq2yL~$ShFYXF|*) zuT8Vup`_32uhU6r%i=9CAKvEHEiHgTji8KSlDh}Tx|<8g@_|VGkkOgtJx($zLgCNm zIh>yn>)~oaATj4UC{=rRIHK}{)6CrFXa}3yv&cUk&6HQj$cWz%0?nSdjGc6j?QMak zBtaC@w(z%4aNT)On#0EN=sbgy6nqgUW40}3sUjFJ>_a9=eA*T%cM%T2KwI!^rCqdT zcN-DNh_{26L6$La3R#`DxSi79lD-`6*A2hn=)J>HR+?)lTO^)g;{|dsjhszXC?^aM z$^janlV&1quO$eMZ52FM1v%egfx_P*=<^ku4hqFc$2|6~%9H5Mu=80r?=7xOXFFpoJUq;#c;`d_23~bqx^p-pQ#W((%jPRB;DScdAaya3fVGPf;}SOLsKb0KP`)M8*9H$`?n-j+~= z-`knc;O{$-|If26a)BdaQ`}LJHZsh8=EVqkL$)1WgWVkMB;sr7z|KAkFTQS5ej}psvZ15djJQvD|Qz+UQtO7EJq|1>;bYN7y!%Tcmg4h`dGT6kQWU@R?=Yye&h=EQ&^x_Uh_xUmnmg*Ju`yHyIg4o(nJ#vdq(^2>oI8| zVPGt({lMR&UVK0L31Jp2UXG^C9+@lr_)|jOxfEjMWcuJ8Q*uDRFYLLM(cU8Z5F_TD zG+jJ@R!UW*ZKD{+<8+d!twppSQaQu{;6*wy|B|7op~MY1=EbQP0f0DzOWgSmIN_ud zFXS0@whETD+g(eL;2mbRPhNh6f9MqxFXW_c1v|(1MLYvJ!7n|?dB=NIaeHX1c~3O$ z2*+U2I9*RdG2;NJG@U9=5=8Lkq&fIe6JhY7DG0Fl9w-QHQEho!H9IaAJkcnVW8848 zU0mgk0C0ahfl*3p!(^$R#S{{?^elGboy&is`p(&8uMUygzE6%QCX zHZK@@;PA`|gu`UeCCzgIJSdz~ewhbzi8NYFR07;&Fr9I4&a9no{ z?tOL(_&~T5+-%4;>W`>f#@{~C;*bwB-Pp1w-8=g+3>>0-G7&=pho_Utixab`w_YGkI!-teb*eB&f5$zwM&1t!S2;uTU#$EcnU zpm7+H);nApNxS7mDMSj!xA_Nc7?yg-ZPg^(q3c2W#zu@BamBZer+o{zKR{UK$K{(w-;w;r%(86lgP41Bau9WLv#WD#0|D75|H(# z;lq`>fd{w?>&96J7cBLZVA49KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs* z5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*` z6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9 zKoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy z1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eK zML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pkKwvVN z{JQL_g;_M~wO#b4te2+U)xGU{vu&HcL4&C_+qK=;x-a{xsk=Ew9pPQm_U3wd9lkEh zzFe%!uCrZu)x>YzeRs5Kn~mx3w^e;Zk{tfDT(8UPwLR3fD7*g9`>(6T!S}zhwQZ}# zp&`Gk4wL$R%LSF|Lt|d=u;_yg_uIqo|McQn@$}ngPk;OTyWc!C@DF8ssOg6qd>px! zd25MH7cjyG*_ZO_aQjoYbim(Mm(=q&HKo|wk^0Q*ZYJQ&1PHnfsGYA4T&w9dR5)b z%l2klwp}KKFYstRY=O-sfV7LUx643racdWEimG#<3`y4jAnun(x*1U%^m*Rf%_Ahf z1HEB$v+J?IG|97fl~;nm@wmtLZbaOV$LYO#Q*F0)`FN+-&tAPQzW?F%)9-)(?C7Xk z8EEzVtp%7(T~ye;i?h!!%@=0+FEjJx$;sJ~!AG>-2C2Ado82}*O39A={e~?<^>waD z84+hX3j40NHK&Y-|E}t7i|tPH1yDAS!7$q^+i}!>Ckz&u3LP^UgC0UMj*gFxjaP>4 zdUpeww@ve=n;#t=E$zxT73Ff-i0Dr#V75IoPO?tS>6hlarnYV^4uW&zI?ZovFK?!k z$VV&M4hfyi%*1J=dni}vb3VDDr7PEy6IqLlo~Oy>C6S+;o-TK-v)Pkbd|fVR^v)+; z-?TP+4|wf)RrjeU)>iJ;{W*D0Z#T9t-L)s<=O=9 z4R*e>FeJ-PmQdA;^^QU%4Sv;YIGeedM7$?oI~dQ5OgxWk9tcm^{G!`!Hf4K14KJK9 zP?{#MlkpS5oQxzZu-Tb&Gae2jE#}Wj=sb26HsezPbbrQRb{7IL0@qDv9~lZUe_O71 zb~^EWz4XG0#Mw>NWqLvpZXrRfo1$+IPVh6-QQ&1qTRpE{xr zgD`DS|1>q=xNBiAi_UJRlXF^_psrzco!=U}?!3w38Xp<>QJ3~`Vm?X_4g-#sWnz!y z@5Nc1>e3r+>{-Qi!Z*~$*1HW1TyLk+Jp&u-3ZnLf`P@aTb{mm`?}?Ntn`zmD6|Aco za_Cpd7JlOTq*WxzHMoB#(|nbf=%bs?+*Zq_t>?!40NFo%`_}Z0>1YG{TZ=c5m-$ID z2Z88EX1cbuU!ghW@?(GUp0MMH;nQ_%%Qun5A?K^fkAN{ka`xHh^Uqg5bw=La-P-!> zi~sn^JuxJymOlZAfhj@&FYdK3A(Z|B*2nwLvC;7z<`5`Yd#W1Ez$-qy;=}YXbp&Wt zcl$SypZB(Gm(5*`PyqISO7}FH#HTPtNMWXs_|2JN*fldXA_(^!;{OXaT#7ZlZkn|d zn~FXjOJUc!JP6|QZSJChBFwXHZm@E|h91O|L24$lLt zuJc1vdn|wU++th}jfxk5F*k0(8FX0ZnIS~Lh2s*dXJ!Z{I&fc(1k~TbKwqTv;?e;O z+uGXyhE1mN4u+N(!6p^HC3%UgHHCE`+2etMTNX$%$7MM0H!(87-bqk>&3@&=D%4)r9En-0u=f`mc@$UT^ zru!y)pEa7kbF)BDRA6~n6mvikTUuyp6HGPW_hREyL^wV4j5eQ&zhwr#OqLI86OO$9 zhadJqs-sGC1fzlQubO$L1@>(+orrE;*Cp0(%I?TkN^Dwd@G;BI0pu?#jA1t6jZ764`n0 z;{=%553T=AW6Hbo-bn*6N>ZEc2n|XQTWq>u|AEpgct;MLj(xyT7aP#OLaI8i?FaVP znaELCiE_^?acb05&P`)BWByVi7eHVlNKk=R)jPy%$Wj}pP_BHy<+5Z%4EsAQcqBBC zF_(Z95}CB{7_RGFTycDo*6GAd%qQkQMsJ0rGk~sT2PG&XKj(%KmR(LE{u0lzKNQP% zsIia^;&O3$;zncV1_aXP^>;3Q0w2>zo_){Ek3XGE=7=dbWj_V6$^0)(RZjswpi&6NSxe()^D}6XX#H?g-X2 zgQe+c4xKpVOo+Jnb$W60bYeY%);|k>kIgIQ%Lo%OIf7KD?m!69-nQxb4drWtHC*p* zP$0O8tg}WE*9zh1lBbAQ+?ru!L%XaP9TFh4@FzKSLzKS%yUC{dK`$BMxfI3K47w3`XHju$Gy0Br`jX1b(LM2HL^%KP0}P zpAQ0uk?%-DP(s`&!E*|8Ccf-+@v&&q$20RWWuAWnZy#SyE?oq~8J$qV z68<3CYtC%_7D{_|_2N%bS$q1!%a_l-dtLD1iq539D=Es;w0c!{F$x19#G5x36(~x; z^Od=}B70X?A%{jbVb`$EXgEav%GKpa8C+CtQ?tJB+*YvF;H{u#gtSZ!&~OGFmQrwu zf)m6Tc}QlIe=^e_*$*Z%_B>{2^)b#IM2YGh-0(Fk&WO!&rVRL~cu3G0qzl#@fBwJz z^RJB&ak2GpGzMe16enEPT-gq zPh%j6TA_FrI^-ebO7a0U^9_nn2T`t+`8U9jVNhYF0D zSROAB$!GG<%a`B3Ogm}UY3|Ndl9L4{B_DrGd?QKF-%eir_W6q!&%VwnXNWdS3;FJ)~u&>@)*kFI^Gv!QD$boQW`9wZV?2I!5M?%u(F~5PzVD>>E8#dXU z%sj{rY8Owz6_1xLn(M#dnDY{XRspIshbkRpxDZq-cFt&o^<{%>R1pIn(6BPYp^L4ePg_H?XhUr0&yunHI zpil|qp(}S~_l|ZTw-CqXS=cD#GKg>9ZGnbeK2EyAVHwO>4SSmN>k6tfGxcXjGad%d zf4#i^zq_hG$@U(x38tw~M@J6Yw{<8Od{XepU*AjD3_4 z2OOXi-NT5}M`?vYo?dQ|ta0rzvlO36wEJcb3YU)m0b zXIK~){Rbpx6aNZ~FB%DI>fV*~(fwEM#QIm+EsA;kekAuQM9RqX)L(VD@B}ZtvcY1x zNk2_$E|vx9co{QyL=ta(MN&+WaEx*Uxy@qtKwFxRv4IRi%PsT!WzyY{=@Y;i>u8m? zR^Fy~+m_LdtZ^kHS#X6cKN%7uW>mO#V4eO+7>s!s`ZAfveCaq2HVS!}#IxIGaqDb~ zbUdTEDP3msUeY+c`7pxG_5fX?5Ucn(dybt@-#;`GmJ#U};Y`~D$A#-ROaU19IMahK zoMmEgVv?djN1pEf(O|JJaW|+MN);%u2<=(^g$s>U4G_X<>E#H=)bKX~kO+K|zQ(H_G2(O9&nfuuNS{Vyct2zshdYDD9>kJ$KW`S?7a@9hcC!i?gp@YL2_Zuz zZs;e#2I#WtNaBwj#XOJdL{ns`9Q}*-CzfhaS78QN!L7+IW%(kH4QK#S0>unnxng~I zQNk4s<3NN}F=B&-f<`Vel{vIrM4Iff@Q zi8(*+uygk?@4{L*83CZqWuGL_JYn{m`VB-9n8_r(7IFHOI2%-UZyT2iQUVTm$;G-$ z+QPE1kF%MoUtGYi2M>~6*Z8{?G{zG#gO0F}cezJ*aWKkwPXLk*h!~3qzCu~#J;jA_ zO-Z(xC(!N_0z?Ka&NO(rjJxY~9d4?O&fAx4$nBYw&}CpE#|Da8D73Q>L>-z71t`W{ zg`L@l;SK<-)0BH)Ff zc<#m@C0ddoqCp!{-taIO3M#6Hyy%{@4k!f<=q%yx%OySFwIzUpBn<)XaDZ20ECE{_ zpId>T{ch`GmtZj6-NiX$3199dD!k%{;ItU^g6&)3Vk2+ChO-Fv?(+gNU%1`PLYp8Q z5FoBAo5^7$RiKF7aLdyIVh35RQ#@Da&j@mU0_%d#yd*4#FZCU<`|4S%^nf!MdEaC=zDlOgMnLj zDSqKnWP8u$-(;{{L$k&EW;=Wxm^u$%hRxJ27yC!HNX$tC(g3>m;RwG4=l<`oF$M~f z3Zyn~ja^uVVnvIvEIMG+3X}L8@PNZQf@6<2sgSyT5fn*0{<*k6sW8$929b7ey|Y5Y zm#ISMQGO4huw+NbKRH4N&zeTHt59;MQF7U}WDAm&y9fklkuP0sRd&I1m1<-zuVd~e z^*<8wbvJ$;)onRDG+sh&ELx7<{bPfRcTZhQ)5_HTDW9DrA(l_^CsSHZ8B$4J4x2`j zxQr)rO;1i3&-)nPMT+aDX7vrzI%noweO4#t6-~%=3lA$LkgwU;?>d5>4hp zjVTF@zb<@cLbfn*7Y8KMa3x%Rb(Q1^>4pwMdsrQ3SvS=HdHwLh7lo2r-669;ai0k> zkGwX`a)**WufI+wp)HHIz!4Ka-QkGJ4^A_4o1-0UZqFkBbTm_5AtNJxLkKi`;xcy9IkvY2 znvw)jOxwcWKEZY8L1_*f$D{KMPEznioQ&DFn5Bwfys!_MB=Komq})X~00V8ovz2zy zmfdYcAS2!mUItmlz$s*P+TwOfe@psuv|l&;hNJfmM_FmEp=^{nG)JH-u9HT0e{q)X)BMWa{SO%9;n9CmzlkQ6%Wt9CLtn z&T0MZR7B=0;YKPRc~IwtwLq>?kg%U${17Oh=;g{s)9=Yjaj8-TdC!-Nc09;b$Fn6YU?(H(JjxccCdn^(InPU}%nvhI!#@+P+t zyu^(QTgc{kwVNlB-I*Kmg}?Y1D18}a?~C7y5i_u5PtsfN^cUawYcj%H)|d_X{IMZu zlxdg=Bz%ww!usR?xN<{q7H{T~E67*A;LnDzcgAkEJ?>mYPH{C_zJI+F=on8+Maa0M zfK?}8_=Nc&jFmXbCnvPK++}11=8uf*QQKQK_;nXoSOs|au*FrD0FT^(C2J6w9qV&) znbhAlNwO_N2;8VYUmfl&9FBU+yVyM<=I|J>c;OkD$!;Ot;CekOf4s$UsYJA4pi4TK z=;MkYGHt9J55NLHY*>;9{M-V!onRTNzw!c9-^kpyL}CRn56y+BnNo{^aoiNy`FLAG z5q@uHLW95WK>k0^w#WsJh)r=vMcT+P_n8+X!(^ zv?CmYMdNfm3B`;9pwe`zI7tw}o0I0?M@@vmho&IF-g}@Rv_-Y$ZPo0!Snx!nOpbBG zv37BlI|9J{?Fbg>LWsb^FbCs%S6W9?!qzX~;QSZ-;Y(V>i8=FEo=A(IjDI->&R0BO z=-9kq=z+sCClC&kL6sUsS z2a!6!&FIy|XW$59hjVbA5z4e`gJ^<;AhIDU$!;aE8t=^o?rFjmdMLI-h^ zmSGGIj02^hZa28S0&&9ltcXpM%U5QzgB!sKj=!mhpI5lcK@Ku zLogW0a^?HFXL+D~foZ8zhX<4cqJ3r}=YPsc*>Ktgchs>~h2IekuaAIY))_||h~(1_ z4owxz7w5@L&m6zGg!MczxZAVG?8TWG8LE+)B74K1;_;1>tR#=!%oLa)7~kd}v|(84A-7eNY=^D~?He00a>NziI-d3|-2VLRJzhu9 z9{xy=?cu}ifFl@pm(6&xPdWiJhju~2_eT!M%gw4W@qMzJ?uLlD3$8p&m0S=S8EXtb zaz|0SPWCFSAY;k@l4&5E@}D%AVgga3!QNh+ot-}6uT3J$9*sou5Dw7=_!BqSrbs~6 zn}!cp>INR*F03189bB-~Q-VoD0XWg~9LMRvZ_wUgOomfNqt5>jK!{hul}%T4iKU@b z8vlT5d$<(`f6TivP5aQVGkphGEBur$_CAl_oL-<56(@BCG04N<*50GX17mW&F2)jB zQ80ff3Qz$!CSRq{jnnVz<(u3 zUn>HNfFhs>C<2OrBA^H;0*Zhlpa>`eihv@Z2q*%IfFhs>C<2OrBA^H;0*Zhlpa>`e zihv@Z2q*%IfFhs>C<2OrBA^H;0*Zhlpa>`eihv@Z2q*%IfFhs>C<2OrBA^H;0*Zhl zpa>`eihv@Z2q*%IfFhs>C<2OrBA^H;0*Zhlpa>`eihv@Z2q*%IfFhs>C<2OrBA^H; z0*Zhlpa>`eihv@Z2q*%IfFhs>C<2OrBA^H;0*Zhlpa>`eihv@Z2q*%IfFhs>C<2Or zBA^H;0*Zhlpa>`eihv@Z2q*%IfFhs>C<2OrBA^H;0*Zhlpa>`eihv@Z2q*%IfFhs> zC<2OrBA^H;0*Zhlpa>`eihv@Z2q*%IfFhs>C<2OrBA^H;0*Zhlpa>`eihv^U&xF8a zGC6u$uGePWG+VPN7q?Yy+xsKFuQuDJ?M-*z9UZOOW@F|>YrEaLH@@ZDrg_7`&)T+W zXQp^5t@zTGRcDL4w%o4DYJGHcw6rTzY%sK1p#St11B<%c*qM>9pttU3hHbVj-rSY# z4IWoj+x2e7ld~g(54d{v&MtPnHKp`6Royp62yfTcZ14NqrZ%fxz38i^?mpdEyjXUo zte2*>{jRM|e`|%7BRuU+=11~;bv2m&>dGvdjqQxAya-FR?Yt=1u_&e(>6wzhMbWqA z!d{n)H@DT&7KJ%CuiITdTZdN{m(tt5TU7O`!He&j+V$z%`!i#XO}nd!@LISgh+Es5 z4%~0k%CK-iz)cfsMe}RqN_U5tojkaeifnbk7?-B2 z>Kj<@x8>Sf%D`o_>uG=izV|Cr57otImqfxp8E&1}&>8IpIZFWUZ|j3pv(XV6XNs{r z6RhyI>H1RL3j*8$}Osfcp92V`{vV(J2H1KeT zq#KyfmcB=Owq*w=A13mi(lau@vAuWv*z9KoL*`6ahs*5l{pa0YyL& zPy`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa z0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs* z5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*` z6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9 zKoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy z1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eK zML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL& zPy`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`f#{~-jb&9-TKQ`OzpF8U+?*xh&G z>s{H_RejSP9j)4CW9G(pDf+ftpuxW`7UgHMWx(kCEvBuSx~S?^W4=5$ z(|?(n|2R22GWZD3j^lN89hlqLzFd}lY0AI{8jJAu$gVrD5anZ?)ZsuoajmZZ$@-gr4nlzm9X?FXG+pwl-V%OnRRHc27Kzi^zRlb^SNxqFj0z0#DDN17*)OY~S1z zt?im!yRe;M*S5Oe5z)t3U!vcb--0jAx#1tT=3i~w2E6w7!aEVb3&LJ-`vrxJNNf9D zTf4Of$-kJe=j1ZS@CLfl_icoc4>JSmCG`6IyQa>O^hEs_nQ|_S&dgvOYo)3n6dF7O0Z{88hQ@6-P zQ}<<6JC05=mSiR(<=Ao{Ko=aD6EkKabin+^yoQE9jIxlfV0@vVmDu*BxvTnHYDjBW z)jL>-5?-l;e3tFv7M2A@7Tv{iP)Iw2J)jv`R&ZMsCOiiY(0#a8zZ2hp#?oHzZeZGO z%y!pqn+}xj{RVN{vV9m~3?q8Iw!!UP$(#{>pj^b!R+ z@&|i~;)%08Hy4*fLT+j2Ccrd*UEaLra@*<29A;ta{e{!4iIe8Yr6>;ue;Xo!>8JyY zZf#r94*Sk7z+)C(2q$7vNQdp-^7Byupz-f-n`JjMZ{Tll@K;AHQWqRI45Htf;hG|zxq%+7 zd-|a(N@g~whKI!MH)1OW1|uU5Bl%Jc9!wSV(b+lLH_s851bf!hjOv5}ee%^6$y{9- zL}k=VQjTkZB44kY#hZX=;D$!hn3rYM(K%-J0)fZQO3V=nI!1Dm<+`=y@;+1hIlU-1 zgdaCRHXedPe#ob&10)dvt6ze1kFK|OOdO7N

0g_B9FgTpyYy*X*8iO>(Y>B>7>` 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 literal 0 HcmV?d00001 diff --git a/tests/mri/fmriprep/README.md b/tests/mri/fmriprep/README.md index 2df2e5b4..b9f2e925 100644 --- a/tests/mri/fmriprep/README.md +++ b/tests/mri/fmriprep/README.md @@ -60,6 +60,7 @@ Mock golden-master files: - `./tests/data/mri/golden_master/mock/test_output_fmriprep_subject.h5` - `./tests/data/mri/golden_master/mock/test_output_fmriprep_subject_exclude.h5` +- `./tests/data/mri/golden_master/mock/test_output_fmriprep_subject_surface.h5` If you need to regenerate them manually: @@ -69,6 +70,14 @@ TEST_FMRIPREP_CREATE_GOLDEN_MASTER=1 "${PYTHON_BIN:-python}" -m pytest ./tests/m ## Real-Data Tests +The real-data tests are marked with `pytest.mark.real_data`, so CI runs `pytest -m "not real_data"` to skip them automatically. To execute them locally, use one of: + +```bash +"${PYTHON_BIN:-python}" -m pytest ./tests/mri/fmriprep/test_fmriprep_real.py +# or, equivalently, select by marker: +"${PYTHON_BIN:-python}" -m pytest -m real_data ./tests/mri/fmriprep/ +``` + The real-data workflow is staged because it depends on external data and preprocessing outputs. ### Environment diff --git a/tests/mri/fmriprep/TEST_COVERAGE.md b/tests/mri/fmriprep/TEST_COVERAGE.md index 81a8dc62..d39476e9 100644 --- a/tests/mri/fmriprep/TEST_COVERAGE.md +++ b/tests/mri/fmriprep/TEST_COVERAGE.md @@ -2,7 +2,7 @@ This document summarizes what the current test suite covers, what remains untested, and known implementation issues observed during test reorganization. -_Last updated: 2026-04-06_ +_Last updated: 2026-05-11_ ## Test Coverage Summary @@ -46,8 +46,8 @@ Top-level orchestrator. Parses with `FmriprepData`, applies exclusions (`subject | --- | --- | | Test status | Partially covered; known issues remain | | Real-data dependency | Replaced by mock data | -| Existing tests | `TestCreateBdataFmriprepMock`: golden masters (with/without exclusion), surface modes, empty list when subject excluded / `TestFmriprepDataFailures` (execution failures): missing confounds, missing motion columns, unknown labels | -| Gaps / issues | (1) Potential mutation-while-iterating issue: deleting from `fmriprep.data` (`OrderedDict`) during iteration may raise `RuntimeError: dictionary changed size during iteration` on Python 3.8. (2) No direct test for `split_task_label=True`. (3) No focused unit test for csv/tsv `label_mapper` loading logic. (4) No explicit test for `return_list=False` single-BData return path. | +| Existing tests | `TestCreateBdataFmriprepMock`: golden masters (with/without exclusion for `volume_native`; `surface_native` with `with_confounds=True`), surface-standard shape variants, `split_task_label=True` for single-task mock data, empty list when subject excluded / `TestFmriprepDataFailures` (execution failures): missing confounds, missing motion columns, unknown labels | +| Gaps / issues | (1) Potential mutation-while-iterating issue: deleting from `fmriprep.data` (`OrderedDict`) during iteration may raise `RuntimeError: dictionary changed size during iteration` on Python 3.8. (2) `split_task_label=True` mock test exercises the branch with a single task only; the multi-task case (where `bdata_list` has multiple elements) is covered by `test_fmriprep_real.py`. Extending `MockBidsBuilder` for multi-task is a possible follow-up. (3) No focused unit test for csv/tsv `label_mapper` loading logic. (4) No explicit test for `return_list=False` single-BData return path. | ### BrainData (class) @@ -57,7 +57,7 @@ For surface: loads left/right GIFTI via nibabel and concatenates. | Item | Details | | --- | --- | -| Test status | Surface path covered; volume path mostly indirect | +| Test status | Surface path covered at the value level via `TestCreateBdataFmriprepMock.test_create_bdata_fmriprep_surface_native_gm`; volume path mostly indirect | | Real-data dependency | Replaced by mock data | | Existing tests | `TestBrainDataMock`: paired surface load, one-side missing, empty darray, vertex-count mismatch, invalid dtype | | Gaps / issues | (1) No direct unit test for volume loader (`__load_volume`), only indirect coverage through `__create_bdata_fmriprep_subject`. (2) String identity checks (`is` / `is not`) are used for dtype and should be equality checks (`==` / `!=`). (3) No direct test for xyz/ijk extraction on 3D volume input. | @@ -122,4 +122,5 @@ Loads NIfTI via `nipy.load_image` and returns `(data, xyz, ijk)` for 3D/4D input - `create_bdata_fmriprep` has a potential dictionary-mutation bug while iterating over `OrderedDict`. - `BrainData` contains `is`-based string comparisons that should be equality comparisons. - `__get_xyz` and `__load_mri` appear to be outside the current main path. -- `split_task_label=True` still has no direct test coverage. +- `split_task_label=True` is now exercised by a mock test for the single-task case (`TestCreateBdataFmriprepMock.test_create_bdata_fmriprep_split_task_label_single_task`). Multi-task mock coverage (multiple elements in `bdata_list`) would require extending `MockBidsBuilder`. +- Real-data tests (`test_fmriprep_real.py`) are marked with `pytest.mark.real_data`; run `pytest -m "not real_data"` to skip them in CI. diff --git a/tests/mri/fmriprep/scripts/mock/step_1_prepare_gm.sh b/tests/mri/fmriprep/scripts/mock/step_1_prepare_gm.sh index 30e87415..4b246deb 100644 --- a/tests/mri/fmriprep/scripts/mock/step_1_prepare_gm.sh +++ b/tests/mri/fmriprep/scripts/mock/step_1_prepare_gm.sh @@ -3,6 +3,7 @@ PYTHON_BIN="${PYTHON_BIN:-python}" mock_gm_h5_path_list=( ./tests/data/mri/golden_master/mock/test_output_fmriprep_subject_exclude.h5 ./tests/data/mri/golden_master/mock/test_output_fmriprep_subject.h5 + ./tests/data/mri/golden_master/mock/test_output_fmriprep_subject_surface.h5 ) need_mock_gm=0 diff --git a/tests/mri/fmriprep/test_fmriprep_mock.py b/tests/mri/fmriprep/test_fmriprep_mock.py index 98af1c39..cd06fd90 100644 --- a/tests/mri/fmriprep/test_fmriprep_mock.py +++ b/tests/mri/fmriprep/test_fmriprep_mock.py @@ -219,16 +219,35 @@ def setUp(self) -> None: "voxel_j", "voxel_k", ] + # Surface keys: VoxelData -> VertexData, voxel_x/y/z/i/j/k -> vertex_index + + # the VertexLeft/VertexRight indicator metadata. The remaining keys + # (Session/Run/Block/Label/MotionParameter/Confounds/label submeta) are + # identical because production handles them identically for volume and + # surface modes. + self.surface_check_keys = [ + "VertexData", + "VertexLeft", + "VertexRight", + "vertex_index", + ] + [ + k for k in self.check_keys + if k not in {"VoxelData", "voxel_x", "voxel_y", "voxel_z", "voxel_i", "voxel_j", "voxel_k"} + ] def _num_voxels(self) -> int: """Return the voxel count in the mock volume.""" return int(np.prod(DATA_BUILDER.voxel_shape)) - + # helper to build expected BData after applying exclude - def _expected_after_exclude(self, exclude: Optional[dict] = None) -> bdpy.BData: + def _expected_after_exclude( + self, exclude: Optional[dict] = None, data_mode: str = "volume_native" + ) -> bdpy.BData: """Build the expected BData after applying exclusions.""" return build_expected_bdata_after_exclude( - DATA_BUILDER, {"stimulus_name": {"face": 1, "scene": 2}}, exclude=exclude + DATA_BUILDER, + {"stimulus_name": {"face": 1, "scene": 2}}, + exclude=exclude, + data_mode=data_mode, ) # helper to get expected sample count after applying exclude @@ -307,6 +326,70 @@ def test_create_bdata_fmriprep_exclude_gm(self) -> None: for key in self.check_keys: np.testing.assert_array_equal(brain_data.get(key), expected_bdata.get(key)) + def test_create_bdata_fmriprep_surface_native_gm(self) -> None: + """Match the surface_native BData against the golden master. + + This test uses a golden-master file; to add or change coverage, + regenerate it via ``TEST_FMRIPREP_CREATE_GOLDEN_MASTER=1``. + """ + exclude = {"session/run": [[1, 2], None]} + save_path = "./tests/data/mri/golden_master/mock/test_output_fmriprep_subject_surface.h5" + # ------------------------------------------------------------- + # FOR GOLDEN MASTER UPDATE ONLY: + if CREATE_GOLDEN_MASTER: + expected_bdata = self._expected_after_exclude(exclude, data_mode="surface_native") + os.makedirs(os.path.dirname(save_path), exist_ok=True) + expected_bdata.save(save_path) + # ------------------------------------------------------------- + + expected_bdata = bdpy.BData(str(save_path)) + bdata_list, data_labels_list = fmriprep.create_bdata_fmriprep( + dpath=self.data_root.as_posix(), + data_mode="surface_native", + fmriprep_dir="derivatives/fmriprep", + label_mapper=self.label_mapper, + exclude=exclude, + split_task_label=False, + with_confounds=True, + return_data_labels=True, + return_list=True, + ) + self.assertEqual(data_labels_list, [self.subject]) + self.assertEqual(len(bdata_list), 1) + brain_data = bdata_list[0] + for key in self.surface_check_keys: + np.testing.assert_array_equal(brain_data.get(key), expected_bdata.get(key)) + + def test_create_bdata_fmriprep_split_task_label_single_task(self) -> None: + """split_task_label=True exercises the per-task split branch. + + The mock dataset uses a single task label (``task-mock``), so this test + verifies that: + (a) data_labels carry the ``_`` suffix produced by the + split branch (bdpy/mri/fmriprep.py L331-L340); + (b) the returned BData is content-identical to the non-split golden + master because there is only one task to split on. + + Multi-task split (where bdata_list has more than one element) is + covered by test_fmriprep_real.py with actual fMRIPrep outputs. + """ + save_path = "./tests/data/mri/golden_master/mock/test_output_fmriprep_subject.h5" + expected_bdata = bdpy.BData(str(save_path)) + bdata_list, data_labels_list = fmriprep.create_bdata_fmriprep( + dpath=self.data_root.as_posix(), + data_mode="volume_native", + fmriprep_dir="derivatives/fmriprep", + label_mapper=self.label_mapper, + split_task_label=True, + with_confounds=True, + return_data_labels=True, + return_list=True, + ) + self.assertEqual(data_labels_list, [f"{self.subject}_task-mock"]) + self.assertEqual(len(bdata_list), 1) + brain_data = bdata_list[0] + for key in self.check_keys: + np.testing.assert_array_equal(brain_data.get(key), expected_bdata.get(key)) def test_create_bdata_fmriprep_surface_native(self) -> None: """Create native-surface data with the expected shape.""" diff --git a/tests/mri/fmriprep/test_fmriprep_real.py b/tests/mri/fmriprep/test_fmriprep_real.py index a053656b..f2df2e7e 100644 --- a/tests/mri/fmriprep/test_fmriprep_real.py +++ b/tests/mri/fmriprep/test_fmriprep_real.py @@ -3,6 +3,7 @@ from __future__ import annotations import numpy as np +import pytest from .test_fmriprep_utils import ( CREATE_GOLDEN_MASTER, @@ -12,6 +13,7 @@ ) +@pytest.mark.real_data class TestCreateBdataFmriprepReal(RealDatasetMixin): """Test the create_bdata_fmriprep function with real fMRIPrep output data.""" diff --git a/tests/mri/fmriprep/test_fmriprep_utils_mock.py b/tests/mri/fmriprep/test_fmriprep_utils_mock.py index 2dcdbde5..7374ce22 100644 --- a/tests/mri/fmriprep/test_fmriprep_utils_mock.py +++ b/tests/mri/fmriprep/test_fmriprep_utils_mock.py @@ -265,10 +265,29 @@ def _volume_count(run_no: int) -> int: return 9 + run_no +_SURFACE_MODES = ( + "surface_native", + "surface_standard", + "surface_standard_41k", + "surface_standard_10k", +) + + def build_expected_bdata_after_exclude( - builder: MockBidsBuilder, label_mapper_dict: Dict[str, Dict[str, int]], exclude: Optional[Dict] = None + builder: MockBidsBuilder, + label_mapper_dict: Dict[str, Dict[str, int]], + exclude: Optional[Dict] = None, + data_mode: str = "volume_native", ) -> bdpy.BData: - """Reconstruct expected BData matching __create_bdata_fmriprep_subject output.""" + """Reconstruct expected BData matching __create_bdata_fmriprep_subject output. + + Supports ``volume_native`` (default) and the four surface modes + (``surface_native``, ``surface_standard``, ``surface_standard_41k``, + ``surface_standard_10k``). For surface modes, GIFTI files are loaded + via nibabel and L/R hemispheres are hstacked to mirror the production + ``BrainData.__load_surface`` path. + """ + is_surf = data_mode in _SURFACE_MODES class _LabelMapper: def __init__(self, l2v_map: Dict[str, Dict[str, int]]): @@ -325,7 +344,7 @@ def dump(self) -> Dict[str, Dict[int, str]]: if filtered_runs: include_sessions[ses] = filtered_runs - voxel_list = [] + braindata_list = [] motion_list = [] confounds_dict: Dict[str, Dict[int, np.ndarray]] = {} ses_label_list = [] @@ -334,6 +353,7 @@ def dump(self) -> Dict[str, Dict[int, str]]: labels_list = [] last_xyz = None last_ijk = None + last_n_vertex: Optional[Tuple[int, int]] = None last_run = 0 last_block = 0 run_idx = 0 @@ -341,23 +361,39 @@ def dump(self) -> Dict[str, Dict[int, str]]: for i, (ses, runs) in enumerate(include_sessions.items()): for j, run in enumerate(runs): run_idx += 1 - epi_path = builder.root / run["volume_native"] conf_path = builder.root / run["confounds"] base_name = Path(run["confounds"]).name.replace("_desc-confounds_regressors.tsv", "") event_path = builder.root / builder.subject / ses / "func" / f"{base_name}_events.tsv" bold_path = builder.root / builder.subject / ses / "func" / f"{base_name}_bold.json" - img_arr = builder.data_map[str(epi_path)] - voxel = img_arr.reshape(-1, img_arr.shape[-1], order="F").T - voxel_list.append(voxel) - - i_len, j_len, k_len, _ = img_arr.shape - ijk = np.array(np.unravel_index(np.arange(i_len * j_len * k_len), (i_len, j_len, k_len), order="F")) - ijk_b = np.vstack([ijk, np.ones((1, i_len * j_len * k_len))]) - affine = np.delete(np.delete(np.eye(5), 3, axis=0), 3, axis=1) - xyz = (affine @ ijk_b)[:-1] - last_xyz = xyz - last_ijk = ijk + if is_surf: + left_rel, right_rel = run[data_mode] + left_img = nib.load(str(builder.root / left_rel)) + right_img = nib.load(str(builder.root / right_rel)) + left_data = np.vstack([d.data for d in left_img.darrays]) + right_data = np.vstack([d.data for d in right_img.darrays]) + braindata_run = np.hstack([left_data, right_data]) + braindata_list.append(braindata_run) + + n_left = int(left_data.shape[1]) + n_right = int(right_data.shape[1]) + last_n_vertex = (n_left, n_right) + last_ijk = np.array( + [np.hstack([np.arange(n_left), np.arange(n_right)])] + ) + else: + epi_path = builder.root / run["volume_native"] + img_arr = builder.data_map[str(epi_path)] + voxel = img_arr.reshape(-1, img_arr.shape[-1], order="F").T + braindata_list.append(voxel) + + i_len, j_len, k_len, _ = img_arr.shape + ijk = np.array(np.unravel_index(np.arange(i_len * j_len * k_len), (i_len, j_len, k_len), order="F")) + ijk_b = np.vstack([ijk, np.ones((1, i_len * j_len * k_len))]) + affine = np.delete(np.delete(np.eye(5), 3, axis=0), 3, axis=1) + xyz = (affine @ ijk_b)[:-1] + last_xyz = xyz + last_ijk = ijk conf_pd = builder.confounds_map[str(conf_path)] motion_cols = [c for c in conf_pd.columns if c in ["X", "Y", "Z", "RotX", "RotY", "RotZ"]] @@ -389,7 +425,7 @@ def dump(self) -> Dict[str, Dict[int, str]]: label_vals = np.array([np.nan if x == "n/a" else float(x) for x in label_vals]) labels.append(np.tile(label_vals, (nsmp, 1))) - num_vol = voxel.shape[0] + num_vol = braindata_list[-1].shape[0] ses_label_list.append(np.ones((num_vol, 1)) * (i + 1)) run_label_list.append(np.ones((num_vol, 1)) * (j + 1) + last_run) block_label_list.append(np.vstack(blocks) + last_block) @@ -397,7 +433,7 @@ def dump(self) -> Dict[str, Dict[int, str]]: last_block = block_label_list[-1][-1] last_run = run_label_list[-1][-1] - braindata = np.vstack(voxel_list) + braindata = np.vstack(braindata_list) motionparam = np.vstack(motion_list) ses_label = np.vstack(ses_label_list) run_label = np.vstack(run_label_list) @@ -411,14 +447,31 @@ def dump(self) -> Dict[str, Dict[int, str]]: if (k + 1) in confounds[c]: conf_val_list.append(confounds[c][k + 1]) else: - run_length = voxel_list[k].shape[0] + run_length = braindata_list[k].shape[0] nan_array = np.zeros([run_length, 1]) nan_array[:, :] = np.nan conf_val_list.append(nan_array) confounds[c] = np.vstack(conf_val_list) expected_bdata = bdpy.BData() - expected_bdata.add(braindata, "VoxelData") + if is_surf: + expected_bdata.add(braindata, "VertexData") + assert last_n_vertex is not None + n_left, n_right = last_n_vertex + expected_bdata.add_metadata( + "VertexLeft", + np.array([1] * n_left + [0] * n_right), + "", + where="VertexData", + ) + expected_bdata.add_metadata( + "VertexRight", + np.array([0] * n_left + [1] * n_right), + "", + where="VertexData", + ) + else: + expected_bdata.add(braindata, "VoxelData") expected_bdata.add(ses_label, "Session") expected_bdata.add(run_label, "Run") expected_bdata.add(block_label, "Block") @@ -482,13 +535,19 @@ def dump(self) -> Dict[str, Dict[int, str]]: for idx, col in enumerate(label_cols): expected_bdata.add_metadata(col, np.array([np.nan if i != idx else 1 for i in range(len(label_cols))], dtype=float), f"Label {col}", where="Label") - if last_xyz is not None and last_ijk is not None: - expected_bdata.add_metadata("voxel_x", last_xyz[0, :], "Voxel x coordinate", where="VoxelData") - expected_bdata.add_metadata("voxel_y", last_xyz[1, :], "Voxel y coordinate", where="VoxelData") - expected_bdata.add_metadata("voxel_z", last_xyz[2, :], "Voxel z coordinate", where="VoxelData") - expected_bdata.add_metadata("voxel_i", last_ijk[0, :], "Voxel i index", where="VoxelData") - expected_bdata.add_metadata("voxel_j", last_ijk[1, :], "Voxel j index", where="VoxelData") - expected_bdata.add_metadata("voxel_k", last_ijk[2, :], "Voxel k index", where="VoxelData") + if is_surf: + if last_ijk is not None: + expected_bdata.add_metadata( + "vertex_index", last_ijk[0, :], "Vertex index", where="VertexData" + ) + else: + if last_xyz is not None and last_ijk is not None: + expected_bdata.add_metadata("voxel_x", last_xyz[0, :], "Voxel x coordinate", where="VoxelData") + expected_bdata.add_metadata("voxel_y", last_xyz[1, :], "Voxel y coordinate", where="VoxelData") + expected_bdata.add_metadata("voxel_z", last_xyz[2, :], "Voxel z coordinate", where="VoxelData") + expected_bdata.add_metadata("voxel_i", last_ijk[0, :], "Voxel i index", where="VoxelData") + expected_bdata.add_metadata("voxel_j", last_ijk[1, :], "Voxel j index", where="VoxelData") + expected_bdata.add_metadata("voxel_k", last_ijk[2, :], "Voxel k index", where="VoxelData") vmap = act_label_map.dump() for k in vmap: From 44f8b5413da940cb2342822b5341528d6a22d16d Mon Sep 17 00:00:00 2001 From: Hideki Izumi Date: Thu, 13 Aug 2026 01:46:46 +0900 Subject: [PATCH 5/5] Replace the real-data fMRIPrep pipeline with a figshare fixture download Running tests/mri/fmriprep/test_fmriprep_real.py previously required each developer to install the raw OpenNeuro dataset with datalad, run FreeSurfer recon-all, and run fMRIPrep 1.2.1 in Docker, then build the golden master locally. This replaces that with downloading a small pre-processed fixture, as discussed in PR #116. The fixture is published on figshare (doi:10.6084/m9.figshare.32857559.v1, CC BY 4.0) as ds006319_fmriprep-1.2.1_minimal.tar.gz: 1.77 GB, about 2.9 GB unpacked, derived from OpenNeuro ds006319 v1.0.1 (CC0). It contains only what the test reads, which is the T1w-space preproc BOLD and confounds for runs 02 and 03 of sub-S1/ses-SoundTest02, the raw events.tsv and bold.json, an empty ses-SoundTest01 that holds session index 0, the expected BData output, and a pinned stimulus_name label mapper. - Add scripts/real/step_1_figshare_download.sh. It downloads the archive, verifies its md5 before extracting so a truncated download fails loudly rather than as a confusing test failure, and extracts it under tests/data/mri/. FIGSHARE_LOCAL_TARBALL points it at a locally rebuilt archive instead. The download stays explicit: nothing is fetched during a normal pytest run, and the test still skips itself when the fixture is absent. - Rename scripts/real/step_5_run_test.sh to step_2_run_test.sh, so the real-data workflow is the same two steps as the mock one. - Move the pipeline scripts (step_1_download.sh, step_2_run_freesurfer.sh, step_3_run_fmriprep.sh, step_4_prepare_gm.sh, _fs_env.sh.example and its .gitignore) to scripts/fixture_generation/. They are no longer part of the test workflow but are still needed to reproduce the fixture, for example after a change to exclude, to the session layout, or to data_mode. - Add scripts/fixture_generation/step_5_build_minimal_bundle.sh, which cuts the minimal subset out of the full fMRIPrep outputs and writes the archive that is published. Without it the published fixture is not reproducible from this repository, only the 60 GB intermediate outputs are. It strips the BData header first: BData.save() records the call stack, including absolute paths, into /header, which must not be published. - Add scripts/fixture_generation/clean_bdata_header.py and gen_label_mapper.py supporting that step, and a README documenting requirements, the step order, and which files the subset keeps and why. - Update tests/mri/fmriprep/README.md: the Real-Data section is now two steps, with a fixture table giving the archive name, version, DOI, md5, size, source dataset, fMRIPrep and FreeSurfer versions, Docker image tag, generation command, and expected directory layout, as requested in the PR discussion. Update TEST_COVERAGE.md accordingly. - Ignore the downloaded fixture: tests/data/mri/ds006319/ and the label mapper next to the real golden master. Verification on the lab base env (Python 3.8.5): - step_1_figshare_download.sh against the published article: md5 matched and the archive extracted. - pytest tests/mri/fmriprep/test_fmriprep_real.py => 1 passed in 101.75s - pytest tests/mri/fmriprep/ -m "not real_data" => 36 passed, 1 deselected - git status stayed clean: the 478 MB dataset and 2.4 GB golden master are both ignored. Co-Authored-By: Claude Opus 5 --- tests/data/mri/.gitignore | 1 + tests/data/mri/golden_master/real/.gitignore | 1 + tests/mri/fmriprep/README.md | 88 ++++++++--------- tests/mri/fmriprep/TEST_COVERAGE.md | 3 +- .../{real => fixture_generation}/.gitignore | 0 .../scripts/fixture_generation/README.md | 64 ++++++++++++ .../_fs_env.sh.example | 0 .../fixture_generation/clean_bdata_header.py | 91 +++++++++++++++++ .../fixture_generation/gen_label_mapper.py | 98 +++++++++++++++++++ .../step_1_download.sh | 0 .../step_2_run_freesurfer.sh | 0 .../step_3_run_fmriprep.sh | 0 .../step_4_prepare_gm.sh | 0 .../step_5_build_minimal_bundle.sh | 93 ++++++++++++++++++ .../scripts/real/step_1_figshare_download.sh | 92 +++++++++++++++++ ...{step_5_run_test.sh => step_2_run_test.sh} | 0 16 files changed, 483 insertions(+), 48 deletions(-) create mode 100644 tests/data/mri/.gitignore rename tests/mri/fmriprep/scripts/{real => fixture_generation}/.gitignore (100%) create mode 100644 tests/mri/fmriprep/scripts/fixture_generation/README.md rename tests/mri/fmriprep/scripts/{real => fixture_generation}/_fs_env.sh.example (100%) create mode 100644 tests/mri/fmriprep/scripts/fixture_generation/clean_bdata_header.py create mode 100644 tests/mri/fmriprep/scripts/fixture_generation/gen_label_mapper.py rename tests/mri/fmriprep/scripts/{real => fixture_generation}/step_1_download.sh (100%) rename tests/mri/fmriprep/scripts/{real => fixture_generation}/step_2_run_freesurfer.sh (100%) rename tests/mri/fmriprep/scripts/{real => fixture_generation}/step_3_run_fmriprep.sh (100%) rename tests/mri/fmriprep/scripts/{real => fixture_generation}/step_4_prepare_gm.sh (100%) create mode 100644 tests/mri/fmriprep/scripts/fixture_generation/step_5_build_minimal_bundle.sh create mode 100644 tests/mri/fmriprep/scripts/real/step_1_figshare_download.sh rename tests/mri/fmriprep/scripts/real/{step_5_run_test.sh => step_2_run_test.sh} (100%) diff --git a/tests/data/mri/.gitignore b/tests/data/mri/.gitignore new file mode 100644 index 00000000..236b763d --- /dev/null +++ b/tests/data/mri/.gitignore @@ -0,0 +1 @@ +/ds006319/ diff --git a/tests/data/mri/golden_master/real/.gitignore b/tests/data/mri/golden_master/real/.gitignore index 5c027f10..ac08452a 100644 --- a/tests/data/mri/golden_master/real/.gitignore +++ b/tests/data/mri/golden_master/real/.gitignore @@ -1,2 +1,3 @@ *.h5 +temp.tsv diff --git a/tests/mri/fmriprep/README.md b/tests/mri/fmriprep/README.md index b9f2e925..d6ff37f2 100644 --- a/tests/mri/fmriprep/README.md +++ b/tests/mri/fmriprep/README.md @@ -13,7 +13,8 @@ The current layout is split by data source: - `test_fmriprep_utils.py`: shared helpers for loading `fmriprep.py` and for real-data tests - `test_fmriprep_utils_mock.py`: mock dataset builder and expected-data helpers - `scripts/mock/`: helper scripts for mock golden-master preparation and test execution -- `scripts/real/`: helper scripts for real-data download, preprocessing, golden-master preparation, and test execution +- `scripts/real/`: helper scripts for downloading the real-data fixture and running the real-data test +- `scripts/fixture_generation/`: scripts for regenerating the published fixture from the raw dataset; not needed to run the tests For test coverage and maintenance notes, see `TEST_COVERAGE.md`. @@ -22,7 +23,7 @@ For test coverage and maintenance notes, see `TEST_COVERAGE.md`. - Run these tests in the lab base environment where `bdpy`, `nipy`, `nibabel`, and related dependencies are already installed. - These tests assume the directory layout of `fmriprep` version `1.2`. - `bdpy/mri/fmriprep.py` still depends on the older `nipy` API (`get_data()`), so newer environments may fail even if the test code itself is correct. -- Real-data tests additionally require `datalad` for dataset download and `docker` for `poldracklab/fmriprep:1.2.1`. +- Real-data tests additionally require `curl` (or `wget`) and `tar` to fetch the published fixture. `datalad`, FreeSurfer, and `docker` are needed only to regenerate that fixture; see `scripts/fixture_generation/README.md`. ## Working Directory @@ -78,63 +79,56 @@ The real-data tests are marked with `pytest.mark.real_data`, so CI runs `pytest "${PYTHON_BIN:-python}" -m pytest -m real_data ./tests/mri/fmriprep/ ``` -The real-data workflow is staged because it depends on external data and preprocessing outputs. - -### Environment - -For preprocessing scripts, set the environment variables below explicitly: - -```bash -export BIDS_DIR=./tests/data/mri/ds006319 -export FREESURFER_HOME=/path/to/freesurfer -export FS_LICENSE=/path/to/license.txt -export FS_OUTPUT_DIR="${BIDS_DIR}/derivatives/freesurfer" -``` - -To avoid committing machine-specific paths, copy the local template below and edit it on your machine only: +The test data is a small fMRIPrep-processed fixture published on figshare. Download it once, then run the test: ```bash -cp ./tests/mri/fmriprep/scripts/real/_fs_env.sh.example ./tests/mri/fmriprep/scripts/real/_fs_env.sh +bash ./tests/mri/fmriprep/scripts/real/step_1_figshare_download.sh +bash ./tests/mri/fmriprep/scripts/real/step_2_run_test.sh ``` -`step_2_run_freesurfer.sh` and `step_3_run_fmriprep.sh` read `./tests/mri/fmriprep/scripts/real/_fs_env.sh` if it exists, then fall back to the current shell environment. -Keep `_fs_env.sh` local-only; the repository only tracks `_fs_env.sh.example`. +Script roles: -### Run The Full Pipeline +- `step_1_figshare_download.sh`: downloads the fixture, verifies its md5, and extracts it under `./tests/data/mri/` +- `step_2_run_test.sh`: runs `test_fmriprep_real.py` -```bash -bash ./tests/mri/fmriprep/scripts/real/step_1_download.sh -bash ./tests/mri/fmriprep/scripts/real/step_2_run_freesurfer.sh -bash ./tests/mri/fmriprep/scripts/real/step_3_run_fmriprep.sh -bash ./tests/mri/fmriprep/scripts/real/step_4_prepare_gm.sh -bash ./tests/mri/fmriprep/scripts/real/step_5_run_test.sh -``` +The download is explicit and never happens during a normal `pytest` run. If the fixture is absent, `test_fmriprep_real.py` skips itself, so `pytest` stays offline by default. -Script roles: +### Fixture -- `step_1_download.sh`: downloads the raw real dataset -- `step_2_run_freesurfer.sh`: runs FreeSurfer -- `step_3_run_fmriprep.sh`: runs fMRIPrep using the two functional sessions plus `ses-anatomy` -- `step_4_prepare_gm.sh`: creates the real-data golden master if it is missing -- `step_5_run_test.sh`: runs `test_fmriprep_real.py` +| Item | Value | +| --- | --- | +| Archive | `ds006319_fmriprep-1.2.1_minimal.tar.gz` (`tar.gz`, not `zip`) | +| Version | figshare item 32857559, version 1 | +| DOI | [10.6084/m9.figshare.32857559.v1](https://doi.org/10.6084/m9.figshare.32857559.v1), CC BY 4.0 | +| md5 | `7f4ec67fb6e73239d3e5dc1066ef8f55` | +| Size | 1,769,324,197 bytes, about 2.9 GB unpacked | +| Source dataset | OpenNeuro [ds006319](https://openneuro.org/datasets/ds006319/versions/1.0.1) v1.0.1 (CC0), doi:10.18112/openneuro.ds006319.v1.0.1 | +| fMRIPrep | 1.2.1, Docker image `poldracklab/fmriprep:1.2.1` | +| FreeSurfer | 7.4.1 (`freesurfer-linux-ubuntu20_x86_64-7.4.1-20230614-7eb8460`), `recon-all -all` on `sub-S1_ses-anatomy_T1w.nii.gz`, run outside the container and passed to fMRIPrep as `derivatives/freesurfer` | +| Generation command | `bash ./tests/mri/fmriprep/scripts/fixture_generation/step_5_build_minimal_bundle.sh`, after `step_1` to `step_4` in the same directory | -### Run The Test Only +`step_1_figshare_download.sh` refuses to extract an archive whose md5 does not match, so a truncated download fails loudly instead of producing a confusing test failure. To point the test at a locally rebuilt archive instead of the published one, set `FIGSHARE_LOCAL_TARBALL=/path/to/archive.tar.gz`. -If the dataset, FreeSurfer output, and fMRIPrep output are already prepared, run the test directly: +Expected layout after extraction: -```bash -"${PYTHON_BIN:-python}" -m pytest ./tests/mri/fmriprep/test_fmriprep_real.py +``` +tests/data/mri/ + ds006319/ + sub-S1/ses-SoundTest02/func/ run-01..03 events.tsv and bold.json + derivatives/fmriprep/fmriprep/sub-S1/ + ses-SoundTest01/func/ empty, holds session index 0 + ses-SoundTest02/func/ run-01 confounds; run-02 and run-03 + space-T1w_desc-preproc_bold plus confounds + golden_master/real/ + test_output_fmriprep_real_exclude.h5 expected output + temp.tsv pinned stimulus_name label mapper ``` -Real-data golden-master file: - -- `./tests/data/mri/golden_master/real/test_output_fmriprep_real_exclude.h5` +The subset corresponds one-to-one with `exclude={"session/run": [[1, 2, 3, 4, 5], [1]]}` in `test_fmriprep_real.py`: `ses-SoundTest01` is fully excluded but must exist to occupy session index 0, `run-01` of `ses-SoundTest02` is excluded but is still needed for run discovery and event pairing, and `run-02` and `run-03` are the runs actually loaded. Changing `exclude`, the session layout, or `data_mode` therefore requires regenerating the fixture. -If you need to regenerate it manually: +### Regenerating The Fixture -```bash -TEST_FMRIPREP_CREATE_GOLDEN_MASTER=1 "${PYTHON_BIN:-python}" -m pytest ./tests/mri/fmriprep/test_fmriprep_real.py -``` +Only needed if the fixture itself has to change. The raw-dataset download, FreeSurfer, fMRIPrep, golden-master creation, and archive-building steps live in `scripts/fixture_generation/`; see `scripts/fixture_generation/README.md` for requirements and the step order. ## Notes @@ -150,7 +144,7 @@ Before submitting, run this minimal checklist from the project root: # 1) Mock tests "${PYTHON_BIN:-python}" -m pytest ./tests/mri/fmriprep/test_fmriprep_mock.py -# 2) Real-data tests (only when dataset + preprocessing outputs are ready) +# 2) Real-data tests (after step_1_figshare_download.sh has fetched the fixture) "${PYTHON_BIN:-python}" -m pytest ./tests/mri/fmriprep/test_fmriprep_real.py # 3) Verify golden-master files exist @@ -161,6 +155,6 @@ test -f ./tests/data/mri/golden_master/real/test_output_fmriprep_real_exclude.h5 Recommended for reproducibility: -- Keep machine-specific FreeSurfer settings in `scripts/real/_fs_env.sh` (local-only). +- Keep machine-specific FreeSurfer settings in `scripts/fixture_generation/_fs_env.sh` (local-only). They are needed only when regenerating the fixture. - Do not commit `_fs_env.sh`; only `_fs_env.sh.example` should be tracked. -- If golden masters were regenerated intentionally, mention that explicitly in your submission notes. +- If golden masters were regenerated intentionally, mention that explicitly in your submission notes. Regenerating the real-data golden master means the published figshare fixture no longer matches, so it has to be rebuilt and republished as a new version. diff --git a/tests/mri/fmriprep/TEST_COVERAGE.md b/tests/mri/fmriprep/TEST_COVERAGE.md index d39476e9..abc54c17 100644 --- a/tests/mri/fmriprep/TEST_COVERAGE.md +++ b/tests/mri/fmriprep/TEST_COVERAGE.md @@ -2,7 +2,7 @@ This document summarizes what the current test suite covers, what remains untested, and known implementation issues observed during test reorganization. -_Last updated: 2026-05-11_ +_Last updated: 2026-08-13_ ## Test Coverage Summary @@ -124,3 +124,4 @@ Loads NIfTI via `nipy.load_image` and returns `(data, xyz, ijk)` for 3D/4D input - `__get_xyz` and `__load_mri` appear to be outside the current main path. - `split_task_label=True` is now exercised by a mock test for the single-task case (`TestCreateBdataFmriprepMock.test_create_bdata_fmriprep_split_task_label_single_task`). Multi-task mock coverage (multiple elements in `bdata_list`) would require extending `MockBidsBuilder`. - Real-data tests (`test_fmriprep_real.py`) are marked with `pytest.mark.real_data`; run `pytest -m "not real_data"` to skip them in CI. +- The real-data fixture is downloaded from figshare (doi:10.6084/m9.figshare.32857559.v1) by `scripts/real/step_1_figshare_download.sh` rather than regenerated locally, so running the real-data test no longer requires datalad, FreeSurfer, or Docker. The scripts that produce the fixture are kept in `scripts/fixture_generation/`. diff --git a/tests/mri/fmriprep/scripts/real/.gitignore b/tests/mri/fmriprep/scripts/fixture_generation/.gitignore similarity index 100% rename from tests/mri/fmriprep/scripts/real/.gitignore rename to tests/mri/fmriprep/scripts/fixture_generation/.gitignore diff --git a/tests/mri/fmriprep/scripts/fixture_generation/README.md b/tests/mri/fmriprep/scripts/fixture_generation/README.md new file mode 100644 index 00000000..0dad4976 --- /dev/null +++ b/tests/mri/fmriprep/scripts/fixture_generation/README.md @@ -0,0 +1,64 @@ +# Regenerating the real-data test fixture + +**You do not need any of this to run the tests.** To run the real-data test, download the published fixture instead: + +```bash +bash ./tests/mri/fmriprep/scripts/real/step_1_figshare_download.sh +bash ./tests/mri/fmriprep/scripts/real/step_2_run_test.sh +``` + +The scripts in this directory reproduce the published fixture from scratch. They are kept for reproducibility and for the case where the fixture has to be rebuilt (for example after a change to `exclude`, to the session/run layout, or to `data_mode`). + +## What the fixture is + +| Item | Value | +| --- | --- | +| Published archive | `ds006319_fmriprep-1.2.1_minimal.tar.gz` | +| DOI | [10.6084/m9.figshare.32857559.v1](https://doi.org/10.6084/m9.figshare.32857559.v1) (CC BY 4.0) | +| md5 | `7f4ec67fb6e73239d3e5dc1066ef8f55` | +| Size | 1,769,324,197 bytes (~2.9 GB unpacked) | +| Source dataset | OpenNeuro [ds006319](https://openneuro.org/datasets/ds006319/versions/1.0.1) v1.0.1 (CC0), doi:10.18112/openneuro.ds006319.v1.0.1 | +| Preprocessing | fMRIPrep 1.2.1, Docker image `poldracklab/fmriprep:1.2.1` | +| FreeSurfer | 7.4.1 (`freesurfer-linux-ubuntu20_x86_64-7.4.1-20230614-7eb8460`), `recon-all -all` on `sub-S1_ses-anatomy_T1w.nii.gz` (see `step_2_run_freesurfer.sh`) | + +The published fixture was built with FreeSurfer 7.4.1 run outside the container, and its output passed to fMRIPrep as `derivatives/freesurfer`. Rebuilding with a different FreeSurfer version changes the surfaces and the registration, so the golden master has to be regenerated together with the rest of the fixture; record the version you used when you republish. + +## Requirements + +- `datalad` (to fetch the raw BIDS dataset from OpenNeuro) +- FreeSurfer with a valid license file +- Docker (for fMRIPrep 1.2.1) +- Python with `h5py` and the bdpy dependencies + +The full run needs roughly 60 GB of free disk space and several hours, dominated by `recon-all` and fMRIPrep. + +## Steps + +```bash +cp ./tests/mri/fmriprep/scripts/fixture_generation/_fs_env.sh.example \ + ./tests/mri/fmriprep/scripts/fixture_generation/_fs_env.sh +# edit _fs_env.sh: FREESURFER_HOME and FS_LICENSE. It stays local (gitignored). + +bash ./tests/mri/fmriprep/scripts/fixture_generation/step_1_download.sh # datalad: raw ds006319 +bash ./tests/mri/fmriprep/scripts/fixture_generation/step_2_run_freesurfer.sh # recon-all +bash ./tests/mri/fmriprep/scripts/fixture_generation/step_3_run_fmriprep.sh # fMRIPrep 1.2.1 in Docker +bash ./tests/mri/fmriprep/scripts/fixture_generation/step_4_prepare_gm.sh # golden master (~2.4 GB) +bash ./tests/mri/fmriprep/scripts/fixture_generation/step_5_build_minimal_bundle.sh # minimal subset -> tar.gz +``` + +`step_5_build_minimal_bundle.sh` writes `ds006319_fmriprep-1.2.1_minimal.tar.gz`, which is the archive published on figshare. + +## Why the subset is what it is + +The test uses `exclude={"session/run": [[1, 2, 3, 4, 5], [1]]}`, which is positional: + +- `ses-SoundTest01` (session index 0): all five runs are excluded. The session directory must still exist, with an empty `func/`, so that the session indices line up. `step_5_build_minimal_bundle.sh` keeps it with a `.gitkeep` so it survives `tar`. +- `ses-SoundTest02` (session index 1): `run-01` is excluded, but its `desc-confounds_regressors.tsv` and `events.tsv` are still needed for run discovery and event pairing. `run-02` and `run-03` are the runs the test actually loads. + +Only `space-T1w_desc-preproc_bold` is included, because the test runs in `volume_native` mode. Raw `events.tsv` and `bold.json` are included because fMRIPrep does not emit them and the module reads them for stimulus labels and TR. + +`golden_master/real/temp.tsv` is a pinned `stimulus_name` to index mapping generated by `gen_label_mapper.py`. Without it, `RealDatasetMixin` rebuilds the mapping at runtime by scanning every raw `events.tsv` in the dataset, which would require shipping all 560 event files instead of six. + +## Before publishing a regenerated fixture + +`BData.save()` embeds the call stack, including absolute file paths, into `/header` of the `.h5`. `step_5_build_minimal_bundle.sh` strips it with `clean_bdata_header.py`; do not skip that step when publishing, and check the archive for local paths before uploading. diff --git a/tests/mri/fmriprep/scripts/real/_fs_env.sh.example b/tests/mri/fmriprep/scripts/fixture_generation/_fs_env.sh.example similarity index 100% rename from tests/mri/fmriprep/scripts/real/_fs_env.sh.example rename to tests/mri/fmriprep/scripts/fixture_generation/_fs_env.sh.example diff --git a/tests/mri/fmriprep/scripts/fixture_generation/clean_bdata_header.py b/tests/mri/fmriprep/scripts/fixture_generation/clean_bdata_header.py new file mode 100644 index 00000000..6d46b8be --- /dev/null +++ b/tests/mri/fmriprep/scripts/fixture_generation/clean_bdata_header.py @@ -0,0 +1,91 @@ +"""Strip the BData ``header`` group from a golden-master ``.h5`` before publishing it. + +``BData.save()`` records provenance for every save: it walks the call stack and +writes each frame's file path and source code into ``/header/callstack`` and +``/header/callstack_code``. For the real-data golden master this embeds absolute +paths from the machine that generated it, including the user name and the host +name, which must not appear in a published dataset. + +The script copies every top-level group except ``header`` into a fresh file. +Deleting the group in place is not sufficient: HDF5 unlinks it but leaves the +raw bytes in freed space, so the paths remain recoverable from the file. Writing +a new file guarantees they are gone. + +Dropping ``header`` does not affect the test, which compares only ``dataset``, +``metadata`` and ``vmap``. + +Usage: + python clean_bdata_header.py [out.h5] # defaults to in-place +""" +import shutil +import sys +import tempfile +from pathlib import Path + +import h5py + +DROP_GROUPS = {"header"} + + +def strip_header(src, dst): + """Copy an HDF5 file while omitting the provenance groups. + + Inputs + ------ + src : pathlib.Path + Path to the source ``.h5`` file, read only. + dst : pathlib.Path + Path the cleaned file is written to. May be the same as ``src``, in + which case the file is replaced once the copy has been completed. + + Output + ------ + dropped : list of str + Names of the top-level groups that were omitted. Empty if the file did + not contain any of them. + + What it does + ------------ + Writes a temporary file next to ``dst``, copies the root attributes and + every top-level group except those listed in ``DROP_GROUPS`` into it, and + then moves the temporary file over ``dst``. + """ + tmp_path = Path(tempfile.mkstemp(suffix=".h5", dir=str(dst.parent))[1]) + dropped = [] + + with h5py.File(src, "r") as fin, h5py.File(tmp_path, "w") as fout: + for key, value in fin.attrs.items(): + fout.attrs[key] = value + for key in fin.keys(): + if key in DROP_GROUPS: + dropped.append(key) + continue + fin.copy(key, fout) + + shutil.move(str(tmp_path), str(dst)) + return dropped + + +def main(): + """Run the header stripping from the command line.""" + if len(sys.argv) not in (2, 3): + print(__doc__) + raise SystemExit(2) + + src = Path(sys.argv[1]).resolve() + dst = Path(sys.argv[2]).resolve() if len(sys.argv) > 2 else src + + print("Stripping BData provenance header") + print(" input : %s" % src) + print(" output: %s" % dst) + + dropped = strip_header(src, dst) + + if dropped: + print(" dropped top-level groups: %s" % ", ".join(dropped)) + else: + print(" nothing to strip; the file had no header group") + + +if __name__ == "__main__": + main() diff --git a/tests/mri/fmriprep/scripts/fixture_generation/gen_label_mapper.py b/tests/mri/fmriprep/scripts/fixture_generation/gen_label_mapper.py new file mode 100644 index 00000000..36c39b4b --- /dev/null +++ b/tests/mri/fmriprep/scripts/fixture_generation/gen_label_mapper.py @@ -0,0 +1,98 @@ +"""Generate the pinned stimulus-name label mapper shipped with the real-data fixture. + +``RealDatasetMixin`` in tests/mri/fmriprep/test_fmriprep_utils.py needs a mapping +from ``stimulus_name`` to an integer index. If the fixture does not provide one, +the mixin rebuilds it at run time by scanning every raw ``*_events.tsv`` in the +dataset, which would mean shipping all 560 event files rather than the six the +test actually reads. + +This script produces that mapping once, from the full dataset, so it can be +pinned in the published fixture as ``golden_master/real/temp.tsv``. The ordering +rule is the same as the run-time implementation: event files are visited in +sorted path order, rows in file order, and each new ``stimulus_name`` is assigned +the next integer starting from one. Rows with a missing or ``n/a`` stimulus name +are skipped. + +Because the indices depend on that traversal order, the mapper must be +regenerated from the full dataset, not from the minimal subset. + +Usage: + python gen_label_mapper.py +""" +from __future__ import annotations + +import csv +import sys +from pathlib import Path + + +def build_mapper(data_root): + """Assign an integer index to every stimulus name in a BIDS dataset. + + Inputs + ------ + data_root : pathlib.Path + Root of the raw BIDS dataset. Files under ``derivatives`` are ignored, + so only the raw event files contribute to the mapping. + + Output + ------ + stimulus_names : dict of str to int + Mapping from stimulus name to its one-based index, in order of first + appearance. + event_files : list of pathlib.Path + The event files that were scanned, in the order they were visited. + + What it does + ------------ + Collects every ``*_events.tsv`` outside ``derivatives`` in sorted path order, + reads each row in file order, and records the first appearance of each + stimulus name with the next available index. Missing and ``n/a`` names are + skipped without consuming an index. + """ + stimulus_names: dict[str, int] = {} + event_files = sorted( + path for path in data_root.rglob("*_events.tsv") if "derivatives" not in path.parts + ) + + for event_file in event_files: + with event_file.open("r", newline="") as f: + reader = csv.DictReader(f, delimiter="\t") + for row in reader: + stimulus_name = row.get("stimulus_name") + if not stimulus_name or stimulus_name == "n/a": + continue + if stimulus_name not in stimulus_names: + stimulus_names[stimulus_name] = len(stimulus_names) + 1 + + return stimulus_names, event_files + + +def main(): + """Build the label mapper from the command line and write it as a TSV.""" + if len(sys.argv) != 3: + print(__doc__) + raise SystemExit(2) + + data_root = Path(sys.argv[1]).resolve() + out_path = Path(sys.argv[2]).resolve() + + print("Building the stimulus-name label mapper") + print(" dataset root: %s" % data_root) + + mapper, event_files = build_mapper(data_root) + + print(" event files scanned: %d" % len(event_files)) + print(" unique stimulus names: %d" % len(mapper)) + + out_path.parent.mkdir(parents=True, exist_ok=True) + with out_path.open("w", newline="") as f: + writer = csv.writer(f, delimiter="\t") + for stimulus_name, index in mapper.items(): + writer.writerow([stimulus_name, index]) + + print(" written to: %s" % out_path) + + +if __name__ == "__main__": + main() diff --git a/tests/mri/fmriprep/scripts/real/step_1_download.sh b/tests/mri/fmriprep/scripts/fixture_generation/step_1_download.sh similarity index 100% rename from tests/mri/fmriprep/scripts/real/step_1_download.sh rename to tests/mri/fmriprep/scripts/fixture_generation/step_1_download.sh diff --git a/tests/mri/fmriprep/scripts/real/step_2_run_freesurfer.sh b/tests/mri/fmriprep/scripts/fixture_generation/step_2_run_freesurfer.sh similarity index 100% rename from tests/mri/fmriprep/scripts/real/step_2_run_freesurfer.sh rename to tests/mri/fmriprep/scripts/fixture_generation/step_2_run_freesurfer.sh diff --git a/tests/mri/fmriprep/scripts/real/step_3_run_fmriprep.sh b/tests/mri/fmriprep/scripts/fixture_generation/step_3_run_fmriprep.sh similarity index 100% rename from tests/mri/fmriprep/scripts/real/step_3_run_fmriprep.sh rename to tests/mri/fmriprep/scripts/fixture_generation/step_3_run_fmriprep.sh diff --git a/tests/mri/fmriprep/scripts/real/step_4_prepare_gm.sh b/tests/mri/fmriprep/scripts/fixture_generation/step_4_prepare_gm.sh similarity index 100% rename from tests/mri/fmriprep/scripts/real/step_4_prepare_gm.sh rename to tests/mri/fmriprep/scripts/fixture_generation/step_4_prepare_gm.sh diff --git a/tests/mri/fmriprep/scripts/fixture_generation/step_5_build_minimal_bundle.sh b/tests/mri/fmriprep/scripts/fixture_generation/step_5_build_minimal_bundle.sh new file mode 100644 index 00000000..85b595c7 --- /dev/null +++ b/tests/mri/fmriprep/scripts/fixture_generation/step_5_build_minimal_bundle.sh @@ -0,0 +1,93 @@ +#!/bin/bash +# Build the minimal fixture archive that is published on figshare, from the full +# fMRIPrep outputs produced by step_1 through step_4. +# +# The full dataset is about 60 GB; the archive built here is 1.7 GB and contains +# only what tests/mri/fmriprep/test_fmriprep_real.py actually reads. See +# README.md in this directory for which files are kept and why. +# +# Output: +# /ds006319/ minimal BIDS + fMRIPrep subset +# /golden_master/real/ expected BData output + temp.tsv +# ds006319_fmriprep-1.2.1_minimal.tar.gz archive to upload +# +# Usage: +# bash ./tests/mri/fmriprep/scripts/fixture_generation/step_5_build_minimal_bundle.sh [data_root] [out_dir] +# +# Environment: +# INCLUDE_GM=0 skip copying the golden master (~2.4 GB); the published +# archive needs it, so leave this unset unless you are testing +# the layout +set -euo pipefail + +script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +PYTHON_BIN="${PYTHON_BIN:-python}" + +DATA_ROOT="${1:-./tests/data/mri}" +OUT="${2:-./tests/data/mri/figshare_bundle}" +INCLUDE_GM="${INCLUDE_GM:-1}" +ARCHIVE="ds006319_fmriprep-1.2.1_minimal.tar.gz" + +ds_src="${DATA_ROOT}/ds006319" +fp_src="${ds_src}/derivatives/fmriprep/fmriprep/sub-S1/ses-SoundTest02/func" +raw_src="${ds_src}/sub-S1/ses-SoundTest02/func" +gm_src="${DATA_ROOT}/golden_master/real" +prefix="sub-S1_ses-SoundTest02_task-vggsoundtest" + +ds_out="${OUT}/ds006319" +fp_out="${ds_out}/derivatives/fmriprep/fmriprep/sub-S1" +raw_out="${ds_out}/sub-S1/ses-SoundTest02/func" + +[ -d "${fp_src}" ] || { echo "fMRIPrep outputs not found: ${fp_src}"; echo "Run step_1 through step_3 first."; exit 1; } + +rm -rf "${OUT}" +mkdir -p "${fp_out}/ses-SoundTest01/func" # intentionally empty: holds session index 0 +mkdir -p "${fp_out}/ses-SoundTest02/func" +mkdir -p "${raw_out}" +mkdir -p "${OUT}/golden_master/real" + +# run-01 is excluded by the test, but its confounds file is still needed for run discovery. +cp -a "${fp_src}/${prefix}_run-01_desc-confounds_regressors.tsv" "${fp_out}/ses-SoundTest02/func/" + +# run-02 and run-03 are the runs the test loads. +for run in 02 03; do + cp -a "${fp_src}/${prefix}_run-${run}_space-T1w_desc-preproc_bold.nii.gz" "${fp_out}/ses-SoundTest02/func/" + cp -a "${fp_src}/${prefix}_run-${run}_desc-confounds_regressors.tsv" "${fp_out}/ses-SoundTest02/func/" +done + +# Raw events and bold.json: fMRIPrep does not emit these, and the module reads +# them for stimulus labels and TR. run-01 is kept so the event-file glob matches. +for run in 01 02 03; do + cp -a "${raw_src}/${prefix}_run-${run}_events.tsv" "${raw_out}/" + cp -a "${raw_src}/${prefix}_run-${run}_bold.json" "${raw_out}/" +done + +touch "${fp_out}/ses-SoundTest01/func/.gitkeep" + +# Pinned label mapper, so the test does not need all 560 raw events.tsv files. +if [ -f "${gm_src}/temp.tsv" ]; then + cp -a "${gm_src}/temp.tsv" "${OUT}/golden_master/real/temp.tsv" +else + echo "temp.tsv not found; generating it from the full dataset ..." + "${PYTHON_BIN}" "${script_dir}/gen_label_mapper.py" "${ds_src}" "${OUT}/golden_master/real/temp.tsv" +fi + +if [ "${INCLUDE_GM}" = "1" ]; then + gm_file="${gm_src}/test_output_fmriprep_real_exclude.h5" + [ -f "${gm_file}" ] || { echo "Golden master not found: ${gm_file}"; echo "Run step_4 first."; exit 1; } + cp -a "${gm_file}" "${OUT}/golden_master/real/" + # BData.save() writes the call stack, including absolute paths, into /header. + echo "Stripping the BData header from the golden master ..." + "${PYTHON_BIN}" "${script_dir}/clean_bdata_header.py" "${OUT}/golden_master/real/test_output_fmriprep_real_exclude.h5" +fi + +echo "Creating ${ARCHIVE} ..." +tar czf "${ARCHIVE}" -C "${OUT}" . + +echo "----------------------------------------" +echo "Bundle directory: ${OUT}" +du -sh "${OUT}"/* 2>/dev/null || true +echo "Archive: ${ARCHIVE} ($(du -h "${ARCHIVE}" | cut -f1))" +echo "md5: $(md5sum "${ARCHIVE}" 2>/dev/null | cut -d' ' -f1 || md5 -q "${ARCHIVE}")" +echo "Check the archive for local paths before publishing it." +echo "----------------------------------------" diff --git a/tests/mri/fmriprep/scripts/real/step_1_figshare_download.sh b/tests/mri/fmriprep/scripts/real/step_1_figshare_download.sh new file mode 100644 index 00000000..e007b7b8 --- /dev/null +++ b/tests/mri/fmriprep/scripts/real/step_1_figshare_download.sh @@ -0,0 +1,92 @@ +#!/bin/bash +# Download the pre-processed ds006319 test fixture from figshare, verify its +# checksum, and place it under tests/data/mri/ for the real-data test +# (tests/mri/fmriprep/test_fmriprep_real.py). +# +# This replaces the datalad + FreeSurfer + fMRIPrep pipeline that previously had +# to be run locally. Those scripts are kept, for reproducing the fixture itself, +# in ../fixture_generation/ and are not needed to run the test. +# +# Fixture: https://doi.org/10.6084/m9.figshare.32857559.v1 (CC BY 4.0) +# ds006319_fmriprep-1.2.1_minimal.tar.gz, 1,769,324,197 bytes, ~2.9 GB unpacked +# +# Extracted layout: +# /ds006319/ minimal BIDS + fMRIPrep 1.2.1 subset +# /golden_master/real/ expected BData output + label mapper +# +# Usage: +# bash ./tests/mri/fmriprep/scripts/real/step_1_figshare_download.sh [dest_dir] +# +# Environment: +# FIGSHARE_FILE_ID figshare file id (default: 67295762) +# FIGSHARE_MD5 expected md5 of the archive (default: the fixture above) +# FIGSHARE_LOCAL_TARBALL use a local archive instead of downloading, for +# offline runs or for checking a regenerated fixture +set -euo pipefail + +DEST="${1:-./tests/data/mri}" +FILE_ID="${FIGSHARE_FILE_ID:-67295762}" +EXPECTED_MD5="${FIGSHARE_MD5:-7f4ec67fb6e73239d3e5dc1066ef8f55}" +LOCAL_TARBALL="${FIGSHARE_LOCAL_TARBALL:-}" + +dataset_dir="${DEST}/ds006319" +expected_h5="${DEST}/golden_master/real/test_output_fmriprep_real_exclude.h5" + +if [ -d "${dataset_dir}" ] && [ -f "${expected_h5}" ]; then + echo "Fixture already present under ${DEST}; nothing to do." + echo "Remove ${dataset_dir} and ${expected_h5} to force a re-download." + exit 0 +fi + +mkdir -p "${DEST}" +archive="${DEST}/.figshare_fixture.tar.gz" + +if [ -n "${LOCAL_TARBALL}" ]; then + echo "Using local archive: ${LOCAL_TARBALL}" + [ -f "${LOCAL_TARBALL}" ] || { echo "Local archive not found: ${LOCAL_TARBALL}"; exit 1; } + cp "${LOCAL_TARBALL}" "${archive}" +else + url="https://ndownloader.figshare.com/files/${FILE_ID}" + echo "Downloading fixture from figshare: ${url}" + if command -v curl > /dev/null 2>&1; then + curl -fL --retry 3 -C - -o "${archive}" "${url}" + elif command -v wget > /dev/null 2>&1; then + wget -c -O "${archive}" "${url}" + else + echo "Neither curl nor wget is available." + exit 1 + fi +fi + +echo "Verifying checksum..." +if command -v md5sum > /dev/null 2>&1; then + actual_md5="$(md5sum "${archive}" | cut -d' ' -f1)" +elif command -v md5 > /dev/null 2>&1; then + actual_md5="$(md5 -q "${archive}")" +else + echo "Neither md5sum nor md5 is available; cannot verify the archive." + exit 1 +fi + +if [ "${actual_md5}" != "${EXPECTED_MD5}" ]; then + echo "Checksum mismatch. The download is incomplete or the fixture has changed." + echo " expected: ${EXPECTED_MD5}" + echo " actual : ${actual_md5}" + echo "Delete ${archive} and run this script again." + exit 1 +fi +echo "md5 OK: ${actual_md5}" + +echo "Extracting into ${DEST} ..." +tar xzf "${archive}" -C "${DEST}" +rm -f "${archive}" + +[ -d "${dataset_dir}" ] || { echo "Expected directory missing after extraction: ${dataset_dir}"; exit 1; } +[ -f "${expected_h5}" ] || { echo "Expected file missing after extraction: ${expected_h5}"; exit 1; } + +echo "----------------------------------------" +echo "Fixture ready:" +echo " ${dataset_dir}" +echo " ${DEST}/golden_master/real" +echo "Next: bash ./tests/mri/fmriprep/scripts/real/step_2_run_test.sh" +echo "----------------------------------------" diff --git a/tests/mri/fmriprep/scripts/real/step_5_run_test.sh b/tests/mri/fmriprep/scripts/real/step_2_run_test.sh similarity index 100% rename from tests/mri/fmriprep/scripts/real/step_5_run_test.sh rename to tests/mri/fmriprep/scripts/real/step_2_run_test.sh