From 3d67483524720d8ab5b6b4b65d5f8014cd66e6be Mon Sep 17 00:00:00 2001 From: Dario <37704177+ddelpiano@users.noreply.github.com> Date: Fri, 7 Jun 2024 11:50:14 +0200 Subject: [PATCH] Release/1.0.0 (#75) * CFOS-91 fix: Reset atlas position only on atlas changes * Fixed sobel paramters and transformed to 2bits with anti-alliasing * Refactored slice change through a helper function * CFOS-97 added tests * CFOS-88 feat: WIP - Change opacity with intensity * CFOS-88 fix: Fix activity map transparency * CFOS-88 feat: Validate correct loading of data * CFOS-88 feat: Disable atlas slider * CFOS-88 feat: Reintroduce global intensity slider * CFOS-88 feat: Connect global intensity slider * enabled headless mode * adding test to pipeline * adding test to pipeline - fixed identation * adding test to pipeline - fixed stage * Update README.md * Update codefresh-dev.yaml changing build and deployment tag, case sensitive issue to pull images from public registry * CFOS-97 missing dickerfile * CFOS-97 addiing package-lock for codefresh purposes * CFOS-97 removed unused devependencies * CFOS-97 regenerating package files * CFOS-97 test command * CFOS-97 added page.url log + changed page instance name for control panel test * CFOS-97 added sleep before tests * CFOS-97 skipping intensity tests * CFOS-97 fixed codefresh volume command * CFOS-97 changed screenshot to be page onstead of canvas * CFOS-97 process.env.url * packahe-lock.json addition * url changed to DOMAIN variable * changed way of checking download * fix snapshot * updated image considering fix * Added back ActivityMap * CFOS-103 feat: Update slider logic * CFOS-102 chore: Remove unused webpack configs * CFOS-102 chore: Remove unused package-lock.json * CFOS-102 feat: WIP - Add probe widget * Removed commented out lines * changed parameters to use dev bucket * Changed env storage location * CFOS-102 feat: WIP - Connect probe widget * CFOS-102 feat: Update frame deserialization * create CustomTooltip.js * Implement UI changes as per design changes * CFOS-102 feat: WIP - Add react component instead of dom manipulation * CFOS-102 refactor: Refactor out viewerProbe component * CFOS-102 feat: Update tooltip content * CFOS-102 feat: Add LUT prototype * CFOS-102 feat: Update tooltip open logic * CFOS-102 feat: WIP - Add location panel * CFOS-102 feat: WIP - Add activity map intensity information * CFOS-102 feat: Add activity map intensity information * CFOS-102 feat: Merge with develop * fix map position * CFOS-92 fix: Resize viewer according to parent dimensions * adjust the tooltip position on mouse move * disable the max width for MuiTooltip * make the bk of Map details transparent to not affect other elements styling * CFOS-102 feat: Update location panel visible logic * CFOS-102 feat: Update camera range * CFOS-102 feat: Include only visible stacks on location panel * CFOS-102 fix: Update wheel event handling to work with tooltips * CFOS-96 fix: Get the new slice index within range * CFOS-102 feat: Update serialization/deserialization * CFOS-102 fix: Ignore on move ticks with errors * CFOS-102 fix: Update activity map index after added to the scene * CFOS-102 fix: Update pixelData capture for activity maps * CFOS-102 feat: Update gradient strategy * CFOS-102 feat: Reactive controls * CFOS-102 feat: Remove renderer antialias * CFOS-102 feat: Update controls * CFOS-102 feat: Add wireframe object to the scene * CFOS-102 fix: Fix normalized min gradient calculation * CFOS-127 feat: Remove slice interpolation * chore: Add mock_download_as_stream * CFOS-121: placeholder for details component * CFOS-99: deployment with nginx and letsencrypt * CFOS-99: deployment fix * fixing certificate * add some theme variables * add alert component * Added tests into pipeline + updated snapshots * add tabs component * handle alert click * handle tabs change * CFOS-102 fix: Fix typo * CFOS-71 Add drag-drop logic to reorder layer list * CFOS-71 Add planes reordering * CFOS-71 Fix reorder for the dragndrop * CFOS-71 Add some comments about the viewer order * CFOS-71 Remove "comming soon" message * CFOS-71 Enable visualy dragNdrop button * CFOS-71 Add different message for Atlas dNd button * #39 details tab component for metadata visualization * fix alert background * #69 Experiments sharing the same atlas tab * fix the tabs position when scrolling * CFOS-132: fixing ingestion (not computing activity maps before) and skipping wireframe generation * #69 treeItem styling, details modal * CustomTextField maintaining state * 105 and 107 * leave the ingestion when done * CFOS-134 Add first atlas reorder support * CFOS-134 Add transparency on base atlas * CFOS-134 Remove comments and unused imports * CFOS-119 Remove hidden file during ingestion * #69 treeItem styling, details modal * #135 add HierarchyActivityMaps * #135 point main.py index file to the correct one * CFOS-123 worked on the slider tests * #40 #133 convert the data to a treeview + implement the cosmetics fixes for both images and experiments * refactor treeItem code to use a common component * fix tree item bug * fix tree item bug * CFOS-137 feat: Update ingestion step to include metadata.json * CFOS-137 feat: Update store to include metadata * CFOS-138 fix: Properly connect reset slider intensity * CFOS-126 feat: Add and connect min value inclusion toggle icon button * #49 view only experiments that's shares the same atlas + add arrow click action to vew selected experiment * #49 view atlas id * view Experience Details * view empty placeholder * CFOS-123 completing sliders tests + snapshot updates * CFOS-137 feat: Update ingestion step to include metadata.json * CFOS-137 feat: Update store to include metadata * CFOS-138 fix: Properly connect reset slider intensity * CFOS-126 feat: Add and connect min value inclusion toggle icon button * CFOS-123 extra selector * fix concatenating nested experiments issue * CFOS-106 feat: Connect max picker * use active alas directly from the redux store + update the experiment sharing same atlas condition * CFOS-106 chore: Remove deprecated methods * CFOS-106 chore: Use destructuration on hexToNormalizedRGBA * fix details spacing + add check for hierarchy prop * CFOS-134 Fix regression about transparent background * CFOS-105 Disable drag and drop if layer is locked * CFOS-105 Disable all icons when a layer is locked * CFOS-126 feat: Connect input text * CFOS-130 chore: Update build scripts and configuration files * CFOS-130 chore: Update dockerfile * fixing deployment * fixing deployment 2 * CFOS-126 feat: Update slider input field logic * Update cfos.yaml * CFOS-130 chore: Update codefresh configuration * CFOS-130 chore: Update codefresh configuration * CFOS-130 chore: Fix typo in .env file * fixing table styling * fixing table styling 2 * refactor images tab code to view the hierarchy levels properly * split logic code into a separated file * fix crashing bug due to duplicated parent nodes * fix crashing bug * refactor DoDataPreprocessing function * Feature/cfos 40 refactor images (#74) * fix tree id's * view experiments with no hierarchy as a separated node * put the others experiments at the end of the tree * Update README.md updating the ingestion for the wireframe nomenclature * Update README.md changing bucket in the readme * added wipe bucket functionality (#54) * cfos version update --------- Co-authored-by: afonso Co-authored-by: Nico Gomez Co-authored-by: Simao Bolota Co-authored-by: salam dalloul Co-authored-by: Salam Dalloul <32265731+Salam-Dalloul@users.noreply.github.com> Co-authored-by: aranega Co-authored-by: Zoran Sinnema --- .gitignore | 4 + Dockerfile | 27 + README.md | 127 +- client/.env | 2 +- client/.env.development | 1 + client/.env.development.local | 1 - client/{.env.production => .env.production} | 0 client/deploy/Dockerfile | 25 - client/package-lock.json | 357 +- client/package.json | 7 +- client/public/CCFv3_info_by_id.json | 15943 ++++++++++++++++ client/src/components/ColorPicker.js | 53 + client/src/components/ControlPanel.js | 354 +- client/src/components/CustomTabs.js | 22 + client/src/components/CustomTextField.js | 83 + client/src/components/CustomToggleButton.js | 65 + client/src/components/CustomTooltip.js | 27 + client/src/components/LocationPanel.js | 19 + client/src/components/MapDetails.js | 61 + .../MetaDataViewerComponents/CustomAlert.js | 55 + .../MetaDataViewerComponents/CustomChip.js | 11 + .../CustomTabPanel.js | 31 + .../CustomTreeItem.js | 160 + .../MetaDataViewerComponents/Detail.js | 12 + .../MetaDataViewerComponents/Details.js | 36 + .../MetaDataViewerComponents/DetailsTabs.js | 46 + .../ExperienceDetailsDialog.js | 106 + .../MetaDataViewerComponents/Experiments.js | 70 + .../MetaDataViewerComponents/Images.js | 91 + .../MetaDataViewerComponents/Publications.js | 50 + client/src/components/MetadataViewer.js | 49 + client/src/components/Picker.js | 185 - client/src/components/PickerWrapper.js | 173 + client/src/components/Slider.js | 120 +- client/src/components/Table.js | 40 +- client/src/components/TableRow.js | 217 +- client/src/components/Viewer.js | 321 +- client/src/components/ViewerDashboard.js | 7 +- client/src/components/ViewerProbe.js | 89 + client/src/components/ViewerTooltip.js | 19 + client/src/components/shared/header.js | 5 - client/src/data/details.json | 34 + client/src/helpers/ImagesTreeViewHelpers.js | 83 + client/src/helpers/activityMapHelper.js | 23 +- client/src/helpers/baseAmiWidget.js | 491 + client/src/helpers/deserializerHelper.js | 86 + client/src/helpers/gradientHelper.js | 134 +- client/src/helpers/lutHelper.js | 9 + client/src/helpers/probeHelper.js | 20 + client/src/helpers/probeWidget.js | 226 + client/src/helpers/stackHelper.js | 72 +- .../src/helpers/toolbarMenuConfiguration.js | 2 +- client/src/helpers/viewerHelper.js | 20 +- client/src/icons/index.js | 242 +- client/src/layout/componentMap.js | 2 + client/src/layout/layout.js | 45 +- client/src/layout/widgets.js | 10 + client/src/model/models.js | 8 +- client/src/pages/HomePage.js | 5 +- client/src/redux/actions.js | 23 +- client/src/redux/constants.js | 8 +- client/src/redux/middleware.js | 85 +- client/src/redux/reducers.js | 116 +- client/src/redux/store.js | 11 +- client/src/services/fetchService.js | 10 +- client/src/settings.js | 40 +- client/src/tests/middleware.test.js | 30 +- client/src/tests/reducers.test.js | 26 +- client/src/tests/resources/index.json | 2 +- client/src/theme/index.js | 38 +- client/src/theme/variables.js | 12 +- client/src/utils.js | 19 +- client/src/webpack.config.dev.js | 45 - client/src/webpack.config.js | 123 - deploy/codefresh/codefresh.yml | 56 + deploy/k8s/cfos.yaml | 57 + deploy/k8s/codefresh.yaml | 36 + deploy/k8s/deploy.sh | 21 + deploy/k8s/deploy_minikube.sh | 9 + deploy/k8s/ingress.yaml | 39 + deployment/codefresh-dev.yaml | 44 - deployment/helm/.helmignore | 23 - deployment/helm/Chart.yaml | 24 - deployment/helm/templates/NOTES.txt | 22 - deployment/helm/templates/_helpers.tpl | 62 - deployment/helm/templates/deployment.yaml | 66 - deployment/helm/templates/hpa.yaml | 32 - deployment/helm/templates/ingress.yaml | 61 - deployment/helm/templates/service.yaml | 15 - .../helm/templates/tests/test-connection.yaml | 15 - deployment/helm/values.yaml | 48 - nginx/default.bak | 32 + nginx/default.conf | 32 + processor/helpers/ingest.py | 18 +- processor/helpers/wireframe.py | 52 +- processor/main.py | 43 +- processor/public/script.js | 11 +- processor/website/script.js | 23 +- server/.env.example | 2 +- server/main.py | 44 +- tests/e2e/Dockerfile | 13 + tests/e2e/babel.config.js | 8 + tests/e2e/jest.config.js | 8 + tests/e2e/package-lock.json | 9188 +++++++++ tests/e2e/package.json | 33 + tests/e2e/tests/ControlPanel.test.ts | 160 + tests/e2e/tests/Intensity.test.ts | 254 + tests/e2e/tests/SocialContextMap.test.ts | 145 + tests/e2e/tests/Viewer.test.ts | 166 + .../snapshots/ControlPanel.test/Atlas Map.png | Bin 0 -> 80387 bytes .../ControlPanel.test/Displayed Atlas Map.png | Bin 0 -> 80565 bytes .../ControlPanel.test/Hidden Atlas Map.png | Bin 0 -> 72068 bytes .../snapshots/Intensity.test/Atlas Map.png | Bin 0 -> 75826 bytes .../Changed Individual Intensity.png | Bin 0 -> 85246 bytes .../Intensity.test/Changed Intensity.png | Bin 0 -> 84541 bytes .../Intensity.test/Reset Intensity.png | Bin 0 -> 87255 bytes .../SocialContextMap.test/Atlas Map.png | Bin 0 -> 80387 bytes .../Updated Atlas Map.png | Bin 0 -> 199588 bytes .../Viewer.test/Atlas Map Map Centered.png | Bin 0 -> 84028 bytes .../tests/snapshots/Viewer.test/Atlas Map.png | Bin 0 -> 80387 bytes .../Viewer.test/Atlas Map: Next Slices.png | Bin 0 -> 86647 bytes .../Atlas Map: Previous Slices.png | Bin 0 -> 75873 bytes .../Viewer.test/Atlas Map: Wireframe.png | Bin 0 -> 82078 bytes tests/e2e/tsconfig.json | 0 124 files changed, 30280 insertions(+), 1753 deletions(-) create mode 100644 Dockerfile create mode 100644 client/.env.development delete mode 100644 client/.env.development.local rename client/{.env.production => .env.production} (100%) delete mode 100644 client/deploy/Dockerfile create mode 100644 client/public/CCFv3_info_by_id.json create mode 100644 client/src/components/ColorPicker.js create mode 100644 client/src/components/CustomTabs.js create mode 100644 client/src/components/CustomTextField.js create mode 100644 client/src/components/CustomToggleButton.js create mode 100644 client/src/components/CustomTooltip.js create mode 100644 client/src/components/LocationPanel.js create mode 100644 client/src/components/MapDetails.js create mode 100644 client/src/components/MetaDataViewerComponents/CustomAlert.js create mode 100644 client/src/components/MetaDataViewerComponents/CustomChip.js create mode 100644 client/src/components/MetaDataViewerComponents/CustomTabPanel.js create mode 100644 client/src/components/MetaDataViewerComponents/CustomTreeItem.js create mode 100644 client/src/components/MetaDataViewerComponents/Detail.js create mode 100644 client/src/components/MetaDataViewerComponents/Details.js create mode 100644 client/src/components/MetaDataViewerComponents/DetailsTabs.js create mode 100644 client/src/components/MetaDataViewerComponents/ExperienceDetailsDialog.js create mode 100644 client/src/components/MetaDataViewerComponents/Experiments.js create mode 100644 client/src/components/MetaDataViewerComponents/Images.js create mode 100644 client/src/components/MetaDataViewerComponents/Publications.js create mode 100644 client/src/components/MetadataViewer.js delete mode 100644 client/src/components/Picker.js create mode 100644 client/src/components/PickerWrapper.js create mode 100644 client/src/components/ViewerProbe.js create mode 100644 client/src/components/ViewerTooltip.js create mode 100644 client/src/data/details.json create mode 100644 client/src/helpers/ImagesTreeViewHelpers.js create mode 100644 client/src/helpers/baseAmiWidget.js create mode 100644 client/src/helpers/deserializerHelper.js create mode 100644 client/src/helpers/lutHelper.js create mode 100644 client/src/helpers/probeHelper.js create mode 100644 client/src/helpers/probeWidget.js delete mode 100644 client/src/webpack.config.dev.js delete mode 100644 client/src/webpack.config.js create mode 100644 deploy/codefresh/codefresh.yml create mode 100644 deploy/k8s/cfos.yaml create mode 100644 deploy/k8s/codefresh.yaml create mode 100755 deploy/k8s/deploy.sh create mode 100755 deploy/k8s/deploy_minikube.sh create mode 100644 deploy/k8s/ingress.yaml delete mode 100644 deployment/codefresh-dev.yaml delete mode 100644 deployment/helm/.helmignore delete mode 100644 deployment/helm/Chart.yaml delete mode 100644 deployment/helm/templates/NOTES.txt delete mode 100644 deployment/helm/templates/_helpers.tpl delete mode 100644 deployment/helm/templates/deployment.yaml delete mode 100644 deployment/helm/templates/hpa.yaml delete mode 100644 deployment/helm/templates/ingress.yaml delete mode 100644 deployment/helm/templates/service.yaml delete mode 100644 deployment/helm/templates/tests/test-connection.yaml delete mode 100644 deployment/helm/values.yaml create mode 100644 nginx/default.bak create mode 100644 nginx/default.conf create mode 100644 tests/e2e/Dockerfile create mode 100644 tests/e2e/babel.config.js create mode 100644 tests/e2e/jest.config.js create mode 100644 tests/e2e/package-lock.json create mode 100644 tests/e2e/package.json create mode 100644 tests/e2e/tests/ControlPanel.test.ts create mode 100644 tests/e2e/tests/Intensity.test.ts create mode 100644 tests/e2e/tests/SocialContextMap.test.ts create mode 100644 tests/e2e/tests/Viewer.test.ts create mode 100644 tests/e2e/tests/snapshots/ControlPanel.test/Atlas Map.png create mode 100644 tests/e2e/tests/snapshots/ControlPanel.test/Displayed Atlas Map.png create mode 100644 tests/e2e/tests/snapshots/ControlPanel.test/Hidden Atlas Map.png create mode 100644 tests/e2e/tests/snapshots/Intensity.test/Atlas Map.png create mode 100644 tests/e2e/tests/snapshots/Intensity.test/Changed Individual Intensity.png create mode 100644 tests/e2e/tests/snapshots/Intensity.test/Changed Intensity.png create mode 100644 tests/e2e/tests/snapshots/Intensity.test/Reset Intensity.png create mode 100644 tests/e2e/tests/snapshots/SocialContextMap.test/Atlas Map.png create mode 100644 tests/e2e/tests/snapshots/SocialContextMap.test/Updated Atlas Map.png create mode 100644 tests/e2e/tests/snapshots/Viewer.test/Atlas Map Map Centered.png create mode 100644 tests/e2e/tests/snapshots/Viewer.test/Atlas Map.png create mode 100644 tests/e2e/tests/snapshots/Viewer.test/Atlas Map: Next Slices.png create mode 100644 tests/e2e/tests/snapshots/Viewer.test/Atlas Map: Previous Slices.png create mode 100644 tests/e2e/tests/snapshots/Viewer.test/Atlas Map: Wireframe.png create mode 100644 tests/e2e/tsconfig.json diff --git a/.gitignore b/.gitignore index 6ef69b5..b766e75 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,7 @@ processor/application_default_credentials.json processor/.env processor/helpers/__pycache__/ processor/.DS_Store +processor/samples/ +application_default_credentials.json +server/.env +client/yarn.lock \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..fef8fb4 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,27 @@ +ARG NODE_PARENT=node:20 + +FROM ${NODE_PARENT} as frontend +ARG BUILD_MODE=prod +ENV BUILDDIR=/app + +WORKDIR ${BUILDDIR} +COPY client/package.json ${BUILDDIR} +COPY client/package-lock.json ${BUILDDIR} +COPY nginx/default.conf ${BUILDDIR} + +RUN npm install --legacy-peer-deps +COPY ./client/ ${BUILDDIR} +RUN npx update-browserslist-db@latest + +RUN echo "Build mode is: ${BUILD_MODE}" +RUN npm run build:${BUILD_MODE} + +FROM nginx:1.19.3-alpine + +RUN cat /etc/nginx/conf.d/default.conf + +COPY --from=frontend /app/default.conf /etc/nginx/conf.d/default.conf + +COPY --from=frontend /app/build /usr/share/nginx/html/ + +EXPOSE 80 diff --git a/README.md b/README.md index 7b92528..d22f1b7 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ cd processor mkdir data ``` -Inside the data folder create 2 more folders, one to store all the activity maps (ActivityMap) )and one to store all the atlases (Atlas). +Inside the data folder create 2 more folders, one to store all the activity maps (ActivityMap) and one to store all the atlases (Atlas). ``` cd data @@ -32,9 +32,15 @@ cp *atlas.nii.gz ./Atlas/ cp *maps.nii.gz ./ActivityMap/ ``` -#### Prepare the index.json inside the data folder +For each atlas file copied inside the Atlas folder, copy also the wireframe version being sure to use the same file name followed by a capital W before the dot extension of the atlas. -It is responsability of the user triggering the ingestion also to prepare a file, **named index.json and placed inside the data folder**, that contains the hierarchical structure of the experiments and the data, according to the data model documented for the project. +```Example: if the atlas file is gubra_ano_combined_25um.nii.gz the wireframe file should be called gubra_ano_combined_25umW.nii.gz (capital W before the .nii.gz).``` + +#### Prepare the index.json and metadata.json inside the data folder + +It is responsibility of the user triggering the ingestion also to prepare a file, named **index.json** and a file named **metadata.json**, +both placed inside the data folder, that contains the hierarchical structure of the experiments and the data, according to the data model documented for the project +and experiments metadata respectively. Below an example of a working index.json file used during development: @@ -119,6 +125,115 @@ Below an example of a working index.json file used during development: } ``` +Below an example of a working metadata.json file used during development: + +```json +{ + "MDMA (social context) maps": { + "Experiment Name": "Effect of psilocybin on c-Fos-IF in distinct contexts", + "Contributor": "Boris Heifets (Stanford University)", + "Publications": [{ + "link": "https://google.com", + "label": "UNRAVELing the synergistic effects of psilocybin and environment on brain-wide immediate early gene expression in mice", + "description": "", + "keywords": "Rijsketic DR*, Casey AB*, Barbosa DA, Zhang X, Hietamies TM, Ramirez-Ovalle G, Pomrenze MB, Halpern CH, Williams LM, Malenka RC, Heifets BD", + "tags": [ + "rabbit anti-cfos", "donkey anti-Rabbit Alexa647" + ] + }], + "Treatment/Condition(s)": "psilocybin vs. saline; home cage (HC) vs. enriched environment (EE)", + "Dose(s)": "psilocybin (2 mg/kg, i.p.); 4-OHT (50 mg/kg; i.p.)", + "Species, strain, gene(s)": "TRAP2+/-;Ai14+ mice (bred to C57BL/6)", + "Sample sizes(s)": "n=9 for saline (HC); n = 8 for psilocybin (HC); n = 9 for saline (EE); n = 7 for psilocybin EE", + "Clearing method": "iDISCO+", + "Imaging modality": "light sheet fluorescent microscopy (LSFM)", + "Experiment details": "For TRAPing, mice were injected with 4-OHT and psilocybin or saline. Two-weeks later, mice were again injected with psilocybin or saline (crossover design) and placed in their assigned context for 2 hours before fixation for c-Fos mapping. Brains were hemisected, immunostained, cleared, and imaged in 3D with a Zeiss Lightsheet 7 (2.5x objective; 0.52x zoom; 3.5 isotropic resolution; 10.61 µm sheet thickness). 488 nm light excited autofluorescence (8% of 30 mW; 505-530 nm; 50 ms). 638 nm light excited IF (20% of 75 mW; 660 nm long pass; 50 ms). Pivot scanning limited artifacts. Tiled z-stacks (10% overlap) were stitched in Zen Blue.", + "Image analysis": [{ + "link": "https://google.com", + "label": "UNRAVEL Github repository", + "description": "We developed UNRAVEL to automate c-Fos mapping. Downsampled autofluorescence images were registered (MIRACL) to an iDISCO+/LSFM version of the Allen brain atlas (CCFv3). c-Fos-IF images were rolling ball background subtracted (4-pixel radius), warped to atlas space, z-scored, and smoothed (50 µm). Voxel-wise analyses were performed with randomise_parallel (FSL) according to a 2x2 ANOVA design (6,000 permutations). False positives in F-contrast maps were limited by false discovery rate (FDR) correction and cluster extent (> 100 voxels). Surviving clusters were warped to full resolution tissue space for post hoc cell density comparisons using cell segmentations from Ilastik.", + "keywords": "", + "tags": [] + }], + "Additional links": [{ + "link": "https://google.com", + "label": "Antibody registry", + "description": "Documents, documentations and repositories that relates to this experiment.", + "keywords": "", + "tags": [] + }] + }, + "Psilocybin (HC; EE) maps": { + "Experiment Name": "Effect of psilocybin on c-Fos-IF in distinct contexts", + "Contributor": "Boris Heifets (Stanford University)", + "Publications": [{ + "link": "https://google.com", + "label": "UNRAVELing the synergistic effects of psilocybin and environment on brain-wide immediate early gene expression in mice", + "description": "", + "keywords": "Rijsketic DR*, Casey AB*, Barbosa DA, Zhang X, Hietamies TM, Ramirez-Ovalle G, Pomrenze MB, Halpern CH, Williams LM, Malenka RC, Heifets BD", + "tags": [ + "rabbit anti-cfos", "donkey anti-Rabbit Alexa647" + ] + }], + "Treatment/Condition(s)": "psilocybin vs. saline; home cage (HC) vs. enriched environment (EE)", + "Dose(s)": "psilocybin (2 mg/kg, i.p.); 4-OHT (50 mg/kg; i.p.)", + "Species, strain, gene(s)": "TRAP2+/-;Ai14+ mice (bred to C57BL/6)", + "Sample sizes(s)": "n=9 for saline (HC); n = 8 for psilocybin (HC); n = 9 for saline (EE); n = 7 for psilocybin EE", + "Clearing method": "iDISCO+", + "Imaging modality": "light sheet fluorescent microscopy (LSFM)", + "Experiment details": "For TRAPing, mice were injected with 4-OHT and psilocybin or saline. Two-weeks later, mice were again injected with psilocybin or saline (crossover design) and placed in their assigned context for 2 hours before fixation for c-Fos mapping. Brains were hemisected, immunostained, cleared, and imaged in 3D with a Zeiss Lightsheet 7 (2.5x objective; 0.52x zoom; 3.5 isotropic resolution; 10.61 µm sheet thickness). 488 nm light excited autofluorescence (8% of 30 mW; 505-530 nm; 50 ms). 638 nm light excited IF (20% of 75 mW; 660 nm long pass; 50 ms). Pivot scanning limited artifacts. Tiled z-stacks (10% overlap) were stitched in Zen Blue.", + "Image analysis": [{ + "link": "https://google.com", + "label": "UNRAVEL Github repository", + "description": "We developed UNRAVEL to automate c-Fos mapping. Downsampled autofluorescence images were registered (MIRACL) to an iDISCO+/LSFM version of the Allen brain atlas (CCFv3). c-Fos-IF images were rolling ball background subtracted (4-pixel radius), warped to atlas space, z-scored, and smoothed (50 µm). Voxel-wise analyses were performed with randomise_parallel (FSL) according to a 2x2 ANOVA design (6,000 permutations). False positives in F-contrast maps were limited by false discovery rate (FDR) correction and cluster extent (> 100 voxels). Surviving clusters were warped to full resolution tissue space for post hoc cell density comparisons using cell segmentations from Ilastik.", + "keywords": "", + "tags": [] + }], + "Additional links": [{ + "link": "https://google.com", + "label": "Antibody registry", + "description": "Documents, documentations and repositories that relates to this experiment.", + "keywords": "", + "tags": [] + }] + }, + "Ketamine v. Naltrexone+Ket maps": { + "Experiment Name": "Effect of psilocybin on c-Fos-IF in distinct contexts", + "Contributor": "Boris Heifets (Stanford University)", + "Publications": [{ + "link": "https://google.com", + "label": "UNRAVELing the synergistic effects of psilocybin and environment on brain-wide immediate early gene expression in mice", + "description": "", + "keywords": "Rijsketic DR*, Casey AB*, Barbosa DA, Zhang X, Hietamies TM, Ramirez-Ovalle G, Pomrenze MB, Halpern CH, Williams LM, Malenka RC, Heifets BD", + "tags": [ + "rabbit anti-cfos", "donkey anti-Rabbit Alexa647" + ] + }], + "Treatment/Condition(s)": "psilocybin vs. saline; home cage (HC) vs. enriched environment (EE)", + "Dose(s)": "psilocybin (2 mg/kg, i.p.); 4-OHT (50 mg/kg; i.p.)", + "Species, strain, gene(s)": "TRAP2+/-;Ai14+ mice (bred to C57BL/6)", + "Sample sizes(s)": "n=9 for saline (HC); n = 8 for psilocybin (HC); n = 9 for saline (EE); n = 7 for psilocybin EE", + "Clearing method": "iDISCO+", + "Imaging modality": "light sheet fluorescent microscopy (LSFM)", + "Experiment details": "For TRAPing, mice were injected with 4-OHT and psilocybin or saline. Two-weeks later, mice were again injected with psilocybin or saline (crossover design) and placed in their assigned context for 2 hours before fixation for c-Fos mapping. Brains were hemisected, immunostained, cleared, and imaged in 3D with a Zeiss Lightsheet 7 (2.5x objective; 0.52x zoom; 3.5 isotropic resolution; 10.61 µm sheet thickness). 488 nm light excited autofluorescence (8% of 30 mW; 505-530 nm; 50 ms). 638 nm light excited IF (20% of 75 mW; 660 nm long pass; 50 ms). Pivot scanning limited artifacts. Tiled z-stacks (10% overlap) were stitched in Zen Blue.", + "Image analysis": [{ + "link": "https://google.com", + "label": "UNRAVEL Github repository", + "description": "We developed UNRAVEL to automate c-Fos mapping. Downsampled autofluorescence images were registered (MIRACL) to an iDISCO+/LSFM version of the Allen brain atlas (CCFv3). c-Fos-IF images were rolling ball background subtracted (4-pixel radius), warped to atlas space, z-scored, and smoothed (50 µm). Voxel-wise analyses were performed with randomise_parallel (FSL) according to a 2x2 ANOVA design (6,000 permutations). False positives in F-contrast maps were limited by false discovery rate (FDR) correction and cluster extent (> 100 voxels). Surviving clusters were warped to full resolution tissue space for post hoc cell density comparisons using cell segmentations from Ilastik.", + "keywords": "", + "tags": [] + }], + "Additional links": [{ + "link": "https://google.com", + "label": "Antibody registry", + "description": "Documents, documentations and repositories that relates to this experiment.", + "keywords": "", + "tags": [] + }] + } +} +```` + #### Create a conda environment and install the required dependencies Create a conda environment and install all the required dependencies for the ingestion, using the file all_requirements.txt inside the processor folder. @@ -152,16 +267,14 @@ To run this last step ensure to have the conda environment created above activat ``` cd processor/ python main.py - ``` The ingestion will take some time, which depends on the host machine running the ingestion and the connection/bandwidth used, since the steps performed are: -- preprocess the nifti files to extract the msgpack equivalent, since it's way faster for the viewer handle these. -- generate the wireframe for each atlas file. +- preprocess the nifti files to extract the msgpack equivalent, since it's way faster for the viewer to handle these. - upload all the generated files in the bucket that stores the application data. -## Setup development environment +# For developers willing to contribute to the codebase - Setup development environment ### Backend diff --git a/client/.env b/client/.env index 62e6f7e..ba54c8a 100644 --- a/client/.env +++ b/client/.env @@ -1 +1 @@ -REACT_APP_SERVER_URL=https://storage.googleapis.com/cfos-visualizer-stanford \ No newline at end of file +REACT_APP_SERVER_URL=https://storage.googleapis.com/cfos-visualizer-stanford-dev \ No newline at end of file diff --git a/client/.env.development b/client/.env.development new file mode 100644 index 0000000..ba54c8a --- /dev/null +++ b/client/.env.development @@ -0,0 +1 @@ +REACT_APP_SERVER_URL=https://storage.googleapis.com/cfos-visualizer-stanford-dev \ No newline at end of file diff --git a/client/.env.development.local b/client/.env.development.local deleted file mode 100644 index 15ffb45..0000000 --- a/client/.env.development.local +++ /dev/null @@ -1 +0,0 @@ -REACT_APP_SERVER_URL=http://localhost:8080/cfos-visualizer-stanford diff --git a/client/.env.production b/client/.env.production similarity index 100% rename from client/.env.production rename to client/.env.production diff --git a/client/deploy/Dockerfile b/client/deploy/Dockerfile deleted file mode 100644 index 1b019cb..0000000 --- a/client/deploy/Dockerfile +++ /dev/null @@ -1,25 +0,0 @@ -## Context of the build should be the repository root - -# Use an official Node runtime as the base image -FROM node:20 - -# Set the working directory in the container to /app -WORKDIR /app - -# Copy package.json and package-lock.json to the container (in a separate step for caching purposes) -COPY client/package*.json ./ - -# Install the application's dependencies inside the container -RUN npm install --legacy-peer-deps - -# Copy the content of the /client directory to the container -COPY client/ ./ - -# Build the React app for production -RUN npm run build - -# Install the 'serve' package to serve the static files -RUN npm install -g serve - -# Command to run the application -CMD ["serve", "-s", "build"] diff --git a/client/package-lock.json b/client/package-lock.json index 6dee0a5..8f36a84 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -5,7 +5,7 @@ "requires": true, "packages": { "": { - "name": "cfos-visualizer", + "name": "cfos-visuaenvlizer", "version": "0.1.0", "dependencies": { "@emotion/react": "^11.11.1", @@ -20,6 +20,7 @@ "@mui/icons-material": "^5.14.9", "@mui/material": "^5.14.10", "@mui/styles": "^5.14.6", + "@mui/x-tree-view": "^7.2.0", "@testing-library/jest-dom": "^5.17.0", "@testing-library/react": "^12.1.4", "@testing-library/user-event": "^12.8.3", @@ -27,6 +28,7 @@ "font-awesome": "^4.7.0", "postcss-flexbugs-fixes": "^5.0.2", "react": "^17.0.2", + "react-color": "^2.19.3", "react-dom": "^17.0.2", "react-redux": "^7.2.0", "react-scripts": "5.0.1", @@ -54,6 +56,7 @@ "compression-webpack-plugin": "^7.1.2", "copy-webpack-plugin": "^6.2.1", "css-loader": "^3.4.2", + "env-cmd": "^10.1.0", "eslint": "^8.37.0", "eslint-plugin-jest": "^23.8.2", "eslint-plugin-react": "^7.32.2", @@ -2141,9 +2144,9 @@ "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==" }, "node_modules/@babel/runtime": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.15.tgz", - "integrity": "sha512-T0O+aa+4w0u06iNmapipJXMV4HoUir03hpx3/YqXXhu9xim3w+dVphjFWl1OH8NbZHw5Lbm9k45drDkgq2VNNA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.5.tgz", + "integrity": "sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -2750,28 +2753,28 @@ } }, "node_modules/@floating-ui/core": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.0.tgz", - "integrity": "sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.1.tgz", + "integrity": "sha512-42UH54oPZHPdRHdw6BgoBD6cg/eVTmVrFcgeRDM3jbO7uxSoipVcmcIGFcA5jmOHO5apcyvBhkSKES3fQJnu7A==", "dependencies": { - "@floating-ui/utils": "^0.1.3" + "@floating-ui/utils": "^0.2.0" } }, "node_modules/@floating-ui/dom": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.3.tgz", - "integrity": "sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==", + "version": "1.6.5", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.5.tgz", + "integrity": "sha512-Nsdud2X65Dz+1RHjAIP0t8z5e2ff/IRbei6BqFrl1urT8sDVzM1HMQ+R0XcU5ceRfyO3I6ayeqIfh+6Wb8LGTw==", "dependencies": { - "@floating-ui/core": "^1.4.2", - "@floating-ui/utils": "^0.1.3" + "@floating-ui/core": "^1.0.0", + "@floating-ui/utils": "^0.2.0" } }, "node_modules/@floating-ui/react-dom": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.2.tgz", - "integrity": "sha512-5qhlDvjaLmAst/rKb3VdlCinwTF4EYMiVxuuc/HVUjs46W0zgtbMmAZ1UTsDrRTxRmUEzl92mOtWbeeXL26lSQ==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.9.tgz", + "integrity": "sha512-q0umO0+LQK4+p6aGyvzASqKbKOJcAHJ7ycE9CuUvfx3s9zTHWmGJTPOIlM/hmSBfUfg/XfY5YhLBLR/LHwShQQ==", "dependencies": { - "@floating-ui/dom": "^1.5.1" + "@floating-ui/dom": "^1.0.0" }, "peerDependencies": { "react": ">=16.8.0", @@ -2779,9 +2782,9 @@ } }, "node_modules/@floating-ui/utils": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.4.tgz", - "integrity": "sha512-qprfWkn82Iw821mcKofJ5Pk9wgioHicxcQMxx+5zt5GSKoqdWvgG5AxVmpmUUjzTLPVSH5auBrhI93Deayn/DA==" + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.2.tgz", + "integrity": "sha512-J4yDIIthosAsRZ5CPYP/jQvUAQtlZTTD/4suA08/FEnlxqW3sKS9iAhgsa9VYLZ6vDHn/ixJgIqRQPotoBjxIw==" }, "node_modules/@fortawesome/fontawesome-common-types": { "version": "0.2.36", @@ -2878,7 +2881,6 @@ "version": "0.2.4", "resolved": "https://registry.npmjs.org/@icons/material/-/material-0.2.4.tgz", "integrity": "sha512-QPcGmICAPbGLGb6F/yNf/KzKqvFx8z5qx3D1yFqVAjoFmXK35EgyW+cJ57Te3CNsmzblwtzakLGFqHPqrfb4Tw==", - "peer": true, "peerDependencies": { "react": "*" } @@ -3635,16 +3637,16 @@ } }, "node_modules/@mui/base": { - "version": "5.0.0-beta.17", - "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.17.tgz", - "integrity": "sha512-xNbk7iOXrglNdIxFBN0k3ySsPIFLWCnFxqsAYl7CIcDkD9low4kJ7IUuy6ctwx/HAy2fenrT3KXHr1sGjAMgpQ==", - "dependencies": { - "@babel/runtime": "^7.22.15", - "@floating-ui/react-dom": "^2.0.2", - "@mui/types": "^7.2.4", - "@mui/utils": "^5.14.11", + "version": "5.0.0-beta.40", + "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.40.tgz", + "integrity": "sha512-I/lGHztkCzvwlXpjD2+SNmvNQvB4227xBXhISPjEaJUXGImOQ9f3D2Yj/T3KasSI/h0MLWy74X0J6clhPmsRbQ==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@floating-ui/react-dom": "^2.0.8", + "@mui/types": "^7.2.14", + "@mui/utils": "^5.15.14", "@popperjs/core": "^2.11.8", - "clsx": "^2.0.0", + "clsx": "^2.1.0", "prop-types": "^15.8.1" }, "engines": { @@ -3652,7 +3654,7 @@ }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui" + "url": "https://opencollective.com/mui-org" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0", @@ -3666,20 +3668,20 @@ } }, "node_modules/@mui/base/node_modules/clsx": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.0.0.tgz", - "integrity": "sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", "engines": { "node": ">=6" } }, "node_modules/@mui/core-downloads-tracker": { - "version": "5.14.11", - "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.14.11.tgz", - "integrity": "sha512-uY8FLQURhXe3f3O4dS5OSGML9KDm9+IE226cBu78jarVIzdQGPlXwGIlSI9VJR8MvZDA6C0+6XfWDhWCHruC5Q==", + "version": "5.15.17", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.15.17.tgz", + "integrity": "sha512-DVAejDQkjNnIac7MfP8sLzuo7fyrBPxNdXe+6bYqOqg1z2OPTlfFAejSNzWe7UenRMuFu9/AyFXj/X2vN2w6dA==", "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui" + "url": "https://opencollective.com/mui-org" } }, "node_modules/@mui/icons-material": { @@ -3708,19 +3710,19 @@ } }, "node_modules/@mui/material": { - "version": "5.14.11", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.14.11.tgz", - "integrity": "sha512-DnSdJzcR7lwG12JA5L2t8JF+RDzMygu5rCNW+logWb/KW2/TRzwLyVWO+CorHTBjBRd38DBxnwOCDiYkDd+N3A==", - "dependencies": { - "@babel/runtime": "^7.22.15", - "@mui/base": "5.0.0-beta.17", - "@mui/core-downloads-tracker": "^5.14.11", - "@mui/system": "^5.14.11", - "@mui/types": "^7.2.4", - "@mui/utils": "^5.14.11", - "@types/react-transition-group": "^4.4.6", - "clsx": "^2.0.0", - "csstype": "^3.1.2", + "version": "5.15.17", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.15.17.tgz", + "integrity": "sha512-ru/MLvTkCh0AZXmqwIpqGTOoVBS/sX48zArXq/DvktxXZx4fskiRA2PEc7Rk5ZlFiZhKh4moL4an+l8zZwq49Q==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@mui/base": "5.0.0-beta.40", + "@mui/core-downloads-tracker": "^5.15.17", + "@mui/system": "^5.15.15", + "@mui/types": "^7.2.14", + "@mui/utils": "^5.15.14", + "@types/react-transition-group": "^4.4.10", + "clsx": "^2.1.0", + "csstype": "^3.1.3", "prop-types": "^15.8.1", "react-is": "^18.2.0", "react-transition-group": "^4.4.5" @@ -3730,7 +3732,7 @@ }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui" + "url": "https://opencollective.com/mui-org" }, "peerDependencies": { "@emotion/react": "^11.5.0", @@ -3752,9 +3754,9 @@ } }, "node_modules/@mui/material/node_modules/clsx": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.0.0.tgz", - "integrity": "sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", "engines": { "node": ">=6" } @@ -3765,12 +3767,12 @@ "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" }, "node_modules/@mui/private-theming": { - "version": "5.14.11", - "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.14.11.tgz", - "integrity": "sha512-MSnNNzTu9pfKLCKs1ZAKwOTgE4bz+fQA0fNr8Jm7NDmuWmw0CaN9Vq2/MHsatE7+S0A25IAKby46Uv1u53rKVQ==", + "version": "5.15.14", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.15.14.tgz", + "integrity": "sha512-UH0EiZckOWcxiXLX3Jbb0K7rC8mxTr9L9l6QhOZxYc4r8FHUkefltV9VDGLrzCaWh30SQiJvAEd7djX3XXY6Xw==", "dependencies": { - "@babel/runtime": "^7.22.15", - "@mui/utils": "^5.14.11", + "@babel/runtime": "^7.23.9", + "@mui/utils": "^5.15.14", "prop-types": "^15.8.1" }, "engines": { @@ -3778,7 +3780,7 @@ }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui" + "url": "https://opencollective.com/mui-org" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0", @@ -3791,13 +3793,13 @@ } }, "node_modules/@mui/styled-engine": { - "version": "5.14.11", - "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.14.11.tgz", - "integrity": "sha512-jdUlqRgTYQ8RMtPX4MbRZqar6W2OiIb6J5KEFbIu4FqvPrk44Each4ppg/LAqp1qNlBYq5i+7Q10MYLMpDxX9A==", + "version": "5.15.14", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.15.14.tgz", + "integrity": "sha512-RILkuVD8gY6PvjZjqnWhz8fu68dVkqhM5+jYWfB5yhlSQKg+2rHkmEwm75XIeAqI3qwOndK6zELK5H6Zxn4NHw==", "dependencies": { - "@babel/runtime": "^7.22.15", + "@babel/runtime": "^7.23.9", "@emotion/cache": "^11.11.0", - "csstype": "^3.1.2", + "csstype": "^3.1.3", "prop-types": "^15.8.1" }, "engines": { @@ -3805,7 +3807,7 @@ }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui" + "url": "https://opencollective.com/mui-org" }, "peerDependencies": { "@emotion/react": "^11.4.1", @@ -3870,17 +3872,17 @@ } }, "node_modules/@mui/system": { - "version": "5.14.11", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.14.11.tgz", - "integrity": "sha512-yl8xV+y0k7j6dzBsHabKwoShmjqLa8kTxrhUI3JpqLG358VRVMJRW/ES0HhvfcCi4IVXde+Tc2P3K1akGL8zoA==", - "dependencies": { - "@babel/runtime": "^7.22.15", - "@mui/private-theming": "^5.14.11", - "@mui/styled-engine": "^5.14.11", - "@mui/types": "^7.2.4", - "@mui/utils": "^5.14.11", - "clsx": "^2.0.0", - "csstype": "^3.1.2", + "version": "5.15.15", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.15.15.tgz", + "integrity": "sha512-aulox6N1dnu5PABsfxVGOZffDVmlxPOVgj56HrUnJE8MCSh8lOvvkd47cebIVQQYAjpwieXQXiDPj5pwM40jTQ==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@mui/private-theming": "^5.15.14", + "@mui/styled-engine": "^5.15.14", + "@mui/types": "^7.2.14", + "@mui/utils": "^5.15.14", + "clsx": "^2.1.0", + "csstype": "^3.1.3", "prop-types": "^15.8.1" }, "engines": { @@ -3888,7 +3890,7 @@ }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui" + "url": "https://opencollective.com/mui-org" }, "peerDependencies": { "@emotion/react": "^11.5.0", @@ -3909,19 +3911,19 @@ } }, "node_modules/@mui/system/node_modules/clsx": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.0.0.tgz", - "integrity": "sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", "engines": { "node": ">=6" } }, "node_modules/@mui/types": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.4.tgz", - "integrity": "sha512-LBcwa8rN84bKF+f5sDyku42w1NTxaPgPyYKODsh01U1fVstTClbUoSA96oyRBnSNyEiAVjKm6Gwx9vjR+xyqHA==", + "version": "7.2.14", + "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.14.tgz", + "integrity": "sha512-MZsBZ4q4HfzBsywtXgM1Ksj6HDThtiwmOKUXH1pKYISI9gAVXCNHNpo7TlGoGrBaYWZTdNoirIN7JsQcQUjmQQ==", "peerDependencies": { - "@types/react": "*" + "@types/react": "^17.0.0 || ^18.0.0" }, "peerDependenciesMeta": { "@types/react": { @@ -3930,12 +3932,12 @@ } }, "node_modules/@mui/utils": { - "version": "5.14.11", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.14.11.tgz", - "integrity": "sha512-fmkIiCPKyDssYrJ5qk+dime1nlO3dmWfCtaPY/uVBqCRMBZ11JhddB9m8sjI2mgqQQwRJG5bq3biaosNdU/s4Q==", + "version": "5.15.14", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.15.14.tgz", + "integrity": "sha512-0lF/7Hh/ezDv5X7Pry6enMsbYyGKjADzvHyo3Qrc/SSlTsQ1VkbDMbH0m2t3OR5iIVLwMoxwM7yGd+6FCMtTFA==", "dependencies": { - "@babel/runtime": "^7.22.15", - "@types/prop-types": "^15.7.5", + "@babel/runtime": "^7.23.9", + "@types/prop-types": "^15.7.11", "prop-types": "^15.8.1", "react-is": "^18.2.0" }, @@ -3944,7 +3946,7 @@ }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/mui" + "url": "https://opencollective.com/mui-org" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0", @@ -3961,6 +3963,43 @@ "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" }, + "node_modules/@mui/x-tree-view": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@mui/x-tree-view/-/x-tree-view-7.4.0.tgz", + "integrity": "sha512-gUAZ21wUbc4cpk5sAsUjZNtdryxIVgVYRYiZsz8OTzDk82JUlGmULF6Tpex93NYI+tykkrz1+/4/Tg9MIIAKUg==", + "dependencies": { + "@babel/runtime": "^7.24.0", + "@mui/base": "^5.0.0-beta.40", + "@mui/system": "^5.15.14", + "@mui/utils": "^5.15.14", + "@types/react-transition-group": "^4.4.10", + "clsx": "^2.1.1", + "prop-types": "^15.8.1", + "react-transition-group": "^4.4.5" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.9.0", + "@emotion/styled": "^11.8.1", + "@mui/material": "^5.15.14", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + } + }, + "node_modules/@mui/x-tree-view/node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "engines": { + "node": ">=6" + } + }, "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { "version": "5.1.1-v1", "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", @@ -4959,9 +4998,9 @@ "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==" }, "node_modules/@types/prop-types": { - "version": "15.7.5", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + "version": "15.7.12", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz", + "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/q": { "version": "1.5.6", @@ -5008,9 +5047,9 @@ } }, "node_modules/@types/react-transition-group": { - "version": "4.4.6", - "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.6.tgz", - "integrity": "sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew==", + "version": "4.4.10", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.10.tgz", + "integrity": "sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==", "dependencies": { "@types/react": "*" } @@ -11177,9 +11216,9 @@ "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==" }, "node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" }, "node_modules/CSSwhat": { "version": "0.4.7", @@ -12633,6 +12672,31 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, + "node_modules/env-cmd": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/env-cmd/-/env-cmd-10.1.0.tgz", + "integrity": "sha512-mMdWTT9XKN7yNth/6N6g2GuKuJTsKMDHlQFUDacb/heQRRWOTIZ42t1rMHnQu4jYxU1ajdTeJM+9eEETlqToMA==", + "dev": true, + "dependencies": { + "commander": "^4.0.0", + "cross-spawn": "^7.0.0" + }, + "bin": { + "env-cmd": "bin/env-cmd.js" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/env-cmd/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, "node_modules/envinfo": { "version": "7.10.0", "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.10.0.tgz", @@ -21101,8 +21165,7 @@ "node_modules/lodash-es": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "peer": true + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, "node_modules/lodash._basecopy": { "version": "3.0.1", @@ -21509,8 +21572,7 @@ "node_modules/material-colors": { "version": "1.2.6", "resolved": "https://registry.npmjs.org/material-colors/-/material-colors-1.2.6.tgz", - "integrity": "sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg==", - "peer": true + "integrity": "sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg==" }, "node_modules/math-abs": { "version": "1.0.2", @@ -22693,6 +22755,8 @@ }, "node_modules/nyc/node_modules/ansi-styles": { "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "inBundle": true, "license": "MIT", "peer": true, @@ -22711,6 +22775,8 @@ }, "node_modules/nyc/node_modules/arr-diff": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha512-dtXTVMkh6VkEEA7OhXnN1Ecb8aAGFdZ1LFxtOCoqj4qkyOJMt7+qs6Ahdy6p/NQCPYsRSXXivhSB/J5E9jmYKA==", "inBundle": true, "license": "MIT", "peer": true, @@ -22732,6 +22798,8 @@ }, "node_modules/nyc/node_modules/array-unique": { "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha512-G2n5bG5fSUCpnsXz4+8FUkYsGPkNfLn9YvS66U5qbTIXI2Ynnlo4Bi42bWv+omKUCqz+ejzfClwne0alJWJPhg==", "inBundle": true, "license": "MIT", "peer": true, @@ -22872,6 +22940,8 @@ }, "node_modules/nyc/node_modules/braces": { "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha512-xU7bpz2ytJl1bH9cgIurjpg/n8Gohy9GTw81heDYLJQ4RU60dlyJsa+atVF2pI0yMMvKxI9HkKwjePCj5XI1hw==", "inBundle": true, "license": "MIT", "peer": true, @@ -22983,12 +23053,16 @@ }, "node_modules/nyc/node_modules/commondir": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "inBundle": true, "license": "MIT", "peer": true }, "node_modules/nyc/node_modules/concat-map": { "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "inBundle": true, "license": "MIT", "peer": true @@ -23079,6 +23153,8 @@ }, "node_modules/nyc/node_modules/escape-string-regexp": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "inBundle": true, "license": "MIT", "peer": true, @@ -23096,6 +23172,8 @@ }, "node_modules/nyc/node_modules/expand-brackets": { "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha512-hxx03P2dJxss6ceIeri9cmYOT4SRs3Zk3afZwWpOsRqLqprhTR8u++SlC+sFGsQr7WGFPdMF7Gjc1njDLDK6UA==", "inBundle": true, "license": "MIT", "peer": true, @@ -23108,6 +23186,8 @@ }, "node_modules/nyc/node_modules/expand-range": { "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha512-AFASGfIlnIbkKPQwX1yHaDjFvh/1gyKJODme52V6IORh69uEYgZp0o9C+qsIGNVEiuuhQU0CSSl++Rlegg1qvA==", "inBundle": true, "license": "MIT", "peer": true, @@ -23120,6 +23200,8 @@ }, "node_modules/nyc/node_modules/extglob": { "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha512-1FOj1LOwn42TMrruOHGt18HemVnbwAmAak7krWk+wa93KXxGbK+2jpezm+ytJYDaBX0/SPLZFHKM7m+tKobWGg==", "inBundle": true, "license": "MIT", "peer": true, @@ -23215,6 +23297,8 @@ }, "node_modules/nyc/node_modules/fs.realpath": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "inBundle": true, "license": "ISC", "peer": true @@ -23253,6 +23337,8 @@ }, "node_modules/nyc/node_modules/glob-base": { "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha512-ab1S1g1EbO7YzauaJLkgLp7DZVAqj9M/dvKlTt8DkXA2tiOIcSMrlVI2J1RZyB5iJVccEscjGn+kpOG9788MHA==", "inBundle": true, "license": "MIT", "peer": true, @@ -23266,6 +23352,8 @@ }, "node_modules/nyc/node_modules/glob-parent": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha512-JDYOvfxio/t42HKdxkAYaCiBN7oYiuxykOxKxdaUW5Qn0zaYN3gRQWolrwdnf0shM9/EP0ebuuTmyoXNr1cC5w==", "inBundle": true, "license": "ISC", "peer": true, @@ -23325,6 +23413,8 @@ }, "node_modules/nyc/node_modules/has-ansi": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "inBundle": true, "license": "MIT", "peer": true, @@ -23352,6 +23442,8 @@ }, "node_modules/nyc/node_modules/imurmurhash": { "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "inBundle": true, "license": "MIT", "peer": true, @@ -23395,6 +23487,8 @@ }, "node_modules/nyc/node_modules/is-arrayish": { "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "inBundle": true, "license": "MIT", "peer": true @@ -23431,6 +23525,8 @@ }, "node_modules/nyc/node_modules/is-equal-shallow": { "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha512-0EygVC5qPvIyb+gSz7zdD5/AAoS6Qrx1e//6N4yv4oNm30kqvdmG66oZFWVlQHUWe5OjP08FuTw2IdT0EOTcYA==", "inBundle": true, "license": "MIT", "peer": true, @@ -23443,6 +23539,8 @@ }, "node_modules/nyc/node_modules/is-extendable": { "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", "inBundle": true, "license": "MIT", "peer": true, @@ -23452,6 +23550,8 @@ }, "node_modules/nyc/node_modules/is-extglob": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww==", "inBundle": true, "license": "MIT", "peer": true, @@ -23473,6 +23573,8 @@ }, "node_modules/nyc/node_modules/is-fullwidth-code-point": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "inBundle": true, "license": "MIT", "peer": true, @@ -23485,6 +23587,8 @@ }, "node_modules/nyc/node_modules/is-glob": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha512-a1dBeB19NXsf/E0+FHqkagizel/LQw2DjSQpvQrj3zT+jYPpaUCryPnrQajXKFLCMuf4I6FhRpaGtw4lPrG6Eg==", "inBundle": true, "license": "MIT", "peer": true, @@ -23497,6 +23601,8 @@ }, "node_modules/nyc/node_modules/is-number": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha512-QUzH43Gfb9+5yckcrSA0VBDwEtDUchrk4F6tfJZQuNzDJbEDB9cZNzSfXGQ1jqmdDY/kl41lUOWM9syA8z8jlg==", "inBundle": true, "license": "MIT", "peer": true, @@ -23509,6 +23615,8 @@ }, "node_modules/nyc/node_modules/is-posix-bracket": { "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha512-Yu68oeXJ7LeWNmZ3Zov/xg/oDBnBK2RNxwYY1ilNJX+tKKZqgPK+qOn/Gs9jEu66KDY9Netf5XLKNGzas/vPfQ==", "inBundle": true, "license": "MIT", "peer": true, @@ -23518,6 +23626,8 @@ }, "node_modules/nyc/node_modules/is-primitive": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha512-N3w1tFaRfk3UrPfqeRyD+GYDASU3W5VinKhlORy8EWVf/sIdDL9GAcew85XmktCfH+ngG7SRXEVDoO18WMdB/Q==", "inBundle": true, "license": "MIT", "peer": true, @@ -23527,12 +23637,16 @@ }, "node_modules/nyc/node_modules/is-utf8": { "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", "inBundle": true, "license": "MIT", "peer": true }, "node_modules/nyc/node_modules/isarray": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "inBundle": true, "license": "MIT", "peer": true @@ -23545,6 +23659,8 @@ }, "node_modules/nyc/node_modules/isobject": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", "inBundle": true, "license": "MIT", "peer": true, @@ -23914,6 +24030,8 @@ }, "node_modules/nyc/node_modules/parse-glob": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha512-FC5TeK0AwXzq3tUBFtH74naWkPQCEWs4K+xMxWZBlKDWu0bVHXGZa+KKqxKidd7xwhdZ19ZNuF2uO1M/r196HA==", "inBundle": true, "license": "MIT", "peer": true, @@ -23982,6 +24100,8 @@ }, "node_modules/nyc/node_modules/pify": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", "inBundle": true, "license": "MIT", "peer": true, @@ -23991,6 +24111,8 @@ }, "node_modules/nyc/node_modules/pinkie": { "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", "inBundle": true, "license": "MIT", "peer": true, @@ -24000,6 +24122,8 @@ }, "node_modules/nyc/node_modules/pinkie-promise": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", "inBundle": true, "license": "MIT", "peer": true, @@ -24036,6 +24160,8 @@ }, "node_modules/nyc/node_modules/preserve": { "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha512-s/46sYeylUfHNjI+sA/78FAHlmIuKqI9wNnzEOGehAlUUYeObv5C2mOinXBjyUyWmJ2SfcS2/ydApH4hTF4WXQ==", "inBundle": true, "license": "MIT", "peer": true, @@ -24140,6 +24266,8 @@ }, "node_modules/nyc/node_modules/require-directory": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "inBundle": true, "license": "MIT", "peer": true, @@ -24210,6 +24338,8 @@ }, "node_modules/nyc/node_modules/slide": { "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha512-NwrtjCg+lZoqhFU8fOwl4ay2ei8PaqCBOUV3/ektPY9trO1yQ1oXEfmHAhKArUVUr/hOHvy5f6AdP17dCM0zMw==", "inBundle": true, "license": "ISC", "peer": true, @@ -24293,6 +24423,8 @@ }, "node_modules/nyc/node_modules/strip-ansi": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "inBundle": true, "license": "MIT", "peer": true, @@ -24317,6 +24449,8 @@ }, "node_modules/nyc/node_modules/supports-color": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "inBundle": true, "license": "MIT", "peer": true, @@ -24367,6 +24501,8 @@ }, "node_modules/nyc/node_modules/uglify-js/node_modules/async": { "version": "0.2.10", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "integrity": "sha512-eAkdoKxU6/LkKDBzLpT+t6Ff5EtfSF4wx1WfJiPEEV7WNLnDaRXk0oVysiEPm262roaachGexwUv94WhSgN5TQ==", "inBundle": true, "optional": true, "peer": true @@ -24386,6 +24522,8 @@ }, "node_modules/nyc/node_modules/uglify-to-browserify": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha512-vb2s1lYx2xBtUgy+ta+b2J/GLVUR+wmpINwHePmPRhOsIVCG2wDzKJ0n14GslH1BifsqVzSOwQhRaCAsZ/nI4Q==", "inBundle": true, "license": "MIT", "optional": true, @@ -24430,6 +24568,8 @@ }, "node_modules/nyc/node_modules/wordwrap": { "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw==", "inBundle": true, "license": "MIT", "peer": true, @@ -24451,6 +24591,8 @@ }, "node_modules/nyc/node_modules/wrappy": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "inBundle": true, "license": "ISC", "peer": true @@ -27796,7 +27938,6 @@ "version": "2.19.3", "resolved": "https://registry.npmjs.org/react-color/-/react-color-2.19.3.tgz", "integrity": "sha512-LEeGE/ZzNLIsFWa1TMe8y5VYqr7bibneWmvJwm1pCn/eNmrabWDh659JSPn9BuaMpEfU83WTOJfnCcjDZwNQTA==", - "peer": true, "dependencies": { "@icons/material": "^0.2.4", "lodash": "^4.17.15", @@ -28636,7 +28777,6 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/reactcss/-/reactcss-1.2.3.tgz", "integrity": "sha512-KiwVUcFu1RErkI97ywr8nvx8dNOpT03rbnma0SSalTYjkrPYaEajR4a/MRt6DZ46K6arDRbWMNHF+xH7G7n/8A==", - "peer": true, "dependencies": { "lodash": "^4.0.1" } @@ -32369,8 +32509,7 @@ "node_modules/tinycolor2": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz", - "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==", - "peer": true + "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==" }, "node_modules/tinyqueue": { "version": "2.0.3", diff --git a/client/package.json b/client/package.json index 9d3b6dc..bc52a35 100644 --- a/client/package.json +++ b/client/package.json @@ -1,6 +1,6 @@ { "name": "cfos-visualizer", - "version": "0.1.0", + "version": "1.0.0", "private": true, "dependencies": { "@emotion/react": "^11.11.1", @@ -15,6 +15,7 @@ "@mui/icons-material": "^5.14.9", "@mui/material": "^5.14.10", "@mui/styles": "^5.14.6", + "@mui/x-tree-view": "^7.2.0", "@testing-library/jest-dom": "^5.17.0", "@testing-library/react": "^12.1.4", "@testing-library/user-event": "^12.8.3", @@ -28,6 +29,7 @@ "react-scripts": "5.0.1", "seamless-immutable": "^7.1.4", "three": "0.118.0", + "uuid": "^9.0.1", "web-vitals": "^2.1.4", "webpack": "^5.88.2", "webpack-cli": "^5.1.4", @@ -36,6 +38,8 @@ "scripts": { "start": "react-scripts start", "build": "react-scripts build", + "build:dev": "env-cmd -f .env.development npm run build", + "build:prod": "env-cmd -f .env.production npm run build", "test": "react-scripts test", "eject": "react-scripts eject" }, @@ -74,6 +78,7 @@ "compression-webpack-plugin": "^7.1.2", "copy-webpack-plugin": "^6.2.1", "css-loader": "^3.4.2", + "env-cmd": "^10.1.0", "eslint": "^8.37.0", "eslint-plugin-jest": "^23.8.2", "eslint-plugin-react": "^7.32.2", diff --git a/client/public/CCFv3_info_by_id.json b/client/public/CCFv3_info_by_id.json new file mode 100644 index 0000000..ad43ee7 --- /dev/null +++ b/client/public/CCFv3_info_by_id.json @@ -0,0 +1,15943 @@ +{ + "997": { + "order": 0, + "structure_ID": 997, + "lowered_ID": 997.0, + "structure_id_path": "/997/", + "very_general_region": "root", + "general_region": "root", + "full_structure_name": "root", + "collapsed_region_name": "root", + "abbreviation": "root", + "collapsed_region": "root", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "root: rgb(0,0,0)", + "R": "0", + "G": "0", + "B": "0" + }, + "8": { + "order": 1, + "structure_ID": 8, + "lowered_ID": 8.0, + "structure_id_path": "/997/8/", + "very_general_region": "grey matter", + "general_region": "grey matter", + "full_structure_name": "Basic cell groups and regions", + "collapsed_region_name": "Basic cell groups and regions", + "abbreviation": "grey", + "collapsed_region": "grey", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "grey: rgb(191,218,227)", + "R": "191", + "G": "218", + "B": "227" + }, + "567": { + "order": 2, + "structure_ID": 567, + "lowered_ID": 567.0, + "structure_id_path": "/997/8/567/", + "very_general_region": "Cerebrum", + "general_region": "Cerebrum", + "full_structure_name": "Cerebrum", + "collapsed_region_name": "Cerebrum", + "abbreviation": "CH", + "collapsed_region": "CH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CH: rgb(176,240,255)", + "R": "176", + "G": "240", + "B": "255" + }, + "688": { + "order": 3, + "structure_ID": 688, + "lowered_ID": 688.0, + "structure_id_path": "/997/8/567/688/", + "very_general_region": "Cerebral cortex", + "general_region": "Cerebral cortex", + "full_structure_name": "Cerebral cortex", + "collapsed_region_name": "Cerebral cortex", + "abbreviation": "CTX", + "collapsed_region": "CTX", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CTX: rgb(176,255,184)", + "R": "176", + "G": "255", + "B": "184" + }, + "695": { + "order": 4, + "structure_ID": 695, + "lowered_ID": 695.0, + "structure_id_path": "/997/8/567/688/695/", + "very_general_region": "Cortical plate", + "general_region": "Cortical plate", + "full_structure_name": "Cortical plate", + "collapsed_region_name": "Cortical plate", + "abbreviation": "CTXpl", + "collapsed_region": "CTXpl", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CTXpl: rgb(112,255,112)", + "R": "112", + "G": "255", + "B": "112" + }, + "315": { + "order": 5, + "structure_ID": 315, + "lowered_ID": 315.0, + "structure_id_path": "/997/8/567/688/695/315/", + "very_general_region": "Isocortex", + "general_region": "Isocortex", + "full_structure_name": "Isocortex", + "collapsed_region_name": "Isocortex", + "abbreviation": "Isocortex", + "collapsed_region": "Isocortex", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "Isocortex: rgb(112,255,113)", + "R": "112", + "G": "255", + "B": "113" + }, + "184": { + "order": 6, + "structure_ID": 184, + "lowered_ID": 184.0, + "structure_id_path": "/997/8/567/688/695/315/184/", + "very_general_region": "Isocortex", + "general_region": "Frontal pole", + "full_structure_name": "Frontal pole, cerebral cortex", + "collapsed_region_name": "Frontal pole", + "abbreviation": "FRP", + "collapsed_region": "FRP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "FRP: rgb(38,143,68)", + "R": "38", + "G": "143", + "B": "68" + }, + "68": { + "order": 7, + "structure_ID": 68, + "lowered_ID": 68.0, + "structure_id_path": "/997/8/567/688/695/315/184/68/", + "very_general_region": "Isocortex", + "general_region": "Frontal pole", + "full_structure_name": "Frontal pole, layer 1", + "collapsed_region_name": "Frontal pole", + "abbreviation": "FRP1", + "collapsed_region": "FRP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "1", + "sunburst": "FRP1: rgb(38,143,69)", + "R": "38", + "G": "143", + "B": "69" + }, + "667": { + "order": 8, + "structure_ID": 667, + "lowered_ID": 667.0, + "structure_id_path": "/997/8/567/688/695/315/184/667/", + "very_general_region": "Isocortex", + "general_region": "Frontal pole", + "full_structure_name": "Frontal pole, layer 2/3", + "collapsed_region_name": "Frontal pole", + "abbreviation": "FRP2/3", + "collapsed_region": "FRP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "2/3", + "sunburst": "FRP2/3: rgb(38,142,69)", + "R": "38", + "G": "142", + "B": "69" + }, + "526157192": { + "order": 9, + "structure_ID": 526157192, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/184/526157192/", + "very_general_region": "Isocortex", + "general_region": "Frontal pole", + "full_structure_name": "Frontal pole, layer 5", + "collapsed_region_name": "Frontal pole", + "abbreviation": "FRP5", + "collapsed_region": "FRP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "5", + "sunburst": "FRP5: rgb(37,143,69)", + "R": "37", + "G": "143", + "B": "69" + }, + "526157196": { + "order": 10, + "structure_ID": 526157196, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/184/526157196/", + "very_general_region": "Isocortex", + "general_region": "Frontal pole", + "full_structure_name": "Frontal pole, layer 6a", + "collapsed_region_name": "Frontal pole", + "abbreviation": "FRP6a", + "collapsed_region": "FRP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6a", + "sunburst": "FRP6a: rgb(38,142,68)", + "R": "38", + "G": "142", + "B": "68" + }, + "526322264": { + "order": 11, + "structure_ID": 526322264, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/184/526322264/", + "very_general_region": "Isocortex", + "general_region": "Frontal pole", + "full_structure_name": "Frontal pole, layer 6b", + "collapsed_region_name": "Frontal pole", + "abbreviation": "FRP6b", + "collapsed_region": "FRP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6b", + "sunburst": "FRP6b: rgb(37,143,68)", + "R": "37", + "G": "143", + "B": "68" + }, + "500": { + "order": 12, + "structure_ID": 500, + "lowered_ID": 500.0, + "structure_id_path": "/997/8/567/688/695/315/500/", + "very_general_region": "Isocortex", + "general_region": "Somatomotor", + "full_structure_name": "Somatomotor areas", + "collapsed_region_name": "Motor", + "abbreviation": "MO", + "collapsed_region": "MO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MO: rgb(31,156,89)", + "R": "31", + "G": "156", + "B": "89" + }, + "985": { + "order": 13, + "structure_ID": 985, + "lowered_ID": 985.0, + "structure_id_path": "/997/8/567/688/695/315/500/985/", + "very_general_region": "Isocortex", + "general_region": "Motor", + "full_structure_name": "Primary motor area", + "collapsed_region_name": "Motor", + "abbreviation": "MOp", + "collapsed_region": "MO", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": null, + "sunburst": "MOp: rgb(30,155,90)", + "R": "30", + "G": "155", + "B": "90" + }, + "320": { + "order": 14, + "structure_ID": 320, + "lowered_ID": 320.0, + "structure_id_path": "/997/8/567/688/695/315/500/985/320/", + "very_general_region": "Isocortex", + "general_region": "Motor", + "full_structure_name": "Primary motor area, Layer 1", + "collapsed_region_name": "Motor", + "abbreviation": "MOp1", + "collapsed_region": "MO", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "1", + "sunburst": "MOp1: rgb(30,157,90)", + "R": "30", + "G": "157", + "B": "90" + }, + "943": { + "order": 15, + "structure_ID": 943, + "lowered_ID": 943.0, + "structure_id_path": "/997/8/567/688/695/315/500/985/943/", + "very_general_region": "Isocortex", + "general_region": "Motor", + "full_structure_name": "Primary motor area, Layer 2/3", + "collapsed_region_name": "Motor", + "abbreviation": "MOp2/3", + "collapsed_region": "MO", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "2/3", + "sunburst": "MOp2/3: rgb(31,156,88)", + "R": "31", + "G": "156", + "B": "88" + }, + "648": { + "order": 16, + "structure_ID": 648, + "lowered_ID": 648.0, + "structure_id_path": "/997/8/567/688/695/315/500/985/648/", + "very_general_region": "Isocortex", + "general_region": "Motor", + "full_structure_name": "Primary motor area, Layer 5", + "collapsed_region_name": "Motor", + "abbreviation": "MOp5", + "collapsed_region": "MO", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "5", + "sunburst": "MOp5: rgb(30,156,90)", + "R": "30", + "G": "156", + "B": "90" + }, + "844": { + "order": 17, + "structure_ID": 844, + "lowered_ID": 844.0, + "structure_id_path": "/997/8/567/688/695/315/500/985/844/", + "very_general_region": "Isocortex", + "general_region": "Motor", + "full_structure_name": "Primary motor area, Layer 6a", + "collapsed_region_name": "Motor", + "abbreviation": "MOp6a", + "collapsed_region": "MO", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "6a", + "sunburst": "MOp6a: rgb(31,155,90)", + "R": "31", + "G": "155", + "B": "90" + }, + "882": { + "order": 18, + "structure_ID": 882, + "lowered_ID": 882.0, + "structure_id_path": "/997/8/567/688/695/315/500/985/882/", + "very_general_region": "Isocortex", + "general_region": "Motor", + "full_structure_name": "Primary motor area, Layer 6b", + "collapsed_region_name": "Motor", + "abbreviation": "MOp6b", + "collapsed_region": "MO", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "6b", + "sunburst": "MOp6b: rgb(29,157,90)", + "R": "29", + "G": "157", + "B": "90" + }, + "993": { + "order": 19, + "structure_ID": 993, + "lowered_ID": 993.0, + "structure_id_path": "/997/8/567/688/695/315/500/993/", + "very_general_region": "Isocortex", + "general_region": "Motor", + "full_structure_name": "Secondary motor area", + "collapsed_region_name": "Motor", + "abbreviation": "MOs", + "collapsed_region": "MO", + "other_abbreviation": "s", + "other_abbreviation_defined": "secondary", + "layer": null, + "sunburst": "MOs: rgb(29,157,89)", + "R": "29", + "G": "157", + "B": "89" + }, + "656": { + "order": 20, + "structure_ID": 656, + "lowered_ID": 656.0, + "structure_id_path": "/997/8/567/688/695/315/500/993/656/", + "very_general_region": "Isocortex", + "general_region": "Motor", + "full_structure_name": "Secondary motor area, layer 1", + "collapsed_region_name": "Motor", + "abbreviation": "MOs1", + "collapsed_region": "MO", + "other_abbreviation": "s", + "other_abbreviation_defined": "secondary", + "layer": "1", + "sunburst": "MOs1: rgb(30,156,89)", + "R": "30", + "G": "156", + "B": "89" + }, + "962": { + "order": 21, + "structure_ID": 962, + "lowered_ID": 962.0, + "structure_id_path": "/997/8/567/688/695/315/500/993/962/", + "very_general_region": "Isocortex", + "general_region": "Motor", + "full_structure_name": "Secondary motor area, layer 2/3", + "collapsed_region_name": "Motor", + "abbreviation": "MOs2/3", + "collapsed_region": "MO", + "other_abbreviation": "s", + "other_abbreviation_defined": "secondary", + "layer": "2/3", + "sunburst": "MOs2/3: rgb(30,157,88)", + "R": "30", + "G": "157", + "B": "88" + }, + "767": { + "order": 22, + "structure_ID": 767, + "lowered_ID": 767.0, + "structure_id_path": "/997/8/567/688/695/315/500/993/767/", + "very_general_region": "Isocortex", + "general_region": "Motor", + "full_structure_name": "Secondary motor area, layer 5", + "collapsed_region_name": "Motor", + "abbreviation": "MOs5", + "collapsed_region": "MO", + "other_abbreviation": "s", + "other_abbreviation_defined": "secondary", + "layer": "5", + "sunburst": "MOs5: rgb(31,157,88)", + "R": "31", + "G": "157", + "B": "88" + }, + "1021": { + "order": 23, + "structure_ID": 1021, + "lowered_ID": 1021.0, + "structure_id_path": "/997/8/567/688/695/315/500/993/1021/", + "very_general_region": "Isocortex", + "general_region": "Motor", + "full_structure_name": "Secondary motor area, layer 6a", + "collapsed_region_name": "Motor", + "abbreviation": "MOs6a", + "collapsed_region": "MO", + "other_abbreviation": "s", + "other_abbreviation_defined": "secondary", + "layer": "6a", + "sunburst": "MOs6a: rgb(29,156,90)", + "R": "29", + "G": "156", + "B": "90" + }, + "1085": { + "order": 24, + "structure_ID": 1085, + "lowered_ID": 1085.0, + "structure_id_path": "/997/8/567/688/695/315/500/993/1085/", + "very_general_region": "Isocortex", + "general_region": "Motor", + "full_structure_name": "Secondary motor area, layer 6b", + "collapsed_region_name": "Motor", + "abbreviation": "MOs6b", + "collapsed_region": "MO", + "other_abbreviation": "s", + "other_abbreviation_defined": "secondary", + "layer": "6b", + "sunburst": "MOs6b: rgb(30,156,88)", + "R": "30", + "G": "156", + "B": "88" + }, + "453": { + "order": 25, + "structure_ID": 453, + "lowered_ID": 453.0, + "structure_id_path": "/997/8/567/688/695/315/453/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Somatosensory areas", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SS", + "collapsed_region": "SS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SS: rgb(27,128,97)", + "R": "27", + "G": "128", + "B": "97" + }, + "322": { + "order": 26, + "structure_ID": 322, + "lowered_ID": 322.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp", + "collapsed_region": "SS", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": null, + "sunburst": "SSp: rgb(25,128,99)", + "R": "25", + "G": "128", + "B": "99" + }, + "353": { + "order": 27, + "structure_ID": 353, + "lowered_ID": 353.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/353/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, nose", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-n", + "collapsed_region": "SS", + "other_abbreviation": "p-n", + "other_abbreviation_defined": "primary (nose)", + "layer": null, + "sunburst": "SSp-n: rgb(26,128,100)", + "R": "26", + "G": "128", + "B": "100" + }, + "558": { + "order": 28, + "structure_ID": 558, + "lowered_ID": 558.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/353/558/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, nose, layer 1", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-n1", + "collapsed_region": "SS", + "other_abbreviation": "p-n", + "other_abbreviation_defined": "primary (nose)", + "layer": "1", + "sunburst": "SSp-n1: rgb(25,126,99)", + "R": "25", + "G": "126", + "B": "99" + }, + "838": { + "order": 29, + "structure_ID": 838, + "lowered_ID": 838.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/353/838/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, nose, layer 2/3", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-n2/3", + "collapsed_region": "SS", + "other_abbreviation": "p-n", + "other_abbreviation_defined": "primary (nose)", + "layer": "2/3", + "sunburst": "SSp-n2/3: rgb(27,127,100)", + "R": "27", + "G": "127", + "B": "100" + }, + "654": { + "order": 30, + "structure_ID": 654, + "lowered_ID": 654.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/353/654/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, nose, layer 4", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-n4", + "collapsed_region": "SS", + "other_abbreviation": "p-n", + "other_abbreviation_defined": "primary (nose)", + "layer": "4", + "sunburst": "SSp-n4: rgb(26,128,98)", + "R": "26", + "G": "128", + "B": "98" + }, + "702": { + "order": 31, + "structure_ID": 702, + "lowered_ID": 702.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/353/702/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, nose, layer 5", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-n5", + "collapsed_region": "SS", + "other_abbreviation": "p-n", + "other_abbreviation_defined": "primary (nose)", + "layer": "5", + "sunburst": "SSp-n5: rgb(25,126,98)", + "R": "25", + "G": "126", + "B": "98" + }, + "889": { + "order": 32, + "structure_ID": 889, + "lowered_ID": 889.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/353/889/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, nose, layer 6a", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-n6a", + "collapsed_region": "SS", + "other_abbreviation": "p-n", + "other_abbreviation_defined": "primary (nose)", + "layer": "6a", + "sunburst": "SSp-n6a: rgb(24,125,98)", + "R": "24", + "G": "125", + "B": "98" + }, + "929": { + "order": 33, + "structure_ID": 929, + "lowered_ID": 929.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/353/929/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, nose, layer 6b", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-n6b", + "collapsed_region": "SS", + "other_abbreviation": "p-n", + "other_abbreviation_defined": "primary (nose)", + "layer": "6b", + "sunburst": "SSp-n6b: rgb(27,126,100)", + "R": "27", + "G": "126", + "B": "100" + }, + "329": { + "order": 34, + "structure_ID": 329, + "lowered_ID": 329.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/329/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, barrel field", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-bfd", + "collapsed_region": "SS", + "other_abbreviation": "p-bfd", + "other_abbreviation_defined": "primary (barrel field)", + "layer": null, + "sunburst": "SSp-bfd: rgb(25,127,100)", + "R": "25", + "G": "127", + "B": "100" + }, + "981": { + "order": 35, + "structure_ID": 981, + "lowered_ID": 981.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/329/981/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, barrel field, layer 1", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-bfd1", + "collapsed_region": "SS", + "other_abbreviation": "p-bfd", + "other_abbreviation_defined": "primary (barrel field)", + "layer": "1", + "sunburst": "SSp-bfd1: rgb(24,128,96)", + "R": "24", + "G": "128", + "B": "96" + }, + "201": { + "order": 36, + "structure_ID": 201, + "lowered_ID": 201.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/329/201/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, barrel field, layer 2/3", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-bfd2/3", + "collapsed_region": "SS", + "other_abbreviation": "p-bfd", + "other_abbreviation_defined": "primary (barrel field)", + "layer": "2/3", + "sunburst": "SSp-bfd2/3: rgb(24,127,99)", + "R": "24", + "G": "127", + "B": "99" + }, + "1047": { + "order": 37, + "structure_ID": 1047, + "lowered_ID": 1047.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/329/1047/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, barrel field, layer 4", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-bfd4", + "collapsed_region": "SS", + "other_abbreviation": "p-bfd", + "other_abbreviation_defined": "primary (barrel field)", + "layer": "4", + "sunburst": "SSp-bfd4: rgb(25,124,100)", + "R": "25", + "G": "124", + "B": "100" + }, + "1070": { + "order": 38, + "structure_ID": 1070, + "lowered_ID": 1070.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/329/1070/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, barrel field, layer 5", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-bfd5", + "collapsed_region": "SS", + "other_abbreviation": "p-bfd", + "other_abbreviation_defined": "primary (barrel field)", + "layer": "5", + "sunburst": "SSp-bfd5: rgb(26,125,98)", + "R": "26", + "G": "125", + "B": "98" + }, + "1038": { + "order": 39, + "structure_ID": 1038, + "lowered_ID": 1038.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/329/1038/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, barrel field, layer 6a", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-bfd6a", + "collapsed_region": "SS", + "other_abbreviation": "p-bfd", + "other_abbreviation_defined": "primary (barrel field)", + "layer": "6a", + "sunburst": "SSp-bfd6a: rgb(25,128,96)", + "R": "25", + "G": "128", + "B": "96" + }, + "1062": { + "order": 40, + "structure_ID": 1062, + "lowered_ID": 1062.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/329/1062/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, barrel field, layer 6b", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-bfd6b", + "collapsed_region": "SS", + "other_abbreviation": "p-bfd", + "other_abbreviation_defined": "primary (barrel field)", + "layer": "6b", + "sunburst": "SSp-bfd6b: rgb(26,126,97)", + "R": "26", + "G": "126", + "B": "97" + }, + "337": { + "order": 41, + "structure_ID": 337, + "lowered_ID": 337.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/337/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, lower limb", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ll", + "collapsed_region": "SS", + "other_abbreviation": "p-ll", + "other_abbreviation_defined": "primary (lower limb)", + "layer": null, + "sunburst": "SSp-ll: rgb(25,127,99)", + "R": "25", + "G": "127", + "B": "99" + }, + "1030": { + "order": 42, + "structure_ID": 1030, + "lowered_ID": 1030.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/337/1030/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, lower limb, layer 1", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ll1", + "collapsed_region": "SS", + "other_abbreviation": "p-ll", + "other_abbreviation_defined": "primary (lower limb)", + "layer": "1", + "sunburst": "SSp-ll1: rgb(24,127,96)", + "R": "24", + "G": "127", + "B": "96" + }, + "113": { + "order": 43, + "structure_ID": 113, + "lowered_ID": 113.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/337/113/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, lower limb, layer 2/3", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ll2/3", + "collapsed_region": "SS", + "other_abbreviation": "p-ll", + "other_abbreviation_defined": "primary (lower limb)", + "layer": "2/3", + "sunburst": "SSp-ll2/3: rgb(24,127,100)", + "R": "24", + "G": "127", + "B": "100" + }, + "1094": { + "order": 44, + "structure_ID": 1094, + "lowered_ID": 1094.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/337/1094/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, lower limb, layer 4", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ll4", + "collapsed_region": "SS", + "other_abbreviation": "p-ll", + "other_abbreviation_defined": "primary (lower limb)", + "layer": "4", + "sunburst": "SSp-ll4: rgb(28,127,100)", + "R": "28", + "G": "127", + "B": "100" + }, + "1128": { + "order": 45, + "structure_ID": 1128, + "lowered_ID": 1128.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/337/1128/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, lower limb, layer 5", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ll5", + "collapsed_region": "SS", + "other_abbreviation": "p-ll", + "other_abbreviation_defined": "primary (lower limb)", + "layer": "5", + "sunburst": "SSp-ll5: rgb(25,124,99)", + "R": "25", + "G": "124", + "B": "99" + }, + "478": { + "order": 46, + "structure_ID": 478, + "lowered_ID": 478.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/337/478/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, lower limb, layer 6a", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ll6a", + "collapsed_region": "SS", + "other_abbreviation": "p-ll", + "other_abbreviation_defined": "primary (lower limb)", + "layer": "6a", + "sunburst": "SSp-ll6a: rgb(26,127,100)", + "R": "26", + "G": "127", + "B": "100" + }, + "510": { + "order": 47, + "structure_ID": 510, + "lowered_ID": 510.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/337/510/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, lower limb, layer 6b", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ll6b", + "collapsed_region": "SS", + "other_abbreviation": "p-ll", + "other_abbreviation_defined": "primary (lower limb)", + "layer": "6b", + "sunburst": "SSp-ll6b: rgb(25,127,98)", + "R": "25", + "G": "127", + "B": "98" + }, + "345": { + "order": 48, + "structure_ID": 345, + "lowered_ID": 345.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/345/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, mouth", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-m", + "collapsed_region": "SS", + "other_abbreviation": "p-m", + "other_abbreviation_defined": "primary (mouth)", + "layer": null, + "sunburst": "SSp-m: rgb(24,128,98)", + "R": "24", + "G": "128", + "B": "98" + }, + "878": { + "order": 49, + "structure_ID": 878, + "lowered_ID": 878.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/345/878/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, mouth, layer 1", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-m1", + "collapsed_region": "SS", + "other_abbreviation": "p-m", + "other_abbreviation_defined": "primary (mouth)", + "layer": "1", + "sunburst": "SSp-m1: rgb(24,126,97)", + "R": "24", + "G": "126", + "B": "97" + }, + "657": { + "order": 50, + "structure_ID": 657, + "lowered_ID": 657.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/345/657/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, mouth, layer 2/3", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-m2/3", + "collapsed_region": "SS", + "other_abbreviation": "p-m", + "other_abbreviation_defined": "primary (mouth)", + "layer": "2/3", + "sunburst": "SSp-m2/3: rgb(26,126,100)", + "R": "26", + "G": "126", + "B": "100" + }, + "950": { + "order": 51, + "structure_ID": 950, + "lowered_ID": 950.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/345/950/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, mouth, layer 4", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-m4", + "collapsed_region": "SS", + "other_abbreviation": "p-m", + "other_abbreviation_defined": "primary (mouth)", + "layer": "4", + "sunburst": "SSp-m4: rgb(27,127,98)", + "R": "27", + "G": "127", + "B": "98" + }, + "974": { + "order": 52, + "structure_ID": 974, + "lowered_ID": 974.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/345/974/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, mouth, layer 5", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-m5", + "collapsed_region": "SS", + "other_abbreviation": "p-m", + "other_abbreviation_defined": "primary (mouth)", + "layer": "5", + "sunburst": "SSp-m5: rgb(27,126,99)", + "R": "27", + "G": "126", + "B": "99" + }, + "1102": { + "order": 53, + "structure_ID": 1102, + "lowered_ID": 1102.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/345/1102/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, mouth, layer 6a", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-m6a", + "collapsed_region": "SS", + "other_abbreviation": "p-m", + "other_abbreviation_defined": "primary (mouth)", + "layer": "6a", + "sunburst": "SSp-m6a: rgb(24,125,97)", + "R": "24", + "G": "125", + "B": "97" + }, + "2": { + "order": 54, + "structure_ID": 2, + "lowered_ID": 2.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/345/2/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, mouth, layer 6b", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-m6b", + "collapsed_region": "SS", + "other_abbreviation": "p-m", + "other_abbreviation_defined": "primary (mouth)", + "layer": "6b", + "sunburst": "SSp-m6b: rgb(24,128,100)", + "R": "24", + "G": "128", + "B": "100" + }, + "369": { + "order": 55, + "structure_ID": 369, + "lowered_ID": 369.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/369/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, upper limb", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ul", + "collapsed_region": "SS", + "other_abbreviation": "p-ul", + "other_abbreviation_defined": "primary (upper limb)", + "layer": null, + "sunburst": "SSp-ul: rgb(24,126,99)", + "R": "24", + "G": "126", + "B": "99" + }, + "450": { + "order": 56, + "structure_ID": 450, + "lowered_ID": 450.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/369/450/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, upper limb, layer 1", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ul1", + "collapsed_region": "SS", + "other_abbreviation": "p-ul", + "other_abbreviation_defined": "primary (upper limb)", + "layer": "1", + "sunburst": "SSp-ul1: rgb(25,126,100)", + "R": "25", + "G": "126", + "B": "100" + }, + "854": { + "order": 57, + "structure_ID": 854, + "lowered_ID": 854.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/369/854/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, upper limb, layer 2/3", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ul2/3", + "collapsed_region": "SS", + "other_abbreviation": "p-ul", + "other_abbreviation_defined": "primary (upper limb)", + "layer": "2/3", + "sunburst": "SSp-ul2/3: rgb(25,127,97)", + "R": "25", + "G": "127", + "B": "97" + }, + "577": { + "order": 58, + "structure_ID": 577, + "lowered_ID": 577.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/369/577/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, upper limb, layer 4", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ul4", + "collapsed_region": "SS", + "other_abbreviation": "p-ul", + "other_abbreviation_defined": "primary (upper limb)", + "layer": "4", + "sunburst": "SSp-ul4: rgb(26,127,99)", + "R": "26", + "G": "127", + "B": "99" + }, + "625": { + "order": 59, + "structure_ID": 625, + "lowered_ID": 625.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/369/625/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, upper limb, layer 5", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ul5", + "collapsed_region": "SS", + "other_abbreviation": "p-ul", + "other_abbreviation_defined": "primary (upper limb)", + "layer": "5", + "sunburst": "SSp-ul5: rgb(24,126,98)", + "R": "24", + "G": "126", + "B": "98" + }, + "945": { + "order": 60, + "structure_ID": 945, + "lowered_ID": 945.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/369/945/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, upper limb, layer 6a", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ul6a", + "collapsed_region": "SS", + "other_abbreviation": "p-ul", + "other_abbreviation_defined": "primary (upper limb)", + "layer": "6a", + "sunburst": "SSp-ul6a: rgb(25,125,97)", + "R": "25", + "G": "125", + "B": "97" + }, + "1026": { + "order": 61, + "structure_ID": 1026, + "lowered_ID": 1026.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/369/1026/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, upper limb, layer 6b", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-ul6b", + "collapsed_region": "SS", + "other_abbreviation": "p-ul", + "other_abbreviation_defined": "primary (upper limb)", + "layer": "6b", + "sunburst": "SSp-ul6b: rgb(28,128,100)", + "R": "28", + "G": "128", + "B": "100" + }, + "361": { + "order": 62, + "structure_ID": 361, + "lowered_ID": 361.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/361/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, trunk", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-tr", + "collapsed_region": "SS", + "other_abbreviation": "p-tr", + "other_abbreviation_defined": "primary (trunk)", + "layer": null, + "sunburst": "SSp-tr: rgb(24,127,98)", + "R": "24", + "G": "127", + "B": "98" + }, + "1006": { + "order": 63, + "structure_ID": 1006, + "lowered_ID": 1006.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/361/1006/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, trunk, layer 1", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-tr1", + "collapsed_region": "SS", + "other_abbreviation": "p-tr", + "other_abbreviation_defined": "primary (trunk)", + "layer": "1", + "sunburst": "SSp-tr1: rgb(24,124,100)", + "R": "24", + "G": "124", + "B": "100" + }, + "670": { + "order": 64, + "structure_ID": 670, + "lowered_ID": 670.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/361/670/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, trunk, layer 2/3", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-tr2/3", + "collapsed_region": "SS", + "other_abbreviation": "p-tr", + "other_abbreviation_defined": "primary (trunk)", + "layer": "2/3", + "sunburst": "SSp-tr2/3: rgb(24,128,97)", + "R": "24", + "G": "128", + "B": "97" + }, + "1086": { + "order": 65, + "structure_ID": 1086, + "lowered_ID": 1086.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/361/1086/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, trunk, layer 4", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-tr4", + "collapsed_region": "SS", + "other_abbreviation": "p-tr", + "other_abbreviation_defined": "primary (trunk)", + "layer": "4", + "sunburst": "SSp-tr4: rgb(27,126,98)", + "R": "27", + "G": "126", + "B": "98" + }, + "1111": { + "order": 66, + "structure_ID": 1111, + "lowered_ID": 1111.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/361/1111/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, trunk, layer 5", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-tr5", + "collapsed_region": "SS", + "other_abbreviation": "p-tr", + "other_abbreviation_defined": "primary (trunk)", + "layer": "5", + "sunburst": "SSp-tr5: rgb(25,127,96)", + "R": "25", + "G": "127", + "B": "96" + }, + "9": { + "order": 67, + "structure_ID": 9, + "lowered_ID": 9.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/361/9/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, trunk, layer 6a", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-tr6a", + "collapsed_region": "SS", + "other_abbreviation": "p-tr", + "other_abbreviation_defined": "primary (trunk)", + "layer": "6a", + "sunburst": "SSp-tr6a: rgb(24,128,99)", + "R": "24", + "G": "128", + "B": "99" + }, + "461": { + "order": 68, + "structure_ID": 461, + "lowered_ID": 461.0, + "structure_id_path": "/997/8/567/688/695/315/453/322/361/461/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, trunk, layer 6b", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-tr6b", + "collapsed_region": "SS", + "other_abbreviation": "p-tr", + "other_abbreviation_defined": "primary (trunk)", + "layer": "6b", + "sunburst": "SSp-tr6b: rgb(26,128,99)", + "R": "26", + "G": "128", + "B": "99" + }, + "182305689": { + "order": 69, + "structure_ID": 182305689, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/453/322/182305689/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, unassigned", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-un", + "collapsed_region": "SS", + "other_abbreviation": "p-un", + "other_abbreviation_defined": "primary (unassigned)", + "layer": null, + "sunburst": "SSp-un: rgb(26,125,100)", + "R": "26", + "G": "125", + "B": "100" + }, + "182305693": { + "order": 70, + "structure_ID": 182305693, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/453/322/182305689/182305693/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, unassigned, layer 1", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-un1", + "collapsed_region": "SS", + "other_abbreviation": "p-un", + "other_abbreviation_defined": "primary (unassigned)", + "layer": "1", + "sunburst": "SSp-un1: rgb(27,128,98)", + "R": "27", + "G": "128", + "B": "98" + }, + "182305697": { + "order": 71, + "structure_ID": 182305697, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/453/322/182305689/182305697/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, unassigned, layer 2/3", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-un2/3", + "collapsed_region": "SS", + "other_abbreviation": "p-un", + "other_abbreviation_defined": "primary (unassigned)", + "layer": "2/3", + "sunburst": "SSp-un2/3: rgb(28,127,99)", + "R": "28", + "G": "127", + "B": "99" + }, + "182305701": { + "order": 72, + "structure_ID": 182305701, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/453/322/182305689/182305701/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, unassigned, layer 4", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-un4", + "collapsed_region": "SS", + "other_abbreviation": "p-un", + "other_abbreviation_defined": "primary (unassigned)", + "layer": "4", + "sunburst": "SSp-un4: rgb(25,126,97)", + "R": "25", + "G": "126", + "B": "97" + }, + "182305705": { + "order": 73, + "structure_ID": 182305705, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/453/322/182305689/182305705/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, unassigned, layer 5", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-un5", + "collapsed_region": "SS", + "other_abbreviation": "p-un", + "other_abbreviation_defined": "primary (unassigned)", + "layer": "5", + "sunburst": "SSp-un5: rgb(25,125,98)", + "R": "25", + "G": "125", + "B": "98" + }, + "182305709": { + "order": 74, + "structure_ID": 182305709, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/453/322/182305689/182305709/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, unassigned, layer 6a", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-un6a", + "collapsed_region": "SS", + "other_abbreviation": "p-un", + "other_abbreviation_defined": "primary (unassigned)", + "layer": "6a", + "sunburst": "SSp-un6a: rgb(26,127,97)", + "R": "26", + "G": "127", + "B": "97" + }, + "182305713": { + "order": 75, + "structure_ID": 182305713, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/453/322/182305689/182305713/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Primary somatosensory area, unassigned, layer 6b", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSp-un6b", + "collapsed_region": "SS", + "other_abbreviation": "p-un", + "other_abbreviation_defined": "primary (unassigned)", + "layer": "6b", + "sunburst": "SSp-un6b: rgb(26,125,99)", + "R": "26", + "G": "125", + "B": "99" + }, + "378": { + "order": 76, + "structure_ID": 378, + "lowered_ID": 378.0, + "structure_id_path": "/997/8/567/688/695/315/453/378/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Supplemental somatosensory area", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSs", + "collapsed_region": "SS", + "other_abbreviation": "s", + "other_abbreviation_defined": "supplemental", + "layer": null, + "sunburst": "SSs: rgb(25,128,98)", + "R": "25", + "G": "128", + "B": "98" + }, + "873": { + "order": 77, + "structure_ID": 873, + "lowered_ID": 873.0, + "structure_id_path": "/997/8/567/688/695/315/453/378/873/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Supplemental somatosensory area, layer 1", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSs1", + "collapsed_region": "SS", + "other_abbreviation": "s", + "other_abbreviation_defined": "supplemental", + "layer": "1", + "sunburst": "SSs1: rgb(26,126,98)", + "R": "26", + "G": "126", + "B": "98" + }, + "806": { + "order": 78, + "structure_ID": 806, + "lowered_ID": 806.0, + "structure_id_path": "/997/8/567/688/695/315/453/378/806/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Supplemental somatosensory area, layer 2/3", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSs2/3", + "collapsed_region": "SS", + "other_abbreviation": "s", + "other_abbreviation_defined": "supplemental", + "layer": "2/3", + "sunburst": "SSs2/3: rgb(27,128,99)", + "R": "27", + "G": "128", + "B": "99" + }, + "1035": { + "order": 79, + "structure_ID": 1035, + "lowered_ID": 1035.0, + "structure_id_path": "/997/8/567/688/695/315/453/378/1035/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Supplemental somatosensory area, layer 4", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSs4", + "collapsed_region": "SS", + "other_abbreviation": "s", + "other_abbreviation_defined": "supplemental", + "layer": "4", + "sunburst": "SSs4: rgb(24,124,99)", + "R": "24", + "G": "124", + "B": "99" + }, + "1090": { + "order": 80, + "structure_ID": 1090, + "lowered_ID": 1090.0, + "structure_id_path": "/997/8/567/688/695/315/453/378/1090/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Supplemental somatosensory area, layer 5", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSs5", + "collapsed_region": "SS", + "other_abbreviation": "s", + "other_abbreviation_defined": "supplemental", + "layer": "5", + "sunburst": "SSs5: rgb(28,128,99)", + "R": "28", + "G": "128", + "B": "99" + }, + "862": { + "order": 81, + "structure_ID": 862, + "lowered_ID": 862.0, + "structure_id_path": "/997/8/567/688/695/315/453/378/862/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Supplemental somatosensory area, layer 6a", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSs6a", + "collapsed_region": "SS", + "other_abbreviation": "s", + "other_abbreviation_defined": "supplemental", + "layer": "6a", + "sunburst": "SSs6a: rgb(25,125,99)", + "R": "25", + "G": "125", + "B": "99" + }, + "893": { + "order": 82, + "structure_ID": 893, + "lowered_ID": 893.0, + "structure_id_path": "/997/8/567/688/695/315/453/378/893/", + "very_general_region": "Isocortex", + "general_region": "Somatosensory", + "full_structure_name": "Supplemental somatosensory area, layer 6b", + "collapsed_region_name": "Somatosensory", + "abbreviation": "SSs6b", + "collapsed_region": "SS", + "other_abbreviation": "s", + "other_abbreviation_defined": "supplemental", + "layer": "6b", + "sunburst": "SSs6b: rgb(26,128,97)", + "R": "26", + "G": "128", + "B": "97" + }, + "1057": { + "order": 83, + "structure_ID": 1057, + "lowered_ID": 1057.0, + "structure_id_path": "/997/8/567/688/695/315/1057/", + "very_general_region": "Isocortex", + "general_region": "Gustatory", + "full_structure_name": "Gustatory areas", + "collapsed_region_name": "Gustatory", + "abbreviation": "GU", + "collapsed_region": "GU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "GU: rgb(1,155,117)", + "R": "1", + "G": "155", + "B": "117" + }, + "36": { + "order": 84, + "structure_ID": 36, + "lowered_ID": 36.0, + "structure_id_path": "/997/8/567/688/695/315/1057/36/", + "very_general_region": "Isocortex", + "general_region": "Gustatory", + "full_structure_name": "Gustatory areas, layer 1", + "collapsed_region_name": "Gustatory", + "abbreviation": "GU1", + "collapsed_region": "GU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "1", + "sunburst": "GU1: rgb(0,156,117)", + "R": "0", + "G": "156", + "B": "117" + }, + "180": { + "order": 85, + "structure_ID": 180, + "lowered_ID": 180.0, + "structure_id_path": "/997/8/567/688/695/315/1057/180/", + "very_general_region": "Isocortex", + "general_region": "Gustatory", + "full_structure_name": "Gustatory areas, layer 2/3", + "collapsed_region_name": "Gustatory", + "abbreviation": "GU2/3", + "collapsed_region": "GU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "2/3", + "sunburst": "GU2/3: rgb(0,155,117)", + "R": "0", + "G": "155", + "B": "117" + }, + "148": { + "order": 86, + "structure_ID": 148, + "lowered_ID": 148.0, + "structure_id_path": "/997/8/567/688/695/315/1057/148/", + "very_general_region": "Isocortex", + "general_region": "Gustatory", + "full_structure_name": "Gustatory areas, layer 4", + "collapsed_region_name": "Gustatory", + "abbreviation": "GU4", + "collapsed_region": "GU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "4", + "sunburst": "GU4: rgb(0,156,116)", + "R": "0", + "G": "156", + "B": "116" + }, + "187": { + "order": 87, + "structure_ID": 187, + "lowered_ID": 187.0, + "structure_id_path": "/997/8/567/688/695/315/1057/187/", + "very_general_region": "Isocortex", + "general_region": "Gustatory", + "full_structure_name": "Gustatory areas, layer 5", + "collapsed_region_name": "Gustatory", + "abbreviation": "GU5", + "collapsed_region": "GU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "5", + "sunburst": "GU5: rgb(1,156,117)", + "R": "1", + "G": "156", + "B": "117" + }, + "638": { + "order": 88, + "structure_ID": 638, + "lowered_ID": 638.0, + "structure_id_path": "/997/8/567/688/695/315/1057/638/", + "very_general_region": "Isocortex", + "general_region": "Gustatory", + "full_structure_name": "Gustatory areas, layer 6a", + "collapsed_region_name": "Gustatory", + "abbreviation": "GU6a", + "collapsed_region": "GU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6a", + "sunburst": "GU6a: rgb(0,155,116)", + "R": "0", + "G": "155", + "B": "116" + }, + "662": { + "order": 89, + "structure_ID": 662, + "lowered_ID": 662.0, + "structure_id_path": "/997/8/567/688/695/315/1057/662/", + "very_general_region": "Isocortex", + "general_region": "Gustatory", + "full_structure_name": "Gustatory areas, layer 6b", + "collapsed_region_name": "Gustatory", + "abbreviation": "GU6b", + "collapsed_region": "GU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6b", + "sunburst": "GU6b: rgb(1,156,116)", + "R": "1", + "G": "156", + "B": "116" + }, + "677": { + "order": 90, + "structure_ID": 677, + "lowered_ID": 677.0, + "structure_id_path": "/997/8/567/688/695/315/677/", + "very_general_region": "Isocortex", + "general_region": "Visceral", + "full_structure_name": "Visceral area", + "collapsed_region_name": "Visceral", + "abbreviation": "VISC", + "collapsed_region": "VISC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VISC: rgb(17,173,131)", + "R": "17", + "G": "173", + "B": "131" + }, + "897": { + "order": 91, + "structure_ID": 897, + "lowered_ID": 897.0, + "structure_id_path": "/997/8/567/688/695/315/677/897/", + "very_general_region": "Isocortex", + "general_region": "Visceral", + "full_structure_name": "Visceral area, layer 1", + "collapsed_region_name": "Visceral", + "abbreviation": "VISC1", + "collapsed_region": "VISC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "1", + "sunburst": "VISC1: rgb(18,173,131)", + "R": "18", + "G": "173", + "B": "131" + }, + "1106": { + "order": 92, + "structure_ID": 1106, + "lowered_ID": 1106.0, + "structure_id_path": "/997/8/567/688/695/315/677/1106/", + "very_general_region": "Isocortex", + "general_region": "Visceral", + "full_structure_name": "Visceral area, layer 2/3", + "collapsed_region_name": "Visceral", + "abbreviation": "VISC2/3", + "collapsed_region": "VISC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "2/3", + "sunburst": "VISC2/3: rgb(18,172,131)", + "R": "18", + "G": "172", + "B": "131" + }, + "1010": { + "order": 93, + "structure_ID": 1010, + "lowered_ID": 1010.0, + "structure_id_path": "/997/8/567/688/695/315/677/1010/", + "very_general_region": "Isocortex", + "general_region": "Visceral", + "full_structure_name": "Visceral area, layer 4", + "collapsed_region_name": "Visceral", + "abbreviation": "VISC4", + "collapsed_region": "VISC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "4", + "sunburst": "VISC4: rgb(17,172,130)", + "R": "17", + "G": "172", + "B": "130" + }, + "1058": { + "order": 94, + "structure_ID": 1058, + "lowered_ID": 1058.0, + "structure_id_path": "/997/8/567/688/695/315/677/1058/", + "very_general_region": "Isocortex", + "general_region": "Visceral", + "full_structure_name": "Visceral area, layer 5", + "collapsed_region_name": "Visceral", + "abbreviation": "VISC5", + "collapsed_region": "VISC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "5", + "sunburst": "VISC5: rgb(18,173,130)", + "R": "18", + "G": "173", + "B": "130" + }, + "857": { + "order": 95, + "structure_ID": 857, + "lowered_ID": 857.0, + "structure_id_path": "/997/8/567/688/695/315/677/857/", + "very_general_region": "Isocortex", + "general_region": "Visceral", + "full_structure_name": "Visceral area, layer 6a", + "collapsed_region_name": "Visceral", + "abbreviation": "VISC6a", + "collapsed_region": "VISC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6a", + "sunburst": "VISC6a: rgb(17,172,131)", + "R": "17", + "G": "172", + "B": "131" + }, + "849": { + "order": 96, + "structure_ID": 849, + "lowered_ID": 849.0, + "structure_id_path": "/997/8/567/688/695/315/677/849/", + "very_general_region": "Isocortex", + "general_region": "Visceral", + "full_structure_name": "Visceral area, layer 6b", + "collapsed_region_name": "Visceral", + "abbreviation": "VISC6b", + "collapsed_region": "VISC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6b", + "sunburst": "VISC6b: rgb(17,173,130)", + "R": "17", + "G": "173", + "B": "130" + }, + "247": { + "order": 97, + "structure_ID": 247, + "lowered_ID": 247.0, + "structure_id_path": "/997/8/567/688/695/315/247/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Auditory areas", + "collapsed_region_name": "Auditory", + "abbreviation": "AUD", + "collapsed_region": "AUD", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AUD: rgb(1,146,153)", + "R": "1", + "G": "146", + "B": "153" + }, + "1011": { + "order": 98, + "structure_ID": 1011, + "lowered_ID": 1011.0, + "structure_id_path": "/997/8/567/688/695/315/247/1011/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Dorsal auditory area", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDd", + "collapsed_region": "AUD", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "AUDd: rgb(4,147,153)", + "R": "4", + "G": "147", + "B": "153" + }, + "527": { + "order": 99, + "structure_ID": 527, + "lowered_ID": 527.0, + "structure_id_path": "/997/8/567/688/695/315/247/1011/527/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Dorsal auditory area, layer 1", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDd1", + "collapsed_region": "AUD", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "1", + "sunburst": "AUDd1: rgb(3,147,153)", + "R": "3", + "G": "147", + "B": "153" + }, + "600": { + "order": 100, + "structure_ID": 600, + "lowered_ID": 600.0, + "structure_id_path": "/997/8/567/688/695/315/247/1011/600/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Dorsal auditory area, layer 2/3", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDd2/3", + "collapsed_region": "AUD", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "2/3", + "sunburst": "AUDd2/3: rgb(2,147,151)", + "R": "2", + "G": "147", + "B": "151" + }, + "678": { + "order": 101, + "structure_ID": 678, + "lowered_ID": 678.0, + "structure_id_path": "/997/8/567/688/695/315/247/1011/678/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Dorsal auditory area, layer 4", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDd4", + "collapsed_region": "AUD", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "4", + "sunburst": "AUDd4: rgb(3,147,152)", + "R": "3", + "G": "147", + "B": "152" + }, + "252": { + "order": 102, + "structure_ID": 252, + "lowered_ID": 252.0, + "structure_id_path": "/997/8/567/688/695/315/247/1011/252/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Dorsal auditory area, layer 5", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDd5", + "collapsed_region": "AUD", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "5", + "sunburst": "AUDd5: rgb(2,147,152)", + "R": "2", + "G": "147", + "B": "152" + }, + "156": { + "order": 103, + "structure_ID": 156, + "lowered_ID": 156.0, + "structure_id_path": "/997/8/567/688/695/315/247/1011/156/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Dorsal auditory area, layer 6a", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDd6a", + "collapsed_region": "AUD", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "6a", + "sunburst": "AUDd6a: rgb(1,147,153)", + "R": "1", + "G": "147", + "B": "153" + }, + "243": { + "order": 104, + "structure_ID": 243, + "lowered_ID": 243.0, + "structure_id_path": "/997/8/567/688/695/315/247/1011/243/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Dorsal auditory area, layer 6b", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDd6b", + "collapsed_region": "AUD", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "6b", + "sunburst": "AUDd6b: rgb(1,147,152)", + "R": "1", + "G": "147", + "B": "152" + }, + "1002": { + "order": 105, + "structure_ID": 1002, + "lowered_ID": 1002.0, + "structure_id_path": "/997/8/567/688/695/315/247/1002/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Primary auditory area", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDp", + "collapsed_region": "AUD", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": null, + "sunburst": "AUDp: rgb(3,146,151)", + "R": "3", + "G": "146", + "B": "151" + }, + "735": { + "order": 106, + "structure_ID": 735, + "lowered_ID": 735.0, + "structure_id_path": "/997/8/567/688/695/315/247/1002/735/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Primary auditory area, layer 1", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDp1", + "collapsed_region": "AUD", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "1", + "sunburst": "AUDp1: rgb(2,146,151)", + "R": "2", + "G": "146", + "B": "151" + }, + "251": { + "order": 107, + "structure_ID": 251, + "lowered_ID": 251.0, + "structure_id_path": "/997/8/567/688/695/315/247/1002/251/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Primary auditory area, layer 2/3", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDp2/3", + "collapsed_region": "AUD", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "2/3", + "sunburst": "AUDp2/3: rgb(1,146,152)", + "R": "1", + "G": "146", + "B": "152" + }, + "816": { + "order": 108, + "structure_ID": 816, + "lowered_ID": 816.0, + "structure_id_path": "/997/8/567/688/695/315/247/1002/816/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Primary auditory area, layer 4", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDp4", + "collapsed_region": "AUD", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "4", + "sunburst": "AUDp4: rgb(3,147,151)", + "R": "3", + "G": "147", + "B": "151" + }, + "847": { + "order": 109, + "structure_ID": 847, + "lowered_ID": 847.0, + "structure_id_path": "/997/8/567/688/695/315/247/1002/847/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Primary auditory area, layer 5", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDp5", + "collapsed_region": "AUD", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "5", + "sunburst": "AUDp5: rgb(3,145,153)", + "R": "3", + "G": "145", + "B": "153" + }, + "954": { + "order": 110, + "structure_ID": 954, + "lowered_ID": 954.0, + "structure_id_path": "/997/8/567/688/695/315/247/1002/954/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Primary auditory area, layer 6a", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDp6a", + "collapsed_region": "AUD", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "6a", + "sunburst": "AUDp6a: rgb(1,147,150)", + "R": "1", + "G": "147", + "B": "150" + }, + "1005": { + "order": 111, + "structure_ID": 1005, + "lowered_ID": 1005.0, + "structure_id_path": "/997/8/567/688/695/315/247/1002/1005/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Primary auditory area, layer 6b", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDp6b", + "collapsed_region": "AUD", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "6b", + "sunburst": "AUDp6b: rgb(3,145,152)", + "R": "3", + "G": "145", + "B": "152" + }, + "1027": { + "order": 112, + "structure_ID": 1027, + "lowered_ID": 1027.0, + "structure_id_path": "/997/8/567/688/695/315/247/1027/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Posterior auditory area", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDpo", + "collapsed_region": "AUD", + "other_abbreviation": "po", + "other_abbreviation_defined": "posterior", + "layer": null, + "sunburst": "AUDpo: rgb(2,147,150)", + "R": "2", + "G": "147", + "B": "150" + }, + "696": { + "order": 113, + "structure_ID": 696, + "lowered_ID": 696.0, + "structure_id_path": "/997/8/567/688/695/315/247/1027/696/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Posterior auditory area, layer 1", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDpo1", + "collapsed_region": "AUD", + "other_abbreviation": "po", + "other_abbreviation_defined": "posterior", + "layer": "1", + "sunburst": "AUDpo1: rgb(3,146,153)", + "R": "3", + "G": "146", + "B": "153" + }, + "643": { + "order": 114, + "structure_ID": 643, + "lowered_ID": 643.0, + "structure_id_path": "/997/8/567/688/695/315/247/1027/643/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Posterior auditory area, layer 2/3", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDpo2/3", + "collapsed_region": "AUD", + "other_abbreviation": "po", + "other_abbreviation_defined": "posterior", + "layer": "2/3", + "sunburst": "AUDpo2/3: rgb(2,145,153)", + "R": "2", + "G": "145", + "B": "153" + }, + "759": { + "order": 115, + "structure_ID": 759, + "lowered_ID": 759.0, + "structure_id_path": "/997/8/567/688/695/315/247/1027/759/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Posterior auditory area, layer 4", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDpo4", + "collapsed_region": "AUD", + "other_abbreviation": "po", + "other_abbreviation_defined": "posterior", + "layer": "4", + "sunburst": "AUDpo4: rgb(3,146,152)", + "R": "3", + "G": "146", + "B": "152" + }, + "791": { + "order": 116, + "structure_ID": 791, + "lowered_ID": 791.0, + "structure_id_path": "/997/8/567/688/695/315/247/1027/791/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Posterior auditory area, layer 5", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDpo5", + "collapsed_region": "AUD", + "other_abbreviation": "po", + "other_abbreviation_defined": "posterior", + "layer": "5", + "sunburst": "AUDpo5: rgb(1,145,151)", + "R": "1", + "G": "145", + "B": "151" + }, + "249": { + "order": 117, + "structure_ID": 249, + "lowered_ID": 249.0, + "structure_id_path": "/997/8/567/688/695/315/247/1027/249/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Posterior auditory area, layer 6a", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDpo6a", + "collapsed_region": "AUD", + "other_abbreviation": "po", + "other_abbreviation_defined": "posterior", + "layer": "6a", + "sunburst": "AUDpo6a: rgb(2,147,153)", + "R": "2", + "G": "147", + "B": "153" + }, + "456": { + "order": 118, + "structure_ID": 456, + "lowered_ID": 456.0, + "structure_id_path": "/997/8/567/688/695/315/247/1027/456/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Posterior auditory area, layer 6b", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDpo6b", + "collapsed_region": "AUD", + "other_abbreviation": "po", + "other_abbreviation_defined": "posterior", + "layer": "6b", + "sunburst": "AUDpo6b: rgb(2,146,152)", + "R": "2", + "G": "146", + "B": "152" + }, + "1018": { + "order": 119, + "structure_ID": 1018, + "lowered_ID": 1018.0, + "structure_id_path": "/997/8/567/688/695/315/247/1018/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Ventral auditory area", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDv", + "collapsed_region": "AUD", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "AUDv: rgb(1,146,150)", + "R": "1", + "G": "146", + "B": "150" + }, + "959": { + "order": 120, + "structure_ID": 959, + "lowered_ID": 959.0, + "structure_id_path": "/997/8/567/688/695/315/247/1018/959/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Ventral auditory area, layer 1", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDv1", + "collapsed_region": "AUD", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "1", + "sunburst": "AUDv1: rgb(1,144,153)", + "R": "1", + "G": "144", + "B": "153" + }, + "755": { + "order": 121, + "structure_ID": 755, + "lowered_ID": 755.0, + "structure_id_path": "/997/8/567/688/695/315/247/1018/755/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Ventral auditory area, layer 2/3", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDv2/3", + "collapsed_region": "AUD", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "2/3", + "sunburst": "AUDv2/3: rgb(2,145,152)", + "R": "2", + "G": "145", + "B": "152" + }, + "990": { + "order": 122, + "structure_ID": 990, + "lowered_ID": 990.0, + "structure_id_path": "/997/8/567/688/695/315/247/1018/990/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Ventral auditory area, layer 4", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDv4", + "collapsed_region": "AUD", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "4", + "sunburst": "AUDv4: rgb(2,145,151)", + "R": "2", + "G": "145", + "B": "151" + }, + "1023": { + "order": 123, + "structure_ID": 1023, + "lowered_ID": 1023.0, + "structure_id_path": "/997/8/567/688/695/315/247/1018/1023/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Ventral auditory area, layer 5", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDv5", + "collapsed_region": "AUD", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "5", + "sunburst": "AUDv5: rgb(1,144,152)", + "R": "1", + "G": "144", + "B": "152" + }, + "520": { + "order": 124, + "structure_ID": 520, + "lowered_ID": 520.0, + "structure_id_path": "/997/8/567/688/695/315/247/1018/520/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Ventral auditory area, layer 6a", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDv6a", + "collapsed_region": "AUD", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "6a", + "sunburst": "AUDv6a: rgb(1,147,151)", + "R": "1", + "G": "147", + "B": "151" + }, + "598": { + "order": 125, + "structure_ID": 598, + "lowered_ID": 598.0, + "structure_id_path": "/997/8/567/688/695/315/247/1018/598/", + "very_general_region": "Isocortex", + "general_region": "Auditory", + "full_structure_name": "Ventral auditory area, layer 6b", + "collapsed_region_name": "Auditory", + "abbreviation": "AUDv6b", + "collapsed_region": "AUD", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "6b", + "sunburst": "AUDv6b: rgb(1,145,152)", + "R": "1", + "G": "145", + "B": "152" + }, + "669": { + "order": 126, + "structure_ID": 669, + "lowered_ID": 669.0, + "structure_id_path": "/997/8/567/688/695/315/669/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Visual areas", + "collapsed_region_name": "Visual", + "abbreviation": "VIS", + "collapsed_region": "VIS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VIS: rgb(9,132,137)", + "R": "9", + "G": "132", + "B": "137" + }, + "402": { + "order": 127, + "structure_ID": 402, + "lowered_ID": 402.0, + "structure_id_path": "/997/8/567/688/695/315/669/402/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anterolateral visual area", + "collapsed_region_name": "Visual", + "abbreviation": "VISal", + "collapsed_region": "VIS", + "other_abbreviation": "al", + "other_abbreviation_defined": "anterolateral", + "layer": null, + "sunburst": "VISal: rgb(9,131,140)", + "R": "9", + "G": "131", + "B": "140" + }, + "1074": { + "order": 128, + "structure_ID": 1074, + "lowered_ID": 1074.0, + "structure_id_path": "/997/8/567/688/695/315/669/402/1074/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anterolateral visual area, layer 1", + "collapsed_region_name": "Visual", + "abbreviation": "VISal1", + "collapsed_region": "VIS", + "other_abbreviation": "al", + "other_abbreviation_defined": "anterolateral", + "layer": "1", + "sunburst": "VISal1: rgb(11,131,139)", + "R": "11", + "G": "131", + "B": "139" + }, + "905": { + "order": 129, + "structure_ID": 905, + "lowered_ID": 905.0, + "structure_id_path": "/997/8/567/688/695/315/669/402/905/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anterolateral visual area, layer 2/3", + "collapsed_region_name": "Visual", + "abbreviation": "VISal2/3", + "collapsed_region": "VIS", + "other_abbreviation": "al", + "other_abbreviation_defined": "anterolateral", + "layer": "2/3", + "sunburst": "VISal2/3: rgb(9,131,137)", + "R": "9", + "G": "131", + "B": "137" + }, + "1114": { + "order": 130, + "structure_ID": 1114, + "lowered_ID": 1114.0, + "structure_id_path": "/997/8/567/688/695/315/669/402/1114/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anterolateral visual area, layer 4", + "collapsed_region_name": "Visual", + "abbreviation": "VISal4", + "collapsed_region": "VIS", + "other_abbreviation": "al", + "other_abbreviation_defined": "anterolateral", + "layer": "4", + "sunburst": "VISal4: rgb(8,133,136)", + "R": "8", + "G": "133", + "B": "136" + }, + "233": { + "order": 131, + "structure_ID": 233, + "lowered_ID": 233.0, + "structure_id_path": "/997/8/567/688/695/315/669/402/233/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anterolateral visual area, layer 5", + "collapsed_region_name": "Visual", + "abbreviation": "VISal5", + "collapsed_region": "VIS", + "other_abbreviation": "al", + "other_abbreviation_defined": "anterolateral", + "layer": "5", + "sunburst": "VISal5: rgb(8,132,139)", + "R": "8", + "G": "132", + "B": "139" + }, + "601": { + "order": 132, + "structure_ID": 601, + "lowered_ID": 601.0, + "structure_id_path": "/997/8/567/688/695/315/669/402/601/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anterolateral visual area, layer 6a", + "collapsed_region_name": "Visual", + "abbreviation": "VISal6a", + "collapsed_region": "VIS", + "other_abbreviation": "al", + "other_abbreviation_defined": "anterolateral", + "layer": "6a", + "sunburst": "VISal6a: rgb(9,130,140)", + "R": "9", + "G": "130", + "B": "140" + }, + "649": { + "order": 133, + "structure_ID": 649, + "lowered_ID": 649.0, + "structure_id_path": "/997/8/567/688/695/315/669/402/649/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anterolateral visual area, layer 6b", + "collapsed_region_name": "Visual", + "abbreviation": "VISal6b", + "collapsed_region": "VIS", + "other_abbreviation": "al", + "other_abbreviation_defined": "anterolateral", + "layer": "6b", + "sunburst": "VISal6b: rgb(11,132,140)", + "R": "11", + "G": "132", + "B": "140" + }, + "394": { + "order": 134, + "structure_ID": 394, + "lowered_ID": 394.0, + "structure_id_path": "/997/8/567/688/695/315/669/394/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anteromedial visual area", + "collapsed_region_name": "Visual", + "abbreviation": "VISam", + "collapsed_region": "VIS", + "other_abbreviation": "am", + "other_abbreviation_defined": "anteromedial", + "layer": null, + "sunburst": "VISam: rgb(8,131,139)", + "R": "8", + "G": "131", + "B": "139" + }, + "281": { + "order": 135, + "structure_ID": 281, + "lowered_ID": 281.0, + "structure_id_path": "/997/8/567/688/695/315/669/394/281/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anteromedial visual area, layer 1", + "collapsed_region_name": "Visual", + "abbreviation": "VISam1", + "collapsed_region": "VIS", + "other_abbreviation": "am", + "other_abbreviation_defined": "anteromedial", + "layer": "1", + "sunburst": "VISam1: rgb(9,132,139)", + "R": "9", + "G": "132", + "B": "139" + }, + "1066": { + "order": 136, + "structure_ID": 1066, + "lowered_ID": 1066.0, + "structure_id_path": "/997/8/567/688/695/315/669/394/1066/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anteromedial visual area, layer 2/3", + "collapsed_region_name": "Visual", + "abbreviation": "VISam2/3", + "collapsed_region": "VIS", + "other_abbreviation": "am", + "other_abbreviation_defined": "anteromedial", + "layer": "2/3", + "sunburst": "VISam2/3: rgb(11,132,138)", + "R": "11", + "G": "132", + "B": "138" + }, + "401": { + "order": 137, + "structure_ID": 401, + "lowered_ID": 401.0, + "structure_id_path": "/997/8/567/688/695/315/669/394/401/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anteromedial visual area, layer 4", + "collapsed_region_name": "Visual", + "abbreviation": "VISam4", + "collapsed_region": "VIS", + "other_abbreviation": "am", + "other_abbreviation_defined": "anteromedial", + "layer": "4", + "sunburst": "VISam4: rgb(9,133,138)", + "R": "9", + "G": "133", + "B": "138" + }, + "433": { + "order": 138, + "structure_ID": 433, + "lowered_ID": 433.0, + "structure_id_path": "/997/8/567/688/695/315/669/394/433/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anteromedial visual area, layer 5", + "collapsed_region_name": "Visual", + "abbreviation": "VISam5", + "collapsed_region": "VIS", + "other_abbreviation": "am", + "other_abbreviation_defined": "anteromedial", + "layer": "5", + "sunburst": "VISam5: rgb(10,132,139)", + "R": "10", + "G": "132", + "B": "139" + }, + "1046": { + "order": 139, + "structure_ID": 1046, + "lowered_ID": 1046.0, + "structure_id_path": "/997/8/567/688/695/315/669/394/1046/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anteromedial visual area, layer 6a", + "collapsed_region_name": "Visual", + "abbreviation": "VISam6a", + "collapsed_region": "VIS", + "other_abbreviation": "am", + "other_abbreviation_defined": "anteromedial", + "layer": "6a", + "sunburst": "VISam6a: rgb(10,130,139)", + "R": "10", + "G": "130", + "B": "139" + }, + "441": { + "order": 140, + "structure_ID": 441, + "lowered_ID": 441.0, + "structure_id_path": "/997/8/567/688/695/315/669/394/441/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Anteromedial visual area, layer 6b", + "collapsed_region_name": "Visual", + "abbreviation": "VISam6b", + "collapsed_region": "VIS", + "other_abbreviation": "am", + "other_abbreviation_defined": "anteromedial", + "layer": "6b", + "sunburst": "VISam6b: rgb(8,131,138)", + "R": "8", + "G": "131", + "B": "138" + }, + "409": { + "order": 141, + "structure_ID": 409, + "lowered_ID": 409.0, + "structure_id_path": "/997/8/567/688/695/315/669/409/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Lateral visual area", + "collapsed_region_name": "Visual", + "abbreviation": "VISl", + "collapsed_region": "VIS", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": null, + "sunburst": "VISl: rgb(10,132,140)", + "R": "10", + "G": "132", + "B": "140" + }, + "421": { + "order": 142, + "structure_ID": 421, + "lowered_ID": 421.0, + "structure_id_path": "/997/8/567/688/695/315/669/409/421/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Lateral visual area, layer 1", + "collapsed_region_name": "Visual", + "abbreviation": "VISl1", + "collapsed_region": "VIS", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "1", + "sunburst": "VISl1: rgb(9,132,138)", + "R": "9", + "G": "132", + "B": "138" + }, + "973": { + "order": 143, + "structure_ID": 973, + "lowered_ID": 973.0, + "structure_id_path": "/997/8/567/688/695/315/669/409/973/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Lateral visual area, layer 2/3", + "collapsed_region_name": "Visual", + "abbreviation": "VISl2/3", + "collapsed_region": "VIS", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "2/3", + "sunburst": "VISl2/3: rgb(10,132,137)", + "R": "10", + "G": "132", + "B": "137" + }, + "573": { + "order": 144, + "structure_ID": 573, + "lowered_ID": 573.0, + "structure_id_path": "/997/8/567/688/695/315/669/409/573/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Lateral visual area, layer 4", + "collapsed_region_name": "Visual", + "abbreviation": "VISl4", + "collapsed_region": "VIS", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "4", + "sunburst": "VISl4: rgb(8,130,139)", + "R": "8", + "G": "130", + "B": "139" + }, + "613": { + "order": 145, + "structure_ID": 613, + "lowered_ID": 613.0, + "structure_id_path": "/997/8/567/688/695/315/669/409/613/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Lateral visual area, layer 5", + "collapsed_region_name": "Visual", + "abbreviation": "VISl5", + "collapsed_region": "VIS", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "5", + "sunburst": "VISl5: rgb(11,133,139)", + "R": "11", + "G": "133", + "B": "139" + }, + "74": { + "order": 146, + "structure_ID": 74, + "lowered_ID": 74.0, + "structure_id_path": "/997/8/567/688/695/315/669/409/74/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Lateral visual area, layer 6a", + "collapsed_region_name": "Visual", + "abbreviation": "VISl6a", + "collapsed_region": "VIS", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "6a", + "sunburst": "VISl6a: rgb(8,132,140)", + "R": "8", + "G": "132", + "B": "140" + }, + "121": { + "order": 147, + "structure_ID": 121, + "lowered_ID": 121.0, + "structure_id_path": "/997/8/567/688/695/315/669/409/121/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Lateral visual area, layer 6b", + "collapsed_region_name": "Visual", + "abbreviation": "VISl6b", + "collapsed_region": "VIS", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "6b", + "sunburst": "VISl6b: rgb(9,133,140)", + "R": "9", + "G": "133", + "B": "140" + }, + "385": { + "order": 148, + "structure_ID": 385, + "lowered_ID": 385.0, + "structure_id_path": "/997/8/567/688/695/315/669/385/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Primary visual area", + "collapsed_region_name": "Visual", + "abbreviation": "VISp", + "collapsed_region": "VIS", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": null, + "sunburst": "VISp: rgb(10,133,140)", + "R": "10", + "G": "133", + "B": "140" + }, + "593": { + "order": 149, + "structure_ID": 593, + "lowered_ID": 593.0, + "structure_id_path": "/997/8/567/688/695/315/669/385/593/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Primary visual area, layer 1", + "collapsed_region_name": "Visual", + "abbreviation": "VISp1", + "collapsed_region": "VIS", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "1", + "sunburst": "VISp1: rgb(9,133,137)", + "R": "9", + "G": "133", + "B": "137" + }, + "821": { + "order": 150, + "structure_ID": 821, + "lowered_ID": 821.0, + "structure_id_path": "/997/8/567/688/695/315/669/385/821/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Primary visual area, layer 2/3", + "collapsed_region_name": "Visual", + "abbreviation": "VISp2/3", + "collapsed_region": "VIS", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "2/3", + "sunburst": "VISp2/3: rgb(10,130,140)", + "R": "10", + "G": "130", + "B": "140" + }, + "721": { + "order": 151, + "structure_ID": 721, + "lowered_ID": 721.0, + "structure_id_path": "/997/8/567/688/695/315/669/385/721/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Primary visual area, layer 4", + "collapsed_region_name": "Visual", + "abbreviation": "VISp4", + "collapsed_region": "VIS", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "4", + "sunburst": "VISp4: rgb(11,132,139)", + "R": "11", + "G": "132", + "B": "139" + }, + "778": { + "order": 152, + "structure_ID": 778, + "lowered_ID": 778.0, + "structure_id_path": "/997/8/567/688/695/315/669/385/778/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Primary visual area, layer 5", + "collapsed_region_name": "Visual", + "abbreviation": "VISp5", + "collapsed_region": "VIS", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "5", + "sunburst": "VISp5: rgb(8,131,137)", + "R": "8", + "G": "131", + "B": "137" + }, + "33": { + "order": 153, + "structure_ID": 33, + "lowered_ID": 33.0, + "structure_id_path": "/997/8/567/688/695/315/669/385/33/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Primary visual area, layer 6a", + "collapsed_region_name": "Visual", + "abbreviation": "VISp6a", + "collapsed_region": "VIS", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "6a", + "sunburst": "VISp6a: rgb(8,133,140)", + "R": "8", + "G": "133", + "B": "140" + }, + "305": { + "order": 154, + "structure_ID": 305, + "lowered_ID": 305.0, + "structure_id_path": "/997/8/567/688/695/315/669/385/305/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Primary visual area, layer 6b", + "collapsed_region_name": "Visual", + "abbreviation": "VISp6b", + "collapsed_region": "VIS", + "other_abbreviation": "p", + "other_abbreviation_defined": "primary", + "layer": "6b", + "sunburst": "VISp6b: rgb(8,133,138)", + "R": "8", + "G": "133", + "B": "138" + }, + "425": { + "order": 155, + "structure_ID": 425, + "lowered_ID": 425.0, + "structure_id_path": "/997/8/567/688/695/315/669/425/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posterolateral visual area", + "collapsed_region_name": "Visual", + "abbreviation": "VISpl", + "collapsed_region": "VIS", + "other_abbreviation": "pl", + "other_abbreviation_defined": "posterolateral", + "layer": null, + "sunburst": "VISpl: rgb(9,131,139)", + "R": "9", + "G": "131", + "B": "139" + }, + "750": { + "order": 156, + "structure_ID": 750, + "lowered_ID": 750.0, + "structure_id_path": "/997/8/567/688/695/315/669/425/750/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posterolateral visual area, layer 1", + "collapsed_region_name": "Visual", + "abbreviation": "VISpl1", + "collapsed_region": "VIS", + "other_abbreviation": "pl", + "other_abbreviation_defined": "posterolateral", + "layer": "1", + "sunburst": "VISpl1: rgb(10,131,138)", + "R": "10", + "G": "131", + "B": "138" + }, + "269": { + "order": 157, + "structure_ID": 269, + "lowered_ID": 269.0, + "structure_id_path": "/997/8/567/688/695/315/669/425/269/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posterolateral visual area, layer 2/3", + "collapsed_region_name": "Visual", + "abbreviation": "VISpl2/3", + "collapsed_region": "VIS", + "other_abbreviation": "pl", + "other_abbreviation_defined": "posterolateral", + "layer": "2/3", + "sunburst": "VISpl2/3: rgb(9,132,140)", + "R": "9", + "G": "132", + "B": "140" + }, + "869": { + "order": 158, + "structure_ID": 869, + "lowered_ID": 869.0, + "structure_id_path": "/997/8/567/688/695/315/669/425/869/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posterolateral visual area, layer 4", + "collapsed_region_name": "Visual", + "abbreviation": "VISpl4", + "collapsed_region": "VIS", + "other_abbreviation": "pl", + "other_abbreviation_defined": "posterolateral", + "layer": "4", + "sunburst": "VISpl4: rgb(11,133,138)", + "R": "11", + "G": "133", + "B": "138" + }, + "902": { + "order": 159, + "structure_ID": 902, + "lowered_ID": 902.0, + "structure_id_path": "/997/8/567/688/695/315/669/425/902/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posterolateral visual area, layer 5", + "collapsed_region_name": "Visual", + "abbreviation": "VISpl5", + "collapsed_region": "VIS", + "other_abbreviation": "pl", + "other_abbreviation_defined": "posterolateral", + "layer": "5", + "sunburst": "VISpl5: rgb(11,131,140)", + "R": "11", + "G": "131", + "B": "140" + }, + "377": { + "order": 160, + "structure_ID": 377, + "lowered_ID": 377.0, + "structure_id_path": "/997/8/567/688/695/315/669/425/377/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posterolateral visual area, layer 6a", + "collapsed_region_name": "Visual", + "abbreviation": "VISpl6a", + "collapsed_region": "VIS", + "other_abbreviation": "pl", + "other_abbreviation_defined": "posterolateral", + "layer": "6a", + "sunburst": "VISpl6a: rgb(8,131,140)", + "R": "8", + "G": "131", + "B": "140" + }, + "393": { + "order": 161, + "structure_ID": 393, + "lowered_ID": 393.0, + "structure_id_path": "/997/8/567/688/695/315/669/425/393/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posterolateral visual area, layer 6b", + "collapsed_region_name": "Visual", + "abbreviation": "VISpl6b", + "collapsed_region": "VIS", + "other_abbreviation": "pl", + "other_abbreviation_defined": "posterolateral", + "layer": "6b", + "sunburst": "VISpl6b: rgb(8,132,138)", + "R": "8", + "G": "132", + "B": "138" + }, + "533": { + "order": 162, + "structure_ID": 533, + "lowered_ID": 533.0, + "structure_id_path": "/997/8/567/688/695/315/669/533/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posteromedial visual area", + "collapsed_region_name": "Visual", + "abbreviation": "VISpm", + "collapsed_region": "VIS", + "other_abbreviation": "pm", + "other_abbreviation_defined": "posteromedial", + "layer": null, + "sunburst": "VISpm: rgb(10,131,139)", + "R": "10", + "G": "131", + "B": "139" + }, + "805": { + "order": 163, + "structure_ID": 805, + "lowered_ID": 805.0, + "structure_id_path": "/997/8/567/688/695/315/669/533/805/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posteromedial visual area, layer 1", + "collapsed_region_name": "Visual", + "abbreviation": "VISpm1", + "collapsed_region": "VIS", + "other_abbreviation": "pm", + "other_abbreviation_defined": "posteromedial", + "layer": "1", + "sunburst": "VISpm1: rgb(10,133,137)", + "R": "10", + "G": "133", + "B": "137" + }, + "41": { + "order": 164, + "structure_ID": 41, + "lowered_ID": 41.0, + "structure_id_path": "/997/8/567/688/695/315/669/533/41/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posteromedial visual area, layer 2/3", + "collapsed_region_name": "Visual", + "abbreviation": "VISpm2/3", + "collapsed_region": "VIS", + "other_abbreviation": "pm", + "other_abbreviation_defined": "posteromedial", + "layer": "2/3", + "sunburst": "VISpm2/3: rgb(8,133,139)", + "R": "8", + "G": "133", + "B": "139" + }, + "501": { + "order": 165, + "structure_ID": 501, + "lowered_ID": 501.0, + "structure_id_path": "/997/8/567/688/695/315/669/533/501/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posteromedial visual area, layer 4", + "collapsed_region_name": "Visual", + "abbreviation": "VISpm4", + "collapsed_region": "VIS", + "other_abbreviation": "pm", + "other_abbreviation_defined": "posteromedial", + "layer": "4", + "sunburst": "VISpm4: rgb(9,130,139)", + "R": "9", + "G": "130", + "B": "139" + }, + "565": { + "order": 166, + "structure_ID": 565, + "lowered_ID": 565.0, + "structure_id_path": "/997/8/567/688/695/315/669/533/565/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posteromedial visual area, layer 5", + "collapsed_region_name": "Visual", + "abbreviation": "VISpm5", + "collapsed_region": "VIS", + "other_abbreviation": "pm", + "other_abbreviation_defined": "posteromedial", + "layer": "5", + "sunburst": "VISpm5: rgb(8,132,137)", + "R": "8", + "G": "132", + "B": "137" + }, + "257": { + "order": 167, + "structure_ID": 257, + "lowered_ID": 257.0, + "structure_id_path": "/997/8/567/688/695/315/669/533/257/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posteromedial visual area, layer 6a", + "collapsed_region_name": "Visual", + "abbreviation": "VISpm6a", + "collapsed_region": "VIS", + "other_abbreviation": "pm", + "other_abbreviation_defined": "posteromedial", + "layer": "6a", + "sunburst": "VISpm6a: rgb(9,133,139)", + "R": "9", + "G": "133", + "B": "139" + }, + "469": { + "order": 168, + "structure_ID": 469, + "lowered_ID": 469.0, + "structure_id_path": "/997/8/567/688/695/315/669/533/469/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Posteromedial visual area, layer 6b", + "collapsed_region_name": "Visual", + "abbreviation": "VISpm6b", + "collapsed_region": "VIS", + "other_abbreviation": "pm", + "other_abbreviation_defined": "posteromedial", + "layer": "6b", + "sunburst": "VISpm6b: rgb(8,133,137)", + "R": "8", + "G": "133", + "B": "137" + }, + "312782574": { + "order": 169, + "structure_ID": 312782574, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782574/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Laterointermediate area", + "collapsed_region_name": "Visual", + "abbreviation": "VISli", + "collapsed_region": "VIS", + "other_abbreviation": "li", + "other_abbreviation_defined": "laterointermediate", + "layer": null, + "sunburst": "VISli: rgb(10,133,139)", + "R": "10", + "G": "133", + "B": "139" + }, + "312782578": { + "order": 170, + "structure_ID": 312782578, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782574/312782578/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Laterointermediate area, layer 1", + "collapsed_region_name": "Visual", + "abbreviation": "VISli1", + "collapsed_region": "VIS", + "other_abbreviation": "li", + "other_abbreviation_defined": "laterointermediate", + "layer": "1", + "sunburst": "VISli1: rgb(12,133,140)", + "R": "12", + "G": "133", + "B": "140" + }, + "312782582": { + "order": 171, + "structure_ID": 312782582, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782574/312782582/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Laterointermediate area, layer 2/3", + "collapsed_region_name": "Visual", + "abbreviation": "VISli2/3", + "collapsed_region": "VIS", + "other_abbreviation": "li", + "other_abbreviation_defined": "laterointermediate", + "layer": "2/3", + "sunburst": "VISli2/3: rgb(10,133,138)", + "R": "10", + "G": "133", + "B": "138" + }, + "312782586": { + "order": 172, + "structure_ID": 312782586, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782574/312782586/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Laterointermediate area, layer 4", + "collapsed_region_name": "Visual", + "abbreviation": "VISli4", + "collapsed_region": "VIS", + "other_abbreviation": "li", + "other_abbreviation_defined": "laterointermediate", + "layer": "4", + "sunburst": "VISli4: rgb(8,130,140)", + "R": "8", + "G": "130", + "B": "140" + }, + "312782590": { + "order": 173, + "structure_ID": 312782590, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782574/312782590/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Laterointermediate area, layer 5", + "collapsed_region_name": "Visual", + "abbreviation": "VISli5", + "collapsed_region": "VIS", + "other_abbreviation": "li", + "other_abbreviation_defined": "laterointermediate", + "layer": "5", + "sunburst": "VISli5: rgb(10,132,138)", + "R": "10", + "G": "132", + "B": "138" + }, + "312782594": { + "order": 174, + "structure_ID": 312782594, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782574/312782594/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Laterointermediate area, layer 6a", + "collapsed_region_name": "Visual", + "abbreviation": "VISli6a", + "collapsed_region": "VIS", + "other_abbreviation": "li", + "other_abbreviation_defined": "laterointermediate", + "layer": "6a", + "sunburst": "VISli6a: rgb(8,132,136)", + "R": "8", + "G": "132", + "B": "136" + }, + "312782598": { + "order": 175, + "structure_ID": 312782598, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782574/312782598/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Laterointermediate area, layer 6b", + "collapsed_region_name": "Visual", + "abbreviation": "VISli6b", + "collapsed_region": "VIS", + "other_abbreviation": "li", + "other_abbreviation_defined": "laterointermediate", + "layer": "6b", + "sunburst": "VISli6b: rgb(8,129,139)", + "R": "8", + "G": "129", + "B": "139" + }, + "312782628": { + "order": 176, + "structure_ID": 312782628, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782628/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Postrhinal area", + "collapsed_region_name": "Visual", + "abbreviation": "VISpor", + "collapsed_region": "VIS", + "other_abbreviation": "por", + "other_abbreviation_defined": "postrhinal", + "layer": null, + "sunburst": "VISpor: rgb(9,133,136)", + "R": "9", + "G": "133", + "B": "136" + }, + "312782632": { + "order": 177, + "structure_ID": 312782632, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782628/312782632/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Postrhinal area, layer 1", + "collapsed_region_name": "Visual", + "abbreviation": "VISpor1", + "collapsed_region": "VIS", + "other_abbreviation": "por", + "other_abbreviation_defined": "postrhinal", + "layer": "1", + "sunburst": "VISpor1: rgb(9,129,140)", + "R": "9", + "G": "129", + "B": "140" + }, + "312782636": { + "order": 178, + "structure_ID": 312782636, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782628/312782636/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Postrhinal area, layer 2/3", + "collapsed_region_name": "Visual", + "abbreviation": "VISpor2/3", + "collapsed_region": "VIS", + "other_abbreviation": "por", + "other_abbreviation_defined": "postrhinal", + "layer": "2/3", + "sunburst": "VISpor2/3: rgb(10,131,137)", + "R": "10", + "G": "131", + "B": "137" + }, + "312782640": { + "order": 179, + "structure_ID": 312782640, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782628/312782640/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Postrhinal area, layer 4", + "collapsed_region_name": "Visual", + "abbreviation": "VISpor4", + "collapsed_region": "VIS", + "other_abbreviation": "por", + "other_abbreviation_defined": "postrhinal", + "layer": "4", + "sunburst": "VISpor4: rgb(10,130,138)", + "R": "10", + "G": "130", + "B": "138" + }, + "312782644": { + "order": 180, + "structure_ID": 312782644, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782628/312782644/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Postrhinal area, layer 5", + "collapsed_region_name": "Visual", + "abbreviation": "VISpor5", + "collapsed_region": "VIS", + "other_abbreviation": "por", + "other_abbreviation_defined": "postrhinal", + "layer": "5", + "sunburst": "VISpor5: rgb(11,131,138)", + "R": "11", + "G": "131", + "B": "138" + }, + "312782648": { + "order": 181, + "structure_ID": 312782648, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782628/312782648/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Postrhinal area, layer 6a", + "collapsed_region_name": "Visual", + "abbreviation": "VISpor6a", + "collapsed_region": "VIS", + "other_abbreviation": "por", + "other_abbreviation_defined": "postrhinal", + "layer": "6a", + "sunburst": "VISpor6a: rgb(12,133,139)", + "R": "12", + "G": "133", + "B": "139" + }, + "312782652": { + "order": 182, + "structure_ID": 312782652, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/669/312782628/312782652/", + "very_general_region": "Isocortex", + "general_region": "Visual", + "full_structure_name": "Postrhinal area, layer 6b", + "collapsed_region_name": "Visual", + "abbreviation": "VISpor6b", + "collapsed_region": "VIS", + "other_abbreviation": "por", + "other_abbreviation_defined": "postrhinal", + "layer": "6b", + "sunburst": "VISpor6b: rgb(12,132,140)", + "R": "12", + "G": "132", + "B": "140" + }, + "31": { + "order": 183, + "structure_ID": 31, + "lowered_ID": 31.0, + "structure_id_path": "/997/8/567/688/695/315/31/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACA", + "collapsed_region": "ACA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ACA: rgb(64,166,102)", + "R": "64", + "G": "166", + "B": "102" + }, + "39": { + "order": 184, + "structure_ID": 39, + "lowered_ID": 39.0, + "structure_id_path": "/997/8/567/688/695/315/31/39/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area, dorsal part", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACAd", + "collapsed_region": "ACA", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "ACAd: rgb(64,166,101)", + "R": "64", + "G": "166", + "B": "101" + }, + "935": { + "order": 185, + "structure_ID": 935, + "lowered_ID": 935.0, + "structure_id_path": "/997/8/567/688/695/315/31/39/935/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area, dorsal part, layer 1", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACAd1", + "collapsed_region": "ACA", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "1", + "sunburst": "ACAd1: rgb(62,166,101)", + "R": "62", + "G": "166", + "B": "101" + }, + "211": { + "order": 186, + "structure_ID": 211, + "lowered_ID": 211.0, + "structure_id_path": "/997/8/567/688/695/315/31/39/211/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area, dorsal part, layer 2/3", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACAd2/3", + "collapsed_region": "ACA", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "2/3", + "sunburst": "ACAd2/3: rgb(64,165,101)", + "R": "64", + "G": "165", + "B": "101" + }, + "1015": { + "order": 187, + "structure_ID": 1015, + "lowered_ID": 1015.0, + "structure_id_path": "/997/8/567/688/695/315/31/39/1015/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area, dorsal part, layer 5", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACAd5", + "collapsed_region": "ACA", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "5", + "sunburst": "ACAd5: rgb(62,165,102)", + "R": "62", + "G": "165", + "B": "102" + }, + "919": { + "order": 188, + "structure_ID": 919, + "lowered_ID": 919.0, + "structure_id_path": "/997/8/567/688/695/315/31/39/919/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area, dorsal part, layer 6a", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACAd6a", + "collapsed_region": "ACA", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "6a", + "sunburst": "ACAd6a: rgb(63,166,100)", + "R": "63", + "G": "166", + "B": "100" + }, + "927": { + "order": 189, + "structure_ID": 927, + "lowered_ID": 927.0, + "structure_id_path": "/997/8/567/688/695/315/31/39/927/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area, dorsal part, layer 6b", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACAd6b", + "collapsed_region": "ACA", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "6b", + "sunburst": "ACAd6b: rgb(63,164,102)", + "R": "63", + "G": "164", + "B": "102" + }, + "48": { + "order": 190, + "structure_ID": 48, + "lowered_ID": 48.0, + "structure_id_path": "/997/8/567/688/695/315/31/48/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area, ventral part", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACAv", + "collapsed_region": "ACA", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "ACAv: rgb(64,165,102)", + "R": "64", + "G": "165", + "B": "102" + }, + "588": { + "order": 191, + "structure_ID": 588, + "lowered_ID": 588.0, + "structure_id_path": "/997/8/567/688/695/315/31/48/588/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area, ventral part, layer 1", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACAv1", + "collapsed_region": "ACA", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "1", + "sunburst": "ACAv1: rgb(64,166,100)", + "R": "64", + "G": "166", + "B": "100" + }, + "296": { + "order": 192, + "structure_ID": 296, + "lowered_ID": 296.0, + "structure_id_path": "/997/8/567/688/695/315/31/48/296/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area, ventral part, layer 2/3", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACAv2/3", + "collapsed_region": "ACA", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "2/3", + "sunburst": "ACAv2/3: rgb(63,165,102)", + "R": "63", + "G": "165", + "B": "102" + }, + "772": { + "order": 193, + "structure_ID": 772, + "lowered_ID": 772.0, + "structure_id_path": "/997/8/567/688/695/315/31/48/772/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area, ventral part, layer 5", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACAv5", + "collapsed_region": "ACA", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "5", + "sunburst": "ACAv5: rgb(62,166,102)", + "R": "62", + "G": "166", + "B": "102" + }, + "810": { + "order": 194, + "structure_ID": 810, + "lowered_ID": 810.0, + "structure_id_path": "/997/8/567/688/695/315/31/48/810/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area, ventral part, 6a", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACAv6a", + "collapsed_region": "ACA", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "6a", + "sunburst": "ACAv6a: rgb(64,165,100)", + "R": "64", + "G": "165", + "B": "100" + }, + "819": { + "order": 195, + "structure_ID": 819, + "lowered_ID": 819.0, + "structure_id_path": "/997/8/567/688/695/315/31/48/819/", + "very_general_region": "Isocortex", + "general_region": "Anterior cingulate", + "full_structure_name": "Anterior cingulate area, ventral part, 6b", + "collapsed_region_name": "Anterior cingulate", + "abbreviation": "ACAv6b", + "collapsed_region": "ACA", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "6b", + "sunburst": "ACAv6b: rgb(64,164,101)", + "R": "64", + "G": "164", + "B": "101" + }, + "972": { + "order": 196, + "structure_ID": 972, + "lowered_ID": 972.0, + "structure_id_path": "/997/8/567/688/695/315/972/", + "very_general_region": "Isocortex", + "general_region": "Prelimbic", + "full_structure_name": "Prelimbic area", + "collapsed_region_name": "Prelimbic", + "abbreviation": "PL", + "collapsed_region": "PL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PL: rgb(46,167,80)", + "R": "46", + "G": "167", + "B": "80" + }, + "171": { + "order": 197, + "structure_ID": 171, + "lowered_ID": 171.0, + "structure_id_path": "/997/8/567/688/695/315/972/171/", + "very_general_region": "Isocortex", + "general_region": "Prelimbic", + "full_structure_name": "Prelimbic area, layer 1", + "collapsed_region_name": "Prelimbic", + "abbreviation": "PL1", + "collapsed_region": "PL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "1", + "sunburst": "PL1: rgb(47,167,80)", + "R": "47", + "G": "167", + "B": "80" + }, + "304": { + "order": 198, + "structure_ID": 304, + "lowered_ID": 304.0, + "structure_id_path": "/997/8/567/688/695/315/972/304/", + "very_general_region": "Isocortex", + "general_region": "Prelimbic", + "full_structure_name": "Prelimbic area, layer 2/3", + "collapsed_region_name": "Prelimbic", + "abbreviation": "PL2/3", + "collapsed_region": "PL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "2/3", + "sunburst": "PL2/3: rgb(47,167,79)", + "R": "47", + "G": "167", + "B": "79" + }, + "363": { + "order": 199, + "structure_ID": 363, + "lowered_ID": 363.0, + "structure_id_path": "/997/8/567/688/695/315/972/363/", + "very_general_region": "Isocortex", + "general_region": "Prelimbic", + "full_structure_name": "Prelimbic area, layer 5", + "collapsed_region_name": "Prelimbic", + "abbreviation": "PL5", + "collapsed_region": "PL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "5", + "sunburst": "PL5: rgb(46,168,79)", + "R": "46", + "G": "168", + "B": "79" + }, + "84": { + "order": 200, + "structure_ID": 84, + "lowered_ID": 84.0, + "structure_id_path": "/997/8/567/688/695/315/972/84/", + "very_general_region": "Isocortex", + "general_region": "Prelimbic", + "full_structure_name": "Prelimbic area, layer 6a", + "collapsed_region_name": "Prelimbic", + "abbreviation": "PL6a", + "collapsed_region": "PL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6a", + "sunburst": "PL6a: rgb(47,168,80)", + "R": "47", + "G": "168", + "B": "80" + }, + "132": { + "order": 201, + "structure_ID": 132, + "lowered_ID": 132.0, + "structure_id_path": "/997/8/567/688/695/315/972/132/", + "very_general_region": "Isocortex", + "general_region": "Prelimbic", + "full_structure_name": "Prelimbic area, layer 6b", + "collapsed_region_name": "Prelimbic", + "abbreviation": "PL6b", + "collapsed_region": "PL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6b", + "sunburst": "PL6b: rgb(47,168,79)", + "R": "47", + "G": "168", + "B": "79" + }, + "44": { + "order": 202, + "structure_ID": 44, + "lowered_ID": 44.0, + "structure_id_path": "/997/8/567/688/695/315/44/", + "very_general_region": "Isocortex", + "general_region": "Infralimbic", + "full_structure_name": "Infralimbic area", + "collapsed_region_name": "Infralimbic", + "abbreviation": "ILA", + "collapsed_region": "ILA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ILA: rgb(89,179,99)", + "R": "89", + "G": "179", + "B": "99" + }, + "707": { + "order": 203, + "structure_ID": 707, + "lowered_ID": 707.0, + "structure_id_path": "/997/8/567/688/695/315/44/707/", + "very_general_region": "Isocortex", + "general_region": "Infralimbic", + "full_structure_name": "Infralimbic area, layer 1", + "collapsed_region_name": "Infralimbic", + "abbreviation": "ILA1", + "collapsed_region": "ILA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "1", + "sunburst": "ILA1: rgb(89,178,99)", + "R": "89", + "G": "178", + "B": "99" + }, + "556": { + "order": 204, + "structure_ID": 556, + "lowered_ID": 556.0, + "structure_id_path": "/997/8/567/688/695/315/44/556/", + "very_general_region": "Isocortex", + "general_region": "Infralimbic", + "full_structure_name": "Infralimbic area, layer 2/3", + "collapsed_region_name": "Infralimbic", + "abbreviation": "ILA2/3", + "collapsed_region": "ILA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "2/3", + "sunburst": "ILA2/3: rgb(89,179,98)", + "R": "89", + "G": "179", + "B": "98" + }, + "827": { + "order": 205, + "structure_ID": 827, + "lowered_ID": 827.0, + "structure_id_path": "/997/8/567/688/695/315/44/827/", + "very_general_region": "Isocortex", + "general_region": "Infralimbic", + "full_structure_name": "Infralimbic area, layer 5", + "collapsed_region_name": "Infralimbic", + "abbreviation": "ILA5", + "collapsed_region": "ILA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "5", + "sunburst": "ILA5: rgb(89,178,98)", + "R": "89", + "G": "178", + "B": "98" + }, + "1054": { + "order": 206, + "structure_ID": 1054, + "lowered_ID": 1054.0, + "structure_id_path": "/997/8/567/688/695/315/44/1054/", + "very_general_region": "Isocortex", + "general_region": "Infralimbic", + "full_structure_name": "Infralimbic area, layer 6a", + "collapsed_region_name": "Infralimbic", + "abbreviation": "ILA6a", + "collapsed_region": "ILA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6a", + "sunburst": "ILA6a: rgb(88,179,98)", + "R": "88", + "G": "179", + "B": "98" + }, + "1081": { + "order": 207, + "structure_ID": 1081, + "lowered_ID": 1081.0, + "structure_id_path": "/997/8/567/688/695/315/44/1081/", + "very_general_region": "Isocortex", + "general_region": "Infralimbic", + "full_structure_name": "Infralimbic area, layer 6b", + "collapsed_region_name": "Infralimbic", + "abbreviation": "ILA6b", + "collapsed_region": "ILA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6b", + "sunburst": "ILA6b: rgb(88,178,99)", + "R": "88", + "G": "178", + "B": "99" + }, + "714": { + "order": 208, + "structure_ID": 714, + "lowered_ID": 714.0, + "structure_id_path": "/997/8/567/688/695/315/714/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area", + "collapsed_region_name": "Orbital", + "abbreviation": "ORB", + "collapsed_region": "ORB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ORB: rgb(35,137,92)", + "R": "35", + "G": "137", + "B": "92" + }, + "723": { + "order": 209, + "structure_ID": 723, + "lowered_ID": 723.0, + "structure_id_path": "/997/8/567/688/695/315/714/723/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, lateral part", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBl", + "collapsed_region": "ORB", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": null, + "sunburst": "ORBl: rgb(35,136,93)", + "R": "35", + "G": "136", + "B": "93" + }, + "448": { + "order": 210, + "structure_ID": 448, + "lowered_ID": 448.0, + "structure_id_path": "/997/8/567/688/695/315/714/723/448/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, lateral part, layer 1", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBl1", + "collapsed_region": "ORB", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "1", + "sunburst": "ORBl1: rgb(35,138,93)", + "R": "35", + "G": "138", + "B": "93" + }, + "412": { + "order": 211, + "structure_ID": 412, + "lowered_ID": 412.0, + "structure_id_path": "/997/8/567/688/695/315/714/723/412/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, lateral part, layer 2/3", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBl2/3", + "collapsed_region": "ORB", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "2/3", + "sunburst": "ORBl2/3: rgb(35,138,94)", + "R": "35", + "G": "138", + "B": "94" + }, + "630": { + "order": 212, + "structure_ID": 630, + "lowered_ID": 630.0, + "structure_id_path": "/997/8/567/688/695/315/714/723/630/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, lateral part, layer 5", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBl5", + "collapsed_region": "ORB", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "5", + "sunburst": "ORBl5: rgb(34,138,93)", + "R": "34", + "G": "138", + "B": "93" + }, + "440": { + "order": 213, + "structure_ID": 440, + "lowered_ID": 440.0, + "structure_id_path": "/997/8/567/688/695/315/714/723/440/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, lateral part, layer 6a", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBl6a", + "collapsed_region": "ORB", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "6a", + "sunburst": "ORBl6a: rgb(36,137,93)", + "R": "36", + "G": "137", + "B": "93" + }, + "488": { + "order": 214, + "structure_ID": 488, + "lowered_ID": 488.0, + "structure_id_path": "/997/8/567/688/695/315/714/723/488/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, lateral part, layer 6b", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBl6b", + "collapsed_region": "ORB", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "6b", + "sunburst": "ORBl6b: rgb(36,138,92)", + "R": "36", + "G": "138", + "B": "92" + }, + "731": { + "order": 215, + "structure_ID": 731, + "lowered_ID": 731.0, + "structure_id_path": "/997/8/567/688/695/315/714/731/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, medial part", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBm", + "collapsed_region": "ORB", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": null, + "sunburst": "ORBm: rgb(34,137,93)", + "R": "34", + "G": "137", + "B": "93" + }, + "484": { + "order": 216, + "structure_ID": 484, + "lowered_ID": 484.0, + "structure_id_path": "/997/8/567/688/695/315/714/731/484/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, medial part, layer 1", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBm1", + "collapsed_region": "ORB", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": "1", + "sunburst": "ORBm1: rgb(35,137,93)", + "R": "35", + "G": "137", + "B": "93" + }, + "582": { + "order": 217, + "structure_ID": 582, + "lowered_ID": 582.0, + "structure_id_path": "/997/8/567/688/695/315/714/731/582/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, medial part, layer 2/3", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBm2/3", + "collapsed_region": "ORB", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": "2/3", + "sunburst": "ORBm2/3: rgb(36,136,93)", + "R": "36", + "G": "136", + "B": "93" + }, + "620": { + "order": 218, + "structure_ID": 620, + "lowered_ID": 620.0, + "structure_id_path": "/997/8/567/688/695/315/714/731/620/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, medial part, layer 5", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBm5", + "collapsed_region": "ORB", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": "5", + "sunburst": "ORBm5: rgb(35,136,94)", + "R": "35", + "G": "136", + "B": "94" + }, + "910": { + "order": 219, + "structure_ID": 910, + "lowered_ID": 910.0, + "structure_id_path": "/997/8/567/688/695/315/714/731/910/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, medial part, layer 6a", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBm6a", + "collapsed_region": "ORB", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": "6a", + "sunburst": "ORBm6a: rgb(34,136,94)", + "R": "34", + "G": "136", + "B": "94" + }, + "527696977": { + "order": 220, + "structure_ID": 527696977, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/714/731/527696977/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, medial part, layer 6b", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBm6b", + "collapsed_region": "ORB", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": "6b", + "sunburst": "ORBm6b: rgb(36,135,94)", + "R": "36", + "G": "135", + "B": "94" + }, + "746": { + "order": 221, + "structure_ID": 746, + "lowered_ID": 746.0, + "structure_id_path": "/997/8/567/688/695/315/714/746/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, ventrolateral part", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBvl", + "collapsed_region": "ORB", + "other_abbreviation": "vl", + "other_abbreviation_defined": "ventrolateral", + "layer": null, + "sunburst": "ORBvl: rgb(34,138,92)", + "R": "34", + "G": "138", + "B": "92" + }, + "969": { + "order": 222, + "structure_ID": 969, + "lowered_ID": 969.0, + "structure_id_path": "/997/8/567/688/695/315/714/746/969/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, ventrolateral part, layer 1", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBvl1", + "collapsed_region": "ORB", + "other_abbreviation": "vl", + "other_abbreviation_defined": "ventrolateral", + "layer": "1", + "sunburst": "ORBvl1: rgb(36,138,91)", + "R": "36", + "G": "138", + "B": "91" + }, + "288": { + "order": 223, + "structure_ID": 288, + "lowered_ID": 288.0, + "structure_id_path": "/997/8/567/688/695/315/714/746/288/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, ventrolateral part, layer 2/3", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBvl2/3", + "collapsed_region": "ORB", + "other_abbreviation": "vl", + "other_abbreviation_defined": "ventrolateral", + "layer": "2/3", + "sunburst": "ORBvl2/3: rgb(36,138,93)", + "R": "36", + "G": "138", + "B": "93" + }, + "1125": { + "order": 224, + "structure_ID": 1125, + "lowered_ID": 1125.0, + "structure_id_path": "/997/8/567/688/695/315/714/746/1125/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, ventrolateral part, layer 5", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBvl5", + "collapsed_region": "ORB", + "other_abbreviation": "vl", + "other_abbreviation_defined": "ventrolateral", + "layer": "5", + "sunburst": "ORBvl5: rgb(35,136,92)", + "R": "35", + "G": "136", + "B": "92" + }, + "608": { + "order": 225, + "structure_ID": 608, + "lowered_ID": 608.0, + "structure_id_path": "/997/8/567/688/695/315/714/746/608/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, ventrolateral part, layer 6a", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBvl6a", + "collapsed_region": "ORB", + "other_abbreviation": "vl", + "other_abbreviation_defined": "ventrolateral", + "layer": "6a", + "sunburst": "ORBvl6a: rgb(35,138,92)", + "R": "35", + "G": "138", + "B": "92" + }, + "680": { + "order": 226, + "structure_ID": 680, + "lowered_ID": 680.0, + "structure_id_path": "/997/8/567/688/695/315/714/746/680/", + "very_general_region": "Isocortex", + "general_region": "Orbital", + "full_structure_name": "Orbital area, ventrolateral part, layer 6b", + "collapsed_region_name": "Orbital", + "abbreviation": "ORBvl6b", + "collapsed_region": "ORB", + "other_abbreviation": "vl", + "other_abbreviation_defined": "ventrolateral", + "layer": "6b", + "sunburst": "ORBvl6b: rgb(34,137,94)", + "R": "34", + "G": "137", + "B": "94" + }, + "95": { + "order": 227, + "structure_ID": 95, + "lowered_ID": 95.0, + "structure_id_path": "/997/8/567/688/695/315/95/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AI", + "collapsed_region": "AI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AI: rgb(33,152,102)", + "R": "33", + "G": "152", + "B": "102" + }, + "104": { + "order": 228, + "structure_ID": 104, + "lowered_ID": 104.0, + "structure_id_path": "/997/8/567/688/695/315/95/104/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, dorsal part", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AId", + "collapsed_region": "AI", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "AId: rgb(33,152,101)", + "R": "33", + "G": "152", + "B": "101" + }, + "996": { + "order": 229, + "structure_ID": 996, + "lowered_ID": 996.0, + "structure_id_path": "/997/8/567/688/695/315/95/104/996/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, dorsal part, layer 1", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AId1", + "collapsed_region": "AI", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "1", + "sunburst": "AId1: rgb(32,151,100)", + "R": "32", + "G": "151", + "B": "100" + }, + "328": { + "order": 230, + "structure_ID": 328, + "lowered_ID": 328.0, + "structure_id_path": "/997/8/567/688/695/315/95/104/328/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, dorsal part, layer 2/3", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AId2/3", + "collapsed_region": "AI", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "2/3", + "sunburst": "AId2/3: rgb(32,151,101)", + "R": "32", + "G": "151", + "B": "101" + }, + "1101": { + "order": 231, + "structure_ID": 1101, + "lowered_ID": 1101.0, + "structure_id_path": "/997/8/567/688/695/315/95/104/1101/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, dorsal part, layer 5", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AId5", + "collapsed_region": "AI", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "5", + "sunburst": "AId5: rgb(32,150,101)", + "R": "32", + "G": "150", + "B": "101" + }, + "783": { + "order": 232, + "structure_ID": 783, + "lowered_ID": 783.0, + "structure_id_path": "/997/8/567/688/695/315/95/104/783/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, dorsal part, layer 6a", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AId6a", + "collapsed_region": "AI", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "6a", + "sunburst": "AId6a: rgb(32,150,102)", + "R": "32", + "G": "150", + "B": "102" + }, + "831": { + "order": 233, + "structure_ID": 831, + "lowered_ID": 831.0, + "structure_id_path": "/997/8/567/688/695/315/95/104/831/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, dorsal part, layer 6b", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AId6b", + "collapsed_region": "AI", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "6b", + "sunburst": "AId6b: rgb(31,151,102)", + "R": "31", + "G": "151", + "B": "102" + }, + "111": { + "order": 234, + "structure_ID": 111, + "lowered_ID": 111.0, + "structure_id_path": "/997/8/567/688/695/315/95/111/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, posterior part", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AIp", + "collapsed_region": "AI", + "other_abbreviation": "p", + "other_abbreviation_defined": "posterior", + "layer": null, + "sunburst": "AIp: rgb(33,151,102)", + "R": "33", + "G": "151", + "B": "102" + }, + "120": { + "order": 235, + "structure_ID": 120, + "lowered_ID": 120.0, + "structure_id_path": "/997/8/567/688/695/315/95/111/120/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, posterior part, layer 1", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AIp1", + "collapsed_region": "AI", + "other_abbreviation": "p", + "other_abbreviation_defined": "posterior", + "layer": "1", + "sunburst": "AIp1: rgb(33,151,101)", + "R": "33", + "G": "151", + "B": "101" + }, + "163": { + "order": 236, + "structure_ID": 163, + "lowered_ID": 163.0, + "structure_id_path": "/997/8/567/688/695/315/95/111/163/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, posterior part, layer 2/3", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AIp2/3", + "collapsed_region": "AI", + "other_abbreviation": "p", + "other_abbreviation_defined": "posterior", + "layer": "2/3", + "sunburst": "AIp2/3: rgb(32,152,101)", + "R": "32", + "G": "152", + "B": "101" + }, + "344": { + "order": 237, + "structure_ID": 344, + "lowered_ID": 344.0, + "structure_id_path": "/997/8/567/688/695/315/95/111/344/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, posterior part, layer 5", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AIp5", + "collapsed_region": "AI", + "other_abbreviation": "p", + "other_abbreviation_defined": "posterior", + "layer": "5", + "sunburst": "AIp5: rgb(33,152,100)", + "R": "33", + "G": "152", + "B": "100" + }, + "314": { + "order": 238, + "structure_ID": 314, + "lowered_ID": 314.0, + "structure_id_path": "/997/8/567/688/695/315/95/111/314/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, posterior part, layer 6a", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AIp6a", + "collapsed_region": "AI", + "other_abbreviation": "p", + "other_abbreviation_defined": "posterior", + "layer": "6a", + "sunburst": "AIp6a: rgb(32,151,102)", + "R": "32", + "G": "151", + "B": "102" + }, + "355": { + "order": 239, + "structure_ID": 355, + "lowered_ID": 355.0, + "structure_id_path": "/997/8/567/688/695/315/95/111/355/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, posterior part, layer 6b", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AIp6b", + "collapsed_region": "AI", + "other_abbreviation": "p", + "other_abbreviation_defined": "posterior", + "layer": "6b", + "sunburst": "AIp6b: rgb(33,150,102)", + "R": "33", + "G": "150", + "B": "102" + }, + "119": { + "order": 240, + "structure_ID": 119, + "lowered_ID": 119.0, + "structure_id_path": "/997/8/567/688/695/315/95/119/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, ventral part", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AIv", + "collapsed_region": "AI", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "AIv: rgb(32,152,102)", + "R": "32", + "G": "152", + "B": "102" + }, + "704": { + "order": 241, + "structure_ID": 704, + "lowered_ID": 704.0, + "structure_id_path": "/997/8/567/688/695/315/95/119/704/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, ventral part, layer 1", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AIv1", + "collapsed_region": "AI", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "1", + "sunburst": "AIv1: rgb(32,152,100)", + "R": "32", + "G": "152", + "B": "100" + }, + "694": { + "order": 242, + "structure_ID": 694, + "lowered_ID": 694.0, + "structure_id_path": "/997/8/567/688/695/315/95/119/694/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, ventral part, layer 2/3", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AIv2/3", + "collapsed_region": "AI", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "2/3", + "sunburst": "AIv2/3: rgb(33,151,100)", + "R": "33", + "G": "151", + "B": "100" + }, + "800": { + "order": 243, + "structure_ID": 800, + "lowered_ID": 800.0, + "structure_id_path": "/997/8/567/688/695/315/95/119/800/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, ventral part, layer 5", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AIv5", + "collapsed_region": "AI", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "5", + "sunburst": "AIv5: rgb(31,152,101)", + "R": "31", + "G": "152", + "B": "101" + }, + "675": { + "order": 244, + "structure_ID": 675, + "lowered_ID": 675.0, + "structure_id_path": "/997/8/567/688/695/315/95/119/675/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, ventral part, layer 6a", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AIv6a", + "collapsed_region": "AI", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "6a", + "sunburst": "AIv6a: rgb(31,152,102)", + "R": "31", + "G": "152", + "B": "102" + }, + "699": { + "order": 245, + "structure_ID": 699, + "lowered_ID": 699.0, + "structure_id_path": "/997/8/567/688/695/315/95/119/699/", + "very_general_region": "Isocortex", + "general_region": "Agranular insula", + "full_structure_name": "Agranular insular area, ventral part, layer 6b", + "collapsed_region_name": "Agranular insula", + "abbreviation": "AIv6b", + "collapsed_region": "AI", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "6b", + "sunburst": "AIv6b: rgb(33,150,101)", + "R": "33", + "G": "150", + "B": "101" + }, + "254": { + "order": 246, + "structure_ID": 254, + "lowered_ID": 254.0, + "structure_id_path": "/997/8/567/688/695/315/254/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSP", + "collapsed_region": "RSP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RSP: rgb(26,166,152)", + "R": "26", + "G": "166", + "B": "152" + }, + "894": { + "order": 247, + "structure_ID": 894, + "lowered_ID": 894.0, + "structure_id_path": "/997/8/567/688/695/315/254/894/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, lateral agranular part", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPagl", + "collapsed_region": "RSP", + "other_abbreviation": "agl", + "other_abbreviation_defined": "agranular", + "layer": null, + "sunburst": "RSPagl: rgb(27,164,151)", + "R": "27", + "G": "164", + "B": "151" + }, + "671": { + "order": 248, + "structure_ID": 671, + "lowered_ID": 671.0, + "structure_id_path": "/997/8/567/688/695/315/254/894/671/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, lateral agranular part, layer 1", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPagl1", + "collapsed_region": "RSP", + "other_abbreviation": "agl", + "other_abbreviation_defined": "agranular", + "layer": "1", + "sunburst": "RSPagl1: rgb(27,166,150)", + "R": "27", + "G": "166", + "B": "150" + }, + "965": { + "order": 249, + "structure_ID": 965, + "lowered_ID": 965.0, + "structure_id_path": "/997/8/567/688/695/315/254/894/965/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, lateral agranular part, layer 2/3", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPagl2/3", + "collapsed_region": "RSP", + "other_abbreviation": "agl", + "other_abbreviation_defined": "agranular", + "layer": "2/3", + "sunburst": "RSPagl2/3: rgb(26,164,150)", + "R": "26", + "G": "164", + "B": "150" + }, + "774": { + "order": 250, + "structure_ID": 774, + "lowered_ID": 774.0, + "structure_id_path": "/997/8/567/688/695/315/254/894/774/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, lateral agranular part, layer 5", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPagl5", + "collapsed_region": "RSP", + "other_abbreviation": "agl", + "other_abbreviation_defined": "agranular", + "layer": "5", + "sunburst": "RSPagl5: rgb(28,166,151)", + "R": "28", + "G": "166", + "B": "151" + }, + "906": { + "order": 251, + "structure_ID": 906, + "lowered_ID": 906.0, + "structure_id_path": "/997/8/567/688/695/315/254/894/906/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, lateral agranular part, layer 6a", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPagl6a", + "collapsed_region": "RSP", + "other_abbreviation": "agl", + "other_abbreviation_defined": "agranular", + "layer": "6a", + "sunburst": "RSPagl6a: rgb(28,165,151)", + "R": "28", + "G": "165", + "B": "151" + }, + "279": { + "order": 252, + "structure_ID": 279, + "lowered_ID": 279.0, + "structure_id_path": "/997/8/567/688/695/315/254/894/279/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, lateral agranular part, layer 6b", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPagl6b", + "collapsed_region": "RSP", + "other_abbreviation": "agl", + "other_abbreviation_defined": "agranular", + "layer": "6b", + "sunburst": "RSPagl6b: rgb(26,165,152)", + "R": "26", + "G": "165", + "B": "152" + }, + "879": { + "order": 253, + "structure_ID": 879, + "lowered_ID": 879.0, + "structure_id_path": "/997/8/567/688/695/315/254/879/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, dorsal part", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPd", + "collapsed_region": "RSP", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "RSPd: rgb(28,165,152)", + "R": "28", + "G": "165", + "B": "152" + }, + "442": { + "order": 254, + "structure_ID": 442, + "lowered_ID": 442.0, + "structure_id_path": "/997/8/567/688/695/315/254/879/442/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, dorsal part, layer 1", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPd1", + "collapsed_region": "RSP", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "1", + "sunburst": "RSPd1: rgb(27,165,152)", + "R": "27", + "G": "165", + "B": "152" + }, + "434": { + "order": 255, + "structure_ID": 434, + "lowered_ID": 434.0, + "structure_id_path": "/997/8/567/688/695/315/254/879/434/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, dorsal part, layer 2/3", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPd2/3", + "collapsed_region": "RSP", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "2/3", + "sunburst": "RSPd2/3: rgb(27,166,151)", + "R": "27", + "G": "166", + "B": "151" + }, + "610": { + "order": 256, + "structure_ID": 610, + "lowered_ID": 610.0, + "structure_id_path": "/997/8/567/688/695/315/254/879/610/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, dorsal part, layer 5", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPd5", + "collapsed_region": "RSP", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "5", + "sunburst": "RSPd5: rgb(26,165,150)", + "R": "26", + "G": "165", + "B": "150" + }, + "274": { + "order": 257, + "structure_ID": 274, + "lowered_ID": 274.0, + "structure_id_path": "/997/8/567/688/695/315/254/879/274/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, dorsal part, layer 6a", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPd6a", + "collapsed_region": "RSP", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "6a", + "sunburst": "RSPd6a: rgb(26,166,151)", + "R": "26", + "G": "166", + "B": "151" + }, + "330": { + "order": 258, + "structure_ID": 330, + "lowered_ID": 330.0, + "structure_id_path": "/997/8/567/688/695/315/254/879/330/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, dorsal part, layer 6b", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPd6b", + "collapsed_region": "RSP", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": "6b", + "sunburst": "RSPd6b: rgb(27,166,152)", + "R": "27", + "G": "166", + "B": "152" + }, + "886": { + "order": 259, + "structure_ID": 886, + "lowered_ID": 886.0, + "structure_id_path": "/997/8/567/688/695/315/254/886/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, ventral part", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPv", + "collapsed_region": "RSP", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "RSPv: rgb(27,165,150)", + "R": "27", + "G": "165", + "B": "150" + }, + "542": { + "order": 260, + "structure_ID": 542, + "lowered_ID": 542.0, + "structure_id_path": "/997/8/567/688/695/315/254/886/542/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, ventral part, layer 1", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPv1", + "collapsed_region": "RSP", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "1", + "sunburst": "RSPv1: rgb(27,165,151)", + "R": "27", + "G": "165", + "B": "151" + }, + "430": { + "order": 261, + "structure_ID": 430, + "lowered_ID": 430.0, + "structure_id_path": "/997/8/567/688/695/315/254/886/430/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, ventral part, layer 2/3", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPv2/3", + "collapsed_region": "RSP", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "2/3", + "sunburst": "RSPv2/3: rgb(26,165,151)", + "R": "26", + "G": "165", + "B": "151" + }, + "687": { + "order": 262, + "structure_ID": 687, + "lowered_ID": 687.0, + "structure_id_path": "/997/8/567/688/695/315/254/886/687/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, ventral part, layer 5", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPv5", + "collapsed_region": "RSP", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "5", + "sunburst": "RSPv5: rgb(27,164,152)", + "R": "27", + "G": "164", + "B": "152" + }, + "590": { + "order": 263, + "structure_ID": 590, + "lowered_ID": 590.0, + "structure_id_path": "/997/8/567/688/695/315/254/886/590/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, ventral part, layer 6a", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPv6a", + "collapsed_region": "RSP", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "6a", + "sunburst": "RSPv6a: rgb(26,164,152)", + "R": "26", + "G": "164", + "B": "152" + }, + "622": { + "order": 264, + "structure_ID": 622, + "lowered_ID": 622.0, + "structure_id_path": "/997/8/567/688/695/315/254/886/622/", + "very_general_region": "Isocortex", + "general_region": "Retrosplenial", + "full_structure_name": "Retrosplenial area, ventral part, layer 6b", + "collapsed_region_name": "Retrosplenial", + "abbreviation": "RSPv6b", + "collapsed_region": "RSP", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": "6b", + "sunburst": "RSPv6b: rgb(26,164,151)", + "R": "26", + "G": "164", + "B": "151" + }, + "22": { + "order": 265, + "structure_ID": 22, + "lowered_ID": 22.0, + "structure_id_path": "/997/8/567/688/695/315/22/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Posterior parietal association areas", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "PTLp", + "collapsed_region": "PTLp", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PTLp: rgb(0,159,172)", + "R": "0", + "G": "159", + "B": "172" + }, + "312782546": { + "order": 266, + "structure_ID": 312782546, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/312782546/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Anterior area", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISa", + "collapsed_region": "PTL", + "other_abbreviation": "a", + "other_abbreviation_defined": "anterior", + "layer": null, + "sunburst": "VISa: rgb(0,159,171)", + "R": "0", + "G": "159", + "B": "171" + }, + "312782550": { + "order": 267, + "structure_ID": 312782550, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/312782546/312782550/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Anterior area, layer 1", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISa1", + "collapsed_region": "PTL", + "other_abbreviation": "a", + "other_abbreviation_defined": "anterior", + "layer": "1", + "sunburst": "VISa1: rgb(1,159,172)", + "R": "1", + "G": "159", + "B": "172" + }, + "312782554": { + "order": 268, + "structure_ID": 312782554, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/312782546/312782554/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Anterior area, layer 2/3", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISa2/3", + "collapsed_region": "PTL", + "other_abbreviation": "a", + "other_abbreviation_defined": "anterior", + "layer": "2/3", + "sunburst": "VISa2/3: rgb(0,158,171)", + "R": "0", + "G": "158", + "B": "171" + }, + "312782558": { + "order": 269, + "structure_ID": 312782558, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/312782546/312782558/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Anterior area, layer 4", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISa4", + "collapsed_region": "PTL", + "other_abbreviation": "a", + "other_abbreviation_defined": "anterior", + "layer": "4", + "sunburst": "VISa4: rgb(1,158,172)", + "R": "1", + "G": "158", + "B": "172" + }, + "312782562": { + "order": 270, + "structure_ID": 312782562, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/312782546/312782562/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Anterior area, layer 5", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISa5", + "collapsed_region": "PTL", + "other_abbreviation": "a", + "other_abbreviation_defined": "anterior", + "layer": "5", + "sunburst": "VISa5: rgb(1,158,171)", + "R": "1", + "G": "158", + "B": "171" + }, + "312782566": { + "order": 271, + "structure_ID": 312782566, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/312782546/312782566/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Anterior area, layer 6a", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISa6a", + "collapsed_region": "PTL", + "other_abbreviation": "a", + "other_abbreviation_defined": "anterior", + "layer": "6a", + "sunburst": "VISa6a: rgb(0,157,172)", + "R": "0", + "G": "157", + "B": "172" + }, + "312782570": { + "order": 272, + "structure_ID": 312782570, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/312782546/312782570/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Anterior area, layer 6b", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISa6b", + "collapsed_region": "PTL", + "other_abbreviation": "a", + "other_abbreviation_defined": "anterior", + "layer": "6b", + "sunburst": "VISa6b: rgb(2,159,172)", + "R": "2", + "G": "159", + "B": "172" + }, + "417": { + "order": 273, + "structure_ID": 417, + "lowered_ID": 417.0, + "structure_id_path": "/997/8/567/688/695/315/22/417/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Rostrolateral visual area", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISrl", + "collapsed_region": "PTL", + "other_abbreviation": "rl", + "other_abbreviation_defined": "rostrolateral", + "layer": null, + "sunburst": "VISrl: rgb(0,158,170)", + "R": "0", + "G": "158", + "B": "170" + }, + "312782604": { + "order": 274, + "structure_ID": 312782604, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/417/312782604/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Rostrolateral area, layer 1", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISrl1", + "collapsed_region": "PTL", + "other_abbreviation": "rl", + "other_abbreviation_defined": "rostrolateral", + "layer": "1", + "sunburst": "VISrl1: rgb(2,159,171)", + "R": "2", + "G": "159", + "B": "171" + }, + "312782608": { + "order": 275, + "structure_ID": 312782608, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/417/312782608/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Rostrolateral area, layer 2/3", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISrl2/3", + "collapsed_region": "PTL", + "other_abbreviation": "rl", + "other_abbreviation_defined": "rostrolateral", + "layer": "2/3", + "sunburst": "VISrl2/3: rgb(2,158,172)", + "R": "2", + "G": "158", + "B": "172" + }, + "312782612": { + "order": 276, + "structure_ID": 312782612, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/417/312782612/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Rostrolateral area, layer 4", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISrl4", + "collapsed_region": "PTL", + "other_abbreviation": "rl", + "other_abbreviation_defined": "rostrolateral", + "layer": "4", + "sunburst": "VISrl4: rgb(1,158,170)", + "R": "1", + "G": "158", + "B": "170" + }, + "312782616": { + "order": 277, + "structure_ID": 312782616, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/417/312782616/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Rostrolateral area, layer 5", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISrl5", + "collapsed_region": "PTL", + "other_abbreviation": "rl", + "other_abbreviation_defined": "rostrolateral", + "layer": "5", + "sunburst": "VISrl5: rgb(1,157,171)", + "R": "1", + "G": "157", + "B": "171" + }, + "312782620": { + "order": 278, + "structure_ID": 312782620, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/417/312782620/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Rostrolateral area, layer 6a", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISrl6a", + "collapsed_region": "PTL", + "other_abbreviation": "rl", + "other_abbreviation_defined": "rostrolateral", + "layer": "6a", + "sunburst": "VISrl6a: rgb(2,158,171)", + "R": "2", + "G": "158", + "B": "171" + }, + "312782624": { + "order": 279, + "structure_ID": 312782624, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/315/22/417/312782624/", + "very_general_region": "Isocortex", + "general_region": "Posterior parietal association", + "full_structure_name": "Rostrolateral area, layer 6b", + "collapsed_region_name": "Posterior parietal association", + "abbreviation": "VISrl6b", + "collapsed_region": "PTL", + "other_abbreviation": "rl", + "other_abbreviation_defined": "rostrolateral", + "layer": "6b", + "sunburst": "VISrl6b: rgb(0,157,170)", + "R": "0", + "G": "157", + "B": "170" + }, + "541": { + "order": 280, + "structure_ID": 541, + "lowered_ID": 541.0, + "structure_id_path": "/997/8/567/688/695/315/541/", + "very_general_region": "Isocortex", + "general_region": "Temporal", + "full_structure_name": "Temporal association areas", + "collapsed_region_name": "Temporal", + "abbreviation": "TEa", + "collapsed_region": "TEa", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "TEa: rgb(22,176,179)", + "R": "22", + "G": "176", + "B": "179" + }, + "97": { + "order": 281, + "structure_ID": 97, + "lowered_ID": 97.0, + "structure_id_path": "/997/8/567/688/695/315/541/97/", + "very_general_region": "Isocortex", + "general_region": "Temporal", + "full_structure_name": "Temporal association areas, layer 1", + "collapsed_region_name": "Temporal", + "abbreviation": "TEa1", + "collapsed_region": "TEa", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "1", + "sunburst": "TEa1: rgb(21,176,179)", + "R": "21", + "G": "176", + "B": "179" + }, + "1127": { + "order": 282, + "structure_ID": 1127, + "lowered_ID": 1127.0, + "structure_id_path": "/997/8/567/688/695/315/541/1127/", + "very_general_region": "Isocortex", + "general_region": "Temporal", + "full_structure_name": "Temporal association areas, layer 2/3", + "collapsed_region_name": "Temporal", + "abbreviation": "TEa2/3", + "collapsed_region": "TEa", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "2/3", + "sunburst": "TEa2/3: rgb(22,175,179)", + "R": "22", + "G": "175", + "B": "179" + }, + "234": { + "order": 283, + "structure_ID": 234, + "lowered_ID": 234.0, + "structure_id_path": "/997/8/567/688/695/315/541/234/", + "very_general_region": "Isocortex", + "general_region": "Temporal", + "full_structure_name": "Temporal association areas, layer 4", + "collapsed_region_name": "Temporal", + "abbreviation": "TEa4", + "collapsed_region": "TEa", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "4", + "sunburst": "TEa4: rgb(21,176,178)", + "R": "21", + "G": "176", + "B": "178" + }, + "289": { + "order": 284, + "structure_ID": 289, + "lowered_ID": 289.0, + "structure_id_path": "/997/8/567/688/695/315/541/289/", + "very_general_region": "Isocortex", + "general_region": "Temporal", + "full_structure_name": "Temporal association areas, layer 5", + "collapsed_region_name": "Temporal", + "abbreviation": "TEa5", + "collapsed_region": "TEa", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "5", + "sunburst": "TEa5: rgb(21,175,179)", + "R": "21", + "G": "175", + "B": "179" + }, + "729": { + "order": 285, + "structure_ID": 729, + "lowered_ID": 729.0, + "structure_id_path": "/997/8/567/688/695/315/541/729/", + "very_general_region": "Isocortex", + "general_region": "Temporal", + "full_structure_name": "Temporal association areas, layer 6a", + "collapsed_region_name": "Temporal", + "abbreviation": "TEa6a", + "collapsed_region": "TEa", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6a", + "sunburst": "TEa6a: rgb(21,175,178)", + "R": "21", + "G": "175", + "B": "178" + }, + "786": { + "order": 286, + "structure_ID": 786, + "lowered_ID": 786.0, + "structure_id_path": "/997/8/567/688/695/315/541/786/", + "very_general_region": "Isocortex", + "general_region": "Temporal", + "full_structure_name": "Temporal association areas, layer 6b", + "collapsed_region_name": "Temporal", + "abbreviation": "TEa6b", + "collapsed_region": "TEa", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6b", + "sunburst": "TEa6b: rgb(22,176,178)", + "R": "22", + "G": "176", + "B": "178" + }, + "922": { + "order": 287, + "structure_ID": 922, + "lowered_ID": 922.0, + "structure_id_path": "/997/8/567/688/695/315/922/", + "very_general_region": "Isocortex", + "general_region": "Perirhinal", + "full_structure_name": "Perirhinal area", + "collapsed_region_name": "Perirhinal", + "abbreviation": "PERI", + "collapsed_region": "PERI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PERI: rgb(15,150,131)", + "R": "15", + "G": "150", + "B": "131" + }, + "335": { + "order": 288, + "structure_ID": 335, + "lowered_ID": 335.0, + "structure_id_path": "/997/8/567/688/695/315/922/335/", + "very_general_region": "Isocortex", + "general_region": "Perirhinal", + "full_structure_name": "Perirhinal area, layer 6a", + "collapsed_region_name": "Perirhinal", + "abbreviation": "PERI6a", + "collapsed_region": "PERI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6a", + "sunburst": "PERI1: rgb(14,149,132)", + "R": "14", + "G": "149", + "B": "132" + }, + "368": { + "order": 289, + "structure_ID": 368, + "lowered_ID": 368.0, + "structure_id_path": "/997/8/567/688/695/315/922/368/", + "very_general_region": "Isocortex", + "general_region": "Perirhinal", + "full_structure_name": "Perirhinal area, layer 6b", + "collapsed_region_name": "Perirhinal", + "abbreviation": "PERI6b", + "collapsed_region": "PERI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6b", + "sunburst": "PERI2/3: rgb(14,149,131)", + "R": "14", + "G": "149", + "B": "131" + }, + "540": { + "order": 290, + "structure_ID": 540, + "lowered_ID": 540.0, + "structure_id_path": "/997/8/567/688/695/315/922/540/", + "very_general_region": "Isocortex", + "general_region": "Perirhinal", + "full_structure_name": "Perirhinal area, layer 1", + "collapsed_region_name": "Perirhinal", + "abbreviation": "PERI1", + "collapsed_region": "PERI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "1", + "sunburst": "PERI5: rgb(15,150,132)", + "R": "15", + "G": "150", + "B": "132" + }, + "692": { + "order": 291, + "structure_ID": 692, + "lowered_ID": 692.0, + "structure_id_path": "/997/8/567/688/695/315/922/692/", + "very_general_region": "Isocortex", + "general_region": "Perirhinal", + "full_structure_name": "Perirhinal area, layer 5", + "collapsed_region_name": "Perirhinal", + "abbreviation": "PERI5", + "collapsed_region": "PERI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "5", + "sunburst": "PERI6a: rgb(14,150,132)", + "R": "14", + "G": "150", + "B": "132" + }, + "888": { + "order": 292, + "structure_ID": 888, + "lowered_ID": 888.0, + "structure_id_path": "/997/8/567/688/695/315/922/888/", + "very_general_region": "Isocortex", + "general_region": "Perirhinal", + "full_structure_name": "Perirhinal area, layer 2/3", + "collapsed_region_name": "Perirhinal", + "abbreviation": "PERI2/3", + "collapsed_region": "PERI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "2/3", + "sunburst": "PERI6b: rgb(14,150,131)", + "R": "14", + "G": "150", + "B": "131" + }, + "895": { + "order": 293, + "structure_ID": 895, + "lowered_ID": 895.0, + "structure_id_path": "/997/8/567/688/695/315/895/", + "very_general_region": "Isocortex", + "general_region": "Ectorhinal", + "full_structure_name": "Ectorhinal area", + "collapsed_region_name": "Ectorhinal", + "abbreviation": "ECT", + "collapsed_region": "ECT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ECT: rgb(13,158,145)", + "R": "13", + "G": "158", + "B": "145" + }, + "836": { + "order": 294, + "structure_ID": 836, + "lowered_ID": 836.0, + "structure_id_path": "/997/8/567/688/695/315/895/836/", + "very_general_region": "Isocortex", + "general_region": "Ectorhinal", + "full_structure_name": "Ectorhinal area/Layer 1", + "collapsed_region_name": "Ectorhinal", + "abbreviation": "ECT1", + "collapsed_region": "ECT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "1", + "sunburst": "ECT1: rgb(13,159,144)", + "R": "13", + "G": "159", + "B": "144" + }, + "427": { + "order": 295, + "structure_ID": 427, + "lowered_ID": 427.0, + "structure_id_path": "/997/8/567/688/695/315/895/427/", + "very_general_region": "Isocortex", + "general_region": "Ectorhinal", + "full_structure_name": "Ectorhinal area/Layer 2/3", + "collapsed_region_name": "Ectorhinal", + "abbreviation": "ECT2/3", + "collapsed_region": "ECT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "2/3", + "sunburst": "ECT2/3: rgb(13,159,145)", + "R": "13", + "G": "159", + "B": "145" + }, + "988": { + "order": 296, + "structure_ID": 988, + "lowered_ID": 988.0, + "structure_id_path": "/997/8/567/688/695/315/895/988/", + "very_general_region": "Isocortex", + "general_region": "Ectorhinal", + "full_structure_name": "Ectorhinal area/Layer 5", + "collapsed_region_name": "Ectorhinal", + "abbreviation": "ECT5", + "collapsed_region": "ECT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "5", + "sunburst": "ECT5: rgb(13,158,144)", + "R": "13", + "G": "158", + "B": "144" + }, + "977": { + "order": 297, + "structure_ID": 977, + "lowered_ID": 977.0, + "structure_id_path": "/997/8/567/688/695/315/895/977/", + "very_general_region": "Isocortex", + "general_region": "Ectorhinal", + "full_structure_name": "Ectorhinal area/Layer 6a", + "collapsed_region_name": "Ectorhinal", + "abbreviation": "ECT6a", + "collapsed_region": "ECT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6a", + "sunburst": "ECT6a: rgb(14,159,145)", + "R": "14", + "G": "159", + "B": "145" + }, + "1045": { + "order": 298, + "structure_ID": 1045, + "lowered_ID": 1045.0, + "structure_id_path": "/997/8/567/688/695/315/895/1045/", + "very_general_region": "Isocortex", + "general_region": "Ectorhinal", + "full_structure_name": "Ectorhinal area/Layer 6b", + "collapsed_region_name": "Ectorhinal", + "abbreviation": "ECT6b", + "collapsed_region": "ECT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": "6b", + "sunburst": "ECT6b: rgb(14,159,144)", + "R": "14", + "G": "159", + "B": "144" + }, + "698": { + "order": 299, + "structure_ID": 698, + "lowered_ID": 698.0, + "structure_id_path": "/997/8/567/688/695/698/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Olfactory areas", + "collapsed_region_name": "Olfactory", + "abbreviation": "OLF", + "collapsed_region": "OLF", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "OLF: rgb(153,210,189)", + "R": "153", + "G": "210", + "B": "189" + }, + "507": { + "order": 300, + "structure_ID": 507, + "lowered_ID": 507.0, + "structure_id_path": "/997/8/567/688/695/698/507/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Main olfactory bulb", + "collapsed_region_name": "Main olfactory bulb", + "abbreviation": "MOB", + "collapsed_region": "MOB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MOB: rgb(154,209,189)", + "R": "154", + "G": "209", + "B": "189" + }, + "151": { + "order": 301, + "structure_ID": 151, + "lowered_ID": 151.0, + "structure_id_path": "/997/8/567/688/695/698/151/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Accessory olfactory bulb", + "collapsed_region_name": "Accessory olfactory bulb", + "abbreviation": "AOB", + "collapsed_region": "AOB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AOB: rgb(157,240,210)", + "R": "157", + "G": "240", + "B": "210" + }, + "188": { + "order": 302, + "structure_ID": 188, + "lowered_ID": 188.0, + "structure_id_path": "/997/8/567/688/695/698/151/188/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Accessory olfactory bulb, glomerular layer", + "collapsed_region_name": "Accessory olfactory bulb", + "abbreviation": "AOBgl", + "collapsed_region": "AOB", + "other_abbreviation": "gl", + "other_abbreviation_defined": "glomerular layer", + "layer": null, + "sunburst": "AOBgl: rgb(157,240,209)", + "R": "157", + "G": "240", + "B": "209" + }, + "196": { + "order": 303, + "structure_ID": 196, + "lowered_ID": 196.0, + "structure_id_path": "/997/8/567/688/695/698/151/196/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Accessory olfactory bulb, granular layer", + "collapsed_region_name": "Accessory olfactory bulb", + "abbreviation": "AOBgr", + "collapsed_region": "AOB", + "other_abbreviation": "gr", + "other_abbreviation_defined": "granular layer", + "layer": null, + "sunburst": "AOBgr: rgb(149,228,200)", + "R": "149", + "G": "228", + "B": "200" + }, + "204": { + "order": 304, + "structure_ID": 204, + "lowered_ID": 204.0, + "structure_id_path": "/997/8/567/688/695/698/151/204/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Accessory olfactory bulb, mitral layer", + "collapsed_region_name": "Accessory olfactory bulb", + "abbreviation": "AOBmi", + "collapsed_region": "AOB", + "other_abbreviation": "mi", + "other_abbreviation_defined": "mitral layer", + "layer": null, + "sunburst": "AOBmi: rgb(157,239,210)", + "R": "157", + "G": "239", + "B": "210" + }, + "159": { + "order": 305, + "structure_ID": 159, + "lowered_ID": 159.0, + "structure_id_path": "/997/8/567/688/695/698/159/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Anterior olfactory nucleus", + "collapsed_region_name": "Anterior olfactory nucleus", + "abbreviation": "AON", + "collapsed_region": "AON", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AON: rgb(84,191,148)", + "R": "84", + "G": "191", + "B": "148" + }, + "589": { + "order": 306, + "structure_ID": 589, + "lowered_ID": 589.0, + "structure_id_path": "/997/8/567/688/695/698/589/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Taenia tecta", + "collapsed_region_name": "Taenia tecta", + "abbreviation": "TT", + "collapsed_region": "TT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "TT: rgb(98,207,159)", + "R": "98", + "G": "207", + "B": "159" + }, + "597": { + "order": 307, + "structure_ID": 597, + "lowered_ID": 597.0, + "structure_id_path": "/997/8/567/688/695/698/589/597/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Taenia tecta, dorsal part", + "collapsed_region_name": "Taenia tecta", + "abbreviation": "TTd", + "collapsed_region": "TT", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "TTd: rgb(97,208,159)", + "R": "97", + "G": "208", + "B": "159" + }, + "605": { + "order": 308, + "structure_ID": 605, + "lowered_ID": 605.0, + "structure_id_path": "/997/8/567/688/695/698/589/605/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Taenia tecta, ventral part", + "collapsed_region_name": "Taenia tecta", + "abbreviation": "TTv", + "collapsed_region": "TT", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "TTv: rgb(98,207,158)", + "R": "98", + "G": "207", + "B": "158" + }, + "814": { + "order": 309, + "structure_ID": 814, + "lowered_ID": 814.0, + "structure_id_path": "/997/8/567/688/695/698/814/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Dorsal peduncular area", + "collapsed_region_name": "Dorsal peduncular area", + "abbreviation": "DP", + "collapsed_region": "DP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "DP: rgb(163,218,163)", + "R": "163", + "G": "218", + "B": "163" + }, + "961": { + "order": 310, + "structure_ID": 961, + "lowered_ID": 961.0, + "structure_id_path": "/997/8/567/688/695/698/961/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Piriform area", + "collapsed_region_name": "Piriform area", + "abbreviation": "PIR", + "collapsed_region": "PIR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PIR: rgb(106,202,185)", + "R": "106", + "G": "202", + "B": "185" + }, + "619": { + "order": 311, + "structure_ID": 619, + "lowered_ID": 619.0, + "structure_id_path": "/997/8/567/688/695/698/619/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Nucleus of the lateral olfactory tract", + "collapsed_region_name": "Nucleus of the lateral olfactory tract", + "abbreviation": "NLOT", + "collapsed_region": "NLOT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "NLOT: rgb(149,227,199)", + "R": "149", + "G": "227", + "B": "199" + }, + "260": { + "order": 312, + "structure_ID": 260, + "lowered_ID": 260.0, + "structure_id_path": "/997/8/567/688/695/698/619/260/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Nucleus of the lateral olfactory tract, molecular layer", + "collapsed_region_name": "Nucleus of the lateral olfactory tract", + "abbreviation": "NLOT1", + "collapsed_region": "NLOT", + "other_abbreviation": "1", + "other_abbreviation_defined": "molecular layer", + "layer": null, + "sunburst": "NLOT1: rgb(149,228,199)", + "R": "149", + "G": "228", + "B": "199" + }, + "268": { + "order": 313, + "structure_ID": 268, + "lowered_ID": 268.0, + "structure_id_path": "/997/8/567/688/695/698/619/268/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Nucleus of the lateral olfactory tract, pyramidal layer", + "collapsed_region_name": "Nucleus of the lateral olfactory tract", + "abbreviation": "NLOT2", + "collapsed_region": "NLOT", + "other_abbreviation": "2", + "other_abbreviation_defined": "pyramidal layer", + "layer": null, + "sunburst": "NLOT2: rgb(149,227,200)", + "R": "149", + "G": "227", + "B": "200" + }, + "1139": { + "order": 314, + "structure_ID": 1139, + "lowered_ID": 1139.0, + "structure_id_path": "/997/8/567/688/695/698/619/1139/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Nucleus of the lateral olfactory tract, layer 3", + "collapsed_region_name": "Nucleus of the lateral olfactory tract", + "abbreviation": "NLOT3", + "collapsed_region": "NLOT", + "other_abbreviation": "3", + "other_abbreviation_defined": "layer 3", + "layer": null, + "sunburst": "NLOT3: rgb(148,228,199)", + "R": "148", + "G": "228", + "B": "199" + }, + "631": { + "order": 315, + "structure_ID": 631, + "lowered_ID": 631.0, + "structure_id_path": "/997/8/567/688/695/698/631/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Cortical amygdalar area", + "collapsed_region_name": "Cortical amygdalar area", + "abbreviation": "COA", + "collapsed_region": "COA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "COA: rgb(96,231,181)", + "R": "96", + "G": "231", + "B": "181" + }, + "639": { + "order": 316, + "structure_ID": 639, + "lowered_ID": 639.0, + "structure_id_path": "/997/8/567/688/695/698/631/639/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Cortical amygdalar area, anterior part", + "collapsed_region_name": "Cortical amygdalar area", + "abbreviation": "COAa", + "collapsed_region": "COA", + "other_abbreviation": "a", + "other_abbreviation_defined": "anterior", + "layer": null, + "sunburst": "COAa: rgb(96,229,183)", + "R": "96", + "G": "229", + "B": "183" + }, + "647": { + "order": 317, + "structure_ID": 647, + "lowered_ID": 647.0, + "structure_id_path": "/997/8/567/688/695/698/631/647/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Cortical amygdalar area, posterior part", + "collapsed_region_name": "Cortical amygdalar area", + "abbreviation": "COAp", + "collapsed_region": "COA", + "other_abbreviation": "p", + "other_abbreviation_defined": "posterior", + "layer": null, + "sunburst": "COAp: rgb(95,231,182)", + "R": "95", + "G": "231", + "B": "182" + }, + "655": { + "order": 318, + "structure_ID": 655, + "lowered_ID": 655.0, + "structure_id_path": "/997/8/567/688/695/698/631/647/655/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Cortical amygdalar area, posterior part, lateral zone", + "collapsed_region_name": "Cortical amygdalar area", + "abbreviation": "COApl", + "collapsed_region": "COA", + "other_abbreviation": "pl", + "other_abbreviation_defined": "posterolateral", + "layer": null, + "sunburst": "COApl: rgb(95,230,183)", + "R": "95", + "G": "230", + "B": "183" + }, + "663": { + "order": 319, + "structure_ID": 663, + "lowered_ID": 663.0, + "structure_id_path": "/997/8/567/688/695/698/631/647/663/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Cortical amygdalar area, posterior part, medial zone", + "collapsed_region_name": "Cortical amygdalar area", + "abbreviation": "COApm", + "collapsed_region": "COA", + "other_abbreviation": "pm", + "other_abbreviation_defined": "posteromedial", + "layer": null, + "sunburst": "COApm: rgb(96,230,181)", + "R": "96", + "G": "230", + "B": "181" + }, + "788": { + "order": 320, + "structure_ID": 788, + "lowered_ID": 788.0, + "structure_id_path": "/997/8/567/688/695/698/788/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Piriform-amygdalar area", + "collapsed_region_name": "Piriform-amygdalar area", + "abbreviation": "PAA", + "collapsed_region": "PAA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PAA: rgb(89,217,170)", + "R": "89", + "G": "217", + "B": "170" + }, + "566": { + "order": 321, + "structure_ID": 566, + "lowered_ID": 566.0, + "structure_id_path": "/997/8/567/688/695/698/566/", + "very_general_region": "Olfactory", + "general_region": "Olfactory", + "full_structure_name": "Postpiriform transition area", + "collapsed_region_name": "Postpiriform transition area", + "abbreviation": "TR", + "collapsed_region": "TR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "TR: rgb(168,236,210)", + "R": "168", + "G": "236", + "B": "210" + }, + "1089": { + "order": 322, + "structure_ID": 1089, + "lowered_ID": 1089.0, + "structure_id_path": "/997/8/567/688/695/1089/", + "very_general_region": "Hippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Hippocampal formation", + "collapsed_region_name": "Hippocampal formation", + "abbreviation": "HPF", + "collapsed_region": "HPF", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "HPF: rgb(125,205,75)", + "R": "125", + "G": "205", + "B": "75" + }, + "1080": { + "order": 323, + "structure_ID": 1080, + "lowered_ID": 1080.0, + "structure_id_path": "/997/8/567/688/695/1089/1080/", + "very_general_region": "Hippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Hippocampal region", + "collapsed_region_name": "Hippocampal region", + "abbreviation": "HIP", + "collapsed_region": "HIP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "HIP: rgb(125,208,72)", + "R": "125", + "G": "208", + "B": "72" + }, + "375": { + "order": 324, + "structure_ID": 375, + "lowered_ID": 375.0, + "structure_id_path": "/997/8/567/688/695/1089/1080/375/", + "very_general_region": "Hippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Ammon's horn", + "collapsed_region_name": "Ammon's horn", + "abbreviation": "CA", + "collapsed_region": "CA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CA: rgb(126,208,74)", + "R": "126", + "G": "208", + "B": "74" + }, + "382": { + "order": 325, + "structure_ID": 382, + "lowered_ID": 382.0, + "structure_id_path": "/997/8/567/688/695/1089/1080/375/382/", + "very_general_region": "Hippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Field CA1", + "collapsed_region_name": "Field CA1", + "abbreviation": "CA1", + "collapsed_region": "CA1", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CA1: rgb(126,207,75)", + "R": "126", + "G": "207", + "B": "75" + }, + "423": { + "order": 326, + "structure_ID": 423, + "lowered_ID": 423.0, + "structure_id_path": "/997/8/567/688/695/1089/1080/375/423/", + "very_general_region": "Hippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Field CA2", + "collapsed_region_name": "Field CA2", + "abbreviation": "CA2", + "collapsed_region": "CA2", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CA2: rgb(125,207,75)", + "R": "125", + "G": "207", + "B": "75" + }, + "463": { + "order": 327, + "structure_ID": 463, + "lowered_ID": 463.0, + "structure_id_path": "/997/8/567/688/695/1089/1080/375/463/", + "very_general_region": "Hippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Field CA3", + "collapsed_region_name": "Field CA3", + "abbreviation": "CA3", + "collapsed_region": "CA3", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CA3: rgb(126,207,73)", + "R": "126", + "G": "207", + "B": "73" + }, + "726": { + "order": 328, + "structure_ID": 726, + "lowered_ID": 726.0, + "structure_id_path": "/997/8/567/688/695/1089/1080/726/", + "very_general_region": "Hippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Dentate gyrus", + "collapsed_region_name": "Dentate gyrus", + "abbreviation": "DG", + "collapsed_region": "DG", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "DG: rgb(125,207,73)", + "R": "125", + "G": "207", + "B": "73" + }, + "10703": { + "order": 329, + "structure_ID": 10703, + "lowered_ID": 1141.0, + "structure_id_path": "/997/8/567/688/695/1089/1080/726/10703/", + "very_general_region": "Hippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Dentate gyrus, molecular layer", + "collapsed_region_name": "Dentate gyrus", + "abbreviation": "DG-mo", + "collapsed_region": "DG", + "other_abbreviation": "mo", + "other_abbreviation_defined": "molecular layer", + "layer": null, + "sunburst": "DG-mo: rgb(123,208,74)", + "R": "123", + "G": "208", + "B": "74" + }, + "10704": { + "order": 330, + "structure_ID": 10704, + "lowered_ID": 1142.0, + "structure_id_path": "/997/8/567/688/695/1089/1080/726/10704/", + "very_general_region": "Hippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Dentate gyrus, polymorph layer", + "collapsed_region_name": "Dentate gyrus", + "abbreviation": "DG-po", + "collapsed_region": "DG", + "other_abbreviation": "po", + "other_abbreviation_defined": "polymorph layer", + "layer": null, + "sunburst": "DG-po: rgb(126,206,74)", + "R": "126", + "G": "206", + "B": "74" + }, + "632": { + "order": 331, + "structure_ID": 632, + "lowered_ID": 632.0, + "structure_id_path": "/997/8/567/688/695/1089/1080/726/632/", + "very_general_region": "Hippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Dentate gyrus, granule cell layer", + "collapsed_region_name": "Dentate gyrus", + "abbreviation": "DG-sg", + "collapsed_region": "DG", + "other_abbreviation": "sg", + "other_abbreviation_defined": "granule cell layer", + "layer": null, + "sunburst": "DG-sg: rgb(101,168,61)", + "R": "101", + "G": "168", + "B": "61" + }, + "982": { + "order": 332, + "structure_ID": 982, + "lowered_ID": 982.0, + "structure_id_path": "/997/8/567/688/695/1089/1080/982/", + "very_general_region": "Hippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Fasciola cinerea", + "collapsed_region_name": "Fasciola cinerea", + "abbreviation": "FC", + "collapsed_region": "FC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "FC: rgb(126,205,74)", + "R": "126", + "G": "205", + "B": "74" + }, + "19": { + "order": 333, + "structure_ID": 19, + "lowered_ID": 19.0, + "structure_id_path": "/997/8/567/688/695/1089/1080/19/", + "very_general_region": "Hippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Induseum griseum", + "collapsed_region_name": "Induseum griseum", + "abbreviation": "IG", + "collapsed_region": "IG", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IG: rgb(126,208,75)", + "R": "126", + "G": "208", + "B": "75" + }, + "822": { + "order": 334, + "structure_ID": 822, + "lowered_ID": 822.0, + "structure_id_path": "/997/8/567/688/695/1089/822/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Retrohippocampal region", + "collapsed_region_name": "Retrohippocampal region", + "abbreviation": "RHP", + "collapsed_region": "RHP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RHP: rgb(48,182,37)", + "R": "48", + "G": "182", + "B": "37" + }, + "909": { + "order": 335, + "structure_ID": 909, + "lowered_ID": 909.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENT", + "collapsed_region": "ENT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ENT: rgb(50,184,34)", + "R": "50", + "G": "184", + "B": "34" + }, + "918": { + "order": 336, + "structure_ID": 918, + "lowered_ID": 918.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/918/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area, lateral part", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENTl", + "collapsed_region": "ENT", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": null, + "sunburst": "ENTl: rgb(50,181,37)", + "R": "50", + "G": "181", + "B": "37" + }, + "1121": { + "order": 337, + "structure_ID": 1121, + "lowered_ID": 1121.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/918/1121/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area, lateral part, layer 1", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENTl1", + "collapsed_region": "ENT", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "1", + "sunburst": "ENTl1: rgb(50,183,34)", + "R": "50", + "G": "183", + "B": "34" + }, + "20": { + "order": 338, + "structure_ID": 20, + "lowered_ID": 20.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/918/20/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area, lateral part, layer 2", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENTl2", + "collapsed_region": "ENT", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "2", + "sunburst": "ENTl2: rgb(50,184,37)", + "R": "50", + "G": "184", + "B": "37" + }, + "52": { + "order": 339, + "structure_ID": 52, + "lowered_ID": 52.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/918/52/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area, lateral part, layer 3", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENTl3", + "collapsed_region": "ENT", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "3", + "sunburst": "ENTl3: rgb(50,183,37)", + "R": "50", + "G": "183", + "B": "37" + }, + "139": { + "order": 340, + "structure_ID": 139, + "lowered_ID": 139.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/918/139/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area, lateral part, layer 5", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENTl5", + "collapsed_region": "ENT", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "5", + "sunburst": "ENTl5: rgb(49,184,36)", + "R": "49", + "G": "184", + "B": "36" + }, + "28": { + "order": 341, + "structure_ID": 28, + "lowered_ID": 28.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/918/28/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area, lateral part, layer 6a", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENTl6a", + "collapsed_region": "ENT", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": "6a", + "sunburst": "ENTl6a: rgb(50,184,36)", + "R": "50", + "G": "184", + "B": "36" + }, + "926": { + "order": 342, + "structure_ID": 926, + "lowered_ID": 926.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/926/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area, medial part, dorsal zone", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENTm", + "collapsed_region": "ENT", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": null, + "sunburst": "ENTm: rgb(49,182,35)", + "R": "49", + "G": "182", + "B": "35" + }, + "526": { + "order": 343, + "structure_ID": 526, + "lowered_ID": 526.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/926/526/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area, medial part, dorsal zone, layer 1", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENTm1", + "collapsed_region": "ENT", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": "1", + "sunburst": "ENTm1: rgb(49,182,37)", + "R": "49", + "G": "182", + "B": "37" + }, + "543": { + "order": 344, + "structure_ID": 543, + "lowered_ID": 543.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/926/543/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area, medial part, dorsal zone, layer 2", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENTm2", + "collapsed_region": "ENT", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": "2", + "sunburst": "ENTm2: rgb(48,184,36)", + "R": "48", + "G": "184", + "B": "36" + }, + "664": { + "order": 345, + "structure_ID": 664, + "lowered_ID": 664.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/926/664/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area, medial part, dorsal zone, layer 3", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENTm3", + "collapsed_region": "ENT", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": "3", + "sunburst": "ENTm3: rgb(49,183,35)", + "R": "49", + "G": "183", + "B": "35" + }, + "727": { + "order": 346, + "structure_ID": 727, + "lowered_ID": 727.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/926/727/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area, medial part, dorsal zone, layer 5", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENTm5", + "collapsed_region": "ENT", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": "5", + "sunburst": "ENTm5: rgb(48,183,36)", + "R": "48", + "G": "183", + "B": "36" + }, + "743": { + "order": 347, + "structure_ID": 743, + "lowered_ID": 743.0, + "structure_id_path": "/997/8/567/688/695/1089/822/909/926/743/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Entorhinal area, medial part, dorsal zone, layer 6", + "collapsed_region_name": "Entorhinal", + "abbreviation": "ENTm6", + "collapsed_region": "ENT", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": "6", + "sunburst": "ENTm6: rgb(50,182,35)", + "R": "50", + "G": "182", + "B": "35" + }, + "843": { + "order": 348, + "structure_ID": 843, + "lowered_ID": 843.0, + "structure_id_path": "/997/8/567/688/695/1089/822/843/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Parasubiculum", + "collapsed_region_name": "Parasubiculum", + "abbreviation": "PAR", + "collapsed_region": "PAR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PAR: rgb(114,213,104)", + "R": "114", + "G": "213", + "B": "104" + }, + "1037": { + "order": 349, + "structure_ID": 1037, + "lowered_ID": 1037.0, + "structure_id_path": "/997/8/567/688/695/1089/822/1037/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Postsubiculum", + "collapsed_region_name": "Postsubiculum", + "abbreviation": "POST", + "collapsed_region": "POST", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "POST: rgb(71,200,60)", + "R": "71", + "G": "200", + "B": "60" + }, + "1084": { + "order": 350, + "structure_ID": 1084, + "lowered_ID": 1084.0, + "structure_id_path": "/997/8/567/688/695/1089/822/1084/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Presubiculum", + "collapsed_region_name": "Presubiculum", + "abbreviation": "PRE", + "collapsed_region": "PRE", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PRE: rgb(89,184,71)", + "R": "89", + "G": "184", + "B": "71" + }, + "502": { + "order": 351, + "structure_ID": 502, + "lowered_ID": 502.0, + "structure_id_path": "/997/8/567/688/695/1089/822/502/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Subiculum", + "collapsed_region_name": "Subiculum", + "abbreviation": "SUB", + "collapsed_region": "SUB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SUB: rgb(79,194,68)", + "R": "79", + "G": "194", + "B": "68" + }, + "484682470": { + "order": 352, + "structure_ID": 484682470, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/1089/822/484682470/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Prosubiculum", + "collapsed_region_name": "Prosubiculum", + "abbreviation": "ProS", + "collapsed_region": "ProS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ProS: rgb(87,185,71)", + "R": "87", + "G": "185", + "B": "71" + }, + "589508447": { + "order": 353, + "structure_ID": 589508447, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/1089/822/589508447/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Hippocampo-amygdalar transition area", + "collapsed_region_name": "Hippocampo-amygdalar transition area", + "abbreviation": "HATA", + "collapsed_region": "HATA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "HATA: rgb(51,185,49)", + "R": "51", + "G": "185", + "B": "49" + }, + "484682508": { + "order": 354, + "structure_ID": 484682508, + "lowered_ID": null, + "structure_id_path": "/997/8/567/688/695/1089/822/484682508/", + "very_general_region": "Retrohippocampal", + "general_region": "Hippocampal", + "full_structure_name": "Area prostriata", + "collapsed_region_name": "Area prostriata", + "abbreviation": "APr", + "collapsed_region": "APr", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "APr: rgb(51,185,50)", + "R": "51", + "G": "185", + "B": "50" + }, + "703": { + "order": 355, + "structure_ID": 703, + "lowered_ID": 703.0, + "structure_id_path": "/997/8/567/688/703/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Cortical subplate", + "collapsed_region_name": "Cortical subplate", + "abbreviation": "CTXsp", + "collapsed_region": "CTXsp", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CTXsp: rgb(138,217,135)", + "R": "138", + "G": "217", + "B": "135" + }, + "583": { + "order": 356, + "structure_ID": 583, + "lowered_ID": 583.0, + "structure_id_path": "/997/8/567/688/703/583/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Claustrum", + "collapsed_region_name": "Claustrum", + "abbreviation": "CLA", + "collapsed_region": "CLA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CLA: rgb(138,218,134)", + "R": "138", + "G": "218", + "B": "134" + }, + "942": { + "order": 357, + "structure_ID": 942, + "lowered_ID": 942.0, + "structure_id_path": "/997/8/567/688/703/942/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Endopiriform nucleus", + "collapsed_region_name": "Endopiriform nucleus", + "abbreviation": "EP", + "collapsed_region": "EP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "EP: rgb(160,238,157)", + "R": "160", + "G": "238", + "B": "157" + }, + "952": { + "order": 358, + "structure_ID": 952, + "lowered_ID": 952.0, + "structure_id_path": "/997/8/567/688/703/942/952/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Endopiriform nucleus, dorsal part", + "collapsed_region_name": "Endopiriform nucleus", + "abbreviation": "EPd", + "collapsed_region": "EP", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "EPd: rgb(160,238,156)", + "R": "160", + "G": "238", + "B": "156" + }, + "966": { + "order": 359, + "structure_ID": 966, + "lowered_ID": 966.0, + "structure_id_path": "/997/8/567/688/703/942/966/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Endopiriform nucleus, ventral part", + "collapsed_region_name": "Endopiriform nucleus", + "abbreviation": "EPv", + "collapsed_region": "EP", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "EPv: rgb(160,237,157)", + "R": "160", + "G": "237", + "B": "157" + }, + "131": { + "order": 360, + "structure_ID": 131, + "lowered_ID": 131.0, + "structure_id_path": "/997/8/567/688/703/131/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Lateral amygdalar nucleus", + "collapsed_region_name": "Lateral amygdalar nucleus", + "abbreviation": "LA", + "collapsed_region": "LA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LA: rgb(144,235,141)", + "R": "144", + "G": "235", + "B": "141" + }, + "295": { + "order": 361, + "structure_ID": 295, + "lowered_ID": 295.0, + "structure_id_path": "/997/8/567/688/703/295/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Basolateral amygdalar nucleus", + "collapsed_region_name": "Basolateral amygdalar nucleus", + "abbreviation": "BLA", + "collapsed_region": "BLA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "BLA: rgb(157,231,156)", + "R": "157", + "G": "231", + "B": "156" + }, + "303": { + "order": 362, + "structure_ID": 303, + "lowered_ID": 303.0, + "structure_id_path": "/997/8/567/688/703/295/303/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Basolateral amygdalar nucleus, anterior part", + "collapsed_region_name": "Basolateral amygdalar nucleus", + "abbreviation": "BLAa", + "collapsed_region": "BLA", + "other_abbreviation": "a", + "other_abbreviation_defined": "anterior", + "layer": null, + "sunburst": "BLAa: rgb(157,231,155)", + "R": "157", + "G": "231", + "B": "155" + }, + "311": { + "order": 363, + "structure_ID": 311, + "lowered_ID": 311.0, + "structure_id_path": "/997/8/567/688/703/295/311/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Basolateral amygdalar nucleus, posterior part", + "collapsed_region_name": "Basolateral amygdalar nucleus", + "abbreviation": "BLAp", + "collapsed_region": "BLA", + "other_abbreviation": "p", + "other_abbreviation_defined": "posterior", + "layer": null, + "sunburst": "BLAp: rgb(157,230,156)", + "R": "157", + "G": "230", + "B": "156" + }, + "451": { + "order": 364, + "structure_ID": 451, + "lowered_ID": 451.0, + "structure_id_path": "/997/8/567/688/703/295/451/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Basolateral amygdalar nucleus, ventral part", + "collapsed_region_name": "Basolateral amygdalar nucleus", + "abbreviation": "BLAv", + "collapsed_region": "BLA", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "BLAv: rgb(156,231,156)", + "R": "156", + "G": "231", + "B": "156" + }, + "319": { + "order": 365, + "structure_ID": 319, + "lowered_ID": 319.0, + "structure_id_path": "/997/8/567/688/703/319/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Basomedial amygdalar nucleus", + "collapsed_region_name": "Basomedial amygdalar nucleus", + "abbreviation": "BMA", + "collapsed_region": "BMA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "BMA: rgb(132,234,129)", + "R": "132", + "G": "234", + "B": "129" + }, + "327": { + "order": 366, + "structure_ID": 327, + "lowered_ID": 327.0, + "structure_id_path": "/997/8/567/688/703/319/327/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Basomedial amygdalar nucleus, anterior part", + "collapsed_region_name": "Basomedial amygdalar nucleus", + "abbreviation": "BMAa", + "collapsed_region": "BMA", + "other_abbreviation": "a", + "other_abbreviation_defined": "anterior", + "layer": null, + "sunburst": "BMAa: rgb(132,234,128)", + "R": "132", + "G": "234", + "B": "128" + }, + "334": { + "order": 367, + "structure_ID": 334, + "lowered_ID": 334.0, + "structure_id_path": "/997/8/567/688/703/319/334/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Basomedial amygdalar nucleus, posterior part", + "collapsed_region_name": "Basomedial amygdalar nucleus", + "abbreviation": "BMAp", + "collapsed_region": "BMA", + "other_abbreviation": "p", + "other_abbreviation_defined": "posterior", + "layer": null, + "sunburst": "BMAp: rgb(132,233,129)", + "R": "132", + "G": "233", + "B": "129" + }, + "780": { + "order": 368, + "structure_ID": 780, + "lowered_ID": 780.0, + "structure_id_path": "/997/8/567/688/703/780/", + "very_general_region": "Cortical subplate", + "general_region": "Cortical subplate", + "full_structure_name": "Posterior amygdalar nucleus", + "collapsed_region_name": "Posterior amygdalar nucleus", + "abbreviation": "PA", + "collapsed_region": "PA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PA: rgb(151,236,147)", + "R": "151", + "G": "236", + "B": "147" + }, + "623": { + "order": 369, + "structure_ID": 623, + "lowered_ID": 623.0, + "structure_id_path": "/997/8/567/623/", + "very_general_region": "Cerebral nuclei", + "general_region": "Cerebral nuclei", + "full_structure_name": "Cerebral nuclei", + "collapsed_region_name": "Cerebral nuclei", + "abbreviation": "CNU", + "collapsed_region": "CNU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CNU: rgb(152,214,248)", + "R": "152", + "G": "214", + "B": "248" + }, + "477": { + "order": 370, + "structure_ID": 477, + "lowered_ID": 477.0, + "structure_id_path": "/997/8/567/623/477/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Striatum", + "collapsed_region_name": "Striatum", + "abbreviation": "STR", + "collapsed_region": "STR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "STR: rgb(151,214,249)", + "R": "151", + "G": "214", + "B": "249" + }, + "485": { + "order": 371, + "structure_ID": 485, + "lowered_ID": 485.0, + "structure_id_path": "/997/8/567/623/477/485/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Striatum dorsal region", + "collapsed_region_name": "Striatum", + "abbreviation": "STRd", + "collapsed_region": "STR", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "STRd: rgb(152,214,249)", + "R": "152", + "G": "214", + "B": "249" + }, + "672": { + "order": 372, + "structure_ID": 672, + "lowered_ID": 672.0, + "structure_id_path": "/997/8/567/623/477/485/672/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Caudoputamen", + "collapsed_region_name": "Caudoputamen", + "abbreviation": "CP", + "collapsed_region": "CP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CP: rgb(152,213,249)", + "R": "152", + "G": "213", + "B": "249" + }, + "493": { + "order": 373, + "structure_ID": 493, + "lowered_ID": 493.0, + "structure_id_path": "/997/8/567/623/477/493/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Striatum ventral region", + "collapsed_region_name": "Striatum", + "abbreviation": "STRv", + "collapsed_region": "STR", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "STRv: rgb(127,205,247)", + "R": "127", + "G": "205", + "B": "247" + }, + "56": { + "order": 374, + "structure_ID": 56, + "lowered_ID": 56.0, + "structure_id_path": "/997/8/567/623/477/493/56/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Nucleus accumbens", + "collapsed_region_name": "Nucleus accumbens", + "abbreviation": "ACB", + "collapsed_region": "ACB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ACB: rgb(128,205,248)", + "R": "128", + "G": "205", + "B": "248" + }, + "998": { + "order": 375, + "structure_ID": 998, + "lowered_ID": 998.0, + "structure_id_path": "/997/8/567/623/477/493/998/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Fundus of striatum", + "collapsed_region_name": "Fundus of striatum", + "abbreviation": "FS", + "collapsed_region": "FS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "FS: rgb(126,205,248)", + "R": "126", + "G": "205", + "B": "248" + }, + "754": { + "order": 376, + "structure_ID": 754, + "lowered_ID": 754.0, + "structure_id_path": "/997/8/567/623/477/493/754/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Olfactory tubercle", + "collapsed_region_name": "Olfactory tubercle", + "abbreviation": "OT", + "collapsed_region": "OT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "OT: rgb(127,204,247)", + "R": "127", + "G": "204", + "B": "247" + }, + "275": { + "order": 377, + "structure_ID": 275, + "lowered_ID": 275.0, + "structure_id_path": "/997/8/567/623/477/275/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Lateral septal complex", + "collapsed_region_name": "Lateral septal complex", + "abbreviation": "LSX", + "collapsed_region": "LSX", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LSX: rgb(144,202,236)", + "R": "144", + "G": "202", + "B": "236" + }, + "242": { + "order": 378, + "structure_ID": 242, + "lowered_ID": 242.0, + "structure_id_path": "/997/8/567/623/477/275/242/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Lateral septal nucleus", + "collapsed_region_name": "Lateral septal nucleus", + "abbreviation": "LS", + "collapsed_region": "LS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LS: rgb(144,203,237)", + "R": "144", + "G": "203", + "B": "237" + }, + "250": { + "order": 379, + "structure_ID": 250, + "lowered_ID": 250.0, + "structure_id_path": "/997/8/567/623/477/275/242/250/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Lateral septal nucleus, caudal (caudodorsal) part", + "collapsed_region_name": "Lateral septal nucleus", + "abbreviation": "LSc", + "collapsed_region": "LS", + "other_abbreviation": "c", + "other_abbreviation_defined": "caudal", + "layer": null, + "sunburst": "LSc: rgb(144,203,236)", + "R": "144", + "G": "203", + "B": "236" + }, + "258": { + "order": 380, + "structure_ID": 258, + "lowered_ID": 258.0, + "structure_id_path": "/997/8/567/623/477/275/242/258/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Lateral septal nucleus, rostral (rostroventral) part", + "collapsed_region_name": "Lateral septal nucleus", + "abbreviation": "LSr", + "collapsed_region": "LS", + "other_abbreviation": "r", + "other_abbreviation_defined": "rostral", + "layer": null, + "sunburst": "LSr: rgb(144,202,237)", + "R": "144", + "G": "202", + "B": "237" + }, + "266": { + "order": 381, + "structure_ID": 266, + "lowered_ID": 266.0, + "structure_id_path": "/997/8/567/623/477/275/242/266/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Lateral septal nucleus, ventral part", + "collapsed_region_name": "Lateral septal nucleus", + "abbreviation": "LSv", + "collapsed_region": "LS", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "LSv: rgb(143,203,237)", + "R": "143", + "G": "203", + "B": "237" + }, + "310": { + "order": 382, + "structure_ID": 310, + "lowered_ID": 310.0, + "structure_id_path": "/997/8/567/623/477/275/310/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Septofimbrial nucleus", + "collapsed_region_name": "Septofimbrial nucleus", + "abbreviation": "SF", + "collapsed_region": "SF", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SF: rgb(143,203,236)", + "R": "143", + "G": "203", + "B": "236" + }, + "333": { + "order": 383, + "structure_ID": 333, + "lowered_ID": 333.0, + "structure_id_path": "/997/8/567/623/477/275/333/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Septohippocampal nucleus", + "collapsed_region_name": "Septohippocampal nucleus", + "abbreviation": "SH", + "collapsed_region": "SH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SH: rgb(143,202,237)", + "R": "143", + "G": "202", + "B": "237" + }, + "278": { + "order": 384, + "structure_ID": 278, + "lowered_ID": 278.0, + "structure_id_path": "/997/8/567/623/477/278/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Striatum-like amygdalar nuclei", + "collapsed_region_name": "Striatum-like amygdalar nuclei", + "abbreviation": "sAMY", + "collapsed_region": "sAMY", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "sAMY: rgb(128,192,225)", + "R": "128", + "G": "192", + "B": "225" + }, + "23": { + "order": 385, + "structure_ID": 23, + "lowered_ID": 23.0, + "structure_id_path": "/997/8/567/623/477/278/23/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Anterior amygdalar area", + "collapsed_region_name": "Anterior amygdalar area", + "abbreviation": "AAA", + "collapsed_region": "AAA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AAA: rgb(128,192,226)", + "R": "128", + "G": "192", + "B": "226" + }, + "292": { + "order": 386, + "structure_ID": 292, + "lowered_ID": 292.0, + "structure_id_path": "/997/8/567/623/477/278/292/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Bed nucleus of the accessory olfactory tract", + "collapsed_region_name": "Bed nucleus of the accessory olfactory tract", + "abbreviation": "BA", + "collapsed_region": "BA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "BA: rgb(128,191,226)", + "R": "128", + "G": "191", + "B": "226" + }, + "536": { + "order": 387, + "structure_ID": 536, + "lowered_ID": 536.0, + "structure_id_path": "/997/8/567/623/477/278/536/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Central amygdalar nucleus", + "collapsed_region_name": "Central amygdalar nucleus", + "abbreviation": "CEA", + "collapsed_region": "CEA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CEA: rgb(126,192,226)", + "R": "126", + "G": "192", + "B": "226" + }, + "544": { + "order": 388, + "structure_ID": 544, + "lowered_ID": 544.0, + "structure_id_path": "/997/8/567/623/477/278/536/544/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Central amygdalar nucleus, capsular part", + "collapsed_region_name": "Central amygdalar nucleus", + "abbreviation": "CEAc", + "collapsed_region": "CEA", + "other_abbreviation": "c", + "other_abbreviation_defined": "capsular", + "layer": null, + "sunburst": "CEAc: rgb(128,191,224)", + "R": "128", + "G": "191", + "B": "224" + }, + "551": { + "order": 389, + "structure_ID": 551, + "lowered_ID": 551.0, + "structure_id_path": "/997/8/567/623/477/278/536/551/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Central amygdalar nucleus, lateral part", + "collapsed_region_name": "Central amygdalar nucleus", + "abbreviation": "CEAl", + "collapsed_region": "CEA", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": null, + "sunburst": "CEAl: rgb(128,190,225)", + "R": "128", + "G": "190", + "B": "225" + }, + "559": { + "order": 390, + "structure_ID": 559, + "lowered_ID": 559.0, + "structure_id_path": "/997/8/567/623/477/278/536/559/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Central amygdalar nucleus, medial part", + "collapsed_region_name": "Central amygdalar nucleus", + "abbreviation": "CEAm", + "collapsed_region": "CEA", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": null, + "sunburst": "CEAm: rgb(127,192,224)", + "R": "127", + "G": "192", + "B": "224" + }, + "1105": { + "order": 391, + "structure_ID": 1105, + "lowered_ID": 1105.0, + "structure_id_path": "/997/8/567/623/477/278/1105/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Intercalated amygdalar nucleus", + "collapsed_region_name": "Intercalated amygdalar nucleus", + "abbreviation": "IA", + "collapsed_region": "IA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IA: rgb(128,190,226)", + "R": "128", + "G": "190", + "B": "226" + }, + "403": { + "order": 392, + "structure_ID": 403, + "lowered_ID": 403.0, + "structure_id_path": "/997/8/567/623/477/278/403/", + "very_general_region": "Striatum", + "general_region": "Striatum", + "full_structure_name": "Medial amygdalar nucleus", + "collapsed_region_name": "Medial amygdalar nucleus", + "abbreviation": "MEA", + "collapsed_region": "MEA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MEA: rgb(128,191,225)", + "R": "128", + "G": "191", + "B": "225" + }, + "803": { + "order": 393, + "structure_ID": 803, + "lowered_ID": 803.0, + "structure_id_path": "/997/8/567/623/803/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Pallidum", + "collapsed_region_name": "Pallidum", + "abbreviation": "PAL", + "collapsed_region": "PAL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PAL: rgb(133,153,204)", + "R": "133", + "G": "153", + "B": "204" + }, + "818": { + "order": 394, + "structure_ID": 818, + "lowered_ID": 818.0, + "structure_id_path": "/997/8/567/623/803/818/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Pallidum, dorsal region", + "collapsed_region_name": "Pallidum", + "abbreviation": "PALd", + "collapsed_region": "PAL", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "PALd: rgb(133,153,203)", + "R": "133", + "G": "153", + "B": "203" + }, + "1022": { + "order": 395, + "structure_ID": 1022, + "lowered_ID": 1022.0, + "structure_id_path": "/997/8/567/623/803/818/1022/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Globus pallidus, external segment", + "collapsed_region_name": "Globus pallidus", + "abbreviation": "GPe", + "collapsed_region": "GP", + "other_abbreviation": "e", + "other_abbreviation_defined": "external", + "layer": null, + "sunburst": "GPe: rgb(133,152,204)", + "R": "133", + "G": "152", + "B": "204" + }, + "1031": { + "order": 396, + "structure_ID": 1031, + "lowered_ID": 1031.0, + "structure_id_path": "/997/8/567/623/803/818/1031/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Globus pallidus, internal segment", + "collapsed_region_name": "Globus pallidus", + "abbreviation": "GPi", + "collapsed_region": "GP", + "other_abbreviation": "i", + "other_abbreviation_defined": "internal", + "layer": null, + "sunburst": "GPi: rgb(132,153,204)", + "R": "132", + "G": "153", + "B": "204" + }, + "835": { + "order": 397, + "structure_ID": 835, + "lowered_ID": 835.0, + "structure_id_path": "/997/8/567/623/803/835/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Pallidum, ventral region", + "collapsed_region_name": "Pallidum, ventral region", + "abbreviation": "PALv", + "collapsed_region": "PAL", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "PALv: rgb(162,176,216)", + "R": "162", + "G": "176", + "B": "216" + }, + "342": { + "order": 398, + "structure_ID": 342, + "lowered_ID": 342.0, + "structure_id_path": "/997/8/567/623/803/835/342/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Substantia innominata", + "collapsed_region_name": "Substantia innominata", + "abbreviation": "SI", + "collapsed_region": "SI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SI: rgb(162,177,215)", + "R": "162", + "G": "177", + "B": "215" + }, + "298": { + "order": 399, + "structure_ID": 298, + "lowered_ID": 298.0, + "structure_id_path": "/997/8/567/623/803/835/298/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Magnocellular nucleus", + "collapsed_region_name": "Magnocellular nucleus", + "abbreviation": "MA", + "collapsed_region": "MA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MA: rgb(162,177,216)", + "R": "162", + "G": "177", + "B": "216" + }, + "826": { + "order": 400, + "structure_ID": 826, + "lowered_ID": 826.0, + "structure_id_path": "/997/8/567/623/803/826/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Pallidum, medial region", + "collapsed_region_name": "Pallidum", + "abbreviation": "PALm", + "collapsed_region": "PAL", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": null, + "sunburst": "PALm: rgb(149,167,211)", + "R": "149", + "G": "167", + "B": "211" + }, + "904": { + "order": 401, + "structure_ID": 904, + "lowered_ID": 904.0, + "structure_id_path": "/997/8/567/623/803/826/904/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Medial septal complex", + "collapsed_region_name": "Medial septal complex", + "abbreviation": "MSC", + "collapsed_region": "MSC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MSC: rgb(150,166,210)", + "R": "150", + "G": "166", + "B": "210" + }, + "564": { + "order": 402, + "structure_ID": 564, + "lowered_ID": 564.0, + "structure_id_path": "/997/8/567/623/803/826/904/564/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Medial septal nucleus", + "collapsed_region_name": "Medial septal nucleus", + "abbreviation": "MS", + "collapsed_region": "MS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MS: rgb(150,167,211)", + "R": "150", + "G": "167", + "B": "211" + }, + "596": { + "order": 403, + "structure_ID": 596, + "lowered_ID": 596.0, + "structure_id_path": "/997/8/567/623/803/826/904/596/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Diagonal band nucleus", + "collapsed_region_name": "Diagonal band nucleus", + "abbreviation": "NDB", + "collapsed_region": "NDB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "NDB: rgb(150,166,211)", + "R": "150", + "G": "166", + "B": "211" + }, + "581": { + "order": 404, + "structure_ID": 581, + "lowered_ID": 581.0, + "structure_id_path": "/997/8/567/623/803/826/581/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Triangular nucleus of septum", + "collapsed_region_name": "Triangular nucleus of septum", + "abbreviation": "TRS", + "collapsed_region": "TRS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "TRS: rgb(150,167,210)", + "R": "150", + "G": "167", + "B": "210" + }, + "809": { + "order": 405, + "structure_ID": 809, + "lowered_ID": 809.0, + "structure_id_path": "/997/8/567/623/803/809/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Pallidum, caudal region", + "collapsed_region_name": "Pallidum", + "abbreviation": "PALc", + "collapsed_region": "PAL", + "other_abbreviation": "c", + "other_abbreviation_defined": "caudal", + "layer": null, + "sunburst": "PALc: rgb(177,191,223)", + "R": "177", + "G": "191", + "B": "223" + }, + "351": { + "order": 406, + "structure_ID": 351, + "lowered_ID": 351.0, + "structure_id_path": "/997/8/567/623/803/809/351/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Bed nuclei of the stria terminalis", + "collapsed_region_name": "Bed nuclei of the stria terminalis", + "abbreviation": "BST", + "collapsed_region": "BST", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "BST: rgb(179,192,222)", + "R": "179", + "G": "192", + "B": "222" + }, + "287": { + "order": 407, + "structure_ID": 287, + "lowered_ID": 287.0, + "structure_id_path": "/997/8/567/623/803/809/287/", + "very_general_region": "Pallidum", + "general_region": "Pallidum", + "full_structure_name": "Bed nucleus of the anterior commissure", + "collapsed_region_name": "Bed nucleus of the anterior commissure", + "abbreviation": "BAC", + "collapsed_region": "BAC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "BAC: rgb(179,192,223)", + "R": "179", + "G": "192", + "B": "223" + }, + "343": { + "order": 408, + "structure_ID": 343, + "lowered_ID": 343.0, + "structure_id_path": "/997/8/343/", + "very_general_region": "Brain stem", + "general_region": "Brain stem", + "full_structure_name": "Brain stem", + "collapsed_region_name": "Brain stem", + "abbreviation": "BS", + "collapsed_region": "BS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "BS: rgb(255,112,128)", + "R": "255", + "G": "112", + "B": "128" + }, + "1129": { + "order": 409, + "structure_ID": 1129, + "lowered_ID": 1129.0, + "structure_id_path": "/997/8/343/1129/", + "very_general_region": "Interbrain", + "general_region": "Interbrain", + "full_structure_name": "Interbrain", + "collapsed_region_name": "Interbrain", + "abbreviation": "IB", + "collapsed_region": "IB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IB: rgb(255,112,127)", + "R": "255", + "G": "112", + "B": "127" + }, + "549": { + "order": 410, + "structure_ID": 549, + "lowered_ID": 549.0, + "structure_id_path": "/997/8/343/1129/549/", + "very_general_region": "Thalamus", + "general_region": "Thalamus", + "full_structure_name": "Thalamus", + "collapsed_region_name": "Thalamus", + "abbreviation": "TH", + "collapsed_region": "TH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "TH: rgb(255,111,128)", + "R": "255", + "G": "111", + "B": "128" + }, + "864": { + "order": 411, + "structure_ID": 864, + "lowered_ID": 864.0, + "structure_id_path": "/997/8/343/1129/549/864/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Thalamus, sensory-motor cortex related", + "collapsed_region_name": "Thalamus", + "abbreviation": "DORsm", + "collapsed_region": "DOR", + "other_abbreviation": "sm", + "other_abbreviation_defined": "sensory-motor cortex related", + "layer": null, + "sunburst": "DORsm: rgb(254,126,132)", + "R": "254", + "G": "126", + "B": "132" + }, + "637": { + "order": 412, + "structure_ID": 637, + "lowered_ID": 637.0, + "structure_id_path": "/997/8/343/1129/549/864/637/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Ventral group of the dorsal thalamus", + "collapsed_region_name": "Ventral group of the dorsal thalamus", + "abbreviation": "VENT", + "collapsed_region": "VENT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VENT: rgb(255,128,130)", + "R": "255", + "G": "128", + "B": "130" + }, + "629": { + "order": 413, + "structure_ID": 629, + "lowered_ID": 629.0, + "structure_id_path": "/997/8/343/1129/549/864/637/629/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Ventral anterior-lateral complex of the thalamus", + "collapsed_region_name": "Ventral anterior-lateral complex of the thalamus", + "abbreviation": "VAL", + "collapsed_region": "VAL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VAL: rgb(253,126,132)", + "R": "253", + "G": "126", + "B": "132" + }, + "685": { + "order": 414, + "structure_ID": 685, + "lowered_ID": 685.0, + "structure_id_path": "/997/8/343/1129/549/864/637/685/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Ventral medial nucleus of the thalamus", + "collapsed_region_name": "Ventral medial nucleus of the thalamus", + "abbreviation": "VM", + "collapsed_region": "VM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VM: rgb(255,126,132)", + "R": "255", + "G": "126", + "B": "132" + }, + "709": { + "order": 415, + "structure_ID": 709, + "lowered_ID": 709.0, + "structure_id_path": "/997/8/343/1129/549/864/637/709/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Ventral posterior complex of the thalamus", + "collapsed_region_name": "Ventral posterior complex of the thalamus", + "abbreviation": "VP", + "collapsed_region": "VP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VP: rgb(255,128,129)", + "R": "255", + "G": "128", + "B": "129" + }, + "718": { + "order": 416, + "structure_ID": 718, + "lowered_ID": 718.0, + "structure_id_path": "/997/8/343/1129/549/864/637/709/718/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Ventral posterolateral nucleus of the thalamus", + "collapsed_region_name": "Ventral posterolateral nucleus of the thalamus", + "abbreviation": "VPL", + "collapsed_region": "VPL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VPL: rgb(253,128,132)", + "R": "253", + "G": "128", + "B": "132" + }, + "725": { + "order": 417, + "structure_ID": 725, + "lowered_ID": 725.0, + "structure_id_path": "/997/8/343/1129/549/864/637/709/725/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Ventral posterolateral nucleus of the thalamus, parvicellular part", + "collapsed_region_name": "Ventral posterolateral nucleus of the thalamus", + "abbreviation": "VPLpc", + "collapsed_region": "VPL", + "other_abbreviation": "pc", + "other_abbreviation_defined": "parvicellular", + "layer": null, + "sunburst": "VPLpc: rgb(255,127,130)", + "R": "255", + "G": "127", + "B": "130" + }, + "733": { + "order": 418, + "structure_ID": 733, + "lowered_ID": 733.0, + "structure_id_path": "/997/8/343/1129/549/864/637/709/733/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Ventral posteromedial nucleus of the thalamus", + "collapsed_region_name": "Ventral posteromedial nucleus of the thalamus", + "abbreviation": "VPM", + "collapsed_region": "VPM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VPM: rgb(255,126,131)", + "R": "255", + "G": "126", + "B": "131" + }, + "741": { + "order": 419, + "structure_ID": 741, + "lowered_ID": 741.0, + "structure_id_path": "/997/8/343/1129/549/864/637/709/741/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Ventral posteromedial nucleus of the thalamus, parvicellular part", + "collapsed_region_name": "Ventral posteromedial nucleus of the thalamus", + "abbreviation": "VPMpc", + "collapsed_region": "VPM", + "other_abbreviation": "pc", + "other_abbreviation_defined": "parvicellular", + "layer": null, + "sunburst": "VPMpc: rgb(254,128,130)", + "R": "254", + "G": "128", + "B": "130" + }, + "563807435": { + "order": 420, + "structure_ID": 563807435, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/549/864/637/563807435/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Posterior triangular thalamic nucleus", + "collapsed_region_name": "Posterior triangular thalamic nucleus", + "abbreviation": "PoT", + "collapsed_region": "PoT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PoT: rgb(255,126,130)", + "R": "255", + "G": "126", + "B": "130" + }, + "406": { + "order": 421, + "structure_ID": 406, + "lowered_ID": 406.0, + "structure_id_path": "/997/8/343/1129/549/864/406/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Subparafascicular nucleus", + "collapsed_region_name": "Subparafascicular nucleus", + "abbreviation": "SPF", + "collapsed_region": "SPF", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SPF: rgb(255,128,131)", + "R": "255", + "G": "128", + "B": "131" + }, + "414": { + "order": 422, + "structure_ID": 414, + "lowered_ID": 414.0, + "structure_id_path": "/997/8/343/1129/549/864/406/414/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Subparafascicular nucleus, magnocellular part", + "collapsed_region_name": "Subparafascicular nucleus", + "abbreviation": "SPFm", + "collapsed_region": "SPF", + "other_abbreviation": "m", + "other_abbreviation_defined": "magnocellular", + "layer": null, + "sunburst": "SPFm: rgb(255,127,132)", + "R": "255", + "G": "127", + "B": "132" + }, + "422": { + "order": 423, + "structure_ID": 422, + "lowered_ID": 422.0, + "structure_id_path": "/997/8/343/1129/549/864/406/422/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Subparafascicular nucleus, parvicellular part", + "collapsed_region_name": "Subparafascicular nucleus", + "abbreviation": "SPFp", + "collapsed_region": "SPF", + "other_abbreviation": "p", + "other_abbreviation_defined": "parvicellular", + "layer": null, + "sunburst": "SPFp: rgb(254,128,132)", + "R": "254", + "G": "128", + "B": "132" + }, + "609": { + "order": 424, + "structure_ID": 609, + "lowered_ID": 609.0, + "structure_id_path": "/997/8/343/1129/549/864/609/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Subparafascicular area", + "collapsed_region_name": "Subparafascicular area", + "abbreviation": "SPA", + "collapsed_region": "SPA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SPA: rgb(254,127,131)", + "R": "254", + "G": "127", + "B": "131" + }, + "1044": { + "order": 425, + "structure_ID": 1044, + "lowered_ID": 1044.0, + "structure_id_path": "/997/8/343/1129/549/864/1044/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Peripeduncular nucleus", + "collapsed_region_name": "Peripeduncular nucleus", + "abbreviation": "PP", + "collapsed_region": "PP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PP: rgb(253,127,132)", + "R": "253", + "G": "127", + "B": "132" + }, + "1008": { + "order": 426, + "structure_ID": 1008, + "lowered_ID": 1008.0, + "structure_id_path": "/997/8/343/1129/549/864/1008/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Geniculate group, dorsal thalamus", + "collapsed_region_name": "Geniculate group, dorsal thalamus", + "abbreviation": "GENd", + "collapsed_region": "GENd", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "GENd: rgb(253,128,131)", + "R": "253", + "G": "128", + "B": "131" + }, + "475": { + "order": 427, + "structure_ID": 475, + "lowered_ID": 475.0, + "structure_id_path": "/997/8/343/1129/549/864/1008/475/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Medial geniculate complex", + "collapsed_region_name": "Medial geniculate complex", + "abbreviation": "MG", + "collapsed_region": "MG", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MG: rgb(255,127,131)", + "R": "255", + "G": "127", + "B": "131" + }, + "1072": { + "order": 428, + "structure_ID": 1072, + "lowered_ID": 1072.0, + "structure_id_path": "/997/8/343/1129/549/864/1008/475/1072/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Medial geniculate complex, dorsal part", + "collapsed_region_name": "Medial geniculate complex", + "abbreviation": "MGd", + "collapsed_region": "MG", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "MGd: rgb(254,127,130)", + "R": "254", + "G": "127", + "B": "130" + }, + "1079": { + "order": 429, + "structure_ID": 1079, + "lowered_ID": 1079.0, + "structure_id_path": "/997/8/343/1129/549/864/1008/475/1079/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Medial geniculate complex, ventral part", + "collapsed_region_name": "Medial geniculate complex", + "abbreviation": "MGv", + "collapsed_region": "MG", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "MGv: rgb(254,126,131)", + "R": "254", + "G": "126", + "B": "131" + }, + "1088": { + "order": 430, + "structure_ID": 1088, + "lowered_ID": 1088.0, + "structure_id_path": "/997/8/343/1129/549/864/1008/475/1088/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Medial geniculate complex, medial part", + "collapsed_region_name": "Medial geniculate complex", + "abbreviation": "MGm", + "collapsed_region": "MG", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": null, + "sunburst": "MGm: rgb(253,127,131)", + "R": "253", + "G": "127", + "B": "131" + }, + "170": { + "order": 431, + "structure_ID": 170, + "lowered_ID": 170.0, + "structure_id_path": "/997/8/343/1129/549/864/1008/170/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Dorsal part of the lateral geniculate complex", + "collapsed_region_name": "Dorsal part of the lateral geniculate complex", + "abbreviation": "LGd", + "collapsed_region": "LGd", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LGd: rgb(255,128,132)", + "R": "255", + "G": "128", + "B": "132" + }, + "496345664": { + "order": 432, + "structure_ID": 496345664, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/549/864/1008/170/496345664/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Dorsal part of the lateral geniculate complex, shell", + "collapsed_region_name": "Dorsal part of the lateral geniculate complex", + "abbreviation": "LGd-sh", + "collapsed_region": "LGd", + "other_abbreviation": "sh", + "other_abbreviation_defined": "shell", + "layer": null, + "sunburst": "LGd-sh: rgb(254,128,131)", + "R": "254", + "G": "128", + "B": "131" + }, + "496345668": { + "order": 433, + "structure_ID": 496345668, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/549/864/1008/170/496345668/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Dorsal part of the lateral geniculate complex, core", + "collapsed_region_name": "Dorsal part of the lateral geniculate complex", + "abbreviation": "LGd-co", + "collapsed_region": "LGd", + "other_abbreviation": "co", + "other_abbreviation_defined": "core", + "layer": null, + "sunburst": "LGd-co: rgb(254,127,132)", + "R": "254", + "G": "127", + "B": "132" + }, + "496345672": { + "order": 434, + "structure_ID": 496345672, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/549/864/1008/170/496345672/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, sensory-motor cortex related", + "full_structure_name": "Dorsal part of the lateral geniculate complex, ipsilateral zone", + "collapsed_region_name": "Dorsal part of the lateral geniculate complex", + "abbreviation": "LGd-ip", + "collapsed_region": "LGd", + "other_abbreviation": "ip", + "other_abbreviation_defined": "ipsilateral zone", + "layer": null, + "sunburst": "LGd-ip: rgb(253,128,130)", + "R": "253", + "G": "128", + "B": "130" + }, + "856": { + "order": 435, + "structure_ID": 856, + "lowered_ID": 856.0, + "structure_id_path": "/997/8/343/1129/549/856/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Thalamus, polymodal association cortex related", + "collapsed_region_name": "Thalamus", + "abbreviation": "DORpm", + "collapsed_region": "DOR", + "other_abbreviation": "pm", + "other_abbreviation_defined": "polymodal association cortex related", + "layer": null, + "sunburst": "DORpm: rgb(254,144,156)", + "R": "254", + "G": "144", + "B": "156" + }, + "138": { + "order": 436, + "structure_ID": 138, + "lowered_ID": 138.0, + "structure_id_path": "/997/8/343/1129/549/856/138/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Lateral group of the dorsal thalamus", + "collapsed_region_name": "Lateral group of the dorsal thalamus", + "abbreviation": "LAT", + "collapsed_region": "LAT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LAT: rgb(254,143,159)", + "R": "254", + "G": "143", + "B": "159" + }, + "218": { + "order": 437, + "structure_ID": 218, + "lowered_ID": 218.0, + "structure_id_path": "/997/8/343/1129/549/856/138/218/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Lateral posterior nucleus of the thalamus", + "collapsed_region_name": "Lateral posterior nucleus of the thalamus", + "abbreviation": "LP", + "collapsed_region": "LP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LP: rgb(254,144,157)", + "R": "254", + "G": "144", + "B": "157" + }, + "1020": { + "order": 438, + "structure_ID": 1020, + "lowered_ID": 1020.0, + "structure_id_path": "/997/8/343/1129/549/856/138/1020/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Posterior complex of the thalamus", + "collapsed_region_name": "Posterior complex of the thalamus", + "abbreviation": "PO", + "collapsed_region": "PO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PO: rgb(255,142,156)", + "R": "255", + "G": "142", + "B": "156" + }, + "1029": { + "order": 439, + "structure_ID": 1029, + "lowered_ID": 1029.0, + "structure_id_path": "/997/8/343/1129/549/856/138/1029/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Posterior limiting nucleus of the thalamus", + "collapsed_region_name": "Posterior limiting nucleus of the thalamus", + "abbreviation": "POL", + "collapsed_region": "POL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "POL: rgb(255,141,157)", + "R": "255", + "G": "141", + "B": "157" + }, + "325": { + "order": 440, + "structure_ID": 325, + "lowered_ID": 325.0, + "structure_id_path": "/997/8/343/1129/549/856/138/325/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Suprageniculate nucleus", + "collapsed_region_name": "Suprageniculate nucleus", + "abbreviation": "SGN", + "collapsed_region": "SGN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SGN: rgb(255,142,157)", + "R": "255", + "G": "142", + "B": "157" + }, + "560581551": { + "order": 441, + "structure_ID": 560581551, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/549/856/138/560581551/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Ethmoid nucleus of the thalamus", + "collapsed_region_name": "Ethmoid nucleus of the thalamus", + "abbreviation": "Eth", + "collapsed_region": "Eth", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "Eth: rgb(253,143,156)", + "R": "253", + "G": "143", + "B": "156" + }, + "239": { + "order": 442, + "structure_ID": 239, + "lowered_ID": 239.0, + "structure_id_path": "/997/8/343/1129/549/856/239/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Anterior group of the dorsal thalamus", + "collapsed_region_name": "Anterior group of the dorsal thalamus", + "abbreviation": "ATN", + "collapsed_region": "ATN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ATN: rgb(254,142,159)", + "R": "254", + "G": "142", + "B": "159" + }, + "255": { + "order": 443, + "structure_ID": 255, + "lowered_ID": 255.0, + "structure_id_path": "/997/8/343/1129/549/856/239/255/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Anteroventral nucleus of thalamus", + "collapsed_region_name": "Anteroventral nucleus of thalamus", + "abbreviation": "AV", + "collapsed_region": "AV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AV: rgb(253,144,158)", + "R": "253", + "G": "144", + "B": "158" + }, + "127": { + "order": 444, + "structure_ID": 127, + "lowered_ID": 127.0, + "structure_id_path": "/997/8/343/1129/549/856/239/127/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Anteromedial nucleus", + "collapsed_region_name": "Anteromedial nucleus", + "abbreviation": "AM", + "collapsed_region": "AM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AM: rgb(254,144,158)", + "R": "254", + "G": "144", + "B": "158" + }, + "1096": { + "order": 445, + "structure_ID": 1096, + "lowered_ID": 1096.0, + "structure_id_path": "/997/8/343/1129/549/856/239/127/1096/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Anteromedial nucleus, dorsal part", + "collapsed_region_name": "Anteromedial nucleus", + "abbreviation": "AMd", + "collapsed_region": "AM", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "AMd: rgb(253,141,159)", + "R": "253", + "G": "141", + "B": "159" + }, + "1104": { + "order": 446, + "structure_ID": 1104, + "lowered_ID": 1104.0, + "structure_id_path": "/997/8/343/1129/549/856/239/127/1104/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Anteromedial nucleus, ventral part", + "collapsed_region_name": "Anteromedial nucleus", + "abbreviation": "AMv", + "collapsed_region": "AM", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "AMv: rgb(252,144,157)", + "R": "252", + "G": "144", + "B": "157" + }, + "64": { + "order": 447, + "structure_ID": 64, + "lowered_ID": 64.0, + "structure_id_path": "/997/8/343/1129/549/856/239/64/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Anterodorsal nucleus", + "collapsed_region_name": "Anterodorsal nucleus", + "abbreviation": "AD", + "collapsed_region": "AD", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AD: rgb(255,143,158)", + "R": "255", + "G": "143", + "B": "158" + }, + "1120": { + "order": 448, + "structure_ID": 1120, + "lowered_ID": 1120.0, + "structure_id_path": "/997/8/343/1129/549/856/239/1120/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Interanteromedial nucleus of the thalamus", + "collapsed_region_name": "Interanteromedial nucleus of the thalamus", + "abbreviation": "IAM", + "collapsed_region": "IAM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IAM: rgb(254,142,156)", + "R": "254", + "G": "142", + "B": "156" + }, + "1113": { + "order": 449, + "structure_ID": 1113, + "lowered_ID": 1113.0, + "structure_id_path": "/997/8/343/1129/549/856/239/1113/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Interanterodorsal nucleus of the thalamus", + "collapsed_region_name": "Interanterodorsal nucleus of the thalamus", + "abbreviation": "IAD", + "collapsed_region": "IAD", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IAD: rgb(252,142,159)", + "R": "252", + "G": "142", + "B": "159" + }, + "155": { + "order": 450, + "structure_ID": 155, + "lowered_ID": 155.0, + "structure_id_path": "/997/8/343/1129/549/856/239/155/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Lateral dorsal nucleus of thalamus", + "collapsed_region_name": "Lateral dorsal nucleus of thalamus", + "abbreviation": "LD", + "collapsed_region": "LD", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LD: rgb(255,144,157)", + "R": "255", + "G": "144", + "B": "157" + }, + "444": { + "order": 451, + "structure_ID": 444, + "lowered_ID": 444.0, + "structure_id_path": "/997/8/343/1129/549/856/444/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Medial group of the dorsal thalamus", + "collapsed_region_name": "Medial group of the dorsal thalamus", + "abbreviation": "MED", + "collapsed_region": "MED", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MED: rgb(255,144,156)", + "R": "255", + "G": "144", + "B": "156" + }, + "59": { + "order": 452, + "structure_ID": 59, + "lowered_ID": 59.0, + "structure_id_path": "/997/8/343/1129/549/856/444/59/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Intermediodorsal nucleus of the thalamus", + "collapsed_region_name": "Intermediodorsal nucleus of the thalamus", + "abbreviation": "IMD", + "collapsed_region": "IMD", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IMD: rgb(254,144,159)", + "R": "254", + "G": "144", + "B": "159" + }, + "362": { + "order": 453, + "structure_ID": 362, + "lowered_ID": 362.0, + "structure_id_path": "/997/8/343/1129/549/856/444/362/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Mediodorsal nucleus of thalamus", + "collapsed_region_name": "Mediodorsal nucleus of thalamus", + "abbreviation": "MD", + "collapsed_region": "MD", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MD: rgb(253,144,157)", + "R": "253", + "G": "144", + "B": "157" + }, + "366": { + "order": 454, + "structure_ID": 366, + "lowered_ID": 366.0, + "structure_id_path": "/997/8/343/1129/549/856/444/366/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Submedial nucleus of the thalamus", + "collapsed_region_name": "Submedial nucleus of the thalamus", + "abbreviation": "SMT", + "collapsed_region": "SMT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SMT: rgb(253,142,159)", + "R": "253", + "G": "142", + "B": "159" + }, + "1077": { + "order": 455, + "structure_ID": 1077, + "lowered_ID": 1077.0, + "structure_id_path": "/997/8/343/1129/549/856/444/1077/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Perireunensis nucleus", + "collapsed_region_name": "Perireunensis nucleus", + "abbreviation": "PR", + "collapsed_region": "PR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PR: rgb(253,144,156)", + "R": "253", + "G": "144", + "B": "156" + }, + "571": { + "order": 456, + "structure_ID": 571, + "lowered_ID": 571.0, + "structure_id_path": "/997/8/343/1129/549/856/571/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Midline group of the dorsal thalamus", + "collapsed_region_name": "Midline group of the dorsal thalamus", + "abbreviation": "MTN", + "collapsed_region": "MTN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MTN: rgb(254,142,157)", + "R": "254", + "G": "142", + "B": "157" + }, + "149": { + "order": 457, + "structure_ID": 149, + "lowered_ID": 149.0, + "structure_id_path": "/997/8/343/1129/549/856/571/149/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Paraventricular nucleus of the thalamus", + "collapsed_region_name": "Paraventricular nucleus of the thalamus", + "abbreviation": "PVT", + "collapsed_region": "PVT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PVT: rgb(254,143,158)", + "R": "254", + "G": "143", + "B": "158" + }, + "15": { + "order": 458, + "structure_ID": 15, + "lowered_ID": 15.0, + "structure_id_path": "/997/8/343/1129/549/856/571/15/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Parataenial nucleus", + "collapsed_region_name": "Parataenial nucleus", + "abbreviation": "PT", + "collapsed_region": "PT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PT: rgb(255,144,159)", + "R": "255", + "G": "144", + "B": "159" + }, + "181": { + "order": 459, + "structure_ID": 181, + "lowered_ID": 181.0, + "structure_id_path": "/997/8/343/1129/549/856/571/181/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Nucleus of reuniens", + "collapsed_region_name": "Nucleus of reuniens", + "abbreviation": "RE", + "collapsed_region": "RE", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RE: rgb(253,144,159)", + "R": "253", + "G": "144", + "B": "159" + }, + "560581559": { + "order": 460, + "structure_ID": 560581559, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/549/856/571/560581559/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Xiphoid thalamic nucleus", + "collapsed_region_name": "Xiphoid thalamic nucleus", + "abbreviation": "Xi", + "collapsed_region": "Xi", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "Xi: rgb(252,143,159)", + "R": "252", + "G": "143", + "B": "159" + }, + "51": { + "order": 461, + "structure_ID": 51, + "lowered_ID": 51.0, + "structure_id_path": "/997/8/343/1129/549/856/51/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Intralaminar nuclei of the dorsal thalamus", + "collapsed_region_name": "Intralaminar nuclei of the dorsal thalamus", + "abbreviation": "ILM", + "collapsed_region": "ILM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ILM: rgb(255,143,159)", + "R": "255", + "G": "143", + "B": "159" + }, + "189": { + "order": 462, + "structure_ID": 189, + "lowered_ID": 189.0, + "structure_id_path": "/997/8/343/1129/549/856/51/189/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Rhomboid nucleus", + "collapsed_region_name": "Rhomboid nucleus", + "abbreviation": "RH", + "collapsed_region": "RH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RH: rgb(255,142,158)", + "R": "255", + "G": "142", + "B": "158" + }, + "599": { + "order": 463, + "structure_ID": 599, + "lowered_ID": 599.0, + "structure_id_path": "/997/8/343/1129/549/856/51/599/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Central medial nucleus of the thalamus", + "collapsed_region_name": "Central medial nucleus of the thalamus", + "abbreviation": "CM", + "collapsed_region": "CM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CM: rgb(253,142,158)", + "R": "253", + "G": "142", + "B": "158" + }, + "907": { + "order": 464, + "structure_ID": 907, + "lowered_ID": 907.0, + "structure_id_path": "/997/8/343/1129/549/856/51/907/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Paracentral nucleus", + "collapsed_region_name": "Paracentral nucleus", + "abbreviation": "PCN", + "collapsed_region": "PCN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PCN: rgb(254,141,159)", + "R": "254", + "G": "141", + "B": "159" + }, + "575": { + "order": 465, + "structure_ID": 575, + "lowered_ID": 575.0, + "structure_id_path": "/997/8/343/1129/549/856/51/575/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Central lateral nucleus of the thalamus", + "collapsed_region_name": "Central lateral nucleus of the thalamus", + "abbreviation": "CL", + "collapsed_region": "CL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CL: rgb(253,143,157)", + "R": "253", + "G": "143", + "B": "157" + }, + "930": { + "order": 466, + "structure_ID": 930, + "lowered_ID": 930.0, + "structure_id_path": "/997/8/343/1129/549/856/51/930/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Parafascicular nucleus", + "collapsed_region_name": "Parafascicular nucleus", + "abbreviation": "PF", + "collapsed_region": "PF", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PF: rgb(252,144,158)", + "R": "252", + "G": "144", + "B": "158" + }, + "560581563": { + "order": 467, + "structure_ID": 560581563, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/549/856/51/560581563/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Posterior intralaminar thalamic nucleus", + "collapsed_region_name": "Posterior intralaminar thalamic nucleus", + "abbreviation": "PIL", + "collapsed_region": "PIL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PIL: rgb(254,141,158)", + "R": "254", + "G": "141", + "B": "158" + }, + "262": { + "order": 468, + "structure_ID": 262, + "lowered_ID": 262.0, + "structure_id_path": "/997/8/343/1129/549/856/262/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Reticular nucleus of the thalamus", + "collapsed_region_name": "Reticular nucleus of the thalamus", + "abbreviation": "RT", + "collapsed_region": "RT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RT: rgb(253,143,159)", + "R": "253", + "G": "143", + "B": "159" + }, + "1014": { + "order": 469, + "structure_ID": 1014, + "lowered_ID": 1014.0, + "structure_id_path": "/997/8/343/1129/549/856/1014/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Geniculate group, ventral thalamus", + "collapsed_region_name": "Geniculate group, ventral thalamus", + "abbreviation": "GENv", + "collapsed_region": "GENv", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "GENv: rgb(253,142,157)", + "R": "253", + "G": "142", + "B": "157" + }, + "27": { + "order": 470, + "structure_ID": 27, + "lowered_ID": 27.0, + "structure_id_path": "/997/8/343/1129/549/856/1014/27/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Intergeniculate leaflet of the lateral geniculate complex", + "collapsed_region_name": "Intergeniculate leaflet of the lateral geniculate complex", + "abbreviation": "IGL", + "collapsed_region": "IGL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IGL: rgb(255,144,158)", + "R": "255", + "G": "144", + "B": "158" + }, + "563807439": { + "order": 471, + "structure_ID": 563807439, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/549/856/1014/563807439/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Intermediate geniculate nucleus", + "collapsed_region_name": "Intermediate geniculate nucleus", + "abbreviation": "IntG", + "collapsed_region": "IntG", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IntG: rgb(254,141,157)", + "R": "254", + "G": "141", + "B": "157" + }, + "178": { + "order": 472, + "structure_ID": 178, + "lowered_ID": 178.0, + "structure_id_path": "/997/8/343/1129/549/856/1014/178/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Ventral part of the lateral geniculate complex", + "collapsed_region_name": "Ventral part of the lateral geniculate complex", + "abbreviation": "LGv", + "collapsed_region": "LGv", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LGv: rgb(255,142,159)", + "R": "255", + "G": "142", + "B": "159" + }, + "321": { + "order": 473, + "structure_ID": 321, + "lowered_ID": 321.0, + "structure_id_path": "/997/8/343/1129/549/856/1014/321/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Subgeniculate nucleus", + "collapsed_region_name": "Subgeniculate nucleus", + "abbreviation": "SubG", + "collapsed_region": "SubG", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SubG: rgb(253,143,158)", + "R": "253", + "G": "143", + "B": "158" + }, + "958": { + "order": 474, + "structure_ID": 958, + "lowered_ID": 958.0, + "structure_id_path": "/997/8/343/1129/549/856/958/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Epithalamus", + "collapsed_region_name": "Epithalamus", + "abbreviation": "EPI", + "collapsed_region": "EPI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "EPI: rgb(252,143,158)", + "R": "252", + "G": "143", + "B": "158" + }, + "483": { + "order": 475, + "structure_ID": 483, + "lowered_ID": 483.0, + "structure_id_path": "/997/8/343/1129/549/856/958/483/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Medial habenula", + "collapsed_region_name": "Medial habenula", + "abbreviation": "MH", + "collapsed_region": "MH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MH: rgb(255,141,159)", + "R": "255", + "G": "141", + "B": "159" + }, + "186": { + "order": 476, + "structure_ID": 186, + "lowered_ID": 186.0, + "structure_id_path": "/997/8/343/1129/549/856/958/186/", + "very_general_region": "Thalamus", + "general_region": "Thalamus, polymodal association cortex related", + "full_structure_name": "Lateral habenula", + "collapsed_region_name": "Lateral habenula", + "abbreviation": "LH", + "collapsed_region": "LH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LH: rgb(255,143,157)", + "R": "255", + "G": "143", + "B": "157" + }, + "1097": { + "order": 477, + "structure_ID": 1097, + "lowered_ID": 1097.0, + "structure_id_path": "/997/8/343/1129/1097/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Hypothalamus", + "collapsed_region_name": "Hypothalamus", + "abbreviation": "HY", + "collapsed_region": "HY", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "HY: rgb(230,68,56)", + "R": "230", + "G": "68", + "B": "56" + }, + "157": { + "order": 478, + "structure_ID": 157, + "lowered_ID": 157.0, + "structure_id_path": "/997/8/343/1129/1097/157/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Periventricular zone", + "collapsed_region_name": "Periventricular zone", + "abbreviation": "PVZ", + "collapsed_region": "PVZ", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PVZ: rgb(255,92,78)", + "R": "255", + "G": "92", + "B": "78" + }, + "390": { + "order": 479, + "structure_ID": 390, + "lowered_ID": 390.0, + "structure_id_path": "/997/8/343/1129/1097/157/390/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Supraoptic nucleus", + "collapsed_region_name": "Supraoptic nucleus", + "abbreviation": "SO", + "collapsed_region": "SO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SO: rgb(254,91,80)", + "R": "254", + "G": "91", + "B": "80" + }, + "332": { + "order": 480, + "structure_ID": 332, + "lowered_ID": 332.0, + "structure_id_path": "/997/8/343/1129/1097/157/332/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Accessory supraoptic group", + "collapsed_region_name": "Accessory supraoptic group", + "abbreviation": "ASO", + "collapsed_region": "ASO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ASO: rgb(254,93,78)", + "R": "254", + "G": "93", + "B": "78" + }, + "38": { + "order": 481, + "structure_ID": 38, + "lowered_ID": 38.0, + "structure_id_path": "/997/8/343/1129/1097/157/38/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Paraventricular hypothalamic nucleus", + "collapsed_region_name": "Paraventricular hypothalamic nucleus", + "abbreviation": "PVH", + "collapsed_region": "PVH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PVH: rgb(255,93,79)", + "R": "255", + "G": "93", + "B": "79" + }, + "30": { + "order": 482, + "structure_ID": 30, + "lowered_ID": 30.0, + "structure_id_path": "/997/8/343/1129/1097/157/30/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Periventricular hypothalamic nucleus, anterior part", + "collapsed_region_name": "Periventricular hypothalamic nucleus, anterior part", + "abbreviation": "PVa", + "collapsed_region": "PVa", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PVa: rgb(255,93,80)", + "R": "255", + "G": "93", + "B": "80" + }, + "118": { + "order": 483, + "structure_ID": 118, + "lowered_ID": 118.0, + "structure_id_path": "/997/8/343/1129/1097/157/118/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Periventricular hypothalamic nucleus, intermediate part", + "collapsed_region_name": "Periventricular hypothalamic nucleus, intermediate part", + "abbreviation": "PVi", + "collapsed_region": "PVi", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PVi: rgb(253,93,80)", + "R": "253", + "G": "93", + "B": "80" + }, + "223": { + "order": 484, + "structure_ID": 223, + "lowered_ID": 223.0, + "structure_id_path": "/997/8/343/1129/1097/157/223/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Arcuate hypothalamic nucleus", + "collapsed_region_name": "Arcuate hypothalamic nucleus", + "abbreviation": "ARH", + "collapsed_region": "ARH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ARH: rgb(255,91,79)", + "R": "255", + "G": "91", + "B": "79" + }, + "141": { + "order": 485, + "structure_ID": 141, + "lowered_ID": 141.0, + "structure_id_path": "/997/8/343/1129/1097/141/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Periventricular region", + "collapsed_region_name": "Periventricular region", + "abbreviation": "PVR", + "collapsed_region": "PVR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PVR: rgb(255,84,70)", + "R": "255", + "G": "84", + "B": "70" + }, + "72": { + "order": 486, + "structure_ID": 72, + "lowered_ID": 72.0, + "structure_id_path": "/997/8/343/1129/1097/141/72/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Anterodorsal preoptic nucleus", + "collapsed_region_name": "Anterodorsal preoptic nucleus", + "abbreviation": "ADP", + "collapsed_region": "ADP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ADP: rgb(255,85,71)", + "R": "255", + "G": "85", + "B": "71" + }, + "263": { + "order": 487, + "structure_ID": 263, + "lowered_ID": 263.0, + "structure_id_path": "/997/8/343/1129/1097/141/263/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Anteroventral preoptic nucleus", + "collapsed_region_name": "Anteroventral preoptic nucleus", + "abbreviation": "AVP", + "collapsed_region": "AVP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AVP: rgb(254,84,71)", + "R": "254", + "G": "84", + "B": "71" + }, + "272": { + "order": 488, + "structure_ID": 272, + "lowered_ID": 272.0, + "structure_id_path": "/997/8/343/1129/1097/141/272/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Anteroventral periventricular nucleus", + "collapsed_region_name": "Anteroventral periventricular nucleus", + "abbreviation": "AVPV", + "collapsed_region": "AVPV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AVPV: rgb(254,84,70)", + "R": "254", + "G": "84", + "B": "70" + }, + "830": { + "order": 489, + "structure_ID": 830, + "lowered_ID": 830.0, + "structure_id_path": "/997/8/343/1129/1097/141/830/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Dorsomedial nucleus of the hypothalamus", + "collapsed_region_name": "Dorsomedial nucleus of the hypothalamus", + "abbreviation": "DMH", + "collapsed_region": "DMH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "DMH: rgb(254,84,69)", + "R": "254", + "G": "84", + "B": "69" + }, + "452": { + "order": 490, + "structure_ID": 452, + "lowered_ID": 452.0, + "structure_id_path": "/997/8/343/1129/1097/141/452/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Median preoptic nucleus", + "collapsed_region_name": "Median preoptic nucleus", + "abbreviation": "MEPO", + "collapsed_region": "MEPO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MEPO: rgb(255,84,69)", + "R": "255", + "G": "84", + "B": "69" + }, + "523": { + "order": 491, + "structure_ID": 523, + "lowered_ID": 523.0, + "structure_id_path": "/997/8/343/1129/1097/141/523/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Medial preoptic area", + "collapsed_region_name": "Medial preoptic area", + "abbreviation": "MPO", + "collapsed_region": "MPO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MPO: rgb(255,83,70)", + "R": "255", + "G": "83", + "B": "70" + }, + "763": { + "order": 492, + "structure_ID": 763, + "lowered_ID": 763.0, + "structure_id_path": "/997/8/343/1129/1097/141/763/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Vascular organ of the lamina terminalis", + "collapsed_region_name": "Vascular organ of the lamina terminalis", + "abbreviation": "OV", + "collapsed_region": "OV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "OV: rgb(253,84,71)", + "R": "253", + "G": "84", + "B": "71" + }, + "914": { + "order": 493, + "structure_ID": 914, + "lowered_ID": 914.0, + "structure_id_path": "/997/8/343/1129/1097/141/914/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Posterodorsal preoptic nucleus", + "collapsed_region_name": "Posterodorsal preoptic nucleus", + "abbreviation": "PD", + "collapsed_region": "PD", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PD: rgb(254,83,70)", + "R": "254", + "G": "83", + "B": "70" + }, + "1109": { + "order": 494, + "structure_ID": 1109, + "lowered_ID": 1109.0, + "structure_id_path": "/997/8/343/1129/1097/141/1109/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Parastrial nucleus", + "collapsed_region_name": "Parastrial nucleus", + "abbreviation": "PS", + "collapsed_region": "PS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PS: rgb(253,84,70)", + "R": "253", + "G": "84", + "B": "70" + }, + "126": { + "order": 495, + "structure_ID": 126, + "lowered_ID": 126.0, + "structure_id_path": "/997/8/343/1129/1097/141/126/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Periventricular hypothalamic nucleus, posterior part", + "collapsed_region_name": "Periventricular hypothalamic nucleus", + "abbreviation": "PVp", + "collapsed_region": "PV", + "other_abbreviation": "p", + "other_abbreviation_defined": "posterior", + "layer": null, + "sunburst": "PVp: rgb(255,84,71)", + "R": "255", + "G": "84", + "B": "71" + }, + "133": { + "order": 496, + "structure_ID": 133, + "lowered_ID": 133.0, + "structure_id_path": "/997/8/343/1129/1097/141/133/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Periventricular hypothalamic nucleus, preoptic part", + "collapsed_region_name": "Periventricular hypothalamic nucleus", + "abbreviation": "PVpo", + "collapsed_region": "PV", + "other_abbreviation": "po", + "other_abbreviation_defined": "preoptic", + "layer": null, + "sunburst": "PVpo: rgb(254,85,71)", + "R": "254", + "G": "85", + "B": "71" + }, + "347": { + "order": 497, + "structure_ID": 347, + "lowered_ID": 347.0, + "structure_id_path": "/997/8/343/1129/1097/141/347/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Subparaventricular zone", + "collapsed_region_name": "Subparaventricular zone", + "abbreviation": "SBPV", + "collapsed_region": "SBPV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SBPV: rgb(253,85,71)", + "R": "253", + "G": "85", + "B": "71" + }, + "286": { + "order": 498, + "structure_ID": 286, + "lowered_ID": 286.0, + "structure_id_path": "/997/8/343/1129/1097/141/286/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Suprachiasmatic nucleus", + "collapsed_region_name": "Suprachiasmatic nucleus", + "abbreviation": "SCH", + "collapsed_region": "SCH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SCH: rgb(255,85,69)", + "R": "255", + "G": "85", + "B": "69" + }, + "338": { + "order": 499, + "structure_ID": 338, + "lowered_ID": 338.0, + "structure_id_path": "/997/8/343/1129/1097/141/338/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Subfornical organ", + "collapsed_region_name": "Subfornical organ", + "abbreviation": "SFO", + "collapsed_region": "SFO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SFO: rgb(255,83,71)", + "R": "255", + "G": "83", + "B": "71" + }, + "576073699": { + "order": 500, + "structure_ID": 576073699, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/1097/141/576073699/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Ventromedial preoptic nucleus", + "collapsed_region_name": "Ventromedial preoptic nucleus", + "abbreviation": "VMPO", + "collapsed_region": "VMPO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VMPO: rgb(253,85,69)", + "R": "253", + "G": "85", + "B": "69" + }, + "689": { + "order": 501, + "structure_ID": 689, + "lowered_ID": 689.0, + "structure_id_path": "/997/8/343/1129/1097/141/689/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Ventrolateral preoptic nucleus", + "collapsed_region_name": "Ventrolateral preoptic nucleus", + "abbreviation": "VLPO", + "collapsed_region": "VLPO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VLPO: rgb(254,85,70)", + "R": "254", + "G": "85", + "B": "70" + }, + "467": { + "order": 502, + "structure_ID": 467, + "lowered_ID": 467.0, + "structure_id_path": "/997/8/343/1129/1097/467/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Hypothalamic medial zone", + "collapsed_region_name": "Hypothalamic medial zone", + "abbreviation": "MEZ", + "collapsed_region": "MEZ", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MEZ: rgb(255,76,60)", + "R": "255", + "G": "76", + "B": "60" + }, + "88": { + "order": 503, + "structure_ID": 88, + "lowered_ID": 88.0, + "structure_id_path": "/997/8/343/1129/1097/467/88/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Anterior hypothalamic nucleus", + "collapsed_region_name": "Anterior hypothalamic nucleus", + "abbreviation": "AHN", + "collapsed_region": "AHN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AHN: rgb(255,75,62)", + "R": "255", + "G": "75", + "B": "62" + }, + "331": { + "order": 504, + "structure_ID": 331, + "lowered_ID": 331.0, + "structure_id_path": "/997/8/343/1129/1097/467/331/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Mammillary body", + "collapsed_region_name": "Mammillary body", + "abbreviation": "MBO", + "collapsed_region": "MBO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MBO: rgb(254,76,61)", + "R": "254", + "G": "76", + "B": "61" + }, + "210": { + "order": 505, + "structure_ID": 210, + "lowered_ID": 210.0, + "structure_id_path": "/997/8/343/1129/1097/467/331/210/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Lateral mammillary nucleus", + "collapsed_region_name": "Lateral mammillary nucleus", + "abbreviation": "LM", + "collapsed_region": "LM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LM: rgb(255,75,61)", + "R": "255", + "G": "75", + "B": "61" + }, + "491": { + "order": 506, + "structure_ID": 491, + "lowered_ID": 491.0, + "structure_id_path": "/997/8/343/1129/1097/467/331/491/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Medial mammillary nucleus", + "collapsed_region_name": "Medial mammillary nucleus", + "abbreviation": "MM", + "collapsed_region": "MM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MM: rgb(255,74,62)", + "R": "255", + "G": "74", + "B": "62" + }, + "732": { + "order": 507, + "structure_ID": 732, + "lowered_ID": 732.0, + "structure_id_path": "/997/8/343/1129/1097/467/331/491/732/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Medial mammillary nucleus, median part", + "collapsed_region_name": "Medial mammillary nucleus", + "abbreviation": "Mmme", + "collapsed_region": "MM", + "other_abbreviation": "me", + "other_abbreviation_defined": "median", + "layer": null, + "sunburst": "Mmme: rgb(253,75,62)", + "R": "253", + "G": "75", + "B": "62" + }, + "606826647": { + "order": 508, + "structure_ID": 606826647, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/1097/467/331/491/606826647/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Medial mammillary nucleus, lateral part", + "collapsed_region_name": "Medial mammillary nucleus", + "abbreviation": "Mml", + "collapsed_region": "MM", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": null, + "sunburst": "Mml: rgb(252,75,62)", + "R": "252", + "G": "75", + "B": "62" + }, + "606826651": { + "order": 509, + "structure_ID": 606826651, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/1097/467/331/491/606826651/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Medial mammillary nucleus, medial part", + "collapsed_region_name": "Medial mammillary nucleus", + "abbreviation": "Mmm", + "collapsed_region": "MM", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": null, + "sunburst": "Mmm: rgb(254,74,60)", + "R": "254", + "G": "74", + "B": "60" + }, + "606826655": { + "order": 510, + "structure_ID": 606826655, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/1097/467/331/491/606826655/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Medial mammillary nucleus, posterior part", + "collapsed_region_name": "Medial mammillary nucleus", + "abbreviation": "Mmp", + "collapsed_region": "MM", + "other_abbreviation": "p", + "other_abbreviation_defined": "posterior", + "layer": null, + "sunburst": "Mmp: rgb(254,73,61)", + "R": "254", + "G": "73", + "B": "61" + }, + "606826659": { + "order": 511, + "structure_ID": 606826659, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/1097/467/331/491/606826659/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Medial mammillary nucleus, dorsal part", + "collapsed_region_name": "Medial mammillary nucleus", + "abbreviation": "Mmd", + "collapsed_region": "MM", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "Mmd: rgb(253,74,61)", + "R": "253", + "G": "74", + "B": "61" + }, + "525": { + "order": 512, + "structure_ID": 525, + "lowered_ID": 525.0, + "structure_id_path": "/997/8/343/1129/1097/467/331/525/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Supramammillary nucleus", + "collapsed_region_name": "Supramammillary nucleus", + "abbreviation": "SUM", + "collapsed_region": "SUM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SUM: rgb(255,73,61)", + "R": "255", + "G": "73", + "B": "61" + }, + "557": { + "order": 513, + "structure_ID": 557, + "lowered_ID": 557.0, + "structure_id_path": "/997/8/343/1129/1097/467/331/557/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Tuberomammillary nucleus", + "collapsed_region_name": "Tuberomammillary nucleus", + "abbreviation": "TM", + "collapsed_region": "TM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "TM: rgb(255,75,60)", + "R": "255", + "G": "75", + "B": "60" + }, + "1126": { + "order": 514, + "structure_ID": 1126, + "lowered_ID": 1126.0, + "structure_id_path": "/997/8/343/1129/1097/467/331/557/1126/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Tuberomammillary nucleus, dorsal part", + "collapsed_region_name": "Tuberomammillary nucleus", + "abbreviation": "TMd", + "collapsed_region": "TM", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "TMd: rgb(252,76,61)", + "R": "252", + "G": "76", + "B": "61" + }, + "1": { + "order": 515, + "structure_ID": 1, + "lowered_ID": 1.0, + "structure_id_path": "/997/8/343/1129/1097/467/331/557/1/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Tuberomammillary nucleus, ventral part", + "collapsed_region_name": "Tuberomammillary nucleus", + "abbreviation": "TMv", + "collapsed_region": "TM", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "TMv: rgb(255,76,62)", + "R": "255", + "G": "76", + "B": "62" + }, + "515": { + "order": 516, + "structure_ID": 515, + "lowered_ID": 515.0, + "structure_id_path": "/997/8/343/1129/1097/467/515/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Medial preoptic nucleus", + "collapsed_region_name": "Medial preoptic nucleus", + "abbreviation": "MPN", + "collapsed_region": "MPN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MPN: rgb(253,76,62)", + "R": "253", + "G": "76", + "B": "62" + }, + "980": { + "order": 517, + "structure_ID": 980, + "lowered_ID": 980.0, + "structure_id_path": "/997/8/343/1129/1097/467/980/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Dorsal premammillary nucleus", + "collapsed_region_name": "Premammillary nucleus", + "abbreviation": "PMd", + "collapsed_region": "PM", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "PMd: rgb(252,76,62)", + "R": "252", + "G": "76", + "B": "62" + }, + "1004": { + "order": 518, + "structure_ID": 1004, + "lowered_ID": 1004.0, + "structure_id_path": "/997/8/343/1129/1097/467/1004/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Ventral premammillary nucleus", + "collapsed_region_name": "Premammillary nucleus", + "abbreviation": "PMv", + "collapsed_region": "PM", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "PMv: rgb(255,75,59)", + "R": "255", + "G": "75", + "B": "59" + }, + "63": { + "order": 519, + "structure_ID": 63, + "lowered_ID": 63.0, + "structure_id_path": "/997/8/343/1129/1097/467/63/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Paraventricular hypothalamic nucleus, descending division", + "collapsed_region_name": "Paraventricular hypothalamic nucleus, descending division", + "abbreviation": "PVHd", + "collapsed_region": "PVHd", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PVHd: rgb(255,76,61)", + "R": "255", + "G": "76", + "B": "61" + }, + "693": { + "order": 520, + "structure_ID": 693, + "lowered_ID": 693.0, + "structure_id_path": "/997/8/343/1129/1097/467/693/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Ventromedial hypothalamic nucleus", + "collapsed_region_name": "Ventromedial hypothalamic nucleus", + "abbreviation": "VMH", + "collapsed_region": "VMH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VMH: rgb(255,74,61)", + "R": "255", + "G": "74", + "B": "61" + }, + "946": { + "order": 521, + "structure_ID": 946, + "lowered_ID": 946.0, + "structure_id_path": "/997/8/343/1129/1097/467/946/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Posterior hypothalamic nucleus", + "collapsed_region_name": "Posterior hypothalamic nucleus", + "abbreviation": "PH", + "collapsed_region": "PH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PH: rgb(253,75,60)", + "R": "253", + "G": "75", + "B": "60" + }, + "290": { + "order": 522, + "structure_ID": 290, + "lowered_ID": 290.0, + "structure_id_path": "/997/8/343/1129/1097/290/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Hypothalamic lateral zone", + "collapsed_region_name": "Hypothalamic lateral zone", + "abbreviation": "LZ", + "collapsed_region": "LZ", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LZ: rgb(241,72,59)", + "R": "241", + "G": "72", + "B": "59" + }, + "194": { + "order": 523, + "structure_ID": 194, + "lowered_ID": 194.0, + "structure_id_path": "/997/8/343/1129/1097/290/194/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Lateral hypothalamic area", + "collapsed_region_name": "Lateral hypothalamic area", + "abbreviation": "LHA", + "collapsed_region": "LHA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LHA: rgb(242,72,58)", + "R": "242", + "G": "72", + "B": "58" + }, + "226": { + "order": 524, + "structure_ID": 226, + "lowered_ID": 226.0, + "structure_id_path": "/997/8/343/1129/1097/290/226/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Lateral preoptic area", + "collapsed_region_name": "Lateral preoptic area", + "abbreviation": "LPO", + "collapsed_region": "LPO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LPO: rgb(242,71,59)", + "R": "242", + "G": "71", + "B": "59" + }, + "356": { + "order": 525, + "structure_ID": 356, + "lowered_ID": 356.0, + "structure_id_path": "/997/8/343/1129/1097/290/356/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Preparasubthalamic nucleus", + "collapsed_region_name": "Preparasubthalamic nucleus", + "abbreviation": "PST", + "collapsed_region": "PST", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PST: rgb(242,71,58)", + "R": "242", + "G": "71", + "B": "58" + }, + "364": { + "order": 526, + "structure_ID": 364, + "lowered_ID": 364.0, + "structure_id_path": "/997/8/343/1129/1097/290/364/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Parasubthalamic nucleus", + "collapsed_region_name": "Parasubthalamic nucleus", + "abbreviation": "PSTN", + "collapsed_region": "PSTN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PSTN: rgb(241,72,58)", + "R": "241", + "G": "72", + "B": "58" + }, + "576073704": { + "order": 527, + "structure_ID": 576073704, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1129/1097/290/576073704/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Perifornical nucleus", + "collapsed_region_name": "Perifornical nucleus", + "abbreviation": "PeF", + "collapsed_region": "PeF", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PeF: rgb(242,70,58)", + "R": "242", + "G": "70", + "B": "58" + }, + "173": { + "order": 528, + "structure_ID": 173, + "lowered_ID": 173.0, + "structure_id_path": "/997/8/343/1129/1097/290/173/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Retrochiasmatic area", + "collapsed_region_name": "Retrochiasmatic area", + "abbreviation": "RCH", + "collapsed_region": "RCH", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RCH: rgb(242,72,59)", + "R": "242", + "G": "72", + "B": "59" + }, + "470": { + "order": 529, + "structure_ID": 470, + "lowered_ID": 470.0, + "structure_id_path": "/997/8/343/1129/1097/290/470/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Subthalamic nucleus", + "collapsed_region_name": "Subthalamic nucleus", + "abbreviation": "STN", + "collapsed_region": "STN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "STN: rgb(241,71,59)", + "R": "241", + "G": "71", + "B": "59" + }, + "614": { + "order": 530, + "structure_ID": 614, + "lowered_ID": 614.0, + "structure_id_path": "/997/8/343/1129/1097/290/614/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Tuberal nucleus", + "collapsed_region_name": "Tuberal nucleus", + "abbreviation": "TU", + "collapsed_region": "TU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "TU: rgb(242,72,57)", + "R": "242", + "G": "72", + "B": "57" + }, + "797": { + "order": 531, + "structure_ID": 797, + "lowered_ID": 797.0, + "structure_id_path": "/997/8/343/1129/1097/290/797/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Zona incerta", + "collapsed_region_name": "Zona incerta", + "abbreviation": "ZI", + "collapsed_region": "ZI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ZI: rgb(240,72,59)", + "R": "240", + "G": "72", + "B": "59" + }, + "804": { + "order": 532, + "structure_ID": 804, + "lowered_ID": 804.0, + "structure_id_path": "/997/8/343/1129/1097/290/797/804/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Fields of Forel", + "collapsed_region_name": "Fields of Forel", + "abbreviation": "FF", + "collapsed_region": "FF", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "FF: rgb(242,71,57)", + "R": "242", + "G": "71", + "B": "57" + }, + "10671": { + "order": 533, + "structure_ID": 10671, + "lowered_ID": 1140.0, + "structure_id_path": "/997/8/343/1129/1097/10671/", + "very_general_region": "Hypothalamus", + "general_region": "Hypothalamus", + "full_structure_name": "Median eminence", + "collapsed_region_name": "Median eminence", + "abbreviation": "ME", + "collapsed_region": "ME", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ME: rgb(241,71,58)", + "R": "241", + "G": "71", + "B": "58" + }, + "313": { + "order": 534, + "structure_ID": 313, + "lowered_ID": 313.0, + "structure_id_path": "/997/8/343/313/", + "very_general_region": "Midbrain", + "general_region": "Midbrain", + "full_structure_name": "Midbrain", + "collapsed_region_name": "Midbrain", + "abbreviation": "MB", + "collapsed_region": "MB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MB: rgb(255,100,255)", + "R": "255", + "G": "100", + "B": "255" + }, + "339": { + "order": 535, + "structure_ID": 339, + "lowered_ID": 339.0, + "structure_id_path": "/997/8/343/313/339/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Midbrain, sensory related", + "collapsed_region_name": "Midbrain", + "abbreviation": "MBsen", + "collapsed_region": "MB", + "other_abbreviation": "sen", + "other_abbreviation_defined": "sensory related", + "layer": null, + "sunburst": "MBsen: rgb(254,122,255)", + "R": "254", + "G": "122", + "B": "255" + }, + "302": { + "order": 536, + "structure_ID": 302, + "lowered_ID": 302.0, + "structure_id_path": "/997/8/343/313/339/302/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Superior colliculus, sensory related", + "collapsed_region_name": "Superior colliculus", + "abbreviation": "SCs", + "collapsed_region": "SC", + "other_abbreviation": "s", + "other_abbreviation_defined": "sensory related", + "layer": null, + "sunburst": "SCs: rgb(255,121,255)", + "R": "255", + "G": "121", + "B": "255" + }, + "851": { + "order": 537, + "structure_ID": 851, + "lowered_ID": 851.0, + "structure_id_path": "/997/8/343/313/339/302/851/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Superior colliculus, optic layer", + "collapsed_region_name": "Superior colliculus", + "abbreviation": "SCop", + "collapsed_region": "SC", + "other_abbreviation": "op", + "other_abbreviation_defined": "optic layer", + "layer": null, + "sunburst": "SCop: rgb(253,122,255)", + "R": "253", + "G": "122", + "B": "255" + }, + "842": { + "order": 538, + "structure_ID": 842, + "lowered_ID": 842.0, + "structure_id_path": "/997/8/343/313/339/302/842/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Superior colliculus, superficial gray layer", + "collapsed_region_name": "Superior colliculus", + "abbreviation": "SCsg", + "collapsed_region": "SC", + "other_abbreviation": "sg", + "other_abbreviation_defined": "superficial gray layer", + "layer": null, + "sunburst": "SCsg: rgb(255,120,255)", + "R": "255", + "G": "120", + "B": "255" + }, + "834": { + "order": 539, + "structure_ID": 834, + "lowered_ID": 834.0, + "structure_id_path": "/997/8/343/313/339/302/834/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Superior colliculus, zonal layer", + "collapsed_region_name": "Superior colliculus", + "abbreviation": "SCzo", + "collapsed_region": "SC", + "other_abbreviation": "zo", + "other_abbreviation_defined": "zonal layer", + "layer": null, + "sunburst": "SCzo: rgb(255,122,253)", + "R": "255", + "G": "122", + "B": "253" + }, + "4": { + "order": 540, + "structure_ID": 4, + "lowered_ID": 4.0, + "structure_id_path": "/997/8/343/313/339/4/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Inferior colliculus", + "collapsed_region_name": "Inferior colliculus", + "abbreviation": "IC", + "collapsed_region": "IC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IC: rgb(255,122,255)", + "R": "255", + "G": "122", + "B": "255" + }, + "811": { + "order": 541, + "structure_ID": 811, + "lowered_ID": 811.0, + "structure_id_path": "/997/8/343/313/339/4/811/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Inferior colliculus, central nucleus", + "collapsed_region_name": "Inferior colliculus", + "abbreviation": "ICc", + "collapsed_region": "IC", + "other_abbreviation": "c", + "other_abbreviation_defined": "central nucleus", + "layer": null, + "sunburst": "ICc: rgb(254,122,254)", + "R": "254", + "G": "122", + "B": "254" + }, + "820": { + "order": 542, + "structure_ID": 820, + "lowered_ID": 820.0, + "structure_id_path": "/997/8/343/313/339/4/820/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Inferior colliculus, dorsal nucleus", + "collapsed_region_name": "Inferior colliculus", + "abbreviation": "ICd", + "collapsed_region": "IC", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal nucleus", + "layer": null, + "sunburst": "ICd: rgb(254,121,255)", + "R": "254", + "G": "121", + "B": "255" + }, + "828": { + "order": 543, + "structure_ID": 828, + "lowered_ID": 828.0, + "structure_id_path": "/997/8/343/313/339/4/828/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Inferior colliculus, external nucleus", + "collapsed_region_name": "Inferior colliculus", + "abbreviation": "ICe", + "collapsed_region": "IC", + "other_abbreviation": "e", + "other_abbreviation_defined": "external nucleus", + "layer": null, + "sunburst": "ICe: rgb(254,121,254)", + "R": "254", + "G": "121", + "B": "254" + }, + "580": { + "order": 544, + "structure_ID": 580, + "lowered_ID": 580.0, + "structure_id_path": "/997/8/343/313/339/580/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Nucleus of the brachium of the inferior colliculus", + "collapsed_region_name": "Nucleus of the brachium of the inferior colliculus", + "abbreviation": "NB", + "collapsed_region": "NB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "NB: rgb(254,122,253)", + "R": "254", + "G": "122", + "B": "253" + }, + "271": { + "order": 545, + "structure_ID": 271, + "lowered_ID": 271.0, + "structure_id_path": "/997/8/343/313/339/271/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Nucleus sagulum", + "collapsed_region_name": "Nucleus sagulum", + "abbreviation": "SAG", + "collapsed_region": "SAG", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SAG: rgb(255,122,254)", + "R": "255", + "G": "122", + "B": "254" + }, + "874": { + "order": 546, + "structure_ID": 874, + "lowered_ID": 874.0, + "structure_id_path": "/997/8/343/313/339/874/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Parabigeminal nucleus", + "collapsed_region_name": "Parabigeminal nucleus", + "abbreviation": "PBG", + "collapsed_region": "PBG", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PBG: rgb(255,121,253)", + "R": "255", + "G": "121", + "B": "253" + }, + "460": { + "order": 547, + "structure_ID": 460, + "lowered_ID": 460.0, + "structure_id_path": "/997/8/343/313/339/460/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Midbrain trigeminal nucleus", + "collapsed_region_name": "Midbrain trigeminal nucleus", + "abbreviation": "MEV", + "collapsed_region": "MEV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MEV: rgb(255,121,254)", + "R": "255", + "G": "121", + "B": "254" + }, + "599626923": { + "order": 548, + "structure_ID": 599626923, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/339/599626923/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, sensory related", + "full_structure_name": "Subcommissural organ", + "collapsed_region_name": "Subcommissural organ", + "abbreviation": "SCO", + "collapsed_region": "SCO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SCO: rgb(255,120,254)", + "R": "255", + "G": "120", + "B": "254" + }, + "323": { + "order": 549, + "structure_ID": 323, + "lowered_ID": 323.0, + "structure_id_path": "/997/8/343/313/323/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Midbrain, motor related", + "collapsed_region_name": "Midbrain", + "abbreviation": "MBmot", + "collapsed_region": "MB", + "other_abbreviation": "mot", + "other_abbreviation_defined": "motor related", + "layer": null, + "sunburst": "MBmot: rgb(254,142,254)", + "R": "254", + "G": "142", + "B": "254" + }, + "381": { + "order": 550, + "structure_ID": 381, + "lowered_ID": 381.0, + "structure_id_path": "/997/8/343/313/323/381/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Substantia nigra, reticular part", + "collapsed_region_name": "Substantia nigra, reticular part", + "abbreviation": "SNr", + "collapsed_region": "SNr", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SNr: rgb(255,141,253)", + "R": "255", + "G": "141", + "B": "253" + }, + "749": { + "order": 551, + "structure_ID": 749, + "lowered_ID": 749.0, + "structure_id_path": "/997/8/343/313/323/749/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Ventral tegmental area", + "collapsed_region_name": "Ventral tegmental area", + "abbreviation": "VTA", + "collapsed_region": "VTA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VTA: rgb(254,141,255)", + "R": "254", + "G": "141", + "B": "255" + }, + "607344830": { + "order": 552, + "structure_ID": 607344830, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/323/607344830/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Paranigral nucleus", + "collapsed_region_name": "Paranigral nucleus", + "abbreviation": "PN", + "collapsed_region": "PN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PN: rgb(255,142,254)", + "R": "255", + "G": "142", + "B": "254" + }, + "246": { + "order": 553, + "structure_ID": 246, + "lowered_ID": 246.0, + "structure_id_path": "/997/8/343/313/323/246/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Midbrain reticular nucleus, retrorubral area", + "collapsed_region_name": "Midbrain reticular nucleus, retrorubral area", + "abbreviation": "RR", + "collapsed_region": "RR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RR: rgb(253,143,255)", + "R": "253", + "G": "143", + "B": "255" + }, + "128": { + "order": 554, + "structure_ID": 128, + "lowered_ID": 128.0, + "structure_id_path": "/997/8/343/313/323/128/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Midbrain reticular nucleus", + "collapsed_region_name": "Midbrain reticular nucleus", + "abbreviation": "MRN", + "collapsed_region": "MRN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MRN: rgb(255,143,253)", + "R": "255", + "G": "143", + "B": "253" + }, + "294": { + "order": 555, + "structure_ID": 294, + "lowered_ID": 294.0, + "structure_id_path": "/997/8/343/313/323/294/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Superior colliculus, motor related", + "collapsed_region_name": "Superior colliculus", + "abbreviation": "SCm", + "collapsed_region": "SC", + "other_abbreviation": "m", + "other_abbreviation_defined": "motor related", + "layer": null, + "sunburst": "SCm: rgb(254,143,253)", + "R": "254", + "G": "143", + "B": "253" + }, + "26": { + "order": 556, + "structure_ID": 26, + "lowered_ID": 26.0, + "structure_id_path": "/997/8/343/313/323/294/26/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Superior colliculus, motor related, deep gray layer", + "collapsed_region_name": "Superior colliculus", + "abbreviation": "SCdg", + "collapsed_region": "SC", + "other_abbreviation": "dg", + "other_abbreviation_defined": "motor related (deep gray layer)", + "layer": null, + "sunburst": "SCdg: rgb(255,143,255)", + "R": "255", + "G": "143", + "B": "255" + }, + "42": { + "order": 557, + "structure_ID": 42, + "lowered_ID": 42.0, + "structure_id_path": "/997/8/343/313/323/294/42/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Superior colliculus, motor related, deep white layer", + "collapsed_region_name": "Superior colliculus", + "abbreviation": "SCdw", + "collapsed_region": "SC", + "other_abbreviation": "dw", + "other_abbreviation_defined": "motor related (deep white layer)", + "layer": null, + "sunburst": "SCdw: rgb(255,143,254)", + "R": "255", + "G": "143", + "B": "254" + }, + "17": { + "order": 558, + "structure_ID": 17, + "lowered_ID": 17.0, + "structure_id_path": "/997/8/343/313/323/294/17/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Superior colliculus, motor related, intermediate white layer", + "collapsed_region_name": "Superior colliculus", + "abbreviation": "SCiw", + "collapsed_region": "SC", + "other_abbreviation": "iw", + "other_abbreviation_defined": "motor related (intermediate white layer)", + "layer": null, + "sunburst": "SCiw: rgb(255,144,254)", + "R": "255", + "G": "144", + "B": "254" + }, + "10": { + "order": 559, + "structure_ID": 10, + "lowered_ID": 10.0, + "structure_id_path": "/997/8/343/313/323/294/10/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Superior colliculus, motor related, intermediate gray layer", + "collapsed_region_name": "Superior colliculus", + "abbreviation": "SCig", + "collapsed_region": "SC", + "other_abbreviation": "ig", + "other_abbreviation_defined": "motor related (intermediate gray layer)", + "layer": null, + "sunburst": "SCig: rgb(255,144,255)", + "R": "255", + "G": "144", + "B": "255" + }, + "795": { + "order": 560, + "structure_ID": 795, + "lowered_ID": 795.0, + "structure_id_path": "/997/8/343/313/323/795/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Periaqueductal gray", + "collapsed_region_name": "Periaqueductal gray", + "abbreviation": "PAG", + "collapsed_region": "PAG", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PAG: rgb(252,143,255)", + "R": "252", + "G": "143", + "B": "255" + }, + "50": { + "order": 561, + "structure_ID": 50, + "lowered_ID": 50.0, + "structure_id_path": "/997/8/343/313/323/795/50/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Precommissural nucleus", + "collapsed_region_name": "Precommissural nucleus", + "abbreviation": "PRC", + "collapsed_region": "PRC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PRC: rgb(254,144,254)", + "R": "254", + "G": "144", + "B": "254" + }, + "67": { + "order": 562, + "structure_ID": 67, + "lowered_ID": 67.0, + "structure_id_path": "/997/8/343/313/323/795/67/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Interstitial nucleus of Cajal", + "collapsed_region_name": "Interstitial nucleus of Cajal", + "abbreviation": "INC", + "collapsed_region": "INC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "INC: rgb(255,144,253)", + "R": "255", + "G": "144", + "B": "253" + }, + "587": { + "order": 563, + "structure_ID": 587, + "lowered_ID": 587.0, + "structure_id_path": "/997/8/343/313/323/795/587/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Nucleus of Darkschewitsch", + "collapsed_region_name": "Nucleus of Darkschewitsch", + "abbreviation": "ND", + "collapsed_region": "ND", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ND: rgb(253,143,253)", + "R": "253", + "G": "143", + "B": "253" + }, + "614454277": { + "order": 564, + "structure_ID": 614454277, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/323/795/614454277/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Supraoculomotor periaqueductal gray", + "collapsed_region_name": "Supraoculomotor periaqueductal gray", + "abbreviation": "Su3", + "collapsed_region": "Su3", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "Su3: rgb(253,144,252)", + "R": "253", + "G": "144", + "B": "252" + }, + "1100": { + "order": 565, + "structure_ID": 1100, + "lowered_ID": 1100.0, + "structure_id_path": "/997/8/343/313/323/1100/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Pretectal region", + "collapsed_region_name": "Pretectal region", + "abbreviation": "PRT", + "collapsed_region": "PRT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PRT: rgb(253,142,253)", + "R": "253", + "G": "142", + "B": "253" + }, + "215": { + "order": 566, + "structure_ID": 215, + "lowered_ID": 215.0, + "structure_id_path": "/997/8/343/313/323/1100/215/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Anterior pretectal nucleus", + "collapsed_region_name": "Anterior pretectal nucleus", + "abbreviation": "APN", + "collapsed_region": "APN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "APN: rgb(254,142,255)", + "R": "254", + "G": "142", + "B": "255" + }, + "531": { + "order": 567, + "structure_ID": 531, + "lowered_ID": 531.0, + "structure_id_path": "/997/8/343/313/323/1100/531/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Medial pretectal area", + "collapsed_region_name": "Medial pretectal area", + "abbreviation": "MPT", + "collapsed_region": "MPT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MPT: rgb(255,144,252)", + "R": "255", + "G": "144", + "B": "252" + }, + "628": { + "order": 568, + "structure_ID": 628, + "lowered_ID": 628.0, + "structure_id_path": "/997/8/343/313/323/1100/628/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Nucleus of the optic tract", + "collapsed_region_name": "Nucleus of the optic tract", + "abbreviation": "NOT", + "collapsed_region": "NOT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "NOT: rgb(255,143,252)", + "R": "255", + "G": "143", + "B": "252" + }, + "634": { + "order": 569, + "structure_ID": 634, + "lowered_ID": 634.0, + "structure_id_path": "/997/8/343/313/323/1100/634/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Nucleus of the posterior commissure", + "collapsed_region_name": "Nucleus of the posterior commissure", + "abbreviation": "NPC", + "collapsed_region": "NPC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "NPC: rgb(255,141,254)", + "R": "255", + "G": "141", + "B": "254" + }, + "706": { + "order": 570, + "structure_ID": 706, + "lowered_ID": 706.0, + "structure_id_path": "/997/8/343/313/323/1100/706/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Olivary pretectal nucleus", + "collapsed_region_name": "Olivary pretectal nucleus", + "abbreviation": "OP", + "collapsed_region": "OP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "OP: rgb(254,144,252)", + "R": "254", + "G": "144", + "B": "252" + }, + "1061": { + "order": 571, + "structure_ID": 1061, + "lowered_ID": 1061.0, + "structure_id_path": "/997/8/343/313/323/1100/1061/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Posterior pretectal nucleus", + "collapsed_region_name": "Posterior pretectal nucleus", + "abbreviation": "PPT", + "collapsed_region": "PPT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PPT: rgb(252,143,254)", + "R": "252", + "G": "143", + "B": "254" + }, + "549009203": { + "order": 572, + "structure_ID": 549009203, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/323/1100/549009203/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Retroparafascicular nucleus", + "collapsed_region_name": "Retroparafascicular nucleus", + "abbreviation": "RPF", + "collapsed_region": "RPF", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RPF: rgb(253,141,255)", + "R": "253", + "G": "141", + "B": "255" + }, + "616": { + "order": 573, + "structure_ID": 616, + "lowered_ID": 616.0, + "structure_id_path": "/997/8/343/313/323/616/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Cuneiform nucleus", + "collapsed_region_name": "Cuneiform nucleus", + "abbreviation": "CUN", + "collapsed_region": "CUN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CUN: rgb(252,144,255)", + "R": "252", + "G": "144", + "B": "255" + }, + "214": { + "order": 574, + "structure_ID": 214, + "lowered_ID": 214.0, + "structure_id_path": "/997/8/343/313/323/214/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Red nucleus", + "collapsed_region_name": "Red nucleus", + "abbreviation": "RN", + "collapsed_region": "RN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RN: rgb(254,144,253)", + "R": "254", + "G": "144", + "B": "253" + }, + "35": { + "order": 575, + "structure_ID": 35, + "lowered_ID": 35.0, + "structure_id_path": "/997/8/343/313/323/35/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Oculomotor nucleus", + "collapsed_region_name": "Oculomotor nucleus", + "abbreviation": "III", + "collapsed_region": "III", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "III: rgb(254,144,255)", + "R": "254", + "G": "144", + "B": "255" + }, + "549009211": { + "order": 576, + "structure_ID": 549009211, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/323/549009211/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Medial accesory oculomotor nucleus", + "collapsed_region_name": "Medial accesory oculomotor nucleus", + "abbreviation": "MA3", + "collapsed_region": "MA3", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MA3: rgb(252,142,255)", + "R": "252", + "G": "142", + "B": "255" + }, + "975": { + "order": 577, + "structure_ID": 975, + "lowered_ID": 975.0, + "structure_id_path": "/997/8/343/313/323/975/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Edinger-Westphal nucleus", + "collapsed_region_name": "Edinger-Westphal nucleus", + "abbreviation": "EW", + "collapsed_region": "EW", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "EW: rgb(254,143,252)", + "R": "254", + "G": "143", + "B": "252" + }, + "115": { + "order": 578, + "structure_ID": 115, + "lowered_ID": 115.0, + "structure_id_path": "/997/8/343/313/323/115/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Trochlear nucleus", + "collapsed_region_name": "Trochlear nucleus", + "abbreviation": "IV", + "collapsed_region": "IV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IV: rgb(253,144,255)", + "R": "253", + "G": "144", + "B": "255" + }, + "606826663": { + "order": 579, + "structure_ID": 606826663, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/323/606826663/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Paratrochlear nucleus", + "collapsed_region_name": "Paratrochlear nucleus", + "abbreviation": "Pa4", + "collapsed_region": "Pa4", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "Pa4: rgb(254,141,254)", + "R": "254", + "G": "141", + "B": "254" + }, + "757": { + "order": 580, + "structure_ID": 757, + "lowered_ID": 757.0, + "structure_id_path": "/997/8/343/313/323/757/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Ventral tegmental nucleus", + "collapsed_region_name": "Ventral tegmental nucleus", + "abbreviation": "VTN", + "collapsed_region": "VTN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VTN: rgb(252,144,254)", + "R": "252", + "G": "144", + "B": "254" + }, + "231": { + "order": 581, + "structure_ID": 231, + "lowered_ID": 231.0, + "structure_id_path": "/997/8/343/313/323/231/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Anterior tegmental nucleus", + "collapsed_region_name": "Anterior tegmental nucleus", + "abbreviation": "AT", + "collapsed_region": "AT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AT: rgb(253,144,254)", + "R": "253", + "G": "144", + "B": "254" + }, + "66": { + "order": 582, + "structure_ID": 66, + "lowered_ID": 66.0, + "structure_id_path": "/997/8/343/313/323/66/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Lateral terminal nucleus of the accessory optic tract", + "collapsed_region_name": "Lateral terminal nucleus of the accessory optic tract", + "abbreviation": "LT", + "collapsed_region": "LT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LT: rgb(254,143,254)", + "R": "254", + "G": "143", + "B": "254" + }, + "75": { + "order": 583, + "structure_ID": 75, + "lowered_ID": 75.0, + "structure_id_path": "/997/8/343/313/323/75/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Dorsal terminal nucleus of the accessory optic tract", + "collapsed_region_name": "Dorsal terminal nucleus of the accessory optic tract", + "abbreviation": "DT", + "collapsed_region": "DT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "DT: rgb(255,142,255)", + "R": "255", + "G": "142", + "B": "255" + }, + "58": { + "order": 584, + "structure_ID": 58, + "lowered_ID": 58.0, + "structure_id_path": "/997/8/343/313/323/58/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, motor related", + "full_structure_name": "Medial terminal nucleus of the accessory optic tract", + "collapsed_region_name": "Medial terminal nucleus of the accessory optic tract", + "abbreviation": "MT", + "collapsed_region": "MT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MT: rgb(254,143,255)", + "R": "254", + "G": "143", + "B": "255" + }, + "348": { + "order": 585, + "structure_ID": 348, + "lowered_ID": 348.0, + "structure_id_path": "/997/8/343/313/348/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Midbrain, behavioral state related", + "collapsed_region_name": "Midbrain", + "abbreviation": "MBsta", + "collapsed_region": "MB", + "other_abbreviation": "sta", + "other_abbreviation_defined": "behavioral state related", + "layer": null, + "sunburst": "MBsta: rgb(253,143,254)", + "R": "253", + "G": "143", + "B": "254" + }, + "374": { + "order": 586, + "structure_ID": 374, + "lowered_ID": 374.0, + "structure_id_path": "/997/8/343/313/348/374/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Substantia nigra, compact part", + "collapsed_region_name": "Substantia nigra, compact part", + "abbreviation": "SNc", + "collapsed_region": "SNc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SNc: rgb(255,166,253)", + "R": "255", + "G": "166", + "B": "253" + }, + "1052": { + "order": 587, + "structure_ID": 1052, + "lowered_ID": 1052.0, + "structure_id_path": "/997/8/343/313/348/1052/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Pedunculopontine nucleus", + "collapsed_region_name": "Pedunculopontine nucleus", + "abbreviation": "PPN", + "collapsed_region": "PPN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PPN: rgb(255,165,253)", + "R": "255", + "G": "165", + "B": "253" + }, + "165": { + "order": 588, + "structure_ID": 165, + "lowered_ID": 165.0, + "structure_id_path": "/997/8/343/313/348/165/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Midbrain raphe nuclei", + "collapsed_region_name": "Midbrain raphe nuclei", + "abbreviation": "RAmb", + "collapsed_region": "RAmb", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RAmb: rgb(255,165,255)", + "R": "255", + "G": "165", + "B": "255" + }, + "12": { + "order": 589, + "structure_ID": 12, + "lowered_ID": 12.0, + "structure_id_path": "/997/8/343/313/348/165/12/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Interfascicular nucleus raphe", + "collapsed_region_name": "Interfascicular nucleus raphe", + "abbreviation": "IF", + "collapsed_region": "IF", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IF: rgb(255,166,255)", + "R": "255", + "G": "166", + "B": "255" + }, + "100": { + "order": 590, + "structure_ID": 100, + "lowered_ID": 100.0, + "structure_id_path": "/997/8/343/313/348/165/100/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Interpeduncular nucleus", + "collapsed_region_name": "Interpeduncular nucleus", + "abbreviation": "IPN", + "collapsed_region": "IPN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IPN: rgb(255,166,254)", + "R": "255", + "G": "166", + "B": "254" + }, + "607344834": { + "order": 591, + "structure_ID": 607344834, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/348/165/100/607344834/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Interpeduncular nucleus, rostral", + "collapsed_region_name": "Interpeduncular nucleus, rostral", + "abbreviation": "IPR", + "collapsed_region": "IPR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IPR: rgb(255,164,254)", + "R": "255", + "G": "164", + "B": "254" + }, + "607344838": { + "order": 592, + "structure_ID": 607344838, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/348/165/100/607344838/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Interpeduncular nucleus, caudal", + "collapsed_region_name": "Interpeduncular nucleus, caudal", + "abbreviation": "IPC", + "collapsed_region": "IPC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IPC: rgb(255,165,254)", + "R": "255", + "G": "165", + "B": "254" + }, + "607344842": { + "order": 593, + "structure_ID": 607344842, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/348/165/100/607344842/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Interpeduncular nucleus, apical", + "collapsed_region_name": "Interpeduncular nucleus, apical", + "abbreviation": "IPA", + "collapsed_region": "IPA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IPA: rgb(254,166,254)", + "R": "254", + "G": "166", + "B": "254" + }, + "607344846": { + "order": 594, + "structure_ID": 607344846, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/348/165/100/607344846/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Interpeduncular nucleus, lateral", + "collapsed_region_name": "Interpeduncular nucleus, lateral", + "abbreviation": "IPL", + "collapsed_region": "IPL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IPL: rgb(254,165,255)", + "R": "254", + "G": "165", + "B": "255" + }, + "607344850": { + "order": 595, + "structure_ID": 607344850, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/348/165/100/607344850/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Interpeduncular nucleus, intermediate", + "collapsed_region_name": "Interpeduncular nucleus, intermediate", + "abbreviation": "IPI", + "collapsed_region": "IPI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IPI: rgb(254,166,253)", + "R": "254", + "G": "166", + "B": "253" + }, + "607344854": { + "order": 596, + "structure_ID": 607344854, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/348/165/100/607344854/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Interpeduncular nucleus, dorsomedial", + "collapsed_region_name": "Interpeduncular nucleus, dorsomedial", + "abbreviation": "IPDM", + "collapsed_region": "IPDM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IPDM: rgb(254,164,255)", + "R": "254", + "G": "164", + "B": "255" + }, + "607344858": { + "order": 597, + "structure_ID": 607344858, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/348/165/100/607344858/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Interpeduncular nucleus, dorsolateral", + "collapsed_region_name": "Interpeduncular nucleus, dorsolateral", + "abbreviation": "IPDL", + "collapsed_region": "IPDL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IPDL: rgb(253,166,254)", + "R": "253", + "G": "166", + "B": "254" + }, + "607344862": { + "order": 598, + "structure_ID": 607344862, + "lowered_ID": null, + "structure_id_path": "/997/8/343/313/348/165/100/607344862/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Interpeduncular nucleus, rostrolateral", + "collapsed_region_name": "Interpeduncular nucleus, rostrolateral", + "abbreviation": "IPRL", + "collapsed_region": "IPRL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IPRL: rgb(254,165,254)", + "R": "254", + "G": "165", + "B": "254" + }, + "197": { + "order": 599, + "structure_ID": 197, + "lowered_ID": 197.0, + "structure_id_path": "/997/8/343/313/348/165/197/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Rostral linear nucleus raphe", + "collapsed_region_name": "Rostral linear nucleus raphe", + "abbreviation": "RL", + "collapsed_region": "RL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RL: rgb(254,166,255)", + "R": "254", + "G": "166", + "B": "255" + }, + "591": { + "order": 600, + "structure_ID": 591, + "lowered_ID": 591.0, + "structure_id_path": "/997/8/343/313/348/165/591/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Central linear nucleus raphe", + "collapsed_region_name": "Central linear nucleus raphe", + "abbreviation": "CLI", + "collapsed_region": "CLI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CLI: rgb(255,164,255)", + "R": "255", + "G": "164", + "B": "255" + }, + "872": { + "order": 601, + "structure_ID": 872, + "lowered_ID": 872.0, + "structure_id_path": "/997/8/343/313/348/165/872/", + "very_general_region": "Midbrain", + "general_region": "Midbrain, behavioral state related", + "full_structure_name": "Dorsal nucleus raphe", + "collapsed_region_name": "Dorsal nucleus raphe", + "abbreviation": "DR", + "collapsed_region": "DR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "DR: rgb(253,166,255)", + "R": "253", + "G": "166", + "B": "255" + }, + "1065": { + "order": 602, + "structure_ID": 1065, + "lowered_ID": 1065.0, + "structure_id_path": "/997/8/343/1065/", + "very_general_region": "Hindbrain", + "general_region": "Hindbrain", + "full_structure_name": "Hindbrain", + "collapsed_region_name": "Hindbrain", + "abbreviation": "HB", + "collapsed_region": "HB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "HB: rgb(255,155,135)", + "R": "255", + "G": "155", + "B": "135" + }, + "771": { + "order": 603, + "structure_ID": 771, + "lowered_ID": 771.0, + "structure_id_path": "/997/8/343/1065/771/", + "very_general_region": "Pons", + "general_region": "Pons", + "full_structure_name": "Pons", + "collapsed_region_name": "Pons", + "abbreviation": "P", + "collapsed_region": "P", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "P: rgb(255,155,136)", + "R": "255", + "G": "155", + "B": "136" + }, + "1132": { + "order": 604, + "structure_ID": 1132, + "lowered_ID": 1132.0, + "structure_id_path": "/997/8/343/1065/771/1132/", + "very_general_region": "Pons", + "general_region": "Pons, sensory related", + "full_structure_name": "Pons, sensory related", + "collapsed_region_name": "Pons", + "abbreviation": "P-sen", + "collapsed_region": "P", + "other_abbreviation": "sen", + "other_abbreviation_defined": "sensory related", + "layer": null, + "sunburst": "P-sen: rgb(255,172,109)", + "R": "255", + "G": "172", + "B": "109" + }, + "612": { + "order": 605, + "structure_ID": 612, + "lowered_ID": 612.0, + "structure_id_path": "/997/8/343/1065/771/1132/612/", + "very_general_region": "Pons", + "general_region": "Pons, sensory related", + "full_structure_name": "Nucleus of the lateral lemniscus", + "collapsed_region_name": "Nucleus of the lateral lemniscus", + "abbreviation": "NLL", + "collapsed_region": "NLL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "NLL: rgb(255,172,111)", + "R": "255", + "G": "172", + "B": "111" + }, + "7": { + "order": 606, + "structure_ID": 7, + "lowered_ID": 7.0, + "structure_id_path": "/997/8/343/1065/771/1132/7/", + "very_general_region": "Pons", + "general_region": "Pons, sensory related", + "full_structure_name": "Principal sensory nucleus of the trigeminal", + "collapsed_region_name": "Principal sensory nucleus of the trigeminal", + "abbreviation": "PSV", + "collapsed_region": "PSV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PSV: rgb(255,174,111)", + "R": "255", + "G": "174", + "B": "111" + }, + "867": { + "order": 607, + "structure_ID": 867, + "lowered_ID": 867.0, + "structure_id_path": "/997/8/343/1065/771/1132/867/", + "very_general_region": "Pons", + "general_region": "Pons, sensory related", + "full_structure_name": "Parabrachial nucleus", + "collapsed_region_name": "Parabrachial nucleus", + "abbreviation": "PB", + "collapsed_region": "PB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PB: rgb(255,173,109)", + "R": "255", + "G": "173", + "B": "109" + }, + "123": { + "order": 608, + "structure_ID": 123, + "lowered_ID": 123.0, + "structure_id_path": "/997/8/343/1065/771/1132/867/123/", + "very_general_region": "Pons", + "general_region": "Pons, sensory related", + "full_structure_name": "Koelliker-Fuse subnucleus", + "collapsed_region_name": "Koelliker-Fuse subnucleus", + "abbreviation": "KF", + "collapsed_region": "KF", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "KF: rgb(254,173,110)", + "R": "254", + "G": "173", + "B": "110" + }, + "398": { + "order": 609, + "structure_ID": 398, + "lowered_ID": 398.0, + "structure_id_path": "/997/8/343/1065/771/1132/398/", + "very_general_region": "Pons", + "general_region": "Pons, sensory related", + "full_structure_name": "Superior olivary complex", + "collapsed_region_name": "Superior olivary complex", + "abbreviation": "SOC", + "collapsed_region": "SOC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SOC: rgb(255,174,109)", + "R": "255", + "G": "174", + "B": "109" + }, + "122": { + "order": 610, + "structure_ID": 122, + "lowered_ID": 122.0, + "structure_id_path": "/997/8/343/1065/771/1132/398/122/", + "very_general_region": "Pons", + "general_region": "Pons, sensory related", + "full_structure_name": "Superior olivary complex, periolivary region", + "collapsed_region_name": "Superior olivary complex, periolivary region", + "abbreviation": "POR", + "collapsed_region": "POR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "POR: rgb(254,173,111)", + "R": "254", + "G": "173", + "B": "111" + }, + "105": { + "order": 611, + "structure_ID": 105, + "lowered_ID": 105.0, + "structure_id_path": "/997/8/343/1065/771/1132/398/105/", + "very_general_region": "Pons", + "general_region": "Pons, sensory related", + "full_structure_name": "Superior olivary complex, medial part", + "collapsed_region_name": "Superior olivary complex", + "abbreviation": "SOCm", + "collapsed_region": "SOC", + "other_abbreviation": "m", + "other_abbreviation_defined": "medial", + "layer": null, + "sunburst": "SOCm: rgb(255,173,110)", + "R": "255", + "G": "173", + "B": "110" + }, + "114": { + "order": 612, + "structure_ID": 114, + "lowered_ID": 114.0, + "structure_id_path": "/997/8/343/1065/771/1132/398/114/", + "very_general_region": "Pons", + "general_region": "Pons, sensory related", + "full_structure_name": "Superior olivary complex, lateral part", + "collapsed_region_name": "Superior olivary complex", + "abbreviation": "SOCl", + "collapsed_region": "SOC", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": null, + "sunburst": "SOCl: rgb(254,174,110)", + "R": "254", + "G": "174", + "B": "110" + }, + "987": { + "order": 613, + "structure_ID": 987, + "lowered_ID": 987.0, + "structure_id_path": "/997/8/343/1065/771/987/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Pons, motor related", + "collapsed_region_name": "Pons", + "abbreviation": "P-mot", + "collapsed_region": "P", + "other_abbreviation": "mot", + "other_abbreviation_defined": "motor related", + "layer": null, + "sunburst": "P-mot: rgb(255,184,134)", + "R": "255", + "G": "184", + "B": "134" + }, + "280": { + "order": 614, + "structure_ID": 280, + "lowered_ID": 280.0, + "structure_id_path": "/997/8/343/1065/771/987/280/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Barrington's nucleus", + "collapsed_region_name": "Barrington's nucleus", + "abbreviation": "B", + "collapsed_region": "B", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "B: rgb(255,186,134)", + "R": "255", + "G": "186", + "B": "134" + }, + "880": { + "order": 615, + "structure_ID": 880, + "lowered_ID": 880.0, + "structure_id_path": "/997/8/343/1065/771/987/880/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Dorsal tegmental nucleus", + "collapsed_region_name": "Dorsal tegmental nucleus", + "abbreviation": "DTN", + "collapsed_region": "DTN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "DTN: rgb(254,185,133)", + "R": "254", + "G": "185", + "B": "133" + }, + "599626927": { + "order": 616, + "structure_ID": 599626927, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1065/771/987/599626927/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Posterodorsal tegmental nucleus", + "collapsed_region_name": "Posterodorsal tegmental nucleus", + "abbreviation": "PDTg", + "collapsed_region": "PDTg", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PDTg: rgb(255,185,132)", + "R": "255", + "G": "185", + "B": "132" + }, + "898": { + "order": 617, + "structure_ID": 898, + "lowered_ID": 898.0, + "structure_id_path": "/997/8/343/1065/771/987/898/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Pontine central gray", + "collapsed_region_name": "Pontine central gray", + "abbreviation": "PCG", + "collapsed_region": "PCG", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PCG: rgb(255,186,132)", + "R": "255", + "G": "186", + "B": "132" + }, + "931": { + "order": 618, + "structure_ID": 931, + "lowered_ID": 931.0, + "structure_id_path": "/997/8/343/1065/771/987/931/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Pontine gray", + "collapsed_region_name": "Pontine gray", + "abbreviation": "PG", + "collapsed_region": "PG", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PG: rgb(255,184,133)", + "R": "255", + "G": "184", + "B": "133" + }, + "1093": { + "order": 619, + "structure_ID": 1093, + "lowered_ID": 1093.0, + "structure_id_path": "/997/8/343/1065/771/987/1093/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Pontine reticular nucleus, caudal part", + "collapsed_region_name": "Pontine reticular nucleus, caudal part", + "abbreviation": "PRNc", + "collapsed_region": "PRNc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PRNc: rgb(253,186,134)", + "R": "253", + "G": "186", + "B": "134" + }, + "318": { + "order": 620, + "structure_ID": 318, + "lowered_ID": 318.0, + "structure_id_path": "/997/8/343/1065/771/987/318/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Supragenual nucleus", + "collapsed_region_name": "Supragenual nucleus", + "abbreviation": "SG", + "collapsed_region": "SG", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SG: rgb(255,185,134)", + "R": "255", + "G": "185", + "B": "134" + }, + "534": { + "order": 621, + "structure_ID": 534, + "lowered_ID": 534.0, + "structure_id_path": "/997/8/343/1065/771/987/534/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Supratrigeminal nucleus", + "collapsed_region_name": "Supratrigeminal nucleus", + "abbreviation": "SUT", + "collapsed_region": "SUT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SUT: rgb(254,186,134)", + "R": "254", + "G": "186", + "B": "134" + }, + "574": { + "order": 622, + "structure_ID": 574, + "lowered_ID": 574.0, + "structure_id_path": "/997/8/343/1065/771/987/574/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Tegmental reticular nucleus", + "collapsed_region_name": "Tegmental reticular nucleus", + "abbreviation": "TRN", + "collapsed_region": "TRN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "TRN: rgb(254,186,133)", + "R": "254", + "G": "186", + "B": "133" + }, + "621": { + "order": 623, + "structure_ID": 621, + "lowered_ID": 621.0, + "structure_id_path": "/997/8/343/1065/771/987/621/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Motor nucleus of trigeminal", + "collapsed_region_name": "Motor nucleus of trigeminal", + "abbreviation": "V", + "collapsed_region": "V", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "V: rgb(254,185,134)", + "R": "254", + "G": "185", + "B": "134" + }, + "549009215": { + "order": 624, + "structure_ID": 549009215, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1065/771/987/549009215/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Peritrigeminal zone", + "collapsed_region_name": "Peritrigeminal zone", + "abbreviation": "P5", + "collapsed_region": "P5", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "P5: rgb(254,184,134)", + "R": "254", + "G": "184", + "B": "134" + }, + "549009219": { + "order": 625, + "structure_ID": 549009219, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1065/771/987/549009219/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Accessory trigeminal nucleus", + "collapsed_region_name": "Accessory trigeminal nucleus", + "abbreviation": "Acs5", + "collapsed_region": "Acs5", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "Acs5: rgb(253,186,133)", + "R": "253", + "G": "186", + "B": "133" + }, + "549009223": { + "order": 626, + "structure_ID": 549009223, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1065/771/987/549009223/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Parvicellular motor 5 nucleus", + "collapsed_region_name": "Parvicellular motor 5 nucleus", + "abbreviation": "PC5", + "collapsed_region": "PC5", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PC5: rgb(253,185,134)", + "R": "253", + "G": "185", + "B": "134" + }, + "549009227": { + "order": 627, + "structure_ID": 549009227, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1065/771/987/549009227/", + "very_general_region": "Pons", + "general_region": "Pons, motor related", + "full_structure_name": "Intertrigeminal nucleus", + "collapsed_region_name": "Intertrigeminal nucleus", + "abbreviation": "I5", + "collapsed_region": "I5", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "I5: rgb(254,185,132)", + "R": "254", + "G": "185", + "B": "132" + }, + "1117": { + "order": 628, + "structure_ID": 1117, + "lowered_ID": 1117.0, + "structure_id_path": "/997/8/343/1065/771/1117/", + "very_general_region": "Pons", + "general_region": "Pons, behavioral state related", + "full_structure_name": "Pons, behavioral state related", + "collapsed_region_name": "Pons", + "abbreviation": "P-sat", + "collapsed_region": "P", + "other_abbreviation": "sat", + "other_abbreviation_defined": "behavioral state related", + "layer": null, + "sunburst": "P-sat: rgb(255,193,149)", + "R": "255", + "G": "193", + "B": "149" + }, + "679": { + "order": 629, + "structure_ID": 679, + "lowered_ID": 679.0, + "structure_id_path": "/997/8/343/1065/771/1117/679/", + "very_general_region": "Pons", + "general_region": "Pons, behavioral state related", + "full_structure_name": "Superior central nucleus raphe", + "collapsed_region_name": "Superior central nucleus raphe", + "abbreviation": "CS", + "collapsed_region": "CS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CS: rgb(255,195,147)", + "R": "255", + "G": "195", + "B": "147" + }, + "147": { + "order": 630, + "structure_ID": 147, + "lowered_ID": 147.0, + "structure_id_path": "/997/8/343/1065/771/1117/147/", + "very_general_region": "Pons", + "general_region": "Pons, behavioral state related", + "full_structure_name": "Locus ceruleus", + "collapsed_region_name": "Locus ceruleus", + "abbreviation": "LC", + "collapsed_region": "LC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LC: rgb(253,195,149)", + "R": "253", + "G": "195", + "B": "149" + }, + "162": { + "order": 631, + "structure_ID": 162, + "lowered_ID": 162.0, + "structure_id_path": "/997/8/343/1065/771/1117/162/", + "very_general_region": "Pons", + "general_region": "Pons, behavioral state related", + "full_structure_name": "Laterodorsal tegmental nucleus", + "collapsed_region_name": "Laterodorsal tegmental nucleus", + "abbreviation": "LDT", + "collapsed_region": "LDT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LDT: rgb(254,195,149)", + "R": "254", + "G": "195", + "B": "149" + }, + "604": { + "order": 632, + "structure_ID": 604, + "lowered_ID": 604.0, + "structure_id_path": "/997/8/343/1065/771/1117/604/", + "very_general_region": "Pons", + "general_region": "Pons, behavioral state related", + "full_structure_name": "Nucleus incertus", + "collapsed_region_name": "Nucleus incertus", + "abbreviation": "NI", + "collapsed_region": "NI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "NI: rgb(254,194,148)", + "R": "254", + "G": "194", + "B": "148" + }, + "146": { + "order": 633, + "structure_ID": 146, + "lowered_ID": 146.0, + "structure_id_path": "/997/8/343/1065/771/1117/146/", + "very_general_region": "Pons", + "general_region": "Pons, behavioral state related", + "full_structure_name": "Pontine reticular nucleus", + "collapsed_region_name": "Pontine reticular nucleus", + "abbreviation": "PRNr", + "collapsed_region": "PRNr", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PRNr: rgb(255,194,149)", + "R": "255", + "G": "194", + "B": "149" + }, + "238": { + "order": 634, + "structure_ID": 238, + "lowered_ID": 238.0, + "structure_id_path": "/997/8/343/1065/771/1117/238/", + "very_general_region": "Pons", + "general_region": "Pons, behavioral state related", + "full_structure_name": "Nucleus raphe pontis", + "collapsed_region_name": "Nucleus raphe pontis", + "abbreviation": "RPO", + "collapsed_region": "RPO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RPO: rgb(255,194,148)", + "R": "255", + "G": "194", + "B": "148" + }, + "350": { + "order": 635, + "structure_ID": 350, + "lowered_ID": 350.0, + "structure_id_path": "/997/8/343/1065/771/1117/350/", + "very_general_region": "Pons", + "general_region": "Pons, behavioral state related", + "full_structure_name": "Subceruleus nucleus", + "collapsed_region_name": "Subceruleus nucleus", + "abbreviation": "SLC", + "collapsed_region": "SLC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SLC: rgb(254,195,148)", + "R": "254", + "G": "195", + "B": "148" + }, + "358": { + "order": 636, + "structure_ID": 358, + "lowered_ID": 358.0, + "structure_id_path": "/997/8/343/1065/771/1117/358/", + "very_general_region": "Pons", + "general_region": "Pons, behavioral state related", + "full_structure_name": "Sublaterodorsal nucleus", + "collapsed_region_name": "Sublaterodorsal nucleus", + "abbreviation": "SLD", + "collapsed_region": "SLD", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SLD: rgb(254,194,149)", + "R": "254", + "G": "194", + "B": "149" + }, + "354": { + "order": 637, + "structure_ID": 354, + "lowered_ID": 354.0, + "structure_id_path": "/997/8/343/1065/354/", + "very_general_region": "Medulla", + "general_region": "Medulla", + "full_structure_name": "Medulla", + "collapsed_region_name": "Medulla", + "abbreviation": "MY", + "collapsed_region": "MY", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MY: rgb(255,155,205)", + "R": "255", + "G": "155", + "B": "205" + }, + "386": { + "order": 638, + "structure_ID": 386, + "lowered_ID": 386.0, + "structure_id_path": "/997/8/343/1065/354/386/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Medulla, sensory related", + "collapsed_region_name": "Medulla", + "abbreviation": "MY-sen", + "collapsed_region": "MY", + "other_abbreviation": "sen", + "other_abbreviation_defined": "sensory related", + "layer": null, + "sunburst": "MY-sen: rgb(255,163,210)", + "R": "255", + "G": "163", + "B": "210" + }, + "207": { + "order": 639, + "structure_ID": 207, + "lowered_ID": 207.0, + "structure_id_path": "/997/8/343/1065/354/386/207/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Area postrema", + "collapsed_region_name": "Area postrema", + "abbreviation": "AP", + "collapsed_region": "AP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AP: rgb(255,165,208)", + "R": "255", + "G": "165", + "B": "208" + }, + "607": { + "order": 640, + "structure_ID": 607, + "lowered_ID": 607.0, + "structure_id_path": "/997/8/343/1065/354/386/607/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Cochlear nuclei", + "collapsed_region_name": "Cochlear nuclei", + "abbreviation": "CN", + "collapsed_region": "CN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CN: rgb(254,165,208)", + "R": "254", + "G": "165", + "B": "208" + }, + "96": { + "order": 641, + "structure_ID": 96, + "lowered_ID": 96.0, + "structure_id_path": "/997/8/343/1065/354/386/607/96/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Dorsal cochlear nucleus", + "collapsed_region_name": "Dorsal cochlear nucleus", + "abbreviation": "DCO", + "collapsed_region": "DCO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "DCO: rgb(254,165,209)", + "R": "254", + "G": "165", + "B": "209" + }, + "101": { + "order": 642, + "structure_ID": 101, + "lowered_ID": 101.0, + "structure_id_path": "/997/8/343/1065/354/386/607/101/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Ventral cochlear nucleus", + "collapsed_region_name": "Ventral cochlear nucleus", + "abbreviation": "VCO", + "collapsed_region": "VCO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VCO: rgb(254,164,210)", + "R": "254", + "G": "164", + "B": "210" + }, + "720": { + "order": 643, + "structure_ID": 720, + "lowered_ID": 720.0, + "structure_id_path": "/997/8/343/1065/354/386/720/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Dorsal column nuclei", + "collapsed_region_name": "Dorsal column nuclei", + "abbreviation": "DCN", + "collapsed_region": "DCN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "DCN: rgb(253,163,210)", + "R": "253", + "G": "163", + "B": "210" + }, + "711": { + "order": 644, + "structure_ID": 711, + "lowered_ID": 711.0, + "structure_id_path": "/997/8/343/1065/354/386/720/711/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Cuneate nucleus", + "collapsed_region_name": "Cuneate nucleus", + "abbreviation": "CU", + "collapsed_region": "CU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CU: rgb(253,165,208)", + "R": "253", + "G": "165", + "B": "208" + }, + "1039": { + "order": 645, + "structure_ID": 1039, + "lowered_ID": 1039.0, + "structure_id_path": "/997/8/343/1065/354/386/720/1039/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Gracile nucleus", + "collapsed_region_name": "Gracile nucleus", + "abbreviation": "GR", + "collapsed_region": "GR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "GR: rgb(254,163,208)", + "R": "254", + "G": "163", + "B": "208" + }, + "903": { + "order": 646, + "structure_ID": 903, + "lowered_ID": 903.0, + "structure_id_path": "/997/8/343/1065/354/386/903/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "External cuneate nucleus", + "collapsed_region_name": "External cuneate nucleus", + "abbreviation": "ECU", + "collapsed_region": "ECU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ECU: rgb(255,162,210)", + "R": "255", + "G": "162", + "B": "210" + }, + "642": { + "order": 647, + "structure_ID": 642, + "lowered_ID": 642.0, + "structure_id_path": "/997/8/343/1065/354/386/642/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Nucleus of the trapezoid body", + "collapsed_region_name": "Nucleus of the trapezoid body", + "abbreviation": "NTB", + "collapsed_region": "NTB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "NTB: rgb(254,163,210)", + "R": "254", + "G": "163", + "B": "210" + }, + "651": { + "order": 648, + "structure_ID": 651, + "lowered_ID": 651.0, + "structure_id_path": "/997/8/343/1065/354/386/651/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Nucleus of the solitary tract", + "collapsed_region_name": "Nucleus of the solitary tract", + "abbreviation": "NTS", + "collapsed_region": "NTS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "NTS: rgb(253,165,209)", + "R": "253", + "G": "165", + "B": "209" + }, + "429": { + "order": 649, + "structure_ID": 429, + "lowered_ID": 429.0, + "structure_id_path": "/997/8/343/1065/354/386/429/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Spinal nucleus of the trigeminal, caudal part", + "collapsed_region_name": "Spinal nucleus of the trigeminal, caudal part", + "abbreviation": "SPVC", + "collapsed_region": "SPVC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SPVC: rgb(253,164,208)", + "R": "253", + "G": "164", + "B": "208" + }, + "437": { + "order": 650, + "structure_ID": 437, + "lowered_ID": 437.0, + "structure_id_path": "/997/8/343/1065/354/386/437/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Spinal nucleus of the trigeminal, interpolar part", + "collapsed_region_name": "Spinal nucleus of the trigeminal, interpolar part", + "abbreviation": "SPVI", + "collapsed_region": "SPVI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SPVI: rgb(253,165,210)", + "R": "253", + "G": "165", + "B": "210" + }, + "445": { + "order": 651, + "structure_ID": 445, + "lowered_ID": 445.0, + "structure_id_path": "/997/8/343/1065/354/386/445/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Spinal nucleus of the trigeminal, oral part", + "collapsed_region_name": "Spinal nucleus of the trigeminal, oral part", + "abbreviation": "SPVO", + "collapsed_region": "SPVO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SPVO: rgb(255,164,208)", + "R": "255", + "G": "164", + "B": "208" + }, + "589508451": { + "order": 652, + "structure_ID": 589508451, + "lowered_ID": null, + "structure_id_path": "/997/8/343/1065/354/386/589508451/", + "very_general_region": "Medulla", + "general_region": "Medulla, sensory related", + "full_structure_name": "Paratrigeminal nucleus", + "collapsed_region_name": "Paratrigeminal nucleus", + "abbreviation": "Pa5", + "collapsed_region": "Pa5", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "Pa5: rgb(253,163,209)", + "R": "253", + "G": "163", + "B": "209" + }, + "370": { + "order": 653, + "structure_ID": 370, + "lowered_ID": 370.0, + "structure_id_path": "/997/8/343/1065/354/370/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Medulla, motor related", + "collapsed_region_name": "Medulla", + "abbreviation": "MY-mot", + "collapsed_region": "MY", + "other_abbreviation": "mot", + "other_abbreviation_defined": "motor related", + "layer": null, + "sunburst": "MY-mot: rgb(254,178,215)", + "R": "254", + "G": "178", + "B": "215" + }, + "653": { + "order": 654, + "structure_ID": 653, + "lowered_ID": 653.0, + "structure_id_path": "/997/8/343/1065/354/370/653/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Abducens nucleus", + "collapsed_region_name": "Abducens nucleus", + "abbreviation": "VI", + "collapsed_region": "VI", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VI: rgb(253,177,217)", + "R": "253", + "G": "177", + "B": "217" + }, + "661": { + "order": 655, + "structure_ID": 661, + "lowered_ID": 661.0, + "structure_id_path": "/997/8/343/1065/354/370/661/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Facial motor nucleus", + "collapsed_region_name": "Facial motor nucleus", + "abbreviation": "VII", + "collapsed_region": "VII", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VII: rgb(255,179,214)", + "R": "255", + "G": "179", + "B": "214" + }, + "576": { + "order": 656, + "structure_ID": 576, + "lowered_ID": 576.0, + "structure_id_path": "/997/8/343/1065/354/370/576/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Accessory facial motor nucleus", + "collapsed_region_name": "Accessory facial motor nucleus", + "abbreviation": "ACVII", + "collapsed_region": "ACVII", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ACVII: rgb(253,176,217)", + "R": "253", + "G": "176", + "B": "217" + }, + "135": { + "order": 657, + "structure_ID": 135, + "lowered_ID": 135.0, + "structure_id_path": "/997/8/343/1065/354/370/135/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Nucleus ambiguus", + "collapsed_region_name": "Nucleus ambiguus", + "abbreviation": "AMB", + "collapsed_region": "AMB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AMB: rgb(254,179,217)", + "R": "254", + "G": "179", + "B": "217" + }, + "939": { + "order": 658, + "structure_ID": 939, + "lowered_ID": 939.0, + "structure_id_path": "/997/8/343/1065/354/370/135/939/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Nucleus ambiguus, dorsal division", + "collapsed_region_name": "Nucleus ambiguus", + "abbreviation": "AMBd", + "collapsed_region": "AMB", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "AMBd: rgb(254,179,214)", + "R": "254", + "G": "179", + "B": "214" + }, + "143": { + "order": 659, + "structure_ID": 143, + "lowered_ID": 143.0, + "structure_id_path": "/997/8/343/1065/354/370/135/143/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Nucleus ambiguus, ventral division", + "collapsed_region_name": "Nucleus ambiguus", + "abbreviation": "AMBv", + "collapsed_region": "AMB", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "AMBv: rgb(254,179,216)", + "R": "254", + "G": "179", + "B": "216" + }, + "839": { + "order": 660, + "structure_ID": 839, + "lowered_ID": 839.0, + "structure_id_path": "/997/8/343/1065/354/370/839/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Dorsal motor nucleus of the vagus nerve", + "collapsed_region_name": "Dorsal motor nucleus of the vagus nerve", + "abbreviation": "DMX", + "collapsed_region": "DMX", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "DMX: rgb(253,177,216)", + "R": "253", + "G": "177", + "B": "216" + }, + "1048": { + "order": 661, + "structure_ID": 1048, + "lowered_ID": 1048.0, + "structure_id_path": "/997/8/343/1065/354/370/1048/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Gigantocellular reticular nucleus", + "collapsed_region_name": "Gigantocellular reticular nucleus", + "abbreviation": "GRN", + "collapsed_region": "GRN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "GRN: rgb(254,176,216)", + "R": "254", + "G": "176", + "B": "216" + }, + "372": { + "order": 662, + "structure_ID": 372, + "lowered_ID": 372.0, + "structure_id_path": "/997/8/343/1065/354/370/372/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Infracerebellar nucleus", + "collapsed_region_name": "Infracerebellar nucleus", + "abbreviation": "ICB", + "collapsed_region": "ICB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ICB: rgb(254,177,216)", + "R": "254", + "G": "177", + "B": "216" + }, + "83": { + "order": 663, + "structure_ID": 83, + "lowered_ID": 83.0, + "structure_id_path": "/997/8/343/1065/354/370/83/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Inferior olivary complex", + "collapsed_region_name": "Inferior olivary complex", + "abbreviation": "IO", + "collapsed_region": "IO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IO: rgb(255,179,216)", + "R": "255", + "G": "179", + "B": "216" + }, + "136": { + "order": 664, + "structure_ID": 136, + "lowered_ID": 136.0, + "structure_id_path": "/997/8/343/1065/354/370/136/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Intermediate reticular nucleus", + "collapsed_region_name": "Intermediate reticular nucleus", + "abbreviation": "IRN", + "collapsed_region": "IRN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IRN: rgb(255,178,216)", + "R": "255", + "G": "178", + "B": "216" + }, + "106": { + "order": 665, + "structure_ID": 106, + "lowered_ID": 106.0, + "structure_id_path": "/997/8/343/1065/354/370/106/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Inferior salivatory nucleus", + "collapsed_region_name": "Inferior salivatory nucleus", + "abbreviation": "ISN", + "collapsed_region": "ISN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ISN: rgb(255,178,217)", + "R": "255", + "G": "178", + "B": "217" + }, + "203": { + "order": 666, + "structure_ID": 203, + "lowered_ID": 203.0, + "structure_id_path": "/997/8/343/1065/354/370/203/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Linear nucleus of the medulla", + "collapsed_region_name": "Linear nucleus of the medulla", + "abbreviation": "LIN", + "collapsed_region": "LIN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LIN: rgb(255,177,216)", + "R": "255", + "G": "177", + "B": "216" + }, + "235": { + "order": 667, + "structure_ID": 235, + "lowered_ID": 235.0, + "structure_id_path": "/997/8/343/1065/354/370/235/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Lateral reticular nucleus", + "collapsed_region_name": "Lateral reticular nucleus", + "abbreviation": "LRN", + "collapsed_region": "LRN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LRN: rgb(253,179,216)", + "R": "253", + "G": "179", + "B": "216" + }, + "955": { + "order": 668, + "structure_ID": 955, + "lowered_ID": 955.0, + "structure_id_path": "/997/8/343/1065/354/370/235/955/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Lateral reticular nucleus, magnocellular part", + "collapsed_region_name": "Lateral reticular nucleus", + "abbreviation": "LRNm", + "collapsed_region": "LRN", + "other_abbreviation": "m", + "other_abbreviation_defined": "magnocellular", + "layer": null, + "sunburst": "LRNm: rgb(252,179,215)", + "R": "252", + "G": "179", + "B": "215" + }, + "963": { + "order": 669, + "structure_ID": 963, + "lowered_ID": 963.0, + "structure_id_path": "/997/8/343/1065/354/370/235/963/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Lateral reticular nucleus, parvicellular part", + "collapsed_region_name": "Lateral reticular nucleus", + "abbreviation": "LRNp", + "collapsed_region": "LRN", + "other_abbreviation": "p", + "other_abbreviation_defined": "parvicellular", + "layer": null, + "sunburst": "LRNp: rgb(254,176,217)", + "R": "254", + "G": "176", + "B": "217" + }, + "307": { + "order": 670, + "structure_ID": 307, + "lowered_ID": 307.0, + "structure_id_path": "/997/8/343/1065/354/370/307/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Magnocellular reticular nucleus", + "collapsed_region_name": "Magnocellular reticular nucleus", + "abbreviation": "MARN", + "collapsed_region": "MARN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MARN: rgb(253,178,217)", + "R": "253", + "G": "178", + "B": "217" + }, + "395": { + "order": 671, + "structure_ID": 395, + "lowered_ID": 395.0, + "structure_id_path": "/997/8/343/1065/354/370/395/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Medullary reticular nucleus", + "collapsed_region_name": "Medullary reticular nucleus", + "abbreviation": "MDRN", + "collapsed_region": "MDRN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MDRN: rgb(253,178,216)", + "R": "253", + "G": "178", + "B": "216" + }, + "1098": { + "order": 672, + "structure_ID": 1098, + "lowered_ID": 1098.0, + "structure_id_path": "/997/8/343/1065/354/370/395/1098/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Medullary reticular nucleus, dorsal part", + "collapsed_region_name": "Medullary reticular nucleus", + "abbreviation": "MDRNd", + "collapsed_region": "MDRN", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "MDRNd: rgb(253,177,215)", + "R": "253", + "G": "177", + "B": "215" + }, + "1107": { + "order": 673, + "structure_ID": 1107, + "lowered_ID": 1107.0, + "structure_id_path": "/997/8/343/1065/354/370/395/1107/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Medullary reticular nucleus, ventral part", + "collapsed_region_name": "Medullary reticular nucleus", + "abbreviation": "MDRNv", + "collapsed_region": "MDRN", + "other_abbreviation": "v", + "other_abbreviation_defined": "ventral", + "layer": null, + "sunburst": "MDRNv: rgb(255,177,214)", + "R": "255", + "G": "177", + "B": "214" + }, + "852": { + "order": 674, + "structure_ID": 852, + "lowered_ID": 852.0, + "structure_id_path": "/997/8/343/1065/354/370/852/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Parvicellular reticular nucleus", + "collapsed_region_name": "Parvicellular reticular nucleus", + "abbreviation": "PARN", + "collapsed_region": "PARN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PARN: rgb(252,179,217)", + "R": "252", + "G": "179", + "B": "217" + }, + "859": { + "order": 675, + "structure_ID": 859, + "lowered_ID": 859.0, + "structure_id_path": "/997/8/343/1065/354/370/859/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Parasolitary nucleus", + "collapsed_region_name": "Parasolitary nucleus", + "abbreviation": "PAS", + "collapsed_region": "PAS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PAS: rgb(255,178,214)", + "R": "255", + "G": "178", + "B": "214" + }, + "938": { + "order": 676, + "structure_ID": 938, + "lowered_ID": 938.0, + "structure_id_path": "/997/8/343/1065/354/370/938/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Paragigantocellular reticular nucleus", + "collapsed_region_name": "Paragigantocellular reticular nucleus", + "abbreviation": "PGRN", + "collapsed_region": "PGRN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PGRN: rgb(255,176,216)", + "R": "255", + "G": "176", + "B": "216" + }, + "970": { + "order": 677, + "structure_ID": 970, + "lowered_ID": 970.0, + "structure_id_path": "/997/8/343/1065/354/370/938/970/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Paragigantocellular reticular nucleus, dorsal part", + "collapsed_region_name": "Paragigantocellular reticular nucleus", + "abbreviation": "PGRNd", + "collapsed_region": "PGRN", + "other_abbreviation": "d", + "other_abbreviation_defined": "dorsal", + "layer": null, + "sunburst": "PGRNd: rgb(252,179,216)", + "R": "252", + "G": "179", + "B": "216" + }, + "978": { + "order": 678, + "structure_ID": 978, + "lowered_ID": 978.0, + "structure_id_path": "/997/8/343/1065/354/370/938/978/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Paragigantocellular reticular nucleus, lateral part", + "collapsed_region_name": "Paragigantocellular reticular nucleus", + "abbreviation": "PGRNl", + "collapsed_region": "PGRN", + "other_abbreviation": "l", + "other_abbreviation_defined": "lateral", + "layer": null, + "sunburst": "PGRNl: rgb(252,178,217)", + "R": "252", + "G": "178", + "B": "217" + }, + "154": { + "order": 679, + "structure_ID": 154, + "lowered_ID": 154.0, + "structure_id_path": "/997/8/343/1065/354/370/154/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Perihypoglossal nuclei", + "collapsed_region_name": "Perihypoglossal nuclei", + "abbreviation": "PHY", + "collapsed_region": "PHY", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PHY: rgb(254,178,217)", + "R": "254", + "G": "178", + "B": "217" + }, + "177": { + "order": 680, + "structure_ID": 177, + "lowered_ID": 177.0, + "structure_id_path": "/997/8/343/1065/354/370/154/177/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Nucleus of Roller", + "collapsed_region_name": "Nucleus of Roller", + "abbreviation": "NR", + "collapsed_region": "NR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "NR: rgb(255,177,217)", + "R": "255", + "G": "177", + "B": "217" + }, + "169": { + "order": 681, + "structure_ID": 169, + "lowered_ID": 169.0, + "structure_id_path": "/997/8/343/1065/354/370/154/169/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Nucleus prepositus", + "collapsed_region_name": "Nucleus prepositus", + "abbreviation": "PRP", + "collapsed_region": "PRP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PRP: rgb(255,179,215)", + "R": "255", + "G": "179", + "B": "215" + }, + "1069": { + "order": 682, + "structure_ID": 1069, + "lowered_ID": 1069.0, + "structure_id_path": "/997/8/343/1065/354/370/1069/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Parapyramidal nucleus", + "collapsed_region_name": "Parapyramidal nucleus", + "abbreviation": "PPY", + "collapsed_region": "PPY", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PPY: rgb(252,178,216)", + "R": "252", + "G": "178", + "B": "216" + }, + "701": { + "order": 683, + "structure_ID": 701, + "lowered_ID": 701.0, + "structure_id_path": "/997/8/343/1065/354/370/701/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Vestibular nuclei", + "collapsed_region_name": "Vestibular nuclei", + "abbreviation": "VNC", + "collapsed_region": "VNC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VNC: rgb(252,177,217)", + "R": "252", + "G": "177", + "B": "217" + }, + "209": { + "order": 684, + "structure_ID": 209, + "lowered_ID": 209.0, + "structure_id_path": "/997/8/343/1065/354/370/701/209/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Lateral vestibular nucleus", + "collapsed_region_name": "Lateral vestibular nucleus", + "abbreviation": "LAV", + "collapsed_region": "LAV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LAV: rgb(254,179,215)", + "R": "254", + "G": "179", + "B": "215" + }, + "202": { + "order": 685, + "structure_ID": 202, + "lowered_ID": 202.0, + "structure_id_path": "/997/8/343/1065/354/370/701/202/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Medial vestibular nucleus", + "collapsed_region_name": "Medial vestibular nucleus", + "abbreviation": "MV", + "collapsed_region": "MV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "MV: rgb(255,176,215)", + "R": "255", + "G": "176", + "B": "215" + }, + "225": { + "order": 686, + "structure_ID": 225, + "lowered_ID": 225.0, + "structure_id_path": "/997/8/343/1065/354/370/701/225/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Spinal vestibular nucleus", + "collapsed_region_name": "Spinal vestibular nucleus", + "abbreviation": "SPIV", + "collapsed_region": "SPIV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SPIV: rgb(254,177,217)", + "R": "254", + "G": "177", + "B": "217" + }, + "217": { + "order": 687, + "structure_ID": 217, + "lowered_ID": 217.0, + "structure_id_path": "/997/8/343/1065/354/370/701/217/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Superior vestibular nucleus", + "collapsed_region_name": "Superior vestibular nucleus", + "abbreviation": "SUV", + "collapsed_region": "SUV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SUV: rgb(253,179,214)", + "R": "253", + "G": "179", + "B": "214" + }, + "765": { + "order": 688, + "structure_ID": 765, + "lowered_ID": 765.0, + "structure_id_path": "/997/8/343/1065/354/370/765/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Nucleus x", + "collapsed_region_name": "Nucleus x", + "abbreviation": "x", + "collapsed_region": "x", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "x: rgb(255,176,217)", + "R": "255", + "G": "176", + "B": "217" + }, + "773": { + "order": 689, + "structure_ID": 773, + "lowered_ID": 773.0, + "structure_id_path": "/997/8/343/1065/354/370/773/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Hypoglossal nucleus", + "collapsed_region_name": "Hypoglossal nucleus", + "abbreviation": "XII", + "collapsed_region": "XII", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "XII: rgb(254,177,215)", + "R": "254", + "G": "177", + "B": "215" + }, + "781": { + "order": 690, + "structure_ID": 781, + "lowered_ID": 781.0, + "structure_id_path": "/997/8/343/1065/354/370/781/", + "very_general_region": "Medulla", + "general_region": "Medulla, motor related", + "full_structure_name": "Nucleus y", + "collapsed_region_name": "Nucleus y", + "abbreviation": "y", + "collapsed_region": "y", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "y: rgb(253,178,215)", + "R": "253", + "G": "178", + "B": "215" + }, + "379": { + "order": 691, + "structure_ID": 379, + "lowered_ID": 379.0, + "structure_id_path": "/997/8/343/1065/354/379/", + "very_general_region": "Medulla", + "general_region": "Medulla, behavioral state related", + "full_structure_name": "Medulla, behavioral state related", + "collapsed_region_name": "Medulla", + "abbreviation": "MY-sat", + "collapsed_region": "MY", + "other_abbreviation": "sat", + "other_abbreviation_defined": "behavioral state related", + "layer": null, + "sunburst": "MY-sat: rgb(255,198,225)", + "R": "255", + "G": "198", + "B": "225" + }, + "206": { + "order": 692, + "structure_ID": 206, + "lowered_ID": 206.0, + "structure_id_path": "/997/8/343/1065/354/379/206/", + "very_general_region": "Medulla", + "general_region": "Medulla, behavioral state related", + "full_structure_name": "Nucleus raphe magnus", + "collapsed_region_name": "Nucleus raphe magnus", + "abbreviation": "RM", + "collapsed_region": "RM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RM: rgb(255,197,226)", + "R": "255", + "G": "197", + "B": "226" + }, + "230": { + "order": 693, + "structure_ID": 230, + "lowered_ID": 230.0, + "structure_id_path": "/997/8/343/1065/354/379/230/", + "very_general_region": "Medulla", + "general_region": "Medulla, behavioral state related", + "full_structure_name": "Nucleus raphe pallidus", + "collapsed_region_name": "Nucleus raphe pallidus", + "abbreviation": "RPA", + "collapsed_region": "RPA", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RPA: rgb(255,198,226)", + "R": "255", + "G": "198", + "B": "226" + }, + "222": { + "order": 694, + "structure_ID": 222, + "lowered_ID": 222.0, + "structure_id_path": "/997/8/343/1065/354/379/222/", + "very_general_region": "Medulla", + "general_region": "Medulla, behavioral state related", + "full_structure_name": "Nucleus raphe obscurus", + "collapsed_region_name": "Nucleus raphe obscurus", + "abbreviation": "RO", + "collapsed_region": "RO", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "RO: rgb(254,198,226)", + "R": "254", + "G": "198", + "B": "226" + }, + "512": { + "order": 695, + "structure_ID": 512, + "lowered_ID": 512.0, + "structure_id_path": "/997/8/512/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellum", + "full_structure_name": "Cerebellum", + "collapsed_region_name": "Cerebellum", + "abbreviation": "CB", + "collapsed_region": "CB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CB: rgb(240,240,128)", + "R": "240", + "G": "240", + "B": "128" + }, + "528": { + "order": 696, + "structure_ID": 528, + "lowered_ID": 528.0, + "structure_id_path": "/997/8/512/528/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Cerebellar cortex", + "collapsed_region_name": "Cerebellar cortex", + "abbreviation": "CBX", + "collapsed_region": "CBX", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CBX: rgb(240,239,128)", + "R": "240", + "G": "239", + "B": "128" + }, + "645": { + "order": 697, + "structure_ID": 645, + "lowered_ID": 645.0, + "structure_id_path": "/997/8/512/528/645/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Vermal regions", + "collapsed_region_name": "Vermal regions", + "abbreviation": "VERM", + "collapsed_region": "VERM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VERM: rgb(255,250,145)", + "R": "255", + "G": "250", + "B": "145" + }, + "912": { + "order": 698, + "structure_ID": 912, + "lowered_ID": 912.0, + "structure_id_path": "/997/8/512/528/645/912/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Lingula (I)", + "collapsed_region_name": "Lingula (I)", + "abbreviation": "LING", + "collapsed_region": "LING", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "LING: rgb(254,250,145)", + "R": "254", + "G": "250", + "B": "145" + }, + "920": { + "order": 699, + "structure_ID": 920, + "lowered_ID": 920.0, + "structure_id_path": "/997/8/512/528/645/920/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Central lobule", + "collapsed_region_name": "Central lobule", + "abbreviation": "CENT", + "collapsed_region": "CENT", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CENT: rgb(253,251,145)", + "R": "253", + "G": "251", + "B": "145" + }, + "976": { + "order": 700, + "structure_ID": 976, + "lowered_ID": 976.0, + "structure_id_path": "/997/8/512/528/645/920/976/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Lobule II", + "collapsed_region_name": "Central lobule", + "abbreviation": "CENT2", + "collapsed_region": "CENT", + "other_abbreviation": "2", + "other_abbreviation_defined": "II", + "layer": null, + "sunburst": "CENT2: rgb(253,250,145)", + "R": "253", + "G": "250", + "B": "145" + }, + "984": { + "order": 701, + "structure_ID": 984, + "lowered_ID": 984.0, + "structure_id_path": "/997/8/512/528/645/920/984/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Lobule III", + "collapsed_region_name": "Central lobule", + "abbreviation": "CENT3", + "collapsed_region": "CENT", + "other_abbreviation": "3", + "other_abbreviation_defined": "III", + "layer": null, + "sunburst": "CENT3: rgb(255,252,142)", + "R": "255", + "G": "252", + "B": "142" + }, + "928": { + "order": 702, + "structure_ID": 928, + "lowered_ID": 928.0, + "structure_id_path": "/997/8/512/528/645/928/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Culmen", + "collapsed_region_name": "Culmen", + "abbreviation": "CUL", + "collapsed_region": "CUL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CUL: rgb(254,251,143)", + "R": "254", + "G": "251", + "B": "143" + }, + "1091": { + "order": 703, + "structure_ID": 1091, + "lowered_ID": 1091.0, + "structure_id_path": "/997/8/512/528/645/928/1091/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Lobules IV-V", + "collapsed_region_name": "Culmen", + "abbreviation": "CUL4, 5", + "collapsed_region": "CUL", + "other_abbreviation": "4, 5", + "other_abbreviation_defined": "lobules IV-V", + "layer": null, + "sunburst": "CUL4, 5: rgb(252,251,144)", + "R": "#VALUE!", + "G": " 5: rgb(252", + "B": "251,144" + }, + "936": { + "order": 704, + "structure_ID": 936, + "lowered_ID": 936.0, + "structure_id_path": "/997/8/512/528/645/936/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Declive (VI)", + "collapsed_region_name": "Declive (VI)", + "abbreviation": "DEC", + "collapsed_region": "DEC", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "DEC: rgb(254,250,144)", + "R": "254", + "G": "250", + "B": "144" + }, + "944": { + "order": 705, + "structure_ID": 944, + "lowered_ID": 944.0, + "structure_id_path": "/997/8/512/528/645/944/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Folium-tuber vermis (VII)", + "collapsed_region_name": "Folium-tuber vermis (VII)", + "abbreviation": "FOTU", + "collapsed_region": "FOTU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "FOTU: rgb(253,251,144)", + "R": "253", + "G": "251", + "B": "144" + }, + "951": { + "order": 706, + "structure_ID": 951, + "lowered_ID": 951.0, + "structure_id_path": "/997/8/512/528/645/951/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Pyramus (VIII)", + "collapsed_region_name": "Pyramus (VIII)", + "abbreviation": "PYR", + "collapsed_region": "PYR", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PYR: rgb(251,252,145)", + "R": "251", + "G": "252", + "B": "145" + }, + "957": { + "order": 707, + "structure_ID": 957, + "lowered_ID": 957.0, + "structure_id_path": "/997/8/512/528/645/957/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Uvula (IX)", + "collapsed_region_name": "Uvula (IX)", + "abbreviation": "UVU", + "collapsed_region": "UVU", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "UVU: rgb(255,250,143)", + "R": "255", + "G": "250", + "B": "143" + }, + "968": { + "order": 708, + "structure_ID": 968, + "lowered_ID": 968.0, + "structure_id_path": "/997/8/512/528/645/968/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Nodulus (X)", + "collapsed_region_name": "Nodulus (X)", + "abbreviation": "NOD", + "collapsed_region": "NOD", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "NOD: rgb(253,252,143)", + "R": "253", + "G": "252", + "B": "143" + }, + "1073": { + "order": 709, + "structure_ID": 1073, + "lowered_ID": 1073.0, + "structure_id_path": "/997/8/512/528/1073/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Hemispheric regions", + "collapsed_region_name": "Hemispheric regions", + "abbreviation": "HEM", + "collapsed_region": "HEM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "HEM: rgb(254,249,144)", + "R": "254", + "G": "249", + "B": "144" + }, + "1007": { + "order": 710, + "structure_ID": 1007, + "lowered_ID": 1007.0, + "structure_id_path": "/997/8/512/528/1073/1007/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Simple lobule", + "collapsed_region_name": "Simple lobule", + "abbreviation": "SIM", + "collapsed_region": "SIM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SIM: rgb(253,251,143)", + "R": "253", + "G": "251", + "B": "143" + }, + "1017": { + "order": 711, + "structure_ID": 1017, + "lowered_ID": 1017.0, + "structure_id_path": "/997/8/512/528/1073/1017/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Ansiform lobule", + "collapsed_region_name": "Ansiform lobule", + "abbreviation": "AN", + "collapsed_region": "AN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AN: rgb(252,252,145)", + "R": "252", + "G": "252", + "B": "145" + }, + "1056": { + "order": 712, + "structure_ID": 1056, + "lowered_ID": 1056.0, + "structure_id_path": "/997/8/512/528/1073/1017/1056/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Crus 1", + "collapsed_region_name": "Crus", + "abbreviation": "ANcr1", + "collapsed_region": "AN", + "other_abbreviation": "cr1", + "other_abbreviation_defined": "crus 1", + "layer": null, + "sunburst": "ANcr1: rgb(252,252,144)", + "R": "252", + "G": "252", + "B": "144" + }, + "1064": { + "order": 713, + "structure_ID": 1064, + "lowered_ID": 1064.0, + "structure_id_path": "/997/8/512/528/1073/1017/1064/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Crus 2", + "collapsed_region_name": "Crus", + "abbreviation": "ANcr2", + "collapsed_region": "AN", + "other_abbreviation": "cr2", + "other_abbreviation_defined": "crus 2", + "layer": null, + "sunburst": "ANcr2: rgb(252,250,145)", + "R": "252", + "G": "250", + "B": "145" + }, + "1025": { + "order": 714, + "structure_ID": 1025, + "lowered_ID": 1025.0, + "structure_id_path": "/997/8/512/528/1073/1025/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Paramedian lobule", + "collapsed_region_name": "Paramedian lobule", + "abbreviation": "PRM", + "collapsed_region": "PRM", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PRM: rgb(255,251,142)", + "R": "255", + "G": "251", + "B": "142" + }, + "1033": { + "order": 715, + "structure_ID": 1033, + "lowered_ID": 1033.0, + "structure_id_path": "/997/8/512/528/1073/1033/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Copula pyramidis", + "collapsed_region_name": "Copula pyramidis", + "abbreviation": "COPY", + "collapsed_region": "COPY", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "COPY: rgb(255,249,144)", + "R": "255", + "G": "249", + "B": "144" + }, + "1041": { + "order": 716, + "structure_ID": 1041, + "lowered_ID": 1041.0, + "structure_id_path": "/997/8/512/528/1073/1041/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Paraflocculus", + "collapsed_region_name": "Paraflocculus", + "abbreviation": "PFL", + "collapsed_region": "PFL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "PFL: rgb(255,252,141)", + "R": "255", + "G": "252", + "B": "141" + }, + "1049": { + "order": 717, + "structure_ID": 1049, + "lowered_ID": 1049.0, + "structure_id_path": "/997/8/512/528/1073/1049/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar cortex", + "full_structure_name": "Flocculus", + "collapsed_region_name": "Flocculus", + "abbreviation": "FL", + "collapsed_region": "FL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "FL: rgb(254,249,145)", + "R": "254", + "G": "249", + "B": "145" + }, + "519": { + "order": 718, + "structure_ID": 519, + "lowered_ID": 519.0, + "structure_id_path": "/997/8/512/519/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar nuclei", + "full_structure_name": "Cerebellar nuclei", + "collapsed_region_name": "Cerebellar nuclei", + "abbreviation": "CBN", + "collapsed_region": "CBN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "CBN: rgb(240,240,127)", + "R": "240", + "G": "240", + "B": "127" + }, + "989": { + "order": 719, + "structure_ID": 989, + "lowered_ID": 989.0, + "structure_id_path": "/997/8/512/519/989/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar nuclei", + "full_structure_name": "Fastigial nucleus", + "collapsed_region_name": "Fastigial nucleus", + "abbreviation": "FN", + "collapsed_region": "FN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "FN: rgb(255,252,188)", + "R": "255", + "G": "252", + "B": "188" + }, + "91": { + "order": 720, + "structure_ID": 91, + "lowered_ID": 91.0, + "structure_id_path": "/997/8/512/519/91/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar nuclei", + "full_structure_name": "Interposed nucleus", + "collapsed_region_name": "Interposed nucleus", + "abbreviation": "IP", + "collapsed_region": "IP", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IP: rgb(255,253,188)", + "R": "255", + "G": "253", + "B": "188" + }, + "846": { + "order": 721, + "structure_ID": 846, + "lowered_ID": 846.0, + "structure_id_path": "/997/8/512/519/846/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar nuclei", + "full_structure_name": "Dentate nucleus", + "collapsed_region_name": "Dentate nucleus", + "abbreviation": "DN", + "collapsed_region": "DN", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "DN: rgb(255,253,187)", + "R": "255", + "G": "253", + "B": "187" + }, + "589508455": { + "order": 722, + "structure_ID": 589508455, + "lowered_ID": null, + "structure_id_path": "/997/8/512/519/589508455/", + "very_general_region": "Cerebellum", + "general_region": "Cerebellar nuclei", + "full_structure_name": "Vestibulocerebellar nucleus", + "collapsed_region_name": "Vestibulocerebellar nucleus", + "abbreviation": "VeCB", + "collapsed_region": "VeCB", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VeCB: rgb(254,253,188)", + "R": "254", + "G": "253", + "B": "188" + }, + "1009": { + "order": 723, + "structure_ID": 1009, + "lowered_ID": 1009.0, + "structure_id_path": "/997/1009/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "fiber tracts", + "collapsed_region_name": "fiber tracts", + "abbreviation": "fiber tracts", + "collapsed_region": "fiber tracts", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "fiber tracts: rgb(202,199,203)", + "R": "202", + "G": "199", + "B": "203" + }, + "967": { + "order": 724, + "structure_ID": 967, + "lowered_ID": 967.0, + "structure_id_path": "/997/1009/967/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "cranial nerves", + "collapsed_region_name": "cranial nerves", + "abbreviation": "cm", + "collapsed_region": "cm", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "cm: rgb(200,202,201)", + "R": "200", + "G": "202", + "B": "201" + }, + "949": { + "order": 725, + "structure_ID": 949, + "lowered_ID": 949.0, + "structure_id_path": "/997/1009/967/949/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "vomeronasal nerve", + "collapsed_region_name": "vomeronasal nerve", + "abbreviation": "von", + "collapsed_region": "von", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "von: rgb(202,200,201)", + "R": "202", + "G": "200", + "B": "201" + }, + "840": { + "order": 726, + "structure_ID": 840, + "lowered_ID": 840.0, + "structure_id_path": "/997/1009/967/840/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "olfactory nerve", + "collapsed_region_name": "olfactory nerve", + "abbreviation": "In", + "collapsed_region": "In", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "In: rgb(204,203,199)", + "R": "204", + "G": "203", + "B": "199" + }, + "1016": { + "order": 727, + "structure_ID": 1016, + "lowered_ID": 1016.0, + "structure_id_path": "/997/1009/967/840/1016/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "olfactory nerve layer of main olfactory bulb", + "collapsed_region_name": "olfactory nerve layer of main olfactory bulb", + "abbreviation": "onl", + "collapsed_region": "onl", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "onl: rgb(199,203,202)", + "R": "199", + "G": "203", + "B": "202" + }, + "21": { + "order": 728, + "structure_ID": 21, + "lowered_ID": 21.0, + "structure_id_path": "/997/1009/967/840/21/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "lateral olfactory tract, general", + "collapsed_region_name": "lateral olfactory tract, general", + "abbreviation": "lotg", + "collapsed_region": "lotg", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "lotg: rgb(204,204,203)", + "R": "204", + "G": "204", + "B": "203" + }, + "665": { + "order": 729, + "structure_ID": 665, + "lowered_ID": 665.0, + "structure_id_path": "/997/1009/967/840/21/665/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "lateral olfactory tract, body", + "collapsed_region_name": "lateral olfactory tract, body", + "abbreviation": "lot", + "collapsed_region": "lot", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "lot: rgb(202,200,199)", + "R": "202", + "G": "200", + "B": "199" + }, + "538": { + "order": 730, + "structure_ID": 538, + "lowered_ID": 538.0, + "structure_id_path": "/997/1009/967/840/21/538/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "dorsal limb", + "collapsed_region_name": "dorsal limb", + "abbreviation": "lotd", + "collapsed_region": "lotd", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "lotd: rgb(202,202,201)", + "R": "202", + "G": "202", + "B": "201" + }, + "900": { + "order": 731, + "structure_ID": 900, + "lowered_ID": 900.0, + "structure_id_path": "/997/1009/967/840/900/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "anterior commissure, olfactory limb", + "collapsed_region_name": "anterior commissure, olfactory limb", + "abbreviation": "aco", + "collapsed_region": "aco", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "aco: rgb(203,203,199)", + "R": "203", + "G": "203", + "B": "199" + }, + "848": { + "order": 732, + "structure_ID": 848, + "lowered_ID": 848.0, + "structure_id_path": "/997/1009/967/848/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "optic nerve", + "collapsed_region_name": "optic nerve", + "abbreviation": "IIn", + "collapsed_region": "IIn", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IIn: rgb(203,204,199)", + "R": "203", + "G": "204", + "B": "199" + }, + "916": { + "order": 733, + "structure_ID": 916, + "lowered_ID": 916.0, + "structure_id_path": "/997/1009/967/848/916/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "brachium of the superior colliculus", + "collapsed_region_name": "brachium of the superior colliculus", + "abbreviation": "bsc", + "collapsed_region": "bsc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "bsc: rgb(199,203,203)", + "R": "199", + "G": "203", + "B": "203" + }, + "336": { + "order": 734, + "structure_ID": 336, + "lowered_ID": 336.0, + "structure_id_path": "/997/1009/967/848/336/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "superior colliculus commissure", + "collapsed_region_name": "superior colliculus commissure", + "abbreviation": "csc", + "collapsed_region": "csc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "csc: rgb(201,203,203)", + "R": "201", + "G": "203", + "B": "203" + }, + "117": { + "order": 735, + "structure_ID": 117, + "lowered_ID": 117.0, + "structure_id_path": "/997/1009/967/848/117/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "optic chiasm", + "collapsed_region_name": "optic chiasm", + "abbreviation": "och", + "collapsed_region": "och", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "och: rgb(203,202,204)", + "R": "203", + "G": "202", + "B": "204" + }, + "125": { + "order": 736, + "structure_ID": 125, + "lowered_ID": 125.0, + "structure_id_path": "/997/1009/967/848/125/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "optic tract", + "collapsed_region_name": "optic tract", + "abbreviation": "opt", + "collapsed_region": "opt", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "opt: rgb(202,204,203)", + "R": "202", + "G": "204", + "B": "203" + }, + "832": { + "order": 737, + "structure_ID": 832, + "lowered_ID": 832.0, + "structure_id_path": "/997/1009/967/832/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "oculomotor nerve", + "collapsed_region_name": "oculomotor nerve", + "abbreviation": "IIIn", + "collapsed_region": "IIIn", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IIIn: rgb(199,204,204)", + "R": "199", + "G": "204", + "B": "204" + }, + "62": { + "order": 738, + "structure_ID": 62, + "lowered_ID": 62.0, + "structure_id_path": "/997/1009/967/832/62/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "medial longitudinal fascicle", + "collapsed_region_name": "medial longitudinal fascicle", + "abbreviation": "mlf", + "collapsed_region": "mlf", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "mlf: rgb(203,203,204)", + "R": "203", + "G": "203", + "B": "204" + }, + "158": { + "order": 739, + "structure_ID": 158, + "lowered_ID": 158.0, + "structure_id_path": "/997/1009/967/832/158/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "posterior commissure", + "collapsed_region_name": "posterior commissure", + "abbreviation": "pc", + "collapsed_region": "pc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "pc: rgb(204,202,202)", + "R": "204", + "G": "202", + "B": "202" + }, + "911": { + "order": 740, + "structure_ID": 911, + "lowered_ID": 911.0, + "structure_id_path": "/997/1009/967/911/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "trochlear nerve", + "collapsed_region_name": "trochlear nerve", + "abbreviation": "IVn", + "collapsed_region": "IVn", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "IVn: rgb(200,201,200)", + "R": "200", + "G": "201", + "B": "200" + }, + "901": { + "order": 741, + "structure_ID": 901, + "lowered_ID": 901.0, + "structure_id_path": "/997/1009/967/901/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "trigeminal nerve", + "collapsed_region_name": "trigeminal nerve", + "abbreviation": "Vn", + "collapsed_region": "Vn", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "Vn: rgb(203,199,203)", + "R": "203", + "G": "199", + "B": "203" + }, + "93": { + "order": 742, + "structure_ID": 93, + "lowered_ID": 93.0, + "structure_id_path": "/997/1009/967/901/93/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "motor root of the trigeminal nerve", + "collapsed_region_name": "motor root of the trigeminal nerve", + "abbreviation": "moV", + "collapsed_region": "moV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "moV: rgb(204,203,202)", + "R": "204", + "G": "203", + "B": "202" + }, + "229": { + "order": 743, + "structure_ID": 229, + "lowered_ID": 229.0, + "structure_id_path": "/997/1009/967/901/229/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "sensory root of the trigeminal nerve", + "collapsed_region_name": "sensory root of the trigeminal nerve", + "abbreviation": "sV", + "collapsed_region": "sV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "sV: rgb(202,202,203)", + "R": "202", + "G": "202", + "B": "203" + }, + "794": { + "order": 744, + "structure_ID": 794, + "lowered_ID": 794.0, + "structure_id_path": "/997/1009/967/901/229/794/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "spinal tract of the trigeminal nerve", + "collapsed_region_name": "spinal tract of the trigeminal nerve", + "abbreviation": "sptV", + "collapsed_region": "sptV", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "sptV: rgb(200,202,202)", + "R": "200", + "G": "202", + "B": "202" + }, + "798": { + "order": 745, + "structure_ID": 798, + "lowered_ID": 798.0, + "structure_id_path": "/997/1009/967/798/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "facial nerve", + "collapsed_region_name": "facial nerve", + "abbreviation": "VIIn", + "collapsed_region": "VIIn", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VIIn: rgb(204,204,199)", + "R": "204", + "G": "204", + "B": "199" + }, + "1116": { + "order": 746, + "structure_ID": 1116, + "lowered_ID": 1116.0, + "structure_id_path": "/997/1009/967/798/1116/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "genu of the facial nerve", + "collapsed_region_name": "genu of the facial nerve", + "abbreviation": "gVIIn", + "collapsed_region": "gVIIn", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "gVIIn: rgb(201,204,199)", + "R": "201", + "G": "204", + "B": "199" + }, + "933": { + "order": 747, + "structure_ID": 933, + "lowered_ID": 933.0, + "structure_id_path": "/997/1009/967/933/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "vestibulocochlear nerve", + "collapsed_region_name": "vestibulocochlear nerve", + "abbreviation": "VIIIn", + "collapsed_region": "VIIIn", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VIIIn: rgb(201,199,202)", + "R": "201", + "G": "199", + "B": "202" + }, + "413": { + "order": 748, + "structure_ID": 413, + "lowered_ID": 413.0, + "structure_id_path": "/997/1009/967/933/413/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "vestibular nerve", + "collapsed_region_name": "vestibular nerve", + "abbreviation": "vVIIIn", + "collapsed_region": "vVIIIn", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "vVIIIn: rgb(201,202,203)", + "R": "201", + "G": "202", + "B": "203" + }, + "948": { + "order": 749, + "structure_ID": 948, + "lowered_ID": 948.0, + "structure_id_path": "/997/1009/967/933/948/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "cochlear nerve", + "collapsed_region_name": "cochlear nerve", + "abbreviation": "cVIIIn", + "collapsed_region": "cVIIIn", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "cVIIIn: rgb(202,201,200)", + "R": "202", + "G": "201", + "B": "200" + }, + "841": { + "order": 750, + "structure_ID": 841, + "lowered_ID": 841.0, + "structure_id_path": "/997/1009/967/933/948/841/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "trapezoid body", + "collapsed_region_name": "trapezoid body", + "abbreviation": "tb", + "collapsed_region": "tb", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "tb: rgb(204,199,203)", + "R": "204", + "G": "199", + "B": "203" + }, + "506": { + "order": 751, + "structure_ID": 506, + "lowered_ID": 506.0, + "structure_id_path": "/997/1009/967/933/948/506/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "dorsal acoustic stria", + "collapsed_region_name": "dorsal acoustic stria", + "abbreviation": "das", + "collapsed_region": "das", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "das: rgb(204,203,200)", + "R": "204", + "G": "203", + "B": "200" + }, + "658": { + "order": 752, + "structure_ID": 658, + "lowered_ID": 658.0, + "structure_id_path": "/997/1009/967/933/948/658/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "lateral lemniscus", + "collapsed_region_name": "lateral lemniscus", + "abbreviation": "ll", + "collapsed_region": "ll", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ll: rgb(201,201,203)", + "R": "201", + "G": "201", + "B": "203" + }, + "633": { + "order": 753, + "structure_ID": 633, + "lowered_ID": 633.0, + "structure_id_path": "/997/1009/967/933/948/633/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "inferior colliculus commissure", + "collapsed_region_name": "inferior colliculus commissure", + "abbreviation": "cic", + "collapsed_region": "cic", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "cic: rgb(203,201,201)", + "R": "203", + "G": "201", + "B": "201" + }, + "482": { + "order": 754, + "structure_ID": 482, + "lowered_ID": 482.0, + "structure_id_path": "/997/1009/967/933/948/482/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "brachium of the inferior colliculus", + "collapsed_region_name": "brachium of the inferior colliculus", + "abbreviation": "bic", + "collapsed_region": "bic", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "bic: rgb(201,200,200)", + "R": "201", + "G": "200", + "B": "200" + }, + "917": { + "order": 755, + "structure_ID": 917, + "lowered_ID": 917.0, + "structure_id_path": "/997/1009/967/917/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "vagus nerve", + "collapsed_region_name": "vagus nerve", + "abbreviation": "Xn", + "collapsed_region": "Xn", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "Xn: rgb(199,201,203)", + "R": "199", + "G": "201", + "B": "203" + }, + "237": { + "order": 756, + "structure_ID": 237, + "lowered_ID": 237.0, + "structure_id_path": "/997/1009/967/917/237/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "solitary tract", + "collapsed_region_name": "solitary tract", + "abbreviation": "ts", + "collapsed_region": "ts", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ts: rgb(200,202,199)", + "R": "200", + "G": "202", + "B": "199" + }, + "792": { + "order": 757, + "structure_ID": 792, + "lowered_ID": 792.0, + "structure_id_path": "/997/1009/967/792/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "dorsal roots", + "collapsed_region_name": "dorsal roots", + "abbreviation": "drt", + "collapsed_region": "drt", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "drt: rgb(202,200,202)", + "R": "202", + "G": "200", + "B": "202" + }, + "932": { + "order": 758, + "structure_ID": 932, + "lowered_ID": 932.0, + "structure_id_path": "/997/1009/967/792/932/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "cervicothalamic tract", + "collapsed_region_name": "cervicothalamic tract", + "abbreviation": "cett", + "collapsed_region": "cett", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "cett: rgb(204,199,202)", + "R": "204", + "G": "199", + "B": "202" + }, + "514": { + "order": 759, + "structure_ID": 514, + "lowered_ID": 514.0, + "structure_id_path": "/997/1009/967/792/932/514/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "dorsal column", + "collapsed_region_name": "dorsal column", + "abbreviation": "dc", + "collapsed_region": "dc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "dc: rgb(204,200,203)", + "R": "204", + "G": "200", + "B": "203" + }, + "380": { + "order": 760, + "structure_ID": 380, + "lowered_ID": 380.0, + "structure_id_path": "/997/1009/967/792/932/514/380/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "cuneate fascicle", + "collapsed_region_name": "cuneate fascicle", + "abbreviation": "cuf", + "collapsed_region": "cuf", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "cuf: rgb(202,201,204)", + "R": "202", + "G": "201", + "B": "204" + }, + "697": { + "order": 761, + "structure_ID": 697, + "lowered_ID": 697.0, + "structure_id_path": "/997/1009/967/792/932/697/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "medial lemniscus", + "collapsed_region_name": "medial lemniscus", + "abbreviation": "ml", + "collapsed_region": "ml", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ml: rgb(202,204,200)", + "R": "202", + "G": "204", + "B": "200" + }, + "960": { + "order": 762, + "structure_ID": 960, + "lowered_ID": 960.0, + "structure_id_path": "/997/1009/960/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "cerebellum related fiber tracts", + "collapsed_region_name": "cerebellum related fiber tracts", + "abbreviation": "cbf", + "collapsed_region": "cbf", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "cbf: rgb(201,202,200)", + "R": "201", + "G": "202", + "B": "200" + }, + "744": { + "order": 763, + "structure_ID": 744, + "lowered_ID": 744.0, + "structure_id_path": "/997/1009/960/744/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "cerebellar commissure", + "collapsed_region_name": "cerebellar commissure", + "abbreviation": "cbc", + "collapsed_region": "cbc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "cbc: rgb(203,200,202)", + "R": "203", + "G": "200", + "B": "202" + }, + "752": { + "order": 764, + "structure_ID": 752, + "lowered_ID": 752.0, + "structure_id_path": "/997/1009/960/752/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "cerebellar peduncles", + "collapsed_region_name": "cerebellar peduncles", + "abbreviation": "cbp", + "collapsed_region": "cbp", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "cbp: rgb(202,200,203)", + "R": "202", + "G": "200", + "B": "203" + }, + "326": { + "order": 765, + "structure_ID": 326, + "lowered_ID": 326.0, + "structure_id_path": "/997/1009/960/752/326/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "superior cerebelar peduncles", + "collapsed_region_name": "superior cerebelar peduncles", + "abbreviation": "scp", + "collapsed_region": "scp", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "scp: rgb(203,201,203)", + "R": "203", + "G": "201", + "B": "203" + }, + "812": { + "order": 766, + "structure_ID": 812, + "lowered_ID": 812.0, + "structure_id_path": "/997/1009/960/752/326/812/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "superior cerebellar peduncle decussation", + "collapsed_region_name": "superior cerebellar peduncle decussation", + "abbreviation": "dscp", + "collapsed_region": "dscp", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "dscp: rgb(204,199,204)", + "R": "204", + "G": "199", + "B": "204" + }, + "850": { + "order": 767, + "structure_ID": 850, + "lowered_ID": 850.0, + "structure_id_path": "/997/1009/960/752/326/850/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "uncinate fascicle", + "collapsed_region_name": "uncinate fascicle", + "abbreviation": "uf", + "collapsed_region": "uf", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "uf: rgb(203,201,200)", + "R": "203", + "G": "201", + "B": "200" + }, + "866": { + "order": 768, + "structure_ID": 866, + "lowered_ID": 866.0, + "structure_id_path": "/997/1009/960/752/326/866/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "ventral spinocerebellar tract", + "collapsed_region_name": "ventral spinocerebellar tract", + "abbreviation": "sctv", + "collapsed_region": "sctv", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "sctv: rgb(203,199,204)", + "R": "203", + "G": "199", + "B": "204" + }, + "78": { + "order": 769, + "structure_ID": 78, + "lowered_ID": 78.0, + "structure_id_path": "/997/1009/960/752/78/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "middle cerebellar peduncle", + "collapsed_region_name": "middle cerebellar peduncle", + "abbreviation": "mcp", + "collapsed_region": "mcp", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "mcp: rgb(204,204,202)", + "R": "204", + "G": "204", + "B": "202" + }, + "1123": { + "order": 770, + "structure_ID": 1123, + "lowered_ID": 1123.0, + "structure_id_path": "/997/1009/960/752/1123/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "inferior cerebellar peduncle", + "collapsed_region_name": "inferior cerebellar peduncle", + "abbreviation": "icp", + "collapsed_region": "icp", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "icp: rgb(201,201,200)", + "R": "201", + "G": "201", + "B": "200" + }, + "553": { + "order": 771, + "structure_ID": 553, + "lowered_ID": 553.0, + "structure_id_path": "/997/1009/960/752/1123/553/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "dorsal spinocerebellar tract", + "collapsed_region_name": "dorsal spinocerebellar tract", + "abbreviation": "sctd", + "collapsed_region": "sctd", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "sctd: rgb(201,202,202)", + "R": "201", + "G": "202", + "B": "202" + }, + "728": { + "order": 772, + "structure_ID": 728, + "lowered_ID": 728.0, + "structure_id_path": "/997/1009/960/728/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "arbor vitae", + "collapsed_region_name": "arbor vitae", + "abbreviation": "arb", + "collapsed_region": "arb", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "arb: rgb(203,201,204)", + "R": "203", + "G": "201", + "B": "204" + }, + "484682512": { + "order": 773, + "structure_ID": 484682512, + "lowered_ID": null, + "structure_id_path": "/997/1009/484682512/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "supra-callosal cerebral white matter", + "collapsed_region_name": "supra-callosal cerebral white matter", + "abbreviation": "scwm", + "collapsed_region": "scwm", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "scwm: rgb(201,201,202)", + "R": "201", + "G": "201", + "B": "202" + }, + "983": { + "order": 774, + "structure_ID": 983, + "lowered_ID": 983.0, + "structure_id_path": "/997/1009/983/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "lateral forebrain bundle system", + "collapsed_region_name": "lateral forebrain bundle system", + "abbreviation": "lfbs", + "collapsed_region": "lfbs", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "lfbs: rgb(199,204,202)", + "R": "199", + "G": "204", + "B": "202" + }, + "776": { + "order": 775, + "structure_ID": 776, + "lowered_ID": 776.0, + "structure_id_path": "/997/1009/983/776/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "corpus callosum", + "collapsed_region_name": "corpus callosum", + "abbreviation": "cc", + "collapsed_region": "cc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "cc: rgb(199,201,202)", + "R": "199", + "G": "201", + "B": "202" + }, + "956": { + "order": 776, + "structure_ID": 956, + "lowered_ID": 956.0, + "structure_id_path": "/997/1009/983/776/956/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "corpus callosum, anterior forceps", + "collapsed_region_name": "corpus callosum, anterior forceps", + "abbreviation": "fa", + "collapsed_region": "fa", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "fa: rgb(202,199,204)", + "R": "202", + "G": "199", + "B": "204" + }, + "579": { + "order": 777, + "structure_ID": 579, + "lowered_ID": 579.0, + "structure_id_path": "/997/1009/983/776/956/579/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "external capsule", + "collapsed_region_name": "external capsule", + "abbreviation": "ec", + "collapsed_region": "ec", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ec: rgb(200,203,204)", + "R": "200", + "G": "203", + "B": "204" + }, + "964": { + "order": 778, + "structure_ID": 964, + "lowered_ID": 964.0, + "structure_id_path": "/997/1009/983/776/964/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "corpus callosum, extreme capsule", + "collapsed_region_name": "corpus callosum, extreme capsule", + "abbreviation": "ee", + "collapsed_region": "ee", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ee: rgb(201,200,202)", + "R": "201", + "G": "200", + "B": "202" + }, + "1108": { + "order": 779, + "structure_ID": 1108, + "lowered_ID": 1108.0, + "structure_id_path": "/997/1009/983/776/1108/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "genu of corpus callosum", + "collapsed_region_name": "genu of corpus callosum", + "abbreviation": "ccg", + "collapsed_region": "ccg", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ccg: rgb(204,199,201)", + "R": "204", + "G": "199", + "B": "201" + }, + "971": { + "order": 780, + "structure_ID": 971, + "lowered_ID": 971.0, + "structure_id_path": "/997/1009/983/776/971/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "corpus callosum, posterior forceps", + "collapsed_region_name": "corpus callosum, posterior forceps", + "abbreviation": "fp", + "collapsed_region": "fp", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "fp: rgb(200,201,202)", + "R": "200", + "G": "201", + "B": "202" + }, + "484682516": { + "order": 781, + "structure_ID": 484682516, + "lowered_ID": null, + "structure_id_path": "/997/1009/983/776/484682516/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "corpus callosum, body", + "collapsed_region_name": "corpus callosum, body", + "abbreviation": "ccb", + "collapsed_region": "ccb", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ccb: rgb(201,199,201)", + "R": "201", + "G": "199", + "B": "201" + }, + "986": { + "order": 782, + "structure_ID": 986, + "lowered_ID": 986.0, + "structure_id_path": "/997/1009/983/776/986/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "corpus callosum, splenium", + "collapsed_region_name": "corpus callosum, splenium", + "abbreviation": "ccs", + "collapsed_region": "ccs", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ccs: rgb(199,202,204)", + "R": "199", + "G": "202", + "B": "204" + }, + "784": { + "order": 783, + "structure_ID": 784, + "lowered_ID": 784.0, + "structure_id_path": "/997/1009/983/784/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "corticospinal tract", + "collapsed_region_name": "corticospinal tract", + "abbreviation": "cst", + "collapsed_region": "cst", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "cst: rgb(200,199,204)", + "R": "200", + "G": "199", + "B": "204" + }, + "6": { + "order": 784, + "structure_ID": 6, + "lowered_ID": 6.0, + "structure_id_path": "/997/1009/983/784/6/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "internal capsule", + "collapsed_region_name": "internal capsule", + "abbreviation": "int", + "collapsed_region": "int", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "int: rgb(204,204,204)", + "R": "204", + "G": "204", + "B": "204" + }, + "924": { + "order": 785, + "structure_ID": 924, + "lowered_ID": 924.0, + "structure_id_path": "/997/1009/983/784/924/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "cerebal peduncle", + "collapsed_region_name": "cerebal peduncle", + "abbreviation": "cpd", + "collapsed_region": "cpd", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "cpd: rgb(204,202,199)", + "R": "204", + "G": "202", + "B": "199" + }, + "190": { + "order": 786, + "structure_ID": 190, + "lowered_ID": 190.0, + "structure_id_path": "/997/1009/983/784/190/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "pyramid", + "collapsed_region_name": "pyramid", + "abbreviation": "py", + "collapsed_region": "py", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "py: rgb(199,201,201)", + "R": "199", + "G": "201", + "B": "201" + }, + "198": { + "order": 787, + "structure_ID": 198, + "lowered_ID": 198.0, + "structure_id_path": "/997/1009/983/784/198/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "pyramidal decussation", + "collapsed_region_name": "pyramidal decussation", + "abbreviation": "pyd", + "collapsed_region": "pyd", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "pyd: rgb(201,199,204)", + "R": "201", + "G": "199", + "B": "204" + }, + "896": { + "order": 788, + "structure_ID": 896, + "lowered_ID": 896.0, + "structure_id_path": "/997/1009/983/896/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "thalamus related", + "collapsed_region_name": "thalamus related", + "abbreviation": "lfbst", + "collapsed_region": "lfbst", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "lfbst: rgb(199,203,204)", + "R": "199", + "G": "203", + "B": "204" + }, + "1092": { + "order": 789, + "structure_ID": 1092, + "lowered_ID": 1092.0, + "structure_id_path": "/997/1009/983/896/1092/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "external medullary lamina of the thalamus", + "collapsed_region_name": "external medullary lamina of the thalamus", + "abbreviation": "em", + "collapsed_region": "em", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "em: rgb(199,202,202)", + "R": "199", + "G": "202", + "B": "202" + }, + "484682520": { + "order": 790, + "structure_ID": 484682520, + "lowered_ID": null, + "structure_id_path": "/997/1009/983/896/484682520/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "optic radiation", + "collapsed_region_name": "optic radiation", + "abbreviation": "or", + "collapsed_region": "or", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "or: rgb(203,201,199)", + "R": "203", + "G": "201", + "B": "199" + }, + "484682524": { + "order": 791, + "structure_ID": 484682524, + "lowered_ID": null, + "structure_id_path": "/997/1009/983/896/484682524/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "auditory radiation", + "collapsed_region_name": "auditory radiation", + "abbreviation": "ar", + "collapsed_region": "ar", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "ar: rgb(204,200,202)", + "R": "204", + "G": "200", + "B": "202" + }, + "1000": { + "order": 792, + "structure_ID": 1000, + "lowered_ID": 1000.0, + "structure_id_path": "/997/1009/1000/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "extrapyramidal fiber systems", + "collapsed_region_name": "extrapyramidal fiber systems", + "abbreviation": "eps", + "collapsed_region": "eps", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "eps: rgb(202,203,199)", + "R": "202", + "G": "203", + "B": "199" + }, + "760": { + "order": 793, + "structure_ID": 760, + "lowered_ID": 760.0, + "structure_id_path": "/997/1009/1000/760/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "cerebral nuclei related", + "collapsed_region_name": "cerebral nuclei related", + "abbreviation": "epsc", + "collapsed_region": "epsc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "epsc: rgb(200,202,203)", + "R": "200", + "G": "202", + "B": "203" + }, + "102": { + "order": 794, + "structure_ID": 102, + "lowered_ID": 102.0, + "structure_id_path": "/997/1009/1000/760/102/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "nigrostriatal tract", + "collapsed_region_name": "nigrostriatal tract", + "abbreviation": "nst", + "collapsed_region": "nst", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "nst: rgb(204,202,203)", + "R": "204", + "G": "202", + "B": "203" + }, + "877": { + "order": 795, + "structure_ID": 877, + "lowered_ID": 877.0, + "structure_id_path": "/997/1009/1000/877/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "tectospinal pathway", + "collapsed_region_name": "tectospinal pathway", + "abbreviation": "tsp", + "collapsed_region": "tsp", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "tsp: rgb(200,203,201)", + "R": "200", + "G": "203", + "B": "201" + }, + "1051": { + "order": 796, + "structure_ID": 1051, + "lowered_ID": 1051.0, + "structure_id_path": "/997/1009/1000/877/1051/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "direct tectospinal pathway", + "collapsed_region_name": "direct tectospinal pathway", + "abbreviation": "tspd", + "collapsed_region": "tspd", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "tspd: rgb(203,200,200)", + "R": "203", + "G": "200", + "B": "200" + }, + "1060": { + "order": 797, + "structure_ID": 1060, + "lowered_ID": 1060.0, + "structure_id_path": "/997/1009/1000/877/1060/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "doral tegmental decussation", + "collapsed_region_name": "doral tegmental decussation", + "abbreviation": "dtd", + "collapsed_region": "dtd", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "dtd: rgb(202,202,199)", + "R": "202", + "G": "202", + "B": "199" + }, + "1043": { + "order": 798, + "structure_ID": 1043, + "lowered_ID": 1043.0, + "structure_id_path": "/997/1009/1000/877/1043/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "crossed tectospinal pathway", + "collapsed_region_name": "crossed tectospinal pathway", + "abbreviation": "tspc", + "collapsed_region": "tspc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "tspc: rgb(200,200,204)", + "R": "200", + "G": "200", + "B": "204" + }, + "863": { + "order": 799, + "structure_ID": 863, + "lowered_ID": 863.0, + "structure_id_path": "/997/1009/1000/863/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "rubrospinal tract", + "collapsed_region_name": "rubrospinal tract", + "abbreviation": "rust", + "collapsed_region": "rust", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "rust: rgb(200,200,203)", + "R": "200", + "G": "200", + "B": "203" + }, + "397": { + "order": 800, + "structure_ID": 397, + "lowered_ID": 397.0, + "structure_id_path": "/997/1009/1000/863/397/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "ventral tegmental decussation", + "collapsed_region_name": "ventral tegmental decussation", + "abbreviation": "vtd", + "collapsed_region": "vtd", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "vtd: rgb(202,203,201)", + "R": "202", + "G": "203", + "B": "201" + }, + "991": { + "order": 801, + "structure_ID": 991, + "lowered_ID": 991.0, + "structure_id_path": "/997/1009/991/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "medial forebrain bundle system", + "collapsed_region_name": "medial forebrain bundle system", + "abbreviation": "mfbs", + "collapsed_region": "mfbs", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "mfbs: rgb(203,202,199)", + "R": "203", + "G": "202", + "B": "199" + }, + "768": { + "order": 802, + "structure_ID": 768, + "lowered_ID": 768.0, + "structure_id_path": "/997/1009/991/768/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "cerebrum related", + "collapsed_region_name": "cerebrum related", + "abbreviation": "mfbc", + "collapsed_region": "mfbc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "mfbc: rgb(201,203,199)", + "R": "201", + "G": "203", + "B": "199" + }, + "884": { + "order": 803, + "structure_ID": 884, + "lowered_ID": 884.0, + "structure_id_path": "/997/1009/991/768/884/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "amygdalar capsule", + "collapsed_region_name": "amygdalar capsule", + "abbreviation": "amc", + "collapsed_region": "amc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "amc: rgb(200,201,203)", + "R": "200", + "G": "201", + "B": "203" + }, + "908": { + "order": 804, + "structure_ID": 908, + "lowered_ID": 908.0, + "structure_id_path": "/997/1009/991/768/908/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "anterior commissure, temporal limb", + "collapsed_region_name": "anterior commissure, temporal limb", + "abbreviation": "act", + "collapsed_region": "act", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "act: rgb(201,201,201)", + "R": "201", + "G": "201", + "B": "201" + }, + "940": { + "order": 805, + "structure_ID": 940, + "lowered_ID": 940.0, + "structure_id_path": "/997/1009/991/768/940/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "cingulum bundle", + "collapsed_region_name": "cingulum bundle", + "abbreviation": "cing", + "collapsed_region": "cing", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "cing: rgb(202,204,199)", + "R": "202", + "G": "204", + "B": "199" + }, + "1099": { + "order": 806, + "structure_ID": 1099, + "lowered_ID": 1099.0, + "structure_id_path": "/997/1009/991/768/1099/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "fornix system", + "collapsed_region_name": "fornix system", + "abbreviation": "fxs", + "collapsed_region": "fxs", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "fxs: rgb(204,201,199)", + "R": "204", + "G": "201", + "B": "199" + }, + "466": { + "order": 807, + "structure_ID": 466, + "lowered_ID": 466.0, + "structure_id_path": "/997/1009/991/768/1099/466/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "alveus", + "collapsed_region_name": "alveus", + "abbreviation": "alv", + "collapsed_region": "alv", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "alv: rgb(199,200,204)", + "R": "199", + "G": "200", + "B": "204" + }, + "530": { + "order": 808, + "structure_ID": 530, + "lowered_ID": 530.0, + "structure_id_path": "/997/1009/991/768/1099/530/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "dorsal fornix", + "collapsed_region_name": "dorsal fornix", + "abbreviation": "df", + "collapsed_region": "df", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "df: rgb(203,200,204)", + "R": "203", + "G": "200", + "B": "204" + }, + "603": { + "order": 809, + "structure_ID": 603, + "lowered_ID": 603.0, + "structure_id_path": "/997/1009/991/768/1099/603/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "fimbria", + "collapsed_region_name": "fimbria", + "abbreviation": "fi", + "collapsed_region": "fi", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "fi: rgb(203,200,203)", + "R": "203", + "G": "200", + "B": "203" + }, + "737": { + "order": 810, + "structure_ID": 737, + "lowered_ID": 737.0, + "structure_id_path": "/997/1009/991/768/1099/737/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "postcommissural fornix", + "collapsed_region_name": "postcommissural fornix", + "abbreviation": "fxpo", + "collapsed_region": "fxpo", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "fxpo: rgb(200,200,201)", + "R": "200", + "G": "200", + "B": "201" + }, + "428": { + "order": 811, + "structure_ID": 428, + "lowered_ID": 428.0, + "structure_id_path": "/997/1009/991/768/1099/737/428/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "medial corticohypothalamic tract", + "collapsed_region_name": "medial corticohypothalamic tract", + "abbreviation": "mct", + "collapsed_region": "mct", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "mct: rgb(204,200,204)", + "R": "204", + "G": "200", + "B": "204" + }, + "436": { + "order": 812, + "structure_ID": 436, + "lowered_ID": 436.0, + "structure_id_path": "/997/1009/991/768/1099/737/436/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "columns of the fornix", + "collapsed_region_name": "columns of the fornix", + "abbreviation": "fx", + "collapsed_region": "fx", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "fx: rgb(199,200,202)", + "R": "199", + "G": "200", + "B": "202" + }, + "618": { + "order": 813, + "structure_ID": 618, + "lowered_ID": 618.0, + "structure_id_path": "/997/1009/991/768/1099/618/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "hippocampal commissures", + "collapsed_region_name": "hippocampal commissures", + "abbreviation": "hc", + "collapsed_region": "hc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "hc: rgb(201,201,204)", + "R": "201", + "G": "201", + "B": "204" + }, + "443": { + "order": 814, + "structure_ID": 443, + "lowered_ID": 443.0, + "structure_id_path": "/997/1009/991/768/1099/618/443/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "dorsal hippocampal commissure", + "collapsed_region_name": "dorsal hippocampal commissure", + "abbreviation": "dhc", + "collapsed_region": "dhc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "dhc: rgb(201,204,201)", + "R": "201", + "G": "204", + "B": "201" + }, + "449": { + "order": 815, + "structure_ID": 449, + "lowered_ID": 449.0, + "structure_id_path": "/997/1009/991/768/1099/618/449/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "ventral hippocampal commissure", + "collapsed_region_name": "ventral hippocampal commissure", + "abbreviation": "vhc", + "collapsed_region": "vhc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "vhc: rgb(200,201,201)", + "R": "200", + "G": "201", + "B": "201" + }, + "301": { + "order": 816, + "structure_ID": 301, + "lowered_ID": 301.0, + "structure_id_path": "/997/1009/991/768/301/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "stria terminalis", + "collapsed_region_name": "stria terminalis", + "abbreviation": "st", + "collapsed_region": "st", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "st: rgb(200,203,199)", + "R": "200", + "G": "203", + "B": "199" + }, + "484682528": { + "order": 817, + "structure_ID": 484682528, + "lowered_ID": null, + "structure_id_path": "/997/1009/991/768/301/484682528/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "commissural branch of stria terminalis", + "collapsed_region_name": "commissural branch of stria terminalis", + "abbreviation": "stc", + "collapsed_region": "stc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "stc: rgb(199,202,200)", + "R": "199", + "G": "202", + "B": "200" + }, + "824": { + "order": 818, + "structure_ID": 824, + "lowered_ID": 824.0, + "structure_id_path": "/997/1009/991/824/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "hypothalamus related", + "collapsed_region_name": "hypothalamus related", + "abbreviation": "mfsbshy", + "collapsed_region": "mfsbshy", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "mfsbshy: rgb(200,204,201)", + "R": "200", + "G": "204", + "B": "201" + }, + "54": { + "order": 819, + "structure_ID": 54, + "lowered_ID": 54.0, + "structure_id_path": "/997/1009/991/824/54/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "medial forebrain bundle", + "collapsed_region_name": "medial forebrain bundle", + "abbreviation": "mfb", + "collapsed_region": "mfb", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "mfb: rgb(203,204,203)", + "R": "203", + "G": "204", + "B": "203" + }, + "349": { + "order": 820, + "structure_ID": 349, + "lowered_ID": 349.0, + "structure_id_path": "/997/1009/991/824/349/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "supraoptic commissures", + "collapsed_region_name": "supraoptic commissures", + "abbreviation": "sup", + "collapsed_region": "sup", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "sup: rgb(204,202,201)", + "R": "204", + "G": "202", + "B": "201" + }, + "46": { + "order": 821, + "structure_ID": 46, + "lowered_ID": 46.0, + "structure_id_path": "/997/1009/991/824/46/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "mammillary related", + "collapsed_region_name": "mammillary related", + "abbreviation": "mfbsma", + "collapsed_region": "mfbsma", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "mfbsma: rgb(204,203,203)", + "R": "204", + "G": "203", + "B": "203" + }, + "753": { + "order": 822, + "structure_ID": 753, + "lowered_ID": 753.0, + "structure_id_path": "/997/1009/991/824/46/753/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "principal mammillary tract", + "collapsed_region_name": "principal mammillary tract", + "abbreviation": "pm", + "collapsed_region": "pm", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "pm: rgb(200,203,202)", + "R": "200", + "G": "203", + "B": "202" + }, + "690": { + "order": 823, + "structure_ID": 690, + "lowered_ID": 690.0, + "structure_id_path": "/997/1009/991/824/46/690/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "mammillothalamic tract", + "collapsed_region_name": "mammillothalamic tract", + "abbreviation": "mtt", + "collapsed_region": "mtt", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "mtt: rgb(199,201,204)", + "R": "199", + "G": "201", + "B": "204" + }, + "681": { + "order": 824, + "structure_ID": 681, + "lowered_ID": 681.0, + "structure_id_path": "/997/1009/991/824/46/681/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "mammillotegmental tract", + "collapsed_region_name": "mammillotegmental tract", + "abbreviation": "mtg", + "collapsed_region": "mtg", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "mtg: rgb(200,200,200)", + "R": "200", + "G": "200", + "B": "200" + }, + "673": { + "order": 825, + "structure_ID": 673, + "lowered_ID": 673.0, + "structure_id_path": "/997/1009/991/824/46/673/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "mammillary peduncle", + "collapsed_region_name": "mammillary peduncle", + "abbreviation": "mp", + "collapsed_region": "mp", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "mp: rgb(204,202,200)", + "R": "204", + "G": "202", + "B": "200" + }, + "1083": { + "order": 826, + "structure_ID": 1083, + "lowered_ID": 1083.0, + "structure_id_path": "/997/1009/991/824/1083/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "epithalamus related", + "collapsed_region_name": "epithalamus related", + "abbreviation": "mfbse", + "collapsed_region": "mfbse", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "mfbse: rgb(200,199,203)", + "R": "200", + "G": "199", + "B": "203" + }, + "802": { + "order": 827, + "structure_ID": 802, + "lowered_ID": 802.0, + "structure_id_path": "/997/1009/991/824/1083/802/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "stria medullaris", + "collapsed_region_name": "stria medullaris", + "abbreviation": "sm", + "collapsed_region": "sm", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "sm: rgb(204,201,200)", + "R": "204", + "G": "201", + "B": "200" + }, + "595": { + "order": 828, + "structure_ID": 595, + "lowered_ID": 595.0, + "structure_id_path": "/997/1009/991/824/1083/595/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "fasciculus retroflexus", + "collapsed_region_name": "fasciculus retroflexus", + "abbreviation": "fr", + "collapsed_region": "fr", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "fr: rgb(199,202,201)", + "R": "199", + "G": "202", + "B": "201" + }, + "611": { + "order": 829, + "structure_ID": 611, + "lowered_ID": 611.0, + "structure_id_path": "/997/1009/991/824/1083/611/", + "very_general_region": "fiber tracts", + "general_region": "fiber tracts", + "full_structure_name": "habenular commissure", + "collapsed_region_name": "habenular commissure", + "abbreviation": "hbc", + "collapsed_region": "hbc", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "hbc: rgb(200,204,199)", + "R": "200", + "G": "204", + "B": "199" + }, + "73": { + "order": 830, + "structure_ID": 73, + "lowered_ID": 73.0, + "structure_id_path": "/997/73/", + "very_general_region": "ventricular systems", + "general_region": "ventricular systems", + "full_structure_name": "ventricular systems", + "collapsed_region_name": "ventricular systems", + "abbreviation": "VS", + "collapsed_region": "VS", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VS: rgb(170,168,170)", + "R": "170", + "G": "168", + "B": "170" + }, + "81": { + "order": 831, + "structure_ID": 81, + "lowered_ID": 81.0, + "structure_id_path": "/997/73/81/", + "very_general_region": "ventricular systems", + "general_region": "ventricular systems", + "full_structure_name": "lateral ventricle", + "collapsed_region_name": "lateral ventricle", + "abbreviation": "VL", + "collapsed_region": "VL", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "VL: rgb(168,170,170)", + "R": "168", + "G": "170", + "B": "170" + }, + "98": { + "order": 832, + "structure_ID": 98, + "lowered_ID": 98.0, + "structure_id_path": "/997/73/81/98/", + "very_general_region": "ventricular systems", + "general_region": "ventricular systems", + "full_structure_name": "subependymal zone", + "collapsed_region_name": "subependymal zone", + "abbreviation": "SEZ", + "collapsed_region": "SEZ", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "SEZ: rgb(170,168,169)", + "R": "170", + "G": "168", + "B": "169" + }, + "108": { + "order": 833, + "structure_ID": 108, + "lowered_ID": 108.0, + "structure_id_path": "/997/73/81/108/", + "very_general_region": "ventricular systems", + "general_region": "ventricular systems", + "full_structure_name": "choroid plexus", + "collapsed_region_name": "choroid plexus", + "abbreviation": "chpl", + "collapsed_region": "chpl", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "chpl: rgb(169,170,168)", + "R": "169", + "G": "170", + "B": "168" + }, + "129": { + "order": 834, + "structure_ID": 129, + "lowered_ID": 129.0, + "structure_id_path": "/997/73/129/", + "very_general_region": "ventricular systems", + "general_region": "ventricular systems", + "full_structure_name": "third ventricle", + "collapsed_region_name": "third ventricle", + "abbreviation": "V3", + "collapsed_region": "V3", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "V3: rgb(168,169,170)", + "R": "168", + "G": "169", + "B": "170" + }, + "140": { + "order": 835, + "structure_ID": 140, + "lowered_ID": 140.0, + "structure_id_path": "/997/73/140/", + "very_general_region": "ventricular systems", + "general_region": "ventricular systems", + "full_structure_name": "cerebral aqueduct", + "collapsed_region_name": "cerebral aqueduct", + "abbreviation": "AQ", + "collapsed_region": "AQ", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "AQ: rgb(169,169,168)", + "R": "169", + "G": "169", + "B": "168" + }, + "145": { + "order": 836, + "structure_ID": 145, + "lowered_ID": 145.0, + "structure_id_path": "/997/73/145/", + "very_general_region": "ventricular systems", + "general_region": "ventricular systems", + "full_structure_name": "fourth ventricle", + "collapsed_region_name": "fourth ventricle", + "abbreviation": "V4", + "collapsed_region": "V4", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "V4: rgb(170,169,167)", + "R": "170", + "G": "169", + "B": "167" + }, + "153": { + "order": 837, + "structure_ID": 153, + "lowered_ID": 153.0, + "structure_id_path": "/997/73/145/153/", + "very_general_region": "ventricular systems", + "general_region": "ventricular systems", + "full_structure_name": "lateral recess", + "collapsed_region_name": "lateral recess", + "abbreviation": "V4r", + "collapsed_region": "V4r", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "V4r: rgb(169,170,167)", + "R": "169", + "G": "170", + "B": "167" + }, + "164": { + "order": 838, + "structure_ID": 164, + "lowered_ID": 164.0, + "structure_id_path": "/997/73/164/", + "very_general_region": "ventricular systems", + "general_region": "ventricular systems", + "full_structure_name": "central canal, spinal cord/medulla", + "collapsed_region_name": "central canal, spinal cord/medulla", + "abbreviation": "c", + "collapsed_region": "c", + "other_abbreviation": null, + "other_abbreviation_defined": null, + "layer": null, + "sunburst": "c: rgb(167,170,169)", + "R": "167", + "G": "170", + "B": "169" + } +} \ No newline at end of file diff --git a/client/src/components/ColorPicker.js b/client/src/components/ColorPicker.js new file mode 100644 index 0000000..70380d8 --- /dev/null +++ b/client/src/components/ColorPicker.js @@ -0,0 +1,53 @@ +import React from 'react'; +import Box from '@mui/material/Box'; +import ChromePicker from 'react-color'; +import vars from "../theme/variables"; + +const {headingColor, headerBorderLeftColor} = vars + +const ColorPicker = ({ selectedColor, onChange }) => { + return ( + div': { + width: '100% !important', + boxShadow: 'none !important', + background: 'transparent !important', + fontFamily: "'IBM Plex Sans',sans-serif !important", + + '& > div:last-of-type': { + '& > div:first-of-type': { + '& > div:first-of-type': { + '& > div': { + border: `0.0625rem solid ${headerBorderLeftColor}`, + }, + }, + }, + }, + + '& svg': { + fill: `${headingColor} !important`, + '&:hover': { + background: `${headerBorderLeftColor} !important`, + }, + }, + + '& input': { + backgroundColor: `${headerBorderLeftColor} !important`, + boxShadow: 'none !important', + color: `${headingColor} !important`, + '&:focus': { + boxShadow: 'none !important', + outline: 'none !important', + }, + }, + }, + }}> + + + ); +}; + +export default ColorPicker; diff --git a/client/src/components/ControlPanel.js b/client/src/components/ControlPanel.js index 07df60d..64fb0a7 100644 --- a/client/src/components/ControlPanel.js +++ b/client/src/components/ControlPanel.js @@ -1,162 +1,214 @@ -import { Box, Typography } from "@mui/material"; -import React from "react"; +import {Box, Typography} from "@mui/material"; +import React, {useEffect, useState} from "react"; import ExpandMoreIcon from '@mui/icons-material/ExpandMore'; import vars from "../theme/variables"; -import CustomSlider from "./Slider"; import Table from "./Table"; -import {useDispatch, useSelector} from "react-redux"; +import {useSelector, useDispatch} from "react-redux"; import {messages} from "../redux/constants"; -import {getOriginalHexColor, getOriginalOpacity} from "../helpers/gradientHelper"; -import {changeAllViewerObjectsOpacity, changeViewerObjectOpacity} from "../redux/actions"; +import CustomSlider from "./Slider"; +import {changeAllActivityMapsIntensityRange, changeViewerOrder} from "../redux/actions"; + -const { headerBorderLeftColor, headingColor, accordianTextColor } = vars; +const {headerBorderLeftColor, headingColor, accordianTextColor} = vars; const styles = { - controlPanel: { - borderRadius: '0.5rem 0.5rem 0 0', - border: '0.0625rem solid rgba(48, 47, 49, 0.60)', - background: 'linear-gradient(0deg, rgba(30, 30, 31, 0.60) 0%, rgba(30, 30, 31, 0.60) 100%), #0F0F10' - }, - controlPanelHeader: { - height: '2.75rem', - pl: 1.5, - pr: 3, - display: 'flex', - userSelect: 'none', - alignItems: 'center', - borderBottom: '0.0625rem solid transparent' - }, - - controlPanelBody: { - px: 1.5, - overflow: 'auto', - transition: 'all 0.3s ease-in-out', - }, - - controlPanelHeaderHeading: { - color: headingColor, - fontSize: '0.875rem', - fontWeight: 400, - lineHeight: '142.857%', - }, - - controlPanelHeaderSubHeading: { - color: accordianTextColor, - marginLeft: 1, - fontSize: '0.75rem', - fontWeight: 400, - lineHeight: '150%', - }, - - transition: { - transition: 'all ease-in-out .3s' - }, - - pointer: { - cursor: 'pointer' - }, + controlPanel: { + borderRadius: '0.5rem 0.5rem 0 0', + border: '0.0625rem solid rgba(48, 47, 49, 0.60)', + background: 'linear-gradient(0deg, rgba(30, 30, 31, 0.60) 0%, rgba(30, 30, 31, 0.60) 100%), #0F0F10' + }, + controlPanelHeader: { + height: '2.75rem', + pl: 1.5, + pr: 3, + display: 'flex', + userSelect: 'none', + alignItems: 'center', + borderBottom: '0.0625rem solid transparent' + }, + + controlPanelBody: { + px: 1.5, + overflow: 'auto', + transition: 'all 0.3s ease-in-out', + }, + + controlPanelHeaderHeading: { + color: headingColor, + fontSize: '0.875rem', + fontWeight: 400, + lineHeight: '142.857%', + }, + + controlPanelHeaderSubHeading: { + color: accordianTextColor, + marginLeft: 1, + fontSize: '0.75rem', + fontWeight: 400, + lineHeight: '150%', + }, + + transition: { + transition: 'all ease-in-out .3s' + }, + + pointer: { + cursor: 'pointer' + }, }; - - -const ControlPanel = () => -{ - const dispatch = useDispatch(); - - const [ open, setOpen ] = React.useState( true ); - const [ opacity, setOpacity ] = React.useState( 0 ); - const activeAtlas = useSelector(state => state.viewer.atlas); - const activeActivityMaps = useSelector(state => state.viewer.activityMaps); - - const atlasesMetadata = useSelector(state => state.model.Atlases); - const activityMapsMetadata = useSelector(state => state.model.ActivityMaps); - - const getViewerObjectsData = () => { - const viewerObjects = [] - - if (activeAtlas) { - for (const activityMapId of Object.keys(activeActivityMaps)) { - const activityMapMetadata = activityMapsMetadata[activityMapId]; - const activityMap = activeActivityMaps[activityMapId]; - - viewerObjects.push({ - id: activityMapId, - name: activityMapMetadata.name, - description: activityMapMetadata.description || messages.NO_DESCRIPTION, - color: getOriginalHexColor(activityMap.colorGradient), - opacity: getOriginalOpacity(activityMap.opacityGradient), - isVisible: activityMap.visibility - }); - } - - // Atlas should be the last entry in the array - const atlasId = activeAtlas.id; - const atlasMetadata = atlasesMetadata[atlasId]; - - viewerObjects.push({ - id: atlasId, - name: atlasMetadata.name, - description: atlasMetadata.description || messages.NO_DESCRIPTION, - color: null, - opacity: activeAtlas.opacity, - isVisible: activeAtlas.visibility - }); - } - return viewerObjects - } - - const onOpacityChange = (newValue) => { - setOpacity(newValue) - dispatch(changeAllViewerObjectsOpacity(newValue)); - } - - const viewerObjects = getViewerObjectsData() - - return ( - <> - - - setOpen( !open )} - sx={styles.pointer} - > - - - Control panel - - 3 active statistical maps - - - - - onOpacityChange(newValue)} /> - - - - - - - - ); +const move = (arr, fromIndex, toIndex) => { + var element = arr[fromIndex] + arr.splice(fromIndex, 1) + arr.splice(toIndex, 0, element) + return arr +} + +const ControlPanel = () => { + const dispatch = useDispatch(); + + const [open, setOpen] = useState(true); + const activeAtlas = useSelector(state => state.viewer.atlas); + const activeActivityMaps = useSelector(state => state.viewer.activityMaps); + const activityMapOrder = useSelector(state => state.viewer.order); + const intensityRange = useSelector(state => state.viewer.activityMapsIntensityRange); + + const atlasesMetadata = useSelector(state => state.model.Atlases); + const activityMapsMetadata = useSelector(state => state.model.ActivityMaps); + + const [globalIntensityRange, setGlobalIntensityRange] = useState([0, 100]); + const getViewerObjectsData = () => { + const viewerObjects = [] + + if (activeAtlas) { + for (const activityMapId of Object.keys(activeActivityMaps)) { + const activityMapMetadata = activityMapsMetadata[activityMapId]; + const activityMap = activeActivityMaps[activityMapId]; + + viewerObjects.push({ + id: activityMapId, + name: activityMapMetadata.name, + description: activityMapMetadata.description || '', + colorRange: activityMap.colorRange, + intensityRange: [...activityMap.intensityRange], + isRangeInclusive: activityMap.isRangeInclusive, + stackIntensityRange: [...activityMap.stack.minMax], + isVisible: activityMap.visibility, + isAtlas: false + + }); + } + + // Add the atlas + const atlasId = activeAtlas.id; + const atlasMetadata = atlasesMetadata[atlasId]; + + viewerObjects.push({ + id: atlasId, + name: atlasMetadata.name, + description: atlasMetadata.description || '', + colorRange: null, + intensityRange: [...activeAtlas.stack.minMax], + stackIntensityRange: [...activeAtlas.stack.minMax], + isVisible: activeAtlas.visibility, + isAtlas: true + }); + + // Rorder depending on the "order" from the store + viewerObjects.sort((a, b) => activityMapOrder.indexOf(b.id) - activityMapOrder.indexOf(a.id)) + } + return viewerObjects + } + + const computeGlobalIntensityRange = () => { + let globalMin = Infinity; + let globalMax = -Infinity; + + Object.values(activeActivityMaps).forEach(map => { + if (map.stack.minMax[0] < globalMin) globalMin = map.stack.minMax[0]; + if (map.stack.minMax[1] > globalMax) globalMax = map.stack.minMax[1]; + }); + + if (globalMin !== Infinity && globalMax !== -Infinity) { + setGlobalIntensityRange([globalMin, globalMax]); + } else { + setGlobalIntensityRange([0, 100]); + } + }; + + useEffect(() => { + computeGlobalIntensityRange(); + }, [activeActivityMaps]); + + const onIntensityChange = (newValue) => { + dispatch(changeAllActivityMapsIntensityRange(newValue)); + } + + const viewerObjects = getViewerObjectsData() + + const onReorder = (source, target) => { + if (source.index === target.index) { + return + } + const reverseOrder = [...activityMapOrder].reverse() + move(reverseOrder, source.index, target.index) + dispatch(changeViewerOrder(reverseOrder.reverse())) + } + + return ( + <> + + + setOpen(!open)} + sx={styles.pointer} + > + + + Control panel + + {Object.keys(activeActivityMaps).length} active statistical maps + + + + + {Object.values(activeActivityMaps).length > 0 && + onIntensityChange(newValue)}/> + } + + + +
+ + + + ); }; -export default ControlPanel; \ No newline at end of file +export default ControlPanel; diff --git a/client/src/components/CustomTabs.js b/client/src/components/CustomTabs.js new file mode 100644 index 0000000..49eacdd --- /dev/null +++ b/client/src/components/CustomTabs.js @@ -0,0 +1,22 @@ +import React from 'react'; +import Tabs from '@mui/material/Tabs'; +import Tab from '@mui/material/Tab'; + +function a11yProps(index) { + return { + id: `simple-tab-${index}`, + 'aria-controls': `simple-tabpanel-${index}`, + }; +} + +const CustomTabs = ({ value, onChange, labels, sx }) => { + return ( + + {labels.map((label, index) => ( + + ))} + + ); +}; + +export default CustomTabs; diff --git a/client/src/components/CustomTextField.js b/client/src/components/CustomTextField.js new file mode 100644 index 0000000..0ea5418 --- /dev/null +++ b/client/src/components/CustomTextField.js @@ -0,0 +1,83 @@ +import React, {useState} from 'react'; +import TextField from '@mui/material/TextField'; +import InputAdornment from '@mui/material/InputAdornment'; +import variables from "../theme/variables"; + +const {gray200, gray700, gray400, gray600} = variables + +const CustomTextField = ({value, onChange, onConfirm, disabled, typeOfValue, showPercentageAbsolute}) => { + + const handleChange = (event) => { + onChange(event.target.value); + }; + const handleKeyUp = (event) => { + if (event.key === 'Enter') { + onConfirm(value); + event.preventDefault(); + } + }; + + return ( + onConfirm(value)} + InputProps={{ + endAdornment: typeOfValue === 'percentage' && showPercentageAbsolute && ( + % + ), + }} + sx={{ + '& .MuiInputBase-root': { + backgroundColor: gray700, + padding: '0.5rem 0.75rem', + borderRadius: '0.5rem', + '& .MuiTypography-root': { + color: gray200, + fontSize: '0.875rem' + }, + '&.Mui-disabled': { + backgroundColor: 'transparent', + '& .MuiTypography-root': { + color: gray400, + }, + '& .MuiInputBase-input': { + '-webkit-text-fill-color': gray400, + }, + '& fieldset': { + borderColor: 'transparent' + }, + '&:hover, &.Mui-focused': { + '& fieldset': { + borderColor: 'transparent', + } + }, + }, + '& .MuiInputAdornment-root': { + margin: 0 + }, + '& .MuiOutlinedInput-root': { + padding: '0' + }, + '& .MuiInputBase-input': { + padding: '0', + color: gray200, + fontSize: '0.875rem', + }, + '& fieldset': { + borderColor: gray700 + }, + '&:hover, &.Mui-focused': { + '& fieldset': { + border: `1px solid ${gray600}`, + } + }, + } + }} + disabled={disabled} + /> + ); +}; + +export default CustomTextField; diff --git a/client/src/components/CustomToggleButton.js b/client/src/components/CustomToggleButton.js new file mode 100644 index 0000000..a5f318c --- /dev/null +++ b/client/src/components/CustomToggleButton.js @@ -0,0 +1,65 @@ +import * as React from 'react'; +import Paper from '@mui/material/Paper'; +import ToggleButton from '@mui/material/ToggleButton'; +import ToggleButtonGroup from '@mui/material/ToggleButtonGroup'; +import { AbsoluteIcon, PercentageIcon } from "../icons"; +import variables from "../theme/variables"; +const { gray600, gray700, primaryActiveColor} = variables + +export const CustomToggleButton = ({ typeOfValue, setTypeOfValue }) => { + const handleChange = (event, value) => { + if (value) { + setTypeOfValue(value); + } + }; + + return ( +
+ + + + + + + + + + +
+ ); +} diff --git a/client/src/components/CustomTooltip.js b/client/src/components/CustomTooltip.js new file mode 100644 index 0000000..6053d00 --- /dev/null +++ b/client/src/components/CustomTooltip.js @@ -0,0 +1,27 @@ +import {Box, Tooltip, Typography} from "@mui/material"; +import variables from "../theme/variables"; +const {gray200} = variables + +export const CustomTooltip = ({open, text, anchorPosition}) => { + return ( + + + {text} + + + } + > + + + ); +}; + diff --git a/client/src/components/LocationPanel.js b/client/src/components/LocationPanel.js new file mode 100644 index 0000000..1b446b3 --- /dev/null +++ b/client/src/components/LocationPanel.js @@ -0,0 +1,19 @@ +import React from 'react'; +import {useSelector} from "react-redux"; +import {getName} from "../helpers/lutHelper"; +import MapDetails from "./MapDetails"; + +const LocationPanel = ({open, activityMapsIntensity, dataCoordinates, atlasIntensity}) => { + const lut = useSelector(state => state.model.Lut); + const brainRegion = getName(lut, atlasIntensity) + return open && ( + + ); +}; + +export default LocationPanel; diff --git a/client/src/components/MapDetails.js b/client/src/components/MapDetails.js new file mode 100644 index 0000000..20aba29 --- /dev/null +++ b/client/src/components/MapDetails.js @@ -0,0 +1,61 @@ +import React from 'react'; +import { Stack, Typography, useMediaQuery, useTheme } from '@mui/material'; +import variables from "../theme/variables"; +const {gray25, gray300} = variables + +const MapSection = ({ mapText }) => ( + + Map + {mapText} + +); + +const IntensityValueSection = ({ intensityValue }) => ( + + Map’s intensity value + {intensityValue} + +); + +const MapDetails = ({ brainRegion, coordinates, maps, intensityValues }) => { + const theme = useTheme(); + const isLargeScreen = useMediaQuery(theme.breakpoints.down('lg')); + const isSmallScreen = useMediaQuery(theme.breakpoints.down('sm')); + + return ( + + + Brain region + {brainRegion} + + + Voxels (x,y,z) + {`${coordinates?.x}, ${coordinates?.y}, ${coordinates?.z}`} + + + {maps.map((mapText, index) => ( + + ))} + + + {intensityValues.map((intensityValue, index) => ( + + ))} + + ) +}; + +export default MapDetails; diff --git a/client/src/components/MetaDataViewerComponents/CustomAlert.js b/client/src/components/MetaDataViewerComponents/CustomAlert.js new file mode 100644 index 0000000..a36dae6 --- /dev/null +++ b/client/src/components/MetaDataViewerComponents/CustomAlert.js @@ -0,0 +1,55 @@ +import React from 'react'; +import {Alert, Button, Collapse, IconButton, Stack, Typography} from "@mui/material"; +import CloseIcon from '@mui/icons-material/Close'; +import variables from "../../theme/variables"; + +const {gray100, gray300, gray700, gray800, gray400} = variables +export const CustomAlert = ({viewOtherExperiences, open, setOpen}) => +{ + return ( + + { + setOpen(false); + }} + > + + + } + icon={false} + sx={{ + borderRadius: '0.75rem', + border: `1px solid ${gray700}`, + background: gray800, + padding: '1rem', + + '&.MuiPaper-root': { + backgroundColor: 'transparent', + } + }} + > + + The selected atlas is associated with this experiment. + + + + + ) +}; diff --git a/client/src/components/MetaDataViewerComponents/CustomChip.js b/client/src/components/MetaDataViewerComponents/CustomChip.js new file mode 100644 index 0000000..0f26038 --- /dev/null +++ b/client/src/components/MetaDataViewerComponents/CustomChip.js @@ -0,0 +1,11 @@ +import {Chip} from "@mui/material"; + +export const CustomChip = ({text}) => diff --git a/client/src/components/MetaDataViewerComponents/CustomTabPanel.js b/client/src/components/MetaDataViewerComponents/CustomTabPanel.js new file mode 100644 index 0000000..8d8c988 --- /dev/null +++ b/client/src/components/MetaDataViewerComponents/CustomTabPanel.js @@ -0,0 +1,31 @@ +import {Box} from "@mui/material"; +import PropTypes from "prop-types"; +import React from "react"; + +const CustomTabPanel = (props) => { + const { children, value, index, ...other } = props; + + return ( + + ); +} + +CustomTabPanel.propTypes = { + children: PropTypes.node, + index: PropTypes.number.isRequired, + value: PropTypes.number.isRequired, +}; + +export default CustomTabPanel \ No newline at end of file diff --git a/client/src/components/MetaDataViewerComponents/CustomTreeItem.js b/client/src/components/MetaDataViewerComponents/CustomTreeItem.js new file mode 100644 index 0000000..114a5a4 --- /dev/null +++ b/client/src/components/MetaDataViewerComponents/CustomTreeItem.js @@ -0,0 +1,160 @@ +import React, {useState} from "react"; +import {TreeItem} from "@mui/x-tree-view"; +import {Box, Divider, FormControlLabel, IconButton, Switch, Typography} from "@mui/material"; +import { + fetchAndAddActivityMapToViewer, + fetchAndSetExperimentAndAtlas, + removeActivityMapFromViewer +} from "../../redux/actions"; +import {InfoIcon} from "../../icons"; +import variables from "../../theme/variables"; +import {useDispatch, useSelector} from "react-redux"; +import KeyboardArrowRightIcon from "@mui/icons-material/KeyboardArrowRight"; +import KeyboardArrowUpIcon from "@mui/icons-material/KeyboardArrowUp"; +import ArrowForwardIcon from "@mui/icons-material/ArrowForward"; + +const { headerBorderColor, primaryActiveColor, gray50, gray200, gray100 } = variables + +const CustomTreeItem = React.forwardRef(function MyTreeItem(props, ref) { + const [expanded, setExpanded] = useState(false); + const[hovered, setHovered] = useState(false); + const activeActivityMaps = useSelector(state => state.viewer.activityMaps); + const { showRightSideContent } = props + const dispatch = useDispatch(); + const activeAtlas = useSelector(state => state.viewer.atlas); + const activityMapsMetadata = useSelector(state => state.model.ActivityMaps); + const handleMouseEnter = () => { + setHovered(true); + }; + + const handleMouseLeave = () => { + setHovered(false); + }; + const handleExpand = () => { + setExpanded(!expanded); + }; + + const handleClickExperiment = (e, experiment) => { + e.stopPropagation(); + e.preventDefault(); + dispatch(fetchAndSetExperimentAndAtlas(experiment.itemId, activeAtlas.id)) + } + + return ( + , + expandIcon: () => , + }} + sx={{ + marginTop: '.25rem', + '& .MuiTreeItem-content': { + '&:hover': { + backgroundColor: 'transparent !important', + }, + '&.Mui-focused': { + backgroundColor: 'transparent !important', + }, + '&.Mui-selected': { + backgroundColor: 'transparent !important', + '&:hover': { + backgroundColor: 'transparent !important', + }, + } + } + }} + label={props.children.length === 0 ? + { + if (event.target.checked) { + dispatch(fetchAndAddActivityMapToViewer(props.itemId)); + } else { + dispatch(removeActivityMapFromViewer(props.itemId)); + } + }} + /> + } + labelPlacement="start" + label={activityMapsMetadata[props.itemId]?.name} + /> + : + + + {props.label} + + { + showRightSideContent && !props.itemId.startsWith('activityMaps') && (expanded || hovered) && + + + props.handleClickOpenDialogDetails(e, props)}> + + + handleClickExperiment(e, props)}> + + + + } + + } + /> + ); +}); + +export default CustomTreeItem \ No newline at end of file diff --git a/client/src/components/MetaDataViewerComponents/Detail.js b/client/src/components/MetaDataViewerComponents/Detail.js new file mode 100644 index 0000000..a97203a --- /dev/null +++ b/client/src/components/MetaDataViewerComponents/Detail.js @@ -0,0 +1,12 @@ +import {Stack, Typography} from "@mui/material"; +import React from "react"; +import variables from "../../theme/variables"; + +const { gray25, gray200} = variables + +const Detail = ({title, text}) => + {title} + {text} + + +export default Detail \ No newline at end of file diff --git a/client/src/components/MetaDataViewerComponents/Details.js b/client/src/components/MetaDataViewerComponents/Details.js new file mode 100644 index 0000000..9a7eb9b --- /dev/null +++ b/client/src/components/MetaDataViewerComponents/Details.js @@ -0,0 +1,36 @@ +import {Box, Stack, Typography} from "@mui/material"; +import React from "react"; +import Detail from "./Detail"; +import {Publications} from "./Publications"; +import variables from "../../theme/variables"; + +const { gray100 } = variables + +export const Details = ({experiment}) => { + const renderComponent = (key, value) => { + if (typeof value === 'string') { + return ; + } else if (typeof value === 'object') { + return ; + } else { + return null; + } + }; + const renderDetails = () => { + + return experiment && Object.entries(experiment).map(([key, value]) => ( + + {renderComponent(key, value)} + + )); + }; + return <> + { + experiment ? {renderDetails()} : + No metadata for this experiment + + } + + + +} \ No newline at end of file diff --git a/client/src/components/MetaDataViewerComponents/DetailsTabs.js b/client/src/components/MetaDataViewerComponents/DetailsTabs.js new file mode 100644 index 0000000..068613a --- /dev/null +++ b/client/src/components/MetaDataViewerComponents/DetailsTabs.js @@ -0,0 +1,46 @@ +import * as React from 'react'; +import Tabs from '@mui/material/Tabs'; +import Tab from '@mui/material/Tab'; +import Box from '@mui/material/Box'; +import variables from "../../theme/variables"; + +const{ gray100, gray800} = variables +function a11yProps(index) { + return { + id: `simple-tab-${index}`, + 'aria-controls': `simple-tabpanel-${index}`, + }; +} + +const DetailsTabs = ({ handleChange, value }) => { + + return ( + + + + + + + + ); +} + +export default DetailsTabs \ No newline at end of file diff --git a/client/src/components/MetaDataViewerComponents/ExperienceDetailsDialog.js b/client/src/components/MetaDataViewerComponents/ExperienceDetailsDialog.js new file mode 100644 index 0000000..89118de --- /dev/null +++ b/client/src/components/MetaDataViewerComponents/ExperienceDetailsDialog.js @@ -0,0 +1,106 @@ +import * as React from 'react'; +import Dialog from '@mui/material/Dialog'; +import DialogContent from '@mui/material/DialogContent'; +import DialogTitle from '@mui/material/DialogTitle'; +import {Box, IconButton, Typography} from "@mui/material"; +import CloseIcon from '@mui/icons-material/Close'; +import variables from "../../theme/variables"; +import ArrowForwardIcon from "@mui/icons-material/ArrowForward"; +import ArticleOutlinedIcon from '@mui/icons-material/ArticleOutlined'; +import {Details} from "./Details"; +import {fetchAndSetExperimentAndAtlas} from "../../redux/actions"; +import {useDispatch, useSelector} from "react-redux"; +const {gray400, gray600, gray100, gray700} = variables +const ExperienceDetailsDialog = ({open, handleClose, experiment, name}) =>{ + const activeAtlas = useSelector(state => state.viewer.atlas); + + const dispatch = useDispatch(); + const handleClickExperiment = (e) => { + e.stopPropagation(); + e.preventDefault(); + dispatch(fetchAndSetExperimentAndAtlas(name, activeAtlas.id)) + handleClose() + } + return ( + + + + + + + {name} + + + + + + + + + + + + + + Details + + +
+ + +
+
+ ); +} + +export default ExperienceDetailsDialog \ No newline at end of file diff --git a/client/src/components/MetaDataViewerComponents/Experiments.js b/client/src/components/MetaDataViewerComponents/Experiments.js new file mode 100644 index 0000000..0f0b6bb --- /dev/null +++ b/client/src/components/MetaDataViewerComponents/Experiments.js @@ -0,0 +1,70 @@ +import React, { useState, useEffect } from "react"; +import { Stack, Typography } from "@mui/material"; +import variables from "../../theme/variables"; +import { RichTreeView } from '@mui/x-tree-view/RichTreeView'; +import { useSelector} from "react-redux"; +import ExperienceDetailsDialog from "./ExperienceDetailsDialog"; +import CustomTreeItem from "./CustomTreeItem"; + +const { gray300, gray25 } = variables; + +const Experiments = () => { + const currentExperiment = useSelector(state => state.currentExperiment); + const experimentsActivityMaps = useSelector(state => state.model.ExperimentsActivityMap); + const experimentAtlas = useSelector(state => state.model.ExperimentsAtlas); + const activeAtlas = useSelector(state => state.viewer.atlas); + const ExperimentsMetadata = useSelector(state => state.model.ExperimentsMetadata); + const [openDialogDetails, setOpenDialogDetails] = useState(false); + const [selectedExperiment, setSelectedExperiment] = useState(currentExperiment); + + useEffect(() => { + return () => { + // Cleanup function to clear selectedExperiment + setSelectedExperiment(null); + }; + }, []); + + const handleClickOpenDialogDetails = (event, experiment) => { + setSelectedExperiment(experiment.itemId); + event.stopPropagation(); + setOpenDialogDetails(true); + }; + + const handleDialogDetailsClose = () => { + setOpenDialogDetails(false); + }; + + const orderedExperiments = [currentExperiment?.id, ...Object.keys(experimentsActivityMaps) + .filter(experiment => experiment !== currentExperiment?.id)].filter(row => + experimentAtlas[row].includes(activeAtlas.id) && currentExperiment.id !== row); + + const experimentsList = orderedExperiments.map((experimentName, index) => { + const experimentActivityMaps = experimentsActivityMaps[experimentName] || []; + + return { + id: experimentName, + label: experimentName, + children: [{ + id: `activityMaps_${index}`, + label: 'Activity Maps', + children: experimentActivityMaps.map(activityMapID => ({ + id: activityMapID, + label:activityMapID + })), + }] + }; + }); + + return ( + <> + + These are the experiments that share the same currently loaded atlas. You may activate the statistical maps from these experiments to the viewer. + Other experiments associated with the loaded atlas + }} /> + + + + ); +}; + +export default Experiments; diff --git a/client/src/components/MetaDataViewerComponents/Images.js b/client/src/components/MetaDataViewerComponents/Images.js new file mode 100644 index 0000000..ad51a93 --- /dev/null +++ b/client/src/components/MetaDataViewerComponents/Images.js @@ -0,0 +1,91 @@ +import React, {useEffect, useState} from "react"; +import {Divider, Stack, Typography} from "@mui/material"; +import {useSelector} from "react-redux"; +import variables from "../../theme/variables"; +import {RichTreeView} from "@mui/x-tree-view/RichTreeView"; +import CustomTreeItem from "./CustomTreeItem"; +import { + BuildHierarchyTree, + DoDataPreprocessing, + filterDictByKeys, + getCurrentExperimentActivityMaps, GetUniqueHierarchyRoots +} from "../../helpers/ImagesTreeViewHelpers"; + +const { gray300, gray25} = variables; +const Images = () => { + const activeAtlas = useSelector(state => state.viewer.atlas); + const activityMapsMetadata = useSelector(state => state.model.ActivityMaps); + const atlasActivityMaps = useSelector( state => state.model.AtlasActivityMap ); + const currentExperiment = useSelector(state => state.currentExperiment); + const ExperimentsActivityMap = useSelector(state => state.model.ExperimentsActivityMap); + const [treeData, setTreeData] = useState([]); + + const getData = () => { + const atlas = activeAtlas; + const selectedAtlasActivityMaps = atlas?.id && atlasActivityMaps[atlas.id] ? atlasActivityMaps[atlas.id] : []; + const experimentActivityMaps = ExperimentsActivityMap[currentExperiment.id]; + const currentExperimentActivityMaps = getCurrentExperimentActivityMaps( + activityMapsMetadata, + experimentActivityMaps + ); + const filteredActivityMaps = filterDictByKeys( + currentExperimentActivityMaps, + selectedAtlasActivityMaps + ); + const processedFilteredActivityMaps = DoDataPreprocessing(filteredActivityMaps, currentExperiment?.id); + const hierarchyRoots = GetUniqueHierarchyRoots(processedFilteredActivityMaps); + + let finalTree = []; + let othersNodes = []; + + // Build the tree for all hierarchy roots except 'others' + for (const hierarchyRoot of hierarchyRoots.filter(root => root !== 'others')) { + const hierarchyTreeAllData = Object.values(processedFilteredActivityMaps).filter(obj => obj.hierarchy[0] === hierarchyRoot); + const hierarchyTreeMaxLevel = hierarchyTreeAllData.reduce((acc, obj) => Math.max(acc, obj.hierarchy.length), 0); + const deepestHierarchyArray = hierarchyTreeAllData.reduce((acc, obj) => { + if(obj.hierarchy.length > acc.length){ + return obj.hierarchy; + } + return acc; + }, []); + finalTree.push(...BuildHierarchyTree(hierarchyTreeAllData, hierarchyTreeMaxLevel, deepestHierarchyArray, 0)); + } + + // Collect 'others' nodes to be pushed at the end + for (const hierarchyRoot of hierarchyRoots.filter(root => root === 'others')) { + const hierarchyTreeAllData = Object.values(processedFilteredActivityMaps).filter(obj => obj.hierarchy[0] === hierarchyRoot); + othersNodes.push(...hierarchyTreeAllData.map(obj => ({ + id: obj.key, + label: obj.key + }))); + } + + // Push 'others' nodes at the end of the tree + finalTree.push(...othersNodes); + + return finalTree; + }; + + + + useEffect(() => { + const newData = getData(); + setTreeData(newData); + + return () => { + // Cleanup function to empty the tree data + setTreeData([]); + }; + }, [activeAtlas, activityMapsMetadata, atlasActivityMaps, currentExperiment, ExperimentsActivityMap]); + + return + + Atlas + {activeAtlas.id} + + + }} /> + +} + +export default Images \ No newline at end of file diff --git a/client/src/components/MetaDataViewerComponents/Publications.js b/client/src/components/MetaDataViewerComponents/Publications.js new file mode 100644 index 0000000..d8331a6 --- /dev/null +++ b/client/src/components/MetaDataViewerComponents/Publications.js @@ -0,0 +1,50 @@ +import {Box, Chip, Divider, Link, Stack, Typography} from "@mui/material"; +import variables from "../../theme/variables"; +import InsertLinkRoundedIcon from '@mui/icons-material/InsertLinkRounded'; +const { gray25, gray200, gray100} = variables + +export const Publications = ({title, value}) => { + return + {title} + {value.map((v, i) => <> + { + v.description && + {v.description} + + } + + {v.link && + + {v.label} + } + { + v.keywords && + {v.keywords} + + } + + { + v.tags.length !== 0 && <> + + + { + v.tags.map(tag => ) + } + + + } + )} + + +} \ No newline at end of file diff --git a/client/src/components/MetadataViewer.js b/client/src/components/MetadataViewer.js new file mode 100644 index 0000000..d2f5ea8 --- /dev/null +++ b/client/src/components/MetadataViewer.js @@ -0,0 +1,49 @@ +import React from 'react'; +import { Box, Stack } from "@mui/material"; +import {CustomAlert} from "./MetaDataViewerComponents/CustomAlert"; +import DetailsTabs from "./MetaDataViewerComponents/DetailsTabs"; +import CustomTabPanel from "./MetaDataViewerComponents/CustomTabPanel"; +import {Details} from "./MetaDataViewerComponents/Details"; +import Experiments from "./MetaDataViewerComponents/Experiments"; +import Images from "./MetaDataViewerComponents/Images"; +import {useSelector} from "react-redux"; + +export const MetadataViewer = () => { + let [tabValue, setTabValue] = React.useState(0); + const [openAlert, setOpenAlert] = React.useState(true); + const currentExperiment = useSelector(state => state.currentExperiment); + + const handleChangeTab = (event, newValue) => { + setTabValue(newValue); + }; + const viewOtherExperiences = () => { + setTabValue(2) + } + return ( + + { + openAlert && + + + } + + +
+ + + + + + + + + ) +}; diff --git a/client/src/components/Picker.js b/client/src/components/Picker.js deleted file mode 100644 index 388b50c..0000000 --- a/client/src/components/Picker.js +++ /dev/null @@ -1,185 +0,0 @@ -import * as React from 'react'; -import PropTypes from 'prop-types'; -import Tabs from '@mui/material/Tabs'; -import Tab from '@mui/material/Tab'; -import { Box, Popover, Typography } from '@mui/material'; -import { ChromePicker } from 'react-color'; -import vars from '../theme/variables'; -import {useDispatch} from "react-redux"; -import {changeActivityMapColor} from "../redux/actions"; -import {getColorGradient} from "../helpers/gradientHelper"; -import {GRADIENTS as Gradients} from "../settings"; - -const { headingColor, whiteColor, headerBorderLeftColor, headerBorderColor } = vars - -function CustomTabPanel(props) { - const { children, value, index, ...other } = props; - - return ( - - ); -} - -CustomTabPanel.propTypes = { - children: PropTypes.node, - index: PropTypes.number.isRequired, - value: PropTypes.number.isRequired, -}; - -function a11yProps(index) { - return { - id: `simple-tab-${index}`, - 'aria-controls': `simple-tabpanel-${index}`, - }; -} - -const templateArr = [ - { - name: 'Hot', - color: 'linear-gradient(90deg, rgba(255, 9, 9, 0.50) 0%, rgba(255, 217, 102, 0.50) 100%), rgba(255, 255, 255, 0.10)', - gradient: Gradients.HOT, - }, - { - name: 'Cool', - color: 'linear-gradient(90deg, rgba(20, 0, 175, 0.80) 0%, rgba(20, 147, 255, 0.80) 100%), rgba(255, 255, 255, 0.30)', - gradient: Gradients.COOL - }, - { - name: 'Black & White', - color: 'linear-gradient(90deg, #030203 0%, rgba(3, 2, 3, 0.00) 100%), rgba(255, 255, 255, 0.30)', - gradient: Gradients.BLACK_AND_WHITE - } -] - -const Picker = ({open, id, anchorEl, selectedColor, onClose}) => -{ - const dispatch = useDispatch(); - const [tab, setTab] = React.useState(0); - - - const handleTabChange = (event, newValue) => { - setTab(newValue); - }; - const handleColorChange = (color) => { - dispatch(changeActivityMapColor(id, getColorGradient(color.hex))); - }; - - const handleTemplateChange = (gradient) => { - dispatch(changeActivityMapColor(id, gradient)); - }; - - return ( - - - {['Template', 'Custom'].map((label, index) => )} - - - - - { templateArr?.map((template, index) => ( - handleTemplateChange(template.gradient)} - > - { template.name } - - ))} - - - - div': { - width: '100% !important', - boxShadow: 'none !important', - background: 'transparent !important', - fontFamily: "'IBM Plex Sans',sans-serif !important", - - '& > div:last-of-type': { - '& > div:first-of-type': { - '& > div:first-of-type': { - '& > div': { - border: `0.0625rem solid ${headerBorderLeftColor}` - } - } - } - }, - - '& svg': { - fill: `${headingColor} !important`, - '&:hover': { - background: `${headerBorderLeftColor} !important`, - } - }, - - '& input': { - backgroundColor: `${headerBorderLeftColor} !important`, - boxShadow: 'none !important', - color: `${headingColor} !important`, - '&:focus': { - boxShadow: 'none !important', - outline: 'none !important', - } - } - } - }}> - - - - - ) -}; - -export default Picker; \ No newline at end of file diff --git a/client/src/components/PickerWrapper.js b/client/src/components/PickerWrapper.js new file mode 100644 index 0000000..017b539 --- /dev/null +++ b/client/src/components/PickerWrapper.js @@ -0,0 +1,173 @@ +import * as React from 'react'; +import PropTypes from 'prop-types'; +import {Box, IconButton, Popover, Stack, Typography} from '@mui/material'; +import vars from '../theme/variables'; +import {useDispatch} from "react-redux"; +import {changeActivityMapColor} from "../redux/actions"; +import {COLOR_RANGES} from "../settings"; +import {hexToNormalizedRGBA, rgbaObjectToNormalizedRgb} from "../helpers/gradientHelper"; +import CustomTabs from "./CustomTabs"; +import ColorPicker from "./ColorPicker"; +import Tooltip from '@mui/material/Tooltip'; +import HelpOutlineOutlinedIcon from '@mui/icons-material/HelpOutlineOutlined'; + +const {headingColor, headerBorderLeftColor, headerBorderColor} = vars + +function CustomTabPanel(props) { + const {children, value, index, sx, ...other} = props; + + return ( + + ); +} + +CustomTabPanel.propTypes = { + children: PropTypes.node, + index: PropTypes.number.isRequired, + value: PropTypes.number.isRequired, +}; + +const templateArr = [ + { + name: 'Hot', + color: 'linear-gradient(90deg, rgba(255, 9, 9, 0.50) 0%, rgba(255, 217, 102, 0.50) 100%), rgba(255, 255, 255, 0.10)', + colorRange: COLOR_RANGES.HOT, + }, + { + name: 'Cool', + color: 'linear-gradient(90deg, rgba(20, 0, 175, 0.80) 0%, rgba(20, 147, 255, 0.80) 100%), rgba(255, 255, 255, 0.30)', + colorRange: COLOR_RANGES.COOL + }, + { + name: 'Black & White', + color: 'linear-gradient(90deg, #030203 0%, rgba(3, 2, 3, 0.00) 100%), rgba(255, 255, 255, 0.30)', + colorRange: COLOR_RANGES.BLACK_AND_WHITE + } +] + +const PickerWrapper = ({open, id, anchorEl, minColor, maxColor, onClose}) => { + const dispatch = useDispatch(); + const [tab, setTab] = React.useState(0); + const [pickerTab, setPickerTab] = React.useState(0); + + const handleTabChange = (event, newValue) => { + setTab(newValue); + }; + + const handlePickerTabChange = (event, newValue) => { + setPickerTab(newValue); + }; + + const handleMinColorChange = (color) => { + dispatch(changeActivityMapColor(id, [ + rgbaObjectToNormalizedRgb(color.rgb), + hexToNormalizedRGBA(maxColor), + ])); + }; + + const handleMaxColorChange = (color) => { + dispatch(changeActivityMapColor(id, [ + hexToNormalizedRGBA(minColor), + rgbaObjectToNormalizedRgb(color.rgb) + ])); + }; + + const handleTemplateChange = (colorRange) => { + dispatch(changeActivityMapColor(id, colorRange)); + }; + + return ( + + + + + {templateArr?.map((template, index) => ( + handleTemplateChange(template.colorRange)} + > + {template.name} + + ))} + + + + + + + + + + + + + + + + + + + + + + ) +}; + +export default PickerWrapper; \ No newline at end of file diff --git a/client/src/components/Slider.js b/client/src/components/Slider.js index 596cd63..8b6fbef 100644 --- a/client/src/components/Slider.js +++ b/client/src/components/Slider.js @@ -1,11 +1,10 @@ -import React from "react"; +import React, {useState} from "react"; import vars from "../theme/variables"; import {Box, Button, Slider, Typography} from "@mui/material"; -import {useDispatch} from "react-redux"; -import {changeActivityMapColor, changeViewerObjectOpacity} from "../redux/actions"; -import {getColorGradient, getOpacityGradient} from "../helpers/gradientHelper"; +import {CustomToggleButton} from "./CustomToggleButton"; +import CustomTextField from "./CustomTextField"; -const {resetButtonColor, labelColor, resetButtonActiveColor} = vars; +const {resetButtonColor, labelColor, resetButtonActiveColor, tooltipBgColor, whiteColor} = vars; const styles = { heading: { @@ -25,35 +24,110 @@ const styles = { } }; -const CustomSlider = ({heading, width = 1, onChange, value}) => { +const formatValueLabel = (value) => `${Number(value).toFixed(2)}`; + +const CustomSlider = ({ + heading, + width = 1, + onChange, + value, + min = 0, + max = 100, + minColor = tooltipBgColor, + maxColor = whiteColor, + numberOfSteps = 100, + disabled = false, + showPercentageAbsolute = false + }) => { + const [sliderValue, setSliderValue] = useState(value); + const [minInputValue, setMinInputValue] = useState(value[0]); + const [maxInputValue, setMaxInputValue] = useState(value[1]); + const [typeOfValue, setTypeOfValue] = React.useState('percentage'); + const step = (max - min) / numberOfSteps; + + const handleSliderChange = (event, newValue) => { + if (disabled) { + return; + } + if (newValue[0] >= newValue[1]) { + setMinInputValue(sliderValue[0]); + setMaxInputValue(sliderValue[1]); + return; + } + + const newMaxValue = Math.min(newValue[1], max); + const newMinValue = Math.max(newValue[0], min); + const newValueInRange = [newMinValue, newMaxValue] + + setSliderValue(newValueInRange); + setMinInputValue(newMinValue); + setMaxInputValue(newMaxValue); + onChange(newValueInRange); + }; + return ( - - + + {heading} - onChange(newValue)}/> + {showPercentageAbsolute && ( + + )} + handleSliderChange(null, [Number(value), sliderValue[1]])} + disabled={disabled} + typeOfValue={typeOfValue} + showPercentageAbsolute={showPercentageAbsolute} + /> + + handleSliderChange(null, [sliderValue[0], Number(value)])} + disabled={disabled} + typeOfValue={typeOfValue} + showPercentageAbsolute={showPercentageAbsolute} + /> - ) + ); }; -export default CustomSlider; \ No newline at end of file +export default CustomSlider; diff --git a/client/src/components/Table.js b/client/src/components/Table.js index 41160da..0157cf8 100644 --- a/client/src/components/Table.js +++ b/client/src/components/Table.js @@ -1,8 +1,8 @@ -import {Box, Typography, Link} from "@mui/material"; -import React from "react"; +import {Box, Typography} from "@mui/material"; +import React, { useRef } from "react"; import vars from "../theme/variables"; import TableRow from "./TableRow"; -import ArrowForwardIcon from '@mui/icons-material/ArrowForward'; + const { headerBorderLeftColor, @@ -18,16 +18,16 @@ export const tableStyles = { p: '0.75rem 0 0.5rem', '& > .MuiBox-root': { - width: 'calc(65% - 5.625rem)', + width: 'calc(55% - 5.625rem)', px: '0.75rem', '& + .MuiBox-root': { borderLeft: `0.0625rem solid ${headerBorderLeftColor}` }, '&:first-of-type': { - width: '11.25rem' + width: '16rem' }, '&:last-of-type': { - width: 'calc(35% - 5.625rem)' + width: 'calc(45% - 5.625rem)' }, }, '& .MuiTypography-root': { @@ -104,15 +104,15 @@ export const tableStyles = { borderColor: headerBorderLeftColor, }, '& > .MuiBox-root': { - width: 'calc(65% - 5.625rem)', + width: 'calc(55% - 5.625rem)', gap: '0.5rem', px: '0.75rem', '&:first-of-type': { - width: '11.25rem' + width: '16rem' }, '&:last-of-type': { - width: 'calc(35% - 5.625rem)' + width: 'calc(45% - 5.625rem)' }, '& + .MuiBox-root': { borderLeft: `0.0625rem solid ${headerBorderLeftColor}` @@ -122,8 +122,23 @@ export const tableStyles = { } }; -const Table = ({tableHeader, tableContent}) => { +const Table = ({tableHeader, tableContent, onReorder}) => { const hasNoActivityMaps = tableContent.length < 2 + const targetRow = useRef() + const sourceRow = useRef() + + const dragStart = (id, index) => { + sourceRow.current = {id, index} + } + + const dragEnter = (id, index) => { + targetRow.current = {id, index} + } + + const dragEnd = () => { + onReorder(sourceRow.current, targetRow.current) + } + return ( @@ -136,7 +151,8 @@ const Table = ({tableHeader, tableContent}) => { {tableContent?.map((row, index) => - ) + ) } { hasNoActivityMaps && @@ -161,4 +177,4 @@ const Table = ({tableHeader, tableContent}) => { ) }; -export default Table; \ No newline at end of file +export default Table; diff --git a/client/src/components/TableRow.js b/client/src/components/TableRow.js index 7ce03f0..901e02c 100644 --- a/client/src/components/TableRow.js +++ b/client/src/components/TableRow.js @@ -1,5 +1,5 @@ -import React from 'react'; -import { Box, Divider, IconButton, Tooltip, Typography } from "@mui/material"; +import {useState} from 'react'; +import {Box, Divider, IconButton, Tooltip, Typography} from "@mui/material"; import RemoveCircleOutlineIcon from '@mui/icons-material/RemoveCircleOutline'; import VisibilityOutlinedIcon from '@mui/icons-material/VisibilityOutlined'; import VisibilityOffOutlinedIcon from '@mui/icons-material/VisibilityOffOutlined'; @@ -9,99 +9,142 @@ import vars from '../theme/variables'; import CustomSlider from './Slider'; import DragIndicatorIcon from '@mui/icons-material/DragIndicator'; import GrainIcon from '@mui/icons-material/Grain'; -import { tableStyles } from './Table'; -import Picker from './Picker'; +import {tableStyles} from './Table'; +import PickerWrapper from './PickerWrapper'; import { - changeViewerObjectOpacity, - downloadViewerObject, - removeActivityMapFromViewer, - toggleViewerObjectVisibility + changeActivityMapIntensityRange, + downloadViewerObject, + removeActivityMapFromViewer, toggleIntensityRangeInclusion, + toggleViewerObjectVisibility } from "../redux/actions"; import {useDispatch} from "react-redux"; -import {getOriginalHexColor} from "../helpers/gradientHelper"; +import {normalizedRgbToHex} from "../helpers/gradientHelper"; +import {AtlasIcon, LockIcon, SliderIncludeIcon, UnlockIcon} from "../icons"; const { - headerBorderLeftColor, - headerButtonColor + headerBorderLeftColor, + headerButtonColor, + tooltipBgColor, + whiteColor, + gray600 } = vars; -const TableRow = ( { index, data, isAtlas } ) => -{ - const dispatch = useDispatch(); - const [anchorEl, setAnchorEl] = React.useState(null); - const { id, name, color, opacity, isVisible, description } = data; - - const handleClick = (event) => { - setAnchorEl(event.currentTarget); - }; - - const handleClose = () => { - setAnchorEl(null); - }; - - const onOpacityChange = (id, newValue) => { - dispatch(changeViewerObjectOpacity(id, newValue)); - } - - const open = Boolean(anchorEl); - - return ( - <> - - - {/*TODO: Update title when feature gets implemented*/} - - - - - - - dispatch(removeActivityMapFromViewer(id))}> - - - - - - - dispatch(toggleViewerObjectVisibility(id))}> - { isVisible ? : } - - - - - - - - - dispatch(downloadViewerObject(id))}> - - - - - - - - - - - - { name } - - - { description } - - - - - onOpacityChange(id, newValue)}/> - - - - - - - ); +const TableRow = ({data, isAtlas, onDragStart, onDragEnter, onDragEnd, index}) => { + const dispatch = useDispatch(); + const [isLocked, setIsLocked] = useState(false); + const [anchorEl, setAnchorEl] = useState(null); + const {id, name, intensityRange, stackIntensityRange, isRangeInclusive, colorRange, isVisible, description} = data; + const minColorHex = colorRange ? normalizedRgbToHex(colorRange[0]) : tooltipBgColor + const maxColorHex = colorRange ? normalizedRgbToHex(colorRange[1]) : whiteColor + const min = stackIntensityRange ? stackIntensityRange[0] : 0 + const max = stackIntensityRange ? stackIntensityRange[1] : 100 + + const disabledHex = gray600; + + const handleClick = (event) => { + setAnchorEl(event.currentTarget); + }; + + const handleClose = () => { + setAnchorEl(null); + }; + + const onIntensityChange = (id, newValue) => { + dispatch(changeActivityMapIntensityRange(id, newValue)); + } + + const toggleLock = () => { + setIsLocked(!isLocked); + }; + + const open = Boolean(anchorEl); + + return ( + <> + onDragStart(id, index, e)} + onDragEnter={e => onDragEnter(id, index, e)} + onDragEnd={onDragEnd}> + + + + + + + + dispatch(removeActivityMapFromViewer(id))}> + + + + + + + + {isLocked ? : } + + + + dispatch(toggleViewerObjectVisibility(id))}> + {isVisible ? + : + } + + + + dispatch(toggleIntensityRangeInclusion(id))} disabled={isAtlas || isLocked}> + + + + + + + + + + dispatch(downloadViewerObject(id))}> + + + + + + { + + isAtlas ? : + } + + {name} + + + {description} + + + + + onIntensityChange(id, newValue)} + minColor={minColorHex} + maxColor={maxColorHex} + /> + + + + + + + ); }; export default TableRow; \ No newline at end of file diff --git a/client/src/components/Viewer.js b/client/src/components/Viewer.js index fcc8a4e..9871022 100644 --- a/client/src/components/Viewer.js +++ b/client/src/components/Viewer.js @@ -1,7 +1,7 @@ import * as THREE from "three"; import * as AMI from 'ami.js'; -import React, {useEffect, useRef} from "react"; +import React, {useEffect, useRef, useState} from "react"; import { Badge, Box, Button, Chip, Divider, FormControlLabel, FormGroup, Popover, Switch, Typography } from "@mui/material"; @@ -10,13 +10,15 @@ import KeyboardArrowDownIcon from '@mui/icons-material/KeyboardArrowDown'; import * as viewerHelper from '../helpers/viewerHelper'; import vars from "../theme/variables"; import {ViewerToolbar} from "./ViewerToolbar"; +import {ViewerProbe} from "./ViewerProbe"; import {fetchAndAddActivityMapToViewer, removeActivityMapFromViewer} from "../redux/actions"; -import {STACK_HELPER_BORDER_COLOR} from "../settings"; +import {DELTA_SLICE_BUTTON, DELTA_SLICE_MOUSE, STACK_HELPER_BORDER_COLOR} from "../settings"; import {DIRECTIONS} from "../constants"; import { - getNewSliceIndex, updateStackHelperIndex + getAtlasStackHelper, + getNewSliceIndex, makeSliceTransparent, postProcessAtlas, removeBackground, updateStackHelperIndex } from "../helpers/stackHelper"; -import {getActivityMapsDiff, postProcessActivityMap, updateLUT} from "../helpers/activityMapHelper"; +import {getActivityMapsDiff, postProcessActivityMap, updateBGLUT, updateLUT} from "../helpers/activityMapHelper"; import {sceneObjects} from "../redux/constants"; import {HomeIcon, KeyboardArrowUpIcon, TonalityIcon, ZoomInIcon, ZoomOutIcon} from "../icons"; @@ -32,13 +34,16 @@ export const Viewer = (props) => { const activeAtlas = useSelector(state => state.viewer.atlas); const activeActivityMaps = useSelector(state => state.viewer.activityMaps); + const activityMapsOrder = useSelector(state => state.viewer.order); const experimentsActivityMaps = useSelector(state => state.model.ExperimentsActivityMap); const currentExperiment = useSelector(state => state.currentExperiment); const activityMapsMetadata = useSelector(state => state.model.ActivityMaps); - const [anchorEl, setAnchorEl] = React.useState(null); - const [wireframeMode, setWireframeMode] = React.useState(false); - const [sliceIndex, setSliceIndex] = React.useState(null); + const [anchorEl, setAnchorEl] = useState(null); + const [wireframeMode, setWireframeMode] = useState(false); + const [sliceIndex, setSliceIndex] = useState(null); + + const [probeVersion, setProbeVersion] = useState(0); const containerRef = useRef(null); @@ -48,10 +53,15 @@ export const Viewer = (props) => { const controlsRef = useRef(null); const currentAtlasStackHelperRef = useRef(null); + const currentAtlasWireframeStackHelperRef = useRef(null); const activityMapsStackHelpersRef = useRef({}); + const previousAtlasIdRef = useRef(null); const activityMapsRef = useRef(activeActivityMaps); + const resizeObserverRef = useRef(null); + + // On Mount useEffect(() => { initViewer(); @@ -81,33 +91,61 @@ export const Viewer = (props) => { }; const subscribeEvents = () => { - containerRef.current.addEventListener('wheel', handleScroll); + window.addEventListener('wheel', handleScroll, {capture: true}); window.addEventListener('resize', onWindowResize); + resizeObserverRef.current = new ResizeObserver(entries => { + for (const entry of entries) { + onWindowResize(); + } + }); + if (containerRef.current) { + resizeObserverRef.current.observe(containerRef.current); + } }; const unSubscribeEvents = () => { - containerRef.current?.removeEventListener('wheel', handleScroll); + window.removeEventListener('wheel', handleScroll); window.removeEventListener('resize', onWindowResize); + if (resizeObserverRef.current) { + resizeObserverRef.current.disconnect(); + } }; - const onWindowResize = (event) => { + const onWindowResize = () => { viewerHelper.resize(containerRef, rendererRef, cameraRef) } const handleScroll = (event) => { + if (!containerRef.current) return; + + const bounds = containerRef.current.getBoundingClientRect(); + if ( + event.clientX >= bounds.left && + event.clientX <= bounds.right && + event.clientY >= bounds.top && + event.clientY <= bounds.bottom + ) { + handleScrollAux(event); + } + }; + const handleScrollAux = (event) => { const direction = event.deltaY < 0 ? DIRECTIONS.DOWN : DIRECTIONS.UP; const currentAtlas = currentAtlasStackHelperRef.current; + updateSliceIndex(currentAtlas, direction, DELTA_SLICE_MOUSE); + }; - const newIndex = getNewSliceIndex(currentAtlas, direction); + const updateSliceIndex = (atlas, direction, delta) => { + const newIndex = getNewSliceIndex(atlas, direction, delta); if (newIndex !== null) { setSliceIndex(newIndex); } - }; + } const updateAllStackHelpersIndex = (newIndex) => { // Update the atlas updateStackHelperIndex(currentAtlasStackHelperRef.current, newIndex); + updateStackHelperIndex(currentAtlasWireframeStackHelperRef.current, newIndex); // Update the activity maps to match the atlas index Object.values(activityMapsStackHelpersRef.current).forEach(stackHelper => { @@ -116,15 +154,16 @@ export const Viewer = (props) => { }; const handlePreviousSlice = () => { - if (sliceIndex && sliceIndex > 0) { - setSliceIndex(sliceIndex - 1); + const currentAtlas = currentAtlasStackHelperRef.current; + if (currentAtlas && sliceIndex && sliceIndex > 0) { + updateSliceIndex(currentAtlas, DIRECTIONS.DOWN, DELTA_SLICE_BUTTON); } }; const handleNextSlice = () => { const currentAtlas = currentAtlasStackHelperRef.current; - if (sliceIndex && currentAtlas && sliceIndex < currentAtlas.orientationMaxIndex - 1) { - setSliceIndex(sliceIndex + 1) + if (currentAtlas && sliceIndex && sliceIndex < currentAtlas.orientationMaxIndex - 1) { + updateSliceIndex(currentAtlas, DIRECTIONS.UP, DELTA_SLICE_BUTTON); } }; @@ -153,60 +192,56 @@ export const Viewer = (props) => { // On atlas changes useEffect(() => { if (activeAtlas) { - viewerHelper.updateCamera(containerRef.current, cameraRef.current, activeAtlas.stack); - - const targetStack = wireframeMode ? activeAtlas.wireframeStack : activeAtlas.stack; - - // Check if the current atlas is different from the active atlas or if wireframe mode has changed. - const currentAtlasHasChanged = !currentAtlasStackHelperRef.current || currentAtlasStackHelperRef.current.atlasId !== activeAtlas.id; - const wireframeModeHasChanged = currentAtlasStackHelperRef.current && currentAtlasStackHelperRef.current.isWireframe !== wireframeMode; - - if (currentAtlasHasChanged || wireframeModeHasChanged) { - const stackHelper = new StackHelper(targetStack); - stackHelper.name = sceneObjects.ATLAS; - stackHelper.isWireframe = wireframeMode; - stackHelper.bbox.visible = false; - stackHelper.border.color = STACK_HELPER_BORDER_COLOR; - stackHelper.orientation = cameraRef.current.stackOrientation; - - if (currentAtlasHasChanged) { - // If the atlas has changed, center the index - const centerIndex = Math.floor(stackHelper.stack._frame.length / 2); - setSliceIndex(centerIndex); - } else if (wireframeModeHasChanged && sliceIndex !== null) { - // If only the wireframe mode has changed, use the stored slice index - updateStackHelperIndex(stackHelper, sliceIndex); - } + const hasAtlasChanged = previousAtlasIdRef.current !== activeAtlas.id; + + if (hasAtlasChanged) { + viewerHelper.updateCamera(containerRef.current, cameraRef.current, activeAtlas.stack); + previousAtlasIdRef.current = activeAtlas.id; - stackHelper.visible = activeAtlas.visibility; - stackHelper.slice.opacity = activeAtlas.opacity; + const stackHelper = getAtlasStackHelper(activeAtlas.stack, sceneObjects.ATLAS, activeAtlas.id, + cameraRef.current.stackOrientation); + const stackHelperWireframe = getAtlasStackHelper(activeAtlas.wireframeStack, sceneObjects.ATLAS_WIREFRAME, + activeAtlas.id, cameraRef.current.stackOrientation + ); - stackHelper.atlasId = activeAtlas.id; + // If the atlas has changed, center the index + const centerIndex = Math.floor(stackHelper.stack._frame.length / 2); + setSliceIndex(centerIndex); + + stackHelper.visible = activeAtlas.visibility && !wireframeMode; + stackHelperWireframe.visible = activeAtlas.visibility && wireframeMode if (currentAtlasStackHelperRef.current) { sceneRef.current.remove(currentAtlasStackHelperRef.current); } + if (currentAtlasWireframeStackHelperRef.current) { + sceneRef.current.remove(currentAtlasWireframeStackHelperRef.current); + } sceneRef.current.add(stackHelper); - currentAtlasStackHelperRef.current = stackHelper; + sceneRef.current.add(stackHelperWireframe); + + // Post process the stackHelpers + postProcessAtlas(stackHelper, activeAtlas) + postProcessAtlas(stackHelperWireframe, activeAtlas) - // FIXME: Workaround to get the atlas always on the bottom - - // Store all activity maps temporarily and remove them from the scene - const tempActivityMaps = []; - Object.keys(activityMapsStackHelpersRef.current).forEach(activityMapID => { - tempActivityMaps.push(activityMapsStackHelpersRef.current[activityMapID]); - sceneRef.current.remove(activityMapsStackHelpersRef.current[activityMapID]); - }); - // Add back the activity maps - tempActivityMaps.forEach(activityMapStackHelper => { - sceneRef.current.add(activityMapStackHelper); - }); + currentAtlasStackHelperRef.current = stackHelper; + currentAtlasWireframeStackHelperRef.current = stackHelperWireframe; } else { - currentAtlasStackHelperRef.current.visible = activeAtlas.visibility; - currentAtlasStackHelperRef.current.slice.opacity = activeAtlas.opacity; + currentAtlasStackHelperRef.current.visible = activeAtlas.visibility && !wireframeMode; + currentAtlasWireframeStackHelperRef.current.visible = activeAtlas.visibility && wireframeMode; } } - }, [activeAtlas, wireframeMode]); + }, [activeAtlas]); + + + useEffect(() => { + if (currentAtlasStackHelperRef.current) { + currentAtlasStackHelperRef.current.visible = activeAtlas.visibility && !wireframeMode; + } + if (currentAtlasWireframeStackHelperRef.current) { + currentAtlasWireframeStackHelperRef.current.visible = activeAtlas.visibility && wireframeMode; + } + }, [wireframeMode]) // Handle activityMap changes @@ -228,35 +263,64 @@ export const Viewer = (props) => { Object.keys(activityMapsStackHelpersRef.current).forEach(amID => { const activityMap = activeActivityMaps[amID]; if (activityMap) { - const activityMapStackHelper = activityMapsStackHelpersRef.current[amID] + const activityMapStackHelper = activityMapsStackHelpersRef.current[amID]; + activityMapStackHelper.renderOrder = activityMapsOrder.indexOf(amID); // change visibility if (activityMapStackHelper.visible !== activityMap.visibility) { activityMapStackHelper.visible = activityMap.visibility } // change LUT - if (activityMapStackHelper.colorGradient !== JSON.stringify(activityMap.colorGradient) || - activityMapStackHelper.opacityGradient !== JSON.stringify(activityMap.opacityGradient)) { - updateLUT(activityMap.colorGradient, activityMap.opacityGradient, activityMapStackHelper) + if (activityMapStackHelper.colorRange !== JSON.stringify(activityMap.colorRange) || + activityMapStackHelper.isRangeInclusive !== activityMap.isRangeInclusive || + activityMapStackHelper.intensityRange !== JSON.stringify(activityMap.intensityRange)) { + updateLUT(activityMap.colorRange, activityMap.intensityRange, activityMap.isRangeInclusive, activityMapStackHelper) } } }) + // Update order for atlas + const atlasStackHelper = currentAtlasStackHelperRef.current + const atlasWireframeStackHelper = currentAtlasWireframeStackHelperRef.current; + if (atlasStackHelper) { + const atlasId = atlasStackHelper.userData['id']; + atlasStackHelper.renderOrder = activityMapsOrder.indexOf(atlasId); + // makeSliceTransparent(atlasStackHelper) + } + if (atlasWireframeStackHelper) { + const atlasId = atlasWireframeStackHelper.userData['id']; + atlasWireframeStackHelper.renderOrder = activityMapsOrder.indexOf(atlasId); + // makeSliceTransparent(atlasWireframeStackHelper) + } + // Process additions activityMapsToAdd.forEach(amIdToAdd => { const activityMap = activeActivityMaps[amIdToAdd]; let stackHelper = new StackHelper(activityMap.stack); - stackHelper.name = sceneObjects.ACTIVITY_MAP - stackHelper = postProcessActivityMap(stackHelper, activityMap, cameraRef.current.stackOrientation, - currentAtlasStackHelperRef.current.index); + stackHelper.userData['id'] = amIdToAdd; + stackHelper.name = sceneObjects.ACTIVITY_MAP; + stackHelper.renderOrder = activityMapsOrder.indexOf(amIdToAdd); + stackHelper = postProcessActivityMap(stackHelper, activityMap, cameraRef.current.stackOrientation); sceneRef.current.add(stackHelper); + updateStackHelperIndex(stackHelper, sliceIndex) // Store the stackHelper in the ref object activityMapsStackHelpersRef.current[amIdToAdd] = stackHelper; }); + // Reorder the scene manually regarding the renderOrder + // for some reasons it doesn't work automatically, even with the renderer initialized with "sortObject = true" + sceneRef.current.children.sort((a, b) => a.renderOrder - b.renderOrder) - }, [activeActivityMaps]); + }, [activeActivityMaps, activityMapsOrder]); + + useEffect(() => { + if (currentAtlasStackHelperRef.current) { + // FIXME: Workaround to fix initial handle misposition + onWindowResize() + setProbeVersion(prev => prev + 1) + } + }, [activeActivityMaps, activeAtlas, sliceIndex]); const handlePopoverOpen = (event) => { @@ -273,19 +337,19 @@ export const Viewer = (props) => { const toolbarOptions = [ { title: "Previous slice", - Icon: , + Icon: , onClickFunc: handlePreviousSlice, isVisible: true }, { title: "Center stack", - Icon: , + Icon: , onClickFunc: handleCenterStack, isVisible: true }, { title: "Next slice", - Icon: , + Icon: , onClickFunc: handleNextSlice, isVisible: true }, @@ -309,7 +373,7 @@ export const Viewer = (props) => { // }, { title: "Switch to wireframe", - Icon: , + Icon: , onClickFunc: () => setWireframeMode(prevMode => !prevMode), isVisible: true } @@ -366,62 +430,73 @@ export const Viewer = (props) => { {orderedExperiments.map((experimentName, experimentIndex) => { const experimentActivityMaps = experimentsActivityMaps[experimentName] || []; - return ( - {experimentIndex !== 0 && - } - - {experimentName} - {experimentIndex === 0 && currentExperiment && } - - - {experimentActivityMaps.map((activityMapID, mapIndex) => ( - - + {experimentIndex !== 0 && + } + + {experimentName} + {experimentIndex === 0 && currentExperiment && } + + + {experimentActivityMaps.map((activityMapID, mapIndex) => ( + { - if (event.target.checked) { - dispatch(fetchAndAddActivityMapToViewer(activityMapID)); - handlePopoverClose() - } else { - dispatch(removeActivityMapFromViewer(activityMapID)); - } - }} - />} - labelPlacement="start" - label={activityMapsMetadata[activityMapID]?.name} - /> - ))} - - ) + sx={{ + position: 'relative', paddingLeft: '0.25rem', '&:hover': { + '&:before': { + background: primaryActiveColor, + } + }, '&:before': { + content: '""', + height: '100%', + width: '0.125rem', + background: headerBorderColor, + position: 'absolute', + left: 0, + top: 0, + }, + }}> + { + if (event.target.checked) { + dispatch(fetchAndAddActivityMapToViewer(activityMapID)); + handlePopoverClose() + } else { + dispatch(removeActivityMapFromViewer(activityMapID)); + } + }} + />} + labelPlacement="start" + label={activityMapsMetadata[activityMapID]?.name} + /> + ))} + + ) })} + {activeAtlas?.visibility && } diff --git a/client/src/components/ViewerDashboard.js b/client/src/components/ViewerDashboard.js index d1feec5..fbe2d7c 100644 --- a/client/src/components/ViewerDashboard.js +++ b/client/src/components/ViewerDashboard.js @@ -7,13 +7,14 @@ import {SNACKBAR_TIMEOUT} from "../settings"; import {setError} from "../redux/actions"; import CircularProgress from "@mui/material/CircularProgress"; -export const ViewerDashboard = ( props ) => +export const ViewerDashboard = () => { const dispatch = useDispatch(); const isLoading = useSelector(state => state.ui.isLoading); const loadingMessage = useSelector(state => state.ui.loadingMessage); const error = useSelector(state => state.ui.errors); const [openSnackbar, setOpenSnackbar] = useState(false); + useEffect(() => { if (error) { setOpenSnackbar(true); @@ -25,7 +26,7 @@ export const ViewerDashboard = ( props ) => }, [error, dispatch]); return ( <> - @@ -55,4 +56,4 @@ export const ViewerDashboard = ( props ) => ); -}; \ No newline at end of file +}; diff --git a/client/src/components/ViewerProbe.js b/client/src/components/ViewerProbe.js new file mode 100644 index 0000000..8fff2d5 --- /dev/null +++ b/client/src/components/ViewerProbe.js @@ -0,0 +1,89 @@ +import * as AMI from "ami.js"; +import React, {useState, useEffect, useRef, useMemo} from 'react'; +import ViewerTooltip from './ViewerTooltip'; +import {getProbeWidget} from "../helpers/probeHelper"; +import LocationPanel from "./LocationPanel"; + +const CoreUtils = AMI.UtilsCore + +const initialTooltipData = { + isIntersecting: false, + dataCoordinates: {}, + atlasIntensity: '', + anchorPosition: null, +} +export const ViewerProbe = ({refs, probeVersion}) => { + const {stackHelperRef, controlsRef, activityMapsStackHelpersRef} = refs; + const [voxelInformation, setVoxelInformation] = useState({...initialTooltipData}); + + const probeWidgetRef = useRef(null); + + // Setup and cleanup the probe widget + useEffect(() => { + if (!stackHelperRef.current || !controlsRef.current) { + return; + } + + probeWidgetRef.current = getProbeWidget( + stackHelperRef.current, + controlsRef.current, + handleVoxelHover, + ); + + setVoxelInformation({...initialTooltipData}); + + return () => { + if (probeWidgetRef.current) { + probeWidgetRef.current.free(); + probeWidgetRef.current = null; + } + }; + }, [probeVersion]); + + + const handleVoxelHover = ({isIntersecting, dataCoordinates, value, screenPosition}) => { + setVoxelInformation({ + isIntersecting, + dataCoordinates, + atlasIntensity: value, + anchorPosition: screenPosition, + }); + }; + + const activityMapsIntensity = useMemo(() => { + if (activityMapsStackHelpersRef.current && Object.keys(voxelInformation.dataCoordinates).length) { + return Object.entries(activityMapsStackHelpersRef.current).reduce((acc, [key, stackHelper]) => { + if (!stackHelper.visible) { + return acc; + } + const pixelDataTmp = CoreUtils.getPixelData(stackHelper.stack, voxelInformation.dataCoordinates); + const pixelData = CoreUtils.rescaleSlopeIntercept(pixelDataTmp, stackHelper.stack.rescaleSlope, + stackHelper.stack.rescaleIntercept) + + if (pixelData !== null) { + acc[key] = pixelData; + } + return acc; + }, {}); + } + return {}; + }, [voxelInformation.dataCoordinates, probeVersion]); + + + return ( + <> + + + + ) + ; +}; diff --git a/client/src/components/ViewerTooltip.js b/client/src/components/ViewerTooltip.js new file mode 100644 index 0000000..661e79a --- /dev/null +++ b/client/src/components/ViewerTooltip.js @@ -0,0 +1,19 @@ +import React from 'react'; +import {useSelector} from 'react-redux'; +import {getAbbreviation, getName} from "../helpers/lutHelper"; +import {CustomTooltip} from "./CustomTooltip"; + + +const ViewerTooltip = ({open, anchorPosition, atlasIntensity}) => { + const lut = useSelector(state => state.model.Lut); + + + const abbreviation = getAbbreviation(lut, atlasIntensity) + if (!open || !abbreviation) return null; + + return ( + + ); +}; + +export default ViewerTooltip; diff --git a/client/src/components/shared/header.js b/client/src/components/shared/header.js index 46c627b..51fd449 100644 --- a/client/src/components/shared/header.js +++ b/client/src/components/shared/header.js @@ -77,11 +77,6 @@ export const Header = () => { configuration={dynamicToolbarMenu} menuHandler={menuHandler} /> - {/* */} ) diff --git a/client/src/data/details.json b/client/src/data/details.json new file mode 100644 index 0000000..787b8c0 --- /dev/null +++ b/client/src/data/details.json @@ -0,0 +1,34 @@ +{ + "Experiment Name": "Effect of psilocybin on c-Fos-IF in distinct contexts", + "Contributor": "Boris Heifets (Stanford University)", + "Publications": [{ + "link": "https://google.com", + "label": "UNRAVELing the synergistic effects of psilocybin and environment on brain-wide immediate early gene expression in mice", + "description": "", + "keywords": "Rijsketic DR*, Casey AB*, Barbosa DA, Zhang X, Hietamies TM, Ramirez-Ovalle G, Pomrenze MB, Halpern CH, Williams LM, Malenka RC, Heifets BD", + "tags": [ + "rabbit anti-cfos", "donkey anti-Rabbit Alexa647" + ] + }], + "Treatment/Condition(s)": "psilocybin vs. saline; home cage (HC) vs. enriched environment (EE)", + "Dose(s)": "psilocybin (2 mg/kg, i.p.); 4-OHT (50 mg/kg; i.p.)", + "Species, strain, gene(s)": "TRAP2+/-;Ai14+ mice (bred to C57BL/6)", + "Sample sizes(s)": "n=9 for saline (HC); n = 8 for psilocybin (HC); n = 9 for saline (EE); n = 7 for psilocybin EE", + "Clearing method": "iDISCO+", + "Imaging modality": "light sheet fluorescent microscopy (LSFM)", + "Experiment details": "For TRAPing, mice were injected with 4-OHT and psilocybin or saline. Two-weeks later, mice were again injected with psilocybin or saline (crossover design) and placed in their assigned context for 2 hours before fixation for c-Fos mapping. Brains were hemisected, immunostained, cleared, and imaged in 3D with a Zeiss Lightsheet 7 (2.5x objective; 0.52x zoom; 3.5 isotropic resolution; 10.61 µm sheet thickness). 488 nm light excited autofluorescence (8% of 30 mW; 505-530 nm; 50 ms). 638 nm light excited IF (20% of 75 mW; 660 nm long pass; 50 ms). Pivot scanning limited artifacts. Tiled z-stacks (10% overlap) were stitched in Zen Blue.", + "Image analysis": [{ + "link": "https://google.com", + "label": "UNRAVEL Github repository", + "description": "We developed UNRAVEL to automate c-Fos mapping. Downsampled autofluorescence images were registered (MIRACL) to an iDISCO+/LSFM version of the Allen brain atlas (CCFv3). c-Fos-IF images were rolling ball background subtracted (4-pixel radius), warped to atlas space, z-scored, and smoothed (50 µm). Voxel-wise analyses were performed with randomise_parallel (FSL) according to a 2x2 ANOVA design (6,000 permutations). False positives in F-contrast maps were limited by false discovery rate (FDR) correction and cluster extent (> 100 voxels). Surviving clusters were warped to full resolution tissue space for post hoc cell density comparisons using cell segmentations from Ilastik.", + "keywords": "", + "tags": [] + }], + "Additional links": [{ + "link": "https://google.com", + "label": "Antibody registry", + "description": "Documents, documentations and repositories that relates to this experiment.", + "keywords": "", + "tags": [] + }] +} diff --git a/client/src/helpers/ImagesTreeViewHelpers.js b/client/src/helpers/ImagesTreeViewHelpers.js new file mode 100644 index 0000000..b008e4b --- /dev/null +++ b/client/src/helpers/ImagesTreeViewHelpers.js @@ -0,0 +1,83 @@ +import { v4 as uuidv4 } from 'uuid'; +export const filterDictByKeys = (obj, keys) => Object.fromEntries(Object.entries(obj).filter(([key]) => keys.includes(key))); +export const getCurrentExperimentActivityMaps = (activityMapsMetadata, experimentActivityMaps) => Object.keys(activityMapsMetadata) + .filter(key => experimentActivityMaps.includes(key)) + .reduce((obj, key) => { + obj[key] = activityMapsMetadata[key]; + return obj; + }, {}); + +export const DoDataPreprocessing = (filteredActivityMaps, currentExperimentName) => { + /** + * Data preprocessing + * If the experiment key or hierarchy key are not exists then add hierarchy array with one element "Experiment Name" + * Target is : we have the hierarchy array for each object + */ + Object.values(filteredActivityMaps).map(obj => { + if (obj.experiment === undefined || obj.experiment === true) { + // Experiment is true or experiment key doesn't exist + if(obj.hierarchy === undefined){ // no hierarchy key + obj.hierarchy = [currentExperimentName] + } else { + // hierarchy key exists + obj.hierarchy = obj.hierarchy.includes(currentExperimentName) ? obj.hierarchy : [currentExperimentName,...obj.hierarchy] + } + } else { + // Experiment is false and no hierarchy key exists + if (!obj.hierarchy) { + obj.hierarchy = ['others']; + } + } + + return obj + }); + + /** + * Set the level key for each object and the level + * Convert map to array + */ + Object.entries(filteredActivityMaps).reduce((acc, [key, value]) => { + value.key = key; + acc[key] = value; + return acc; + }, {}); + + return filteredActivityMaps; +}; + +export const GetUniqueHierarchyRoots = (processedFilteredActivityMaps) => { + // Get unique roots of the tree + const hierarchyRoots= new Set() + for(const obj of Object.values(processedFilteredActivityMaps)){ + if(obj?.hierarchy?.length > 0){ + hierarchyRoots.add(obj.hierarchy[0]) + } + } + return Array.from(hierarchyRoots) +} + +export const BuildHierarchyTree = (hierarchyTreeAllData,hierarchyTreeMaxLevel, deepestHierarchyArray, hierarchyArrayCurrentIndex) => { + const tree = [] + + // stop condition + if(hierarchyArrayCurrentIndex === hierarchyTreeMaxLevel){ + return tree + } + + // get children of the current hierarchy level + const levelChildren = hierarchyTreeAllData.filter(obj => obj.hierarchy.length === hierarchyArrayCurrentIndex + 1).map(obj => { + return { + id: obj.key, + label: obj.key + } + }) + + // create the new level of the tree + tree.push({ + id: deepestHierarchyArray[hierarchyArrayCurrentIndex] + uuidv4(), + label: deepestHierarchyArray[hierarchyArrayCurrentIndex], + children: [...levelChildren, ...BuildHierarchyTree(hierarchyTreeAllData, hierarchyTreeMaxLevel, deepestHierarchyArray, hierarchyArrayCurrentIndex+1)] + }) + + return tree +} diff --git a/client/src/helpers/activityMapHelper.js b/client/src/helpers/activityMapHelper.js index bc069d6..b6fadb3 100644 --- a/client/src/helpers/activityMapHelper.js +++ b/client/src/helpers/activityMapHelper.js @@ -1,27 +1,27 @@ import {getLUTHelper, makeSliceTransparent, removeBackground} from "./stackHelper"; import {STACK_HELPER_BORDER_COLOR} from "../settings"; -export function postProcessActivityMap(stackHelper, activityMap, orientation, index) { +export function postProcessActivityMap(stackHelper, activityMap, orientation) { removeBackground(stackHelper); stackHelper.bbox.visible = false; stackHelper.border.color = STACK_HELPER_BORDER_COLOR; - stackHelper.index = index; stackHelper.orientation = orientation + stackHelper.slice.interpolation = 0 // no interpolation makeSliceTransparent(stackHelper); - updateLUT(activityMap.colorGradient, activityMap.opacityGradient, stackHelper); + updateLUT(activityMap.colorRange, activityMap.intensityRange, activityMap.isRangeInclusive, stackHelper); return stackHelper } -export function updateLUT(colorGradient, opacityGradient, stackHelper) { - const helperLut = getLUTHelper(colorGradient, opacityGradient); +export function updateLUT(colorRange, intensityRange, isRangeInclusive, stackHelper) { + const helperLut = getLUTHelper(colorRange, intensityRange, isRangeInclusive, [...stackHelper.stack.minMax]); stackHelper.slice.lut = helperLut.lut - stackHelper.slice.lutO = helperLut.lutO stackHelper.slice.lutTexture = helperLut.texture; - stackHelper.colorGradient = JSON.stringify(colorGradient) - stackHelper.opacityGradient = JSON.stringify(opacityGradient) + stackHelper.colorRange = JSON.stringify(colorRange) + stackHelper.intensityRange = JSON.stringify(intensityRange) + stackHelper.isRangeInclusive = isRangeInclusive } export function getActivityMapsDiff(activityMaps, activityMapsStackHelpersRef) { @@ -37,11 +37,4 @@ export function getActivityMapsDiff(activityMaps, activityMapsStackHelpersRef) { const activityMapsToRemove = oldActivityMapState.filter(amId => !newActivityMapsState.includes(amId)); return {activityMapsToAdd, activityMapsToRemove}; -} - -export const updateVisibility = (activityMapsStackHelpersRef, activeActivityMaps) => { - Object.keys(activityMapsStackHelpersRef.current).forEach(amId => { - const stackHelper = activityMapsStackHelpersRef.current[amId]; - stackHelper.visible = activeActivityMaps[amId]?.visibility - }); } \ No newline at end of file diff --git a/client/src/helpers/baseAmiWidget.js b/client/src/helpers/baseAmiWidget.js new file mode 100644 index 0000000..506a50d --- /dev/null +++ b/client/src/helpers/baseAmiWidget.js @@ -0,0 +1,491 @@ +import * as AMI from "ami.js"; + +const COLORS = { + blue: '#00B0FF', + yellow: '#FFEB3B', + red: '#F50057', + green: '#76FF03', + white: '#FFF', + lightRed: '#F77', +} +const CoreUtils = AMI.UtilsCore +const WidgetsCss = AMI.WidgetsCss + + +/** + * @module Abstract Widget + */ +// tslint:disable-next-line +const widgetsBase = (three = window.THREE) => { + if (three === undefined || three.Object3D === undefined) { + return null; + } + + const Constructor = three.Object3D; + return class extends Constructor { + constructor(targetMesh, controls, params) { + super(); + + this._widgetType = 'Base'; + + this._params = params; + if (params.hideMesh === true) { + this.visible = false; + } + + const elementStyle = document.getElementById('ami-widgets'); + if (elementStyle === null) { + const styleEl = document.createElement('style'); + styleEl.id = 'ami-widgets'; + styleEl.innerHTML = WidgetsCss.code; + document.head.appendChild(styleEl); + } + + this._enabled = true; + this._selected = false; + this._hovered = true; + this._active = true; + + this._colors = { + default: COLORS.blue, + active: COLORS.yellow, + hover: COLORS.red, + select: COLORS.green, + text: COLORS.white, + error: COLORS.lightRed, + }; + this._color = this._colors.default; + + this._dragged = false; + // can not call it visible because it conflicts with THREE.Object3D + this._displayed = true; + + this._targetMesh = targetMesh; + this._controls = controls; + this._camera = controls.object; + this._container = controls.domElement; + + this._worldPosition = new three.Vector3(); // LPS position + if (params.worldPosition) { + this._worldPosition.copy(params.worldPosition); + } else if (this._targetMesh !== null) { + this._worldPosition.copy(this._targetMesh.position); + } + } + + initOffsets() { + const box = this._container.getBoundingClientRect(); + + const body = document.body; + const docEl = document.documentElement; + + const scrollTop = window.pageYOffset || docEl.scrollTop || body.scrollTop; + const scrollLeft = window.pageXOffset || docEl.scrollLeft || body.scrollLeft; + + const clientTop = docEl.clientTop || body.clientTop || 0; + const clientLeft = docEl.clientLeft || body.clientLeft || 0; + + this._offsets = { + top: Math.round(box.top + scrollTop - clientTop), + left: Math.round(box.left + scrollLeft - clientLeft), + }; + } + + getMouseOffsets(event, container) { + return { + x: ((event.clientX - this._offsets.left) / container.offsetWidth) * 2 - 1, + y: -((event.clientY - this._offsets.top) / container.offsetHeight) * 2 + 1, + screenX: event.clientX - this._offsets.left, + screenY: event.clientY - this._offsets.top, + }; + } + + /** + * Get area of polygon. + * + * @param {Array} points Ordered vertices' coordinates + * + * @returns {Number} + */ + getArea(points) { + let area = 0; + let j = points.length - 1; // the last vertex is the 'previous' one to the first + + for (let i = 0; i < points.length; i++) { + area += (points[j].x + points[i].x) * (points[j].y - points[i].y); + j = i; // j is the previous vertex to i + } + + return Math.abs(area / 2); + } + + /** + * Get index of ultrasound region by data coordinates. + * + * @param {Array} regions US regions + * @param {Vector3} point Data coordinates + * + * @returns {Number|null} + */ + getRegionByXY(regions, point) { + let result = null; + + regions.some((region, ind) => { + if ( + point.x >= region.x0 && + point.x <= region.x1 && + point.y >= region.y0 && + point.y <= region.y1 + ) { + result = ind; + + return true; + } + }); + + return result; + } + + /** + * Get point inside ultrasound region by data coordinates. + * + * @param {Object} region US region data + * @param {Vector3} point Data coordinates + * + * @returns {Vector2|null} + */ + getPointInRegion(region, point) { + if (!region) { + return null; + } + + return new three.Vector2( + (point.x - region.x0 - (region.axisX || 0)) * region.deltaX, + (point.y - region.y0 - (region.axisY || 0)) * region.deltaY + ); + } + + /** + * Get point's ultrasound coordinates by data coordinates. + * + * @param {Array} regions US regions + * @param {Vector3} point Data coordinates + * + * @returns {Vector2|null} + */ + getUsPoint(regions, point) { + return this.getPointInRegion(regions[this.getRegionByXY(regions, point)], point); + } + + /** + * Get distance between points inside ultrasound region. + * + * @param {Vector3} pointA Begin data coordinates + * @param {Vector3} pointB End data coordinates + * + * @returns {Number|null} + */ + getUsDistance(pointA, pointB) { + const regions = this._params.ultrasoundRegions || []; + + if (regions.length < 1) { + return null; + } + + const regionA = this.getRegionByXY(regions, pointA); + const regionB = this.getRegionByXY(regions, pointB); + + if ( + regionA === null || + regionB === null || + regionA !== regionB || + regions[regionA].unitsX !== 'cm' || + regions[regionA].unitsY !== 'cm' + ) { + return null; + } + + return this.getPointInRegion(regions[regionA], pointA).distanceTo( + this.getPointInRegion(regions[regionA], pointB) + ); + } + + /** + * Get distance between points + * + * @param {Vector3} pointA Begin world coordinates + * @param {Vector3} pointB End world coordinates + * @param {number} cf Calibration factor + * + * @returns {Object} + */ + getDistanceData(pointA, pointB, calibrationFactor) { + let distance = null; + let units = null; + + if (calibrationFactor) { + distance = pointA.distanceTo(pointB) * calibrationFactor; + } else if (this._params.ultrasoundRegions && this._params.lps2IJK) { + const usDistance = this.getUsDistance( + CoreUtils.worldToData(this._params.lps2IJK, pointA), + CoreUtils.worldToData(this._params.lps2IJK, pointB) + ); + + if (usDistance !== null) { + distance = usDistance * 10; + units = 'mm'; + } else { + distance = pointA.distanceTo(pointB); + units = this._params.pixelSpacing ? 'mm' : 'units'; + } + } else { + distance = pointA.distanceTo(pointB); + } + + return { + distance, + units, + }; + } + + getLineData(pointA, pointB) { + const line = pointB.clone().sub(pointA); + const center = pointB + .clone() + .add(pointA) + .multiplyScalar(0.5); + const length = line.length(); + const angle = line.angleTo(new three.Vector3(1, 0, 0)); + + return { + line, + length, + transformX: center.x - length / 2, + transformY: center.y - this._container.offsetHeight, + transformAngle: pointA.y < pointB.y ? angle : -angle, + center, + }; + } + + getRectData(pointA, pointB) { + const line = pointB.clone().sub(pointA); + const vertical = line.clone().projectOnVector(new three.Vector3(0, 1, 0)); + const min = pointA.clone().min(pointB); // coordinates of the top left corner + + return { + width: line + .clone() + .projectOnVector(new three.Vector3(1, 0, 0)) + .length(), + height: vertical.length(), + transformX: min.x, + transformY: min.y - this._container.offsetHeight, + paddingVector: vertical.clone().normalize(), + }; + } + + /** + * @param {HTMLElement} label + * @param {Vector3} point label's center coordinates (default) + * @param {Boolean} corner if true, then point is the label's top left corner coordinates + */ + adjustLabelTransform(label, point, corner) { + let x = Math.round(point.x - (corner ? 0 : label.offsetWidth / 2)); + let y = + Math.round(point.y - (corner ? 0 : label.offsetHeight / 2)) - this._container.offsetHeight; + + if (x < 0) { + x = x > -label.offsetWidth ? 0 : x + label.offsetWidth; + } else if (x > this._container.offsetWidth - label.offsetWidth) { + x = + x < this._container.offsetWidth + ? this._container.offsetWidth - label.offsetWidth + : x - label.offsetWidth; + } + + if (y < -this._container.offsetHeight) { + y = + y > -this._container.offsetHeight - label.offsetHeight + ? -this._container.offsetHeight + : y + label.offsetHeight; + } else if (y > -label.offsetHeight) { + y = y < 0 ? -label.offsetHeight : y - label.offsetHeight; + } + + return new three.Vector2(x, y); + } + + worldToScreen(worldCoordinate) { + const screenCoordinates = worldCoordinate.clone(); + screenCoordinates.project(this._camera); + + screenCoordinates.x = Math.round( + ((screenCoordinates.x + 1) * this._container.offsetWidth) / 2 + ); + screenCoordinates.y = Math.round( + ((-screenCoordinates.y + 1) * this._container.offsetHeight) / 2 + ); + screenCoordinates.z = 0; + + return screenCoordinates; + } + + update() { + // to be overloaded + window.console.log('update() should be overloaded!'); + } + + updateColor() { + if (this._active) { + this._color = this._colors.active; + } else if (this._hovered) { + this._color = this._colors.hover; + } else if (this._selected) { + this._color = this._colors.select; + } else { + this._color = this._colors.default; + } + } + + // tslint:disable-next-line + setDefaultColor(color) { + this._colors.default = color; + if (this._handles) { + this._handles.forEach(elem => (elem._colors.default = color)); + } + this.update(); + } + + show() { + this.showDOM(); + this.showMesh(); + this.update(); + this._displayed = true; + } + + hide() { + this.hideDOM(); + this.hideMesh(); + this._displayed = false; + } + + hideDOM() { + // to be overloaded + window.console.log('hideDOM() should be overloaded!'); + } + + showDOM() { + // to be overloaded + window.console.log('showDOM() should be overloaded!'); + } + + hideMesh() { + this.visible = false; + } + + showMesh() { + if (this._params.hideMesh === true) { + return; + } + + this.visible = true; + } + + free() { + this._camera = null; + this._container = null; + this._controls = null; + this._params = null; + this._targetMesh = null; + } + + get widgetType() { + return this._widgetType; + } + + get targetMesh() { + return this._targetMesh; + } + + set targetMesh(targetMesh) { + this._targetMesh = targetMesh; + this.update(); + } + + get worldPosition() { + return this._worldPosition; + } + + set worldPosition(worldPosition) { + this._worldPosition.copy(worldPosition); + this.update(); + } + + get enabled() { + return this._enabled; + } + + set enabled(enabled) { + this._enabled = enabled; + this.update(); + } + + get selected() { + return this._selected; + } + + set selected(selected) { + this._selected = selected; + this.update(); + } + + get hovered() { + return this._hovered; + } + + set hovered(hovered) { + this._hovered = hovered; + this.update(); + } + + get dragged() { + return this._dragged; + } + + set dragged(dragged) { + this._dragged = dragged; + this.update(); + } + + get displayed() { + return this._displayed; + } + + set displayed(displayed) { + this._displayed = displayed; + this.update(); + } + + get active() { + return this._active; + } + + set active(active) { + this._active = active; + this.update(); + } + + get color() { + return this._color; + } + + // tslint:disable-next-line + set color(color) { + this._color = color; + this.update(); + } + }; +}; + +export {widgetsBase}; +export default widgetsBase(); \ No newline at end of file diff --git a/client/src/helpers/deserializerHelper.js b/client/src/helpers/deserializerHelper.js new file mode 100644 index 0000000..1a56f88 --- /dev/null +++ b/client/src/helpers/deserializerHelper.js @@ -0,0 +1,86 @@ +import * as THREE from "three"; +import * as AMI from "ami.js"; + +const StackModel = AMI.StackModel; +const FrameModel = AMI.FrameModel; + +export function deserializeStack(decodedData) { + if (!decodedData || !decodedData.stack) { + throw new Error('Invalid decoded data format.'); + } + + const stackData = decodedData.stack; + const dataType = decodedData.dataType; + const stack = new StackModel(); + + // Iterate over all properties of the stack + for (let prop in stack) { + if (stack.hasOwnProperty(prop) && stackData.hasOwnProperty(prop)) { + if (isVector3Object(stackData[prop])) { + stack[prop] = new THREE.Vector3(stackData[prop].x, stackData[prop].y, stackData[prop].z); + } else if (prop === '_frame' && Array.isArray(stackData[prop])) { + stack[prop] = stackData[prop].map(frameData => deserializeFrame(frameData, dataType)) + } else { + stack[prop] = stackData[prop]; + } + } + } + return stack; +} + +function deserializeFrame(frameData, dataType) { + const modelFrame = new FrameModel(); + + const typedArrayConstructor = getTypedArrayConstructor(dataType); + + if (!typedArrayConstructor) { + throw new Error(`Unsupported dataType: ${dataType}`); + } + + for (let frameProp in frameData) { + if (frameData.hasOwnProperty(frameProp)) { + if (frameProp === '_pixelData' && typedArrayConstructor) { + // Handle _pixelData with dynamic typed array based on dataType + modelFrame[frameProp] = ensureAlignmentAndCreateTypedArray(typedArrayConstructor, frameData._pixelData); + } else { + modelFrame[frameProp] = frameData[frameProp]; + } + } + } + + return modelFrame; +} + +function ensureAlignmentAndCreateTypedArray(arrayType, pixelData) { + // Ensure the byte offset is aligned with the typed array's element size + if (pixelData.byteOffset % arrayType.BYTES_PER_ELEMENT === 0) { + return new arrayType(pixelData.buffer, pixelData.byteOffset, pixelData.length / arrayType.BYTES_PER_ELEMENT); + } else { + // If the byteOffset is not aligned, copy into a new buffer + const alignedBuffer = new ArrayBuffer(pixelData.length); + const uint8View = new Uint8Array(alignedBuffer); + uint8View.set(new Uint8Array(pixelData.buffer, pixelData.byteOffset, pixelData.length)); + return new arrayType(alignedBuffer); + } +} + +function getTypedArrayConstructor(dataType) { + // Mapping of data type strings to typed array constructors + const typedArrayMap = { + 'Int8Array': Int8Array, + 'Uint8Array': Uint8Array, + 'Int16Array': Int16Array, + 'Uint16Array': Uint16Array, + 'Int32Array': Int32Array, + 'Uint32Array': Uint32Array, + 'Float32Array': Float32Array, + 'Float64Array': Float64Array + }; + + return typedArrayMap[dataType] || null; +} + + +function isVector3Object(obj) { + return obj && typeof obj === 'object' && 'x' in obj && 'y' in obj && 'z' in obj; +} diff --git a/client/src/helpers/gradientHelper.js b/client/src/helpers/gradientHelper.js index a856ec6..9cd00d1 100644 --- a/client/src/helpers/gradientHelper.js +++ b/client/src/helpers/gradientHelper.js @@ -1,80 +1,92 @@ -import {DEFAULT_COLOR_GRADIENT, GRADIENT_STEPS} from "../settings"; +export function getLUTGradients(colorRange, intensityRange, isRangeInclusive, stackIntensityRange) { -export function getOriginalHexColor(gradient) { - // Find the color associated with color stop 0 - const originalColor = gradient.find(color => color[0] === 0); - if (!originalColor) { - console.warn("Color stop 0 not found in gradient"); - return null; + // Adjust intensityRange if it's outside stackIntensityRange + if (intensityRange[0] < stackIntensityRange[0] || intensityRange[1] > stackIntensityRange[1]) { + console.error('IntensityRange is outside StackIntensityRange. Using StackIntensityRange instead.'); + intensityRange = [...stackIntensityRange]; } - const r = Math.round(originalColor[1] * 255); - const g = Math.round(originalColor[2] * 255); - const b = Math.round(originalColor[3] * 255); - - return rgbToHex(r, g, b); -} - -function rgbToHex(r, g, b) { - return "#" + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1).toUpperCase(); -} - - -export function getColorGradient(hex) { - const originalColor = hexToRgb(hex); - - if (!originalColor) { - console.warn(`Invalid hex color provided: ${hex}`); - return DEFAULT_COLOR_GRADIENT; + // Normalize the intensity range + const epsilon = isRangeInclusive ? 0 : 0.01; // A small value to ensure min is non-inclusive + const normalizedMinIntensity = Math.min((intensityRange[0] - stackIntensityRange[0]) / (stackIntensityRange[1] - stackIntensityRange[0]) + epsilon, 1); + const normalizedMaxIntensity = (intensityRange[1] - stackIntensityRange[0]) / (stackIntensityRange[1] - stackIntensityRange[0]); + + let colorGradient, opacityGradient; + + if (normalizedMinIntensity === 0 && normalizedMaxIntensity === 1) { + // Simplify gradients when intensityRange matches stackIntensityRange + colorGradient = [ + [0.0, ...colorRange[0], 1], // Min color at start of intensity range + [1.0, ...colorRange[1], 1] // Max color at end of intensity range + ]; + opacityGradient = [ + [0.0, 1], // Fully opaque across the range + [1.0, 1] // Maintain opacity + ]; + } else { + // Define gradients with transitions + colorGradient = [ + [0.0, 0, 0, 0, 0], // Transparent below intensity range + [normalizedMinIntensity - epsilon, 0, 0, 0, 0], // Transparent below intensity range + [normalizedMinIntensity, ...colorRange[0], 1], // Min color at start of intensity range + [normalizedMaxIntensity, ...colorRange[1], 1], // Max color at end of intensity range + [1.0, ...colorRange[1], 1] // Max should take everything above the max set. + ]; + opacityGradient = [ + [0.0, 0], // Fully transparent below intensity range + [normalizedMinIntensity - epsilon, 0], // Fully transparent below intensity range + [normalizedMinIntensity, 1], // Opaque within intensity range + [normalizedMaxIntensity, 1], // Opaque within intensity range + [1.0, 1] // Max should take everything above the max set. + ]; } - const complementaryColor = getComplementaryColor(originalColor); - - // Create an array to store the gradient steps - let gradient = []; + return {colorGradient, opacityGradient}; +} - for (let i = 0; i < GRADIENT_STEPS; i++) { - const step = i / (GRADIENT_STEPS - 1); // t ranges from 0 to 1 - gradient.push([ - step, // Color stop position - lerp(originalColor.r, complementaryColor.r, step), - lerp(originalColor.g, complementaryColor.g, step), - lerp(originalColor.b, complementaryColor.b, step) - ]); +export function normalizedRgbToHex(rgbArray) { + // Ensure the input is an array of three normalized values + if (!Array.isArray(rgbArray) || rgbArray.length !== 3) { + throw new Error("Input must be an array of three normalized RGB values"); } - return gradient; -} + // Convert each normalized float to an integer and then to a hex string + const hex = rgbArray.map(normalizedValue => { + // Ensure the value is within the expected range + if (normalizedValue < 0 || normalizedValue > 1) { + throw new Error("Each value in the array must be between 0 and 1"); + } -export function hexToRgb(hex) { - const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex); - return result ? { - r: parseInt(result[1], 16) / 255, - g: parseInt(result[2], 16) / 255, - b: parseInt(result[3], 16) / 255 - } : null; -} + // Convert to an integer in the range 0-255 + const intValue = Math.round(normalizedValue * 255); + // Convert the integer to a hex string and pad with leading zero if necessary + return intValue.toString(16).padStart(2, '0'); + }).join(''); -export function getComplementaryColor(color) { - return { - r: 1 - color.r, - g: 1 - color.g, - b: 1 - color.b - }; + return `#${hex}`; } -// Linear interpolation function -function lerp(start, end, step) { - return start * (1 - step) + end * step; +function hexToRgb(hex) { + let r = 0, g = 0, b = 0; + if (hex.length === 4) { + r = parseInt(hex[1] + hex[1], 16); + g = parseInt(hex[2] + hex[2], 16); + b = parseInt(hex[3] + hex[3], 16); + } else if (hex.length === 7) { + r = parseInt(hex[1] + hex[2], 16); + g = parseInt(hex[3] + hex[4], 16); + b = parseInt(hex[5] + hex[6], 16); + } + return [r, g, b]; } - -export function getOpacityGradient(opacityPercentage) { - return [[0, 0], [1, opacityPercentage / 100]] +export function rgbaObjectToNormalizedRgb(rgba) { + return [rgba.r / 255, rgba.g / 255, rgba.b / 255]; } -export function getOriginalOpacity(gradientOpacity) { - return gradientOpacity[1][1] +export function hexToNormalizedRGBA(hex) { + const [r, g, b] = hexToRgb(hex) + return rgbaObjectToNormalizedRgb({r, g, b}) } \ No newline at end of file diff --git a/client/src/helpers/lutHelper.js b/client/src/helpers/lutHelper.js new file mode 100644 index 0000000..0b58cf4 --- /dev/null +++ b/client/src/helpers/lutHelper.js @@ -0,0 +1,9 @@ +import {INTENSITY_NOT_FOUND_IN_LUT} from "../settings"; + +export function getAbbreviation(lut, atlasIntensity) { + return lut[atlasIntensity]?.abbreviation; +} + +export function getName(lut, atlasIntensity) { + return lut[atlasIntensity]?.full_structure_name || INTENSITY_NOT_FOUND_IN_LUT; +} \ No newline at end of file diff --git a/client/src/helpers/probeHelper.js b/client/src/helpers/probeHelper.js new file mode 100644 index 0000000..c3eb3f1 --- /dev/null +++ b/client/src/helpers/probeHelper.js @@ -0,0 +1,20 @@ +import * as THREE from "three"; +import {customWidgetsVoxelProbe} from "./probeWidget"; + +const VoxelProbe = customWidgetsVoxelProbe(THREE); + + +export const getProbeWidget = (currentAtlasStackHelper, controls, onMouseMove) => { + + if (!currentAtlasStackHelper) { + return null + } + + const params = { + stack: currentAtlasStackHelper.stack, + }; + + + return new VoxelProbe(currentAtlasStackHelper.slice.mesh, controls, onMouseMove, params) + +}; diff --git a/client/src/helpers/probeWidget.js b/client/src/helpers/probeWidget.js new file mode 100644 index 0000000..2e23c21 --- /dev/null +++ b/client/src/helpers/probeWidget.js @@ -0,0 +1,226 @@ +import * as AMI from "ami.js"; +import {widgetsBase} from './baseAmiWidget'; + + +const ModelsVoxel = AMI.VoxelModel +const widgetsHandleFactory = AMI.handleWidgetFactory +const CoreUtils = AMI.UtilsCore + + +/** + * @module widgets/voxelProbe + */ +const customWidgetsVoxelProbe = (three = window.THREE) => { + if (three === undefined || three.Object3D === undefined) { + return null; + } + + const WidgetsHandle = widgetsHandleFactory(three); + + + const Constructor = widgetsBase(three); + return class extends Constructor { + constructor(targetMesh, controls, viewerCallback, params = {}) { + super(targetMesh, controls, params); + + this._widgetType = 'VoxelProbe'; + + // incoming parameters (optional: worldPosition) + this._stack = params.stack; // required + + this._container.style.cursor = 'pointer'; + this._initialized = false; // set to true onEnd + this._active = true; + this._moving = true; + this._domHovered = false; + + + // handle (represent voxel) + this._handle = new WidgetsHandle(targetMesh, controls, params); + this.add(this._handle); + this._handle.hide(); + + this._moveHandle = new WidgetsHandle(targetMesh, controls, params); + this.add(this._moveHandle); + this._moveHandle.hide(); + + this.create(); + + // event listeners + this.onMove = this.onMove.bind(this); + this.addEventListeners(); + + this.viewerCallback = viewerCallback.bind(this) + } + + addEventListeners() { + this._container.addEventListener('mousemove', this.onMove); + } + + removeEventListeners() { + this._container.removeEventListener('mousemove', this.onMove); + } + + onStart(evt) { + this._moveHandle.onMove(evt, true); + this._handle.onStart(evt); + + this._active = this._handle.active || this._domHovered; + + if (this._domHovered) { + this._moving = true; + this._controls.enabled = false; + } + + this.update(); + } + + onMove(evt) { + try { + if (this._active) { + const prevPosition = this._moveHandle.worldPosition.clone(); + + this._dragged = true; + this._moveHandle.onMove(evt, true); + + if (this._moving) { + this._handle.worldPosition.add(this._moveHandle.worldPosition.clone().sub(prevPosition)); + } + } + + this._handle.onMove(evt); + } catch (error) { + // FIXME: _moveHandle.onMove very rarely fails. For now we ignore those ticks until we know why + return; + } + + this.update(); + } + + + onEnd() { + this._handle.onEnd(); + + if (!this._dragged && this._active && this._initialized) { + this._selected = !this._selected; // change state if there was no dragging + this._handle.selected = this._selected; + } + + this._initialized = true; + this._active = this._handle.active; + this._dragged = false; + this._moving = false; + + this.update(); + } + + hoverDom(evt) { + this._domHovered = evt.type === 'mouseenter'; + } + + create() { + this.createVoxel(); + } + + createVoxel() { + this._voxel = new ModelsVoxel(); + this._voxel.id = this.id; + } + + update() { + this.updateColor(); + + this._handle.update(); + this._worldPosition.copy(this._handle.worldPosition); + + this.updateVoxel(); // set data coordinates && value + + const info = { + isIntersecting: this._handle._raycaster.intersectObject(this.targetMesh).length > 0, + dataCoordinates: this._voxel.dataCoordinates, + value: this._voxel.value, + screenPosition: this._handle.screenPosition // or any other position info necessary + }; + + this.viewerCallback(info) + } + + updateVoxel() { + this._voxel.worldCoordinates = this._worldPosition; + this._voxel.dataCoordinates = CoreUtils.worldToData(this._stack.lps2IJK, this._worldPosition); + + // update value + let value = CoreUtils.getPixelData(this._stack, this._voxel.dataCoordinates); + + this._voxel.value = + value === null || this._stack.numberOfChannels > 1 + ? 'NA' // coordinates outside the image or RGB + : CoreUtils.rescaleSlopeIntercept( + value, + this._stack.rescaleSlope, + this._stack.rescaleIntercept + ).toFixed(); + } + + + free() { + this.removeEventListeners(); + + this.remove(this._handle); + this._handle.free(); + this._handle = null; + this.remove(this._moveHandle); + this._moveHandle.free(); + this._moveHandle = null; + + this._stack = null; + this._voxel = null; + + super.free(); + } + + hideDOM() { + this._handle.hideDOM(); + } + + showDOM() { + this._handle.showDOM(); + } + + get targetMesh() { + return this._targetMesh; + } + + set targetMesh(targetMesh) { + this._targetMesh = targetMesh; + this._handle.targetMesh = targetMesh; + this._moveHandle.targetMesh = targetMesh; + this.update(); + } + + get worldPosition() { + return this._worldPosition; + } + + set worldPosition(worldPosition) { + this._handle.worldPosition.copy(worldPosition); + this._moveHandle.worldPosition.copy(worldPosition); + this._worldPosition.copy(worldPosition); + this.update(); + } + + get active() { + return this._active; + } + + set active(active) { + this._active = active; + this._controls.enabled = !this._active; + + this.update(); + } + }; +}; + +export {customWidgetsVoxelProbe}; +export default customWidgetsVoxelProbe(); diff --git a/client/src/helpers/stackHelper.js b/client/src/helpers/stackHelper.js index c515d24..19db569 100644 --- a/client/src/helpers/stackHelper.js +++ b/client/src/helpers/stackHelper.js @@ -1,41 +1,27 @@ import * as AMI from 'ami.js'; import * as THREE from 'three'; import {DIRECTIONS} from "../constants"; -import {LUT_DATA, STACK_MESH_INDEX} from "../settings"; - -const StackModel = AMI.StackModel; +import { + COLOR_RANGES, + DEFAULT_IS_INTENSITY_RANGE_INCLUSIVE, + STACK_HELPER_BORDER_COLOR, + STACK_MESH_INDEX +} from "../settings"; +import {getLUTGradients} from "./gradientHelper"; +import { updateLUT } from './activityMapHelper'; + +const StackHelper = AMI.stackHelperFactory(THREE); const HelpersLut = AMI.lutHelperFactory(THREE); -export function deserializeStack(decodedData) { - const stack = new StackModel(); - - // Iterate over all properties of the stack - for (let prop in stack) { - if (stack.hasOwnProperty(prop) && decodedData.hasOwnProperty(prop)) { - if (isVector3Object(decodedData[prop])) { - stack[prop] = new THREE.Vector3(decodedData[prop].x, decodedData[prop].y, decodedData[prop].z); - } else { - stack[prop] = decodedData[prop]; - } - } - } - - return stack; -} - -function isVector3Object(obj) { - return obj && typeof obj === 'object' && 'x' in obj && 'y' in obj && 'z' in obj; -} - -export const getNewSliceIndex = (stackHelper, direction) => { +export const getNewSliceIndex = (stackHelper, direction, delta = 1) => { if (!stackHelper) { return null; } - if (direction === DIRECTIONS.UP && stackHelper.index < stackHelper.orientationMaxIndex - 1) { - return stackHelper.index + 1; - } else if (direction === DIRECTIONS.DOWN && stackHelper.index > 0) { - return stackHelper.index - 1; + if (direction === DIRECTIONS.UP && stackHelper.index < stackHelper.orientationMaxIndex - delta) { + return stackHelper.index + delta; + } else if (direction === DIRECTIONS.DOWN && stackHelper.index > delta) { + return stackHelper.index - delta; } return null; @@ -45,17 +31,16 @@ export const getNewSliceIndex = (stackHelper, direction) => { export const updateStackHelperIndex = (stackHelper, newIndex) => { if (stackHelper) { stackHelper.index = newIndex; - makeSliceTransparent(stackHelper); + stackHelper.slice.interpolation = 0 // no interpolation } }; -export const getLUTHelper = (colorGradient, opacityGradient) => { +export const getLUTHelper = (colorRange, intensityRange, isRangeInclusive, stackIntensityRange) => { const dummyElement = document.createElement('div'); + const {colorGradient, opacityGradient} = getLUTGradients(colorRange, intensityRange, isRangeInclusive, stackIntensityRange); return new HelpersLut(dummyElement, 'custom', 'custom', colorGradient, opacityGradient); - } - export const makeSliceTransparent = (stackHelper) => { const material = getMaterial(stackHelper) material.transparent = true; @@ -69,6 +54,7 @@ export const getMaterial = (stackHelper) => { return stackHelper.children[meshIndex].children[0].material } + export const removeBackground = (stackHelper) => { for (let i = stackHelper.children.length - 1; i >= 0; i--) { if (i !== STACK_MESH_INDEX) { @@ -76,4 +62,24 @@ export const removeBackground = (stackHelper) => { stackHelper.remove(child); } } +} + + +export function getAtlasStackHelper(stack, name, id, orientation) { + const stackHelper = new StackHelper(stack); + stackHelper.name = name; + stackHelper.bbox.visible = false; + stackHelper.border.color = STACK_HELPER_BORDER_COLOR; + stackHelper.orientation = orientation; + stackHelper.atlasId = id; + stackHelper.slice.interpolation = 0 // no interpolation + return stackHelper; +} + +export function postProcessAtlas(stack, atlas) { + stack.userData['id'] = atlas.id + removeBackground(stack) + makeSliceTransparent(stack) + stack.bbox.visible = false + updateLUT(COLOR_RANGES.GRAY, atlas.stack.minMax, false, stack) } \ No newline at end of file diff --git a/client/src/helpers/toolbarMenuConfiguration.js b/client/src/helpers/toolbarMenuConfiguration.js index ac67563..d9a185d 100644 --- a/client/src/helpers/toolbarMenuConfiguration.js +++ b/client/src/helpers/toolbarMenuConfiguration.js @@ -10,7 +10,7 @@ export const generateToolbarItems = (experimentsAtlas, currentExperiment, curren const toolbarItems = []; for (const [experimentID, atlasArray] of Object.entries(experimentsAtlas)) { - const atlasList = atlasArray.map(atlasID => { + const atlasList = atlasArray?.map(atlasID => { const atlasName = atlasesMetadata[atlasID].name; const atlasMetadata = atlasesMetadata[atlasID].metadata || messages.NO_METADATA return { diff --git a/client/src/helpers/viewerHelper.js b/client/src/helpers/viewerHelper.js index b688222..9f2c34f 100644 --- a/client/src/helpers/viewerHelper.js +++ b/client/src/helpers/viewerHelper.js @@ -1,7 +1,7 @@ import * as THREE from "three"; import * as AMI from 'ami.js'; -import {ORIENTATION} from "../settings"; +import {CAMERA_RANGE, ORIENTATION} from "../settings"; import {sceneObjects} from "../redux/constants"; const TrackballOrthoControl = AMI.trackballOrthoControlFactory(THREE); @@ -10,7 +10,7 @@ const OrthographicCamera = AMI.orthographicCameraFactory(THREE); export const initRenderer = (viewerContainerRef) => { const container = viewerContainerRef.current; const renderer = new THREE.WebGLRenderer({ - antialias: true, + antialias: false, }); renderer.setSize(container.offsetWidth, container.offsetHeight); renderer.setPixelRatio(window.devicePixelRatio); @@ -23,10 +23,10 @@ export const initScene = () => new THREE.Scene(); export const getOrthographicCamera = (container) => { const camera = new OrthographicCamera( - container.clientWidth / -2, - container.clientWidth / 2, - container.clientHeight / 2, - container.clientHeight / -2, + container.clientWidth / -CAMERA_RANGE, + container.clientWidth / CAMERA_RANGE, + container.clientHeight / CAMERA_RANGE, + container.clientHeight / -CAMERA_RANGE, 1, 1000 ); @@ -83,10 +83,10 @@ export const resize = (containerRef, rendererRef, cameraRef) => { const height = containerRef.current.clientHeight; - cameraRef.current.left = width / -2; - cameraRef.current.right = width / 2; - cameraRef.current.top = height / 2; - cameraRef.current.bottom = height / -2; + cameraRef.current.left = width / -CAMERA_RANGE; + cameraRef.current.right = width / CAMERA_RANGE; + cameraRef.current.top = height / CAMERA_RANGE; + cameraRef.current.bottom = height / -CAMERA_RANGE; cameraRef.current.updateProjectionMatrix(); rendererRef.current.setSize(width, height); diff --git a/client/src/icons/index.js b/client/src/icons/index.js index 1b0fb5d..5e54ef7 100644 --- a/client/src/icons/index.js +++ b/client/src/icons/index.js @@ -1,104 +1,210 @@ import * as React from "react"; import SvgIcon from "@mui/material/SvgIcon"; +import vars from '../theme/variables'; + +const {headerButtonColor} = vars; export const ArticleIcon = () => ( - - - - - - - - + + + + + + + + ); export const DropdownIcon = () => ( - - - - - + + + + + ); export const Tick = () => ( - - - - - + + + + + ); export const KeyboardArrowUpIcon = (props) => ( - - - - - + + + + + ); export const KeyboardArrowDownIcon = (props) => ( - - - - - + + + + + ); export const HomeIcon = (props) => ( - - - - - + + + + + ); export const AutoModeIcon = (props) => ( - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + ); export const ZoomInIcon = (props) => ( - - - - - + + + + + ); export const ZoomOutIcon = (props) => ( - - - - - + + + + + ); export const TonalityIcon = (props) => ( - - - - - + + + + + ); export const AtlasSelectedIcon = () => ( - - - + + + +) + +export const AbsoluteIcon = () => ( + + + +) +export const PercentageIcon = () => ( + + + ) + +export const AtlasIcon = () => ( + + + + +) + + +export const LockIcon = () => ( + + + +) + +export const UnlockIcon = () => ( + + + + + +); + +export const InfoIcon = () => ( + + + +) + + +export const SliderIncludeIcon = ({color}) => { + const fillColor = color ? color : headerButtonColor + return ( + + + + ) +} diff --git a/client/src/layout/componentMap.js b/client/src/layout/componentMap.js index 027ef91..387fcab 100644 --- a/client/src/layout/componentMap.js +++ b/client/src/layout/componentMap.js @@ -1,4 +1,5 @@ import { ViewerDashboard } from '../components/ViewerDashboard'; +import { MetadataViewer } from '../components/MetadataViewer'; import {widgetIds} from "./widgets"; /** @@ -8,6 +9,7 @@ import {widgetIds} from "./widgets"; */ const componentMap = { [widgetIds.viewerDashboard]: ViewerDashboard, + [widgetIds.metadataViewer]: MetadataViewer, }; export default componentMap \ No newline at end of file diff --git a/client/src/layout/layout.js b/client/src/layout/layout.js index a48528f..8a12981 100644 --- a/client/src/layout/layout.js +++ b/client/src/layout/layout.js @@ -10,33 +10,20 @@ export default { layout: { type: "row", id: "root", - children: [ - { - type: "row", - weight: 100, - children: [ - { - type: "tabset", - id: "leftPanel", - weight: 100, - enableDeleteWhenEmpty: false, - children: [] - } - ] - }, - { - type: "row", - weight: 0, - children: [ - { - type: "tabset", - weight: 0, - id: "rightPanel", - enableDeleteWhenEmpty: false, - children: [] - } - ] - } - ] + weight: 100, + children: [{ + type: "tabset", + id: "leftPanel", + weight: 60, + enableDeleteWhenEmpty: false, + tabSetEnableMaximize: true, + }, + { + type: "tabset", + id: "rightPanel", + weight: 40, + enableDeleteWhenEmpty: false, + tabSetEnableMaximize: true, + }] } -}; \ No newline at end of file +}; diff --git a/client/src/layout/widgets.js b/client/src/layout/widgets.js index 92f5222..d3e04b3 100644 --- a/client/src/layout/widgets.js +++ b/client/src/layout/widgets.js @@ -2,6 +2,7 @@ import { WidgetStatus } from "@metacell/geppetto-meta-client/common/layout/model export const widgetIds = { viewerDashboard: 'viewerDashboard', + metadataViewer: 'metadataViewer', } @@ -13,3 +14,12 @@ export const widget1 = () => ({ enableClose: false, status: WidgetStatus.ACTIVE, }); + +export const widget2 = () => ({ + id: widgetIds.metadataViewer, + name: "Experiment details", + component: widgetIds.metadataViewer, + panelName: "rightPanel", + enableClose: false, + status: WidgetStatus.ACTIVE, +}); diff --git a/client/src/model/models.js b/client/src/model/models.js index 496f571..dbdf284 100644 --- a/client/src/model/models.js +++ b/client/src/model/models.js @@ -8,9 +8,9 @@ export const Entities = { } export class Atlas { - constructor(id, opacity, visibility, stack, wireframeStack) { + constructor(id, visibility, stack, wireframeStack) { return { - ...Immutable({id, opacity, visibility}, {deep: true}), + ...Immutable({id, visibility}, {deep: true}), stack, wireframeStack }; @@ -18,9 +18,9 @@ export class Atlas { } export class ActivityMap { - constructor(id, colorGradient, opacityGradient, visibility, stack) { + constructor(id, colorRange, intensityRange, isRangeInclusive, visibility, stack, ) { return { - ...Immutable({id, colorGradient, opacityGradient, visibility}, {deep: true}), + ...Immutable({id, colorRange, intensityRange, isRangeInclusive, visibility }, {deep: true}), stack, }; } diff --git a/client/src/pages/HomePage.js b/client/src/pages/HomePage.js index 6b7361d..960e521 100644 --- a/client/src/pages/HomePage.js +++ b/client/src/pages/HomePage.js @@ -4,7 +4,7 @@ import CircularProgress from '@mui/material/CircularProgress'; import {useDispatch, useStore} from 'react-redux'; import {addWidget} from "@metacell/geppetto-meta-client/common/layout/actions"; -import {widget1} from "../layout/widgets"; +import {widget1, widget2} from "../layout/widgets"; import {makeStyles} from "@mui/styles"; const useStyles = makeStyles({ @@ -38,6 +38,7 @@ const MainLayout = () => { useEffect(() => { dispatch(addWidget(widget1())); + dispatch(addWidget(widget2())); }, [LayoutComponent]) return ( @@ -51,4 +52,4 @@ const MainLayout = () => { ); }; -export default MainLayout; \ No newline at end of file +export default MainLayout; diff --git a/client/src/redux/actions.js b/client/src/redux/actions.js index f272985..7ade39b 100644 --- a/client/src/redux/actions.js +++ b/client/src/redux/actions.js @@ -30,19 +30,24 @@ export const toggleViewerObjectVisibility = (id) => ({ payload: id }); -export const changeViewerObjectOpacity = (id, opacityInPercentage) => ({ - type: actions.CHANGE_VIEWER_OBJECT_OPACITY, - payload: { id, opacity: opacityInPercentage } +export const toggleIntensityRangeInclusion = (id) => ({ + type: actions.TOGGLE_INTENSITY_RANGE_INCLUSION, + payload: id +}); + +export const changeActivityMapIntensityRange = (id, intensityRange) => ({ + type: actions.CHANGE_ACTIVITY_MAP_INTENSITY_RANGE, + payload: { id, intensityRange } }); -export const changeAllViewerObjectsOpacity = (opacity) => ({ - type: actions.CHANGE_ALL_VIEWER_OBJECTS_OPACITY, - payload: opacity +export const changeAllActivityMapsIntensityRange = (intensityRange) => ({ + type: actions.CHANGE_ALL_ACTIVITY_MAP_INTENSITY_RANGE, + payload: intensityRange }); -export const changeActivityMapColor = (activityMapID, colorGradient) => ({ - type: actions.CHANGE_ACTIVITY_MAP_COLOR_GRADIENT, - payload: { activityMapID, colorGradient } +export const changeActivityMapColor = (activityMapID, colorRange) => ({ + type: actions.CHANGE_ACTIVITY_MAP_COLOR_RANGE, + payload: { activityMapID, colorRange } }); export const changeViewerOrder = (order) => ({ diff --git a/client/src/redux/constants.js b/client/src/redux/constants.js index 6cb36f0..2e1b8b9 100644 --- a/client/src/redux/constants.js +++ b/client/src/redux/constants.js @@ -5,9 +5,10 @@ export const actions = { ADD_ACTIVITY_MAP_TO_VIEWER: 'ADD_ACTIVITY_MAP_TO_VIEWER', REMOVE_ACTIVITY_MAP_FROM_VIEWER: 'REMOVE_ACTIVITY_MAP_FROM_VIEWER', TOGGLE_VIEWER_OBJECT_VISIBILITY: 'TOGGLE_VIEWER_OBJECT_VISIBILITY', - CHANGE_VIEWER_OBJECT_OPACITY: 'CHANGE_VIEWER_OBJECT_OPACITY', - CHANGE_ALL_VIEWER_OBJECTS_OPACITY: 'CHANGE_ALL_ACTIVITY_MAPS_OPACITY', - CHANGE_ACTIVITY_MAP_COLOR_GRADIENT: 'CHANGE_ACTIVITY_MAP_COLOR_GRADIENT', + TOGGLE_INTENSITY_RANGE_INCLUSION: 'TOGGLE_INTENSITY_RANGE_INCLUSION', + CHANGE_ACTIVITY_MAP_INTENSITY_RANGE: 'CHANGE_ACTIVITY_MAP_INTENSITY_RANGE', + CHANGE_ALL_ACTIVITY_MAP_INTENSITY_RANGE: 'CHANGE_ALL_ACTIVITY_MAP_INTENSITY_RANGE', + CHANGE_ACTIVITY_MAP_COLOR_RANGE: 'CHANGE_ACTIVITY_MAP_COLOR_RANGE', CHANGE_VIEWER_ORDER: 'CHANGE_VIEWER_ORDER', DOWNLOAD_VIEWER_OBJECT: 'DOWNLOAD_VIEWER_OBJECT', DOWNLOAD_ALL_OBJECTS: 'DOWNLOAD_ALL_OBJECTS', @@ -32,5 +33,6 @@ export const messages = { export const sceneObjects = { CAMERA: 'camera', ATLAS: 'atlas', + ATLAS_WIREFRAME: 'atlas_wireframe', ACTIVITY_MAP: 'activity_map' } \ No newline at end of file diff --git a/client/src/redux/middleware.js b/client/src/redux/middleware.js index f0f32f2..4fa8e1c 100644 --- a/client/src/redux/middleware.js +++ b/client/src/redux/middleware.js @@ -2,7 +2,7 @@ import { fetchActivityMapStack, fetchAtlasStack, fetchAtlasWireframeStack, - fetchExperimentMetadata, fetchLUTFile, + fetchExperimentMetadata, fetchExperimentsMetadata, fetchLUTFile, fetchModelStructure } from "../services/fetchService"; import { @@ -14,43 +14,48 @@ import { import {actions} from "./constants"; import {Experiment, ActivityMap, Atlas} from "../model/models"; import { - DEFAULT_COLOR_GRADIENT, - DEFAULT_ATLAS_OPACITY, - DEFAULT_VISIBILITY, DEFAULT_OPACITY_GRADIENT, + DEFAULT_COLOR_RANGE, DEFAULT_IS_INTENSITY_RANGE_INCLUSIVE, + DEFAULT_VISIBILITY, INTENSITY_VALUE_ERROR, } from "../settings"; import {downloadActivityMap, downloadAllViewerObjects, downloadAtlas} from "../services/downloadService"; -import {getColorGradient} from "../helpers/gradientHelper"; export const middleware = store => next => async action => { switch (action.type) { case actions.FETCH_MODEL: let model = null - // let fetchedLuts = null + let lut = {} + let metadata = {} try { store.dispatch(startLoading('Fetching model...')) model = await fetchModelStructure(); - // TODO: to be added later @afonsobspinto + } catch (error) { + store.dispatch(setError(error.message)); + store.dispatch(stopLoading()); + return + } - // const lutPromises = model.luts.map(async lutID => { - // const lutData = await fetchLUTFile(lutID); - // return { lutID, lutData }; - // }); - // - // fetchedLuts = await Promise.all(lutPromises); + try { + store.dispatch(startLoading('Fetching look up table...')) + lut = await fetchLUTFile(); + } catch (error) { + store.dispatch(setError(error.message)); + store.dispatch(stopLoading()); + return + } + + try { + store.dispatch(startLoading('Fetching experiments metadata...')) + metadata = await fetchExperimentsMetadata(); } catch (error) { store.dispatch(setError(error.message)); store.dispatch(stopLoading()); return } - // const lutsMap = fetchedLuts.reduce((acc, { lutID, lutData }) => { - // acc[lutID] = lutData; - // return acc; - // }, {}); - store.dispatch(setModel({...model, Luts: {}})); + store.dispatch(setModel({...model, Lut: lut, ExperimentsMetadata: metadata})); // Extract default experimentID and atlasID const experimentAtlasEntries = Object.entries(model.ExperimentsAtlas); @@ -71,25 +76,24 @@ export const middleware = store => next => async action => { const {experimentID, atlasID} = action.payload; const currentExperiment = store.getState().currentExperiment; const currentAtlas = store.getState().viewer.atlas; + const {ExperimentsMetadata, Atlases} = store.getState().model; + if (currentExperiment?.id !== experimentID) { - let data = null - try { - store.dispatch(startLoading('Fetching experiment metadata...')) - data = await fetchExperimentMetadata(experimentID); - } catch (error) { - console.warn("No metadata found") + let experimentMetadata = ExperimentsMetadata[experimentID]; + if (!experimentMetadata) { + console.warn(`Metadata for experiment ${experimentID} not found.`); + store.dispatch(setError(`Metadata for experiment id ${experimentID} not found`)); } - store.dispatch(setCurrentExperiment(new Experiment(experimentID, data))); + store.dispatch(setCurrentExperiment(new Experiment(experimentID, experimentMetadata))); } if (currentAtlas?.id !== atlasID) { let atlasStack = null; let atlasWireframeStack = null; - let atlasMetadata = store.getState().model.Atlases[atlasID] + let atlasMetadata = Atlases[atlasID] if (!atlasMetadata) { store.dispatch(setError(`Atlas id ${atlasID} not found`)); - store.dispatch(stopLoading()); } try { store.dispatch(startLoading('Fetching atlas...')); @@ -99,6 +103,12 @@ export const middleware = store => next => async action => { store.dispatch(stopLoading()); return; } + + if (atlasStack.minMax[0] === Infinity) { + store.dispatch(setError(INTENSITY_VALUE_ERROR)); + store.dispatch(stopLoading()); + return + } try { atlasWireframeStack = await fetchAtlasWireframeStack(atlasMetadata.file); } catch (error) { @@ -108,7 +118,6 @@ export const middleware = store => next => async action => { const atlas = new Atlas( atlasID, - DEFAULT_ATLAS_OPACITY, DEFAULT_VISIBILITY, atlasStack, atlasWireframeStack @@ -135,13 +144,21 @@ export const middleware = store => next => async action => { return } + if (stack.minMax[0] === Infinity) { + store.dispatch(setError(INTENSITY_VALUE_ERROR)); + store.dispatch(stopLoading()); + return + } + const activityMapObject = new ActivityMap( - activityMapID, - activityMapMetadata.color ? getColorGradient(activityMapMetadata.color) : DEFAULT_COLOR_GRADIENT, - DEFAULT_OPACITY_GRADIENT, - DEFAULT_VISIBILITY, - stack, - ); + activityMapID, + DEFAULT_COLOR_RANGE, + [...stack.minMax], + DEFAULT_IS_INTENSITY_RANGE_INCLUSIVE, + DEFAULT_VISIBILITY, + stack, + ) + ; store.dispatch(addActivityMapToViewer(activityMapObject)); store.dispatch(stopLoading()); break; diff --git a/client/src/redux/reducers.js b/client/src/redux/reducers.js index d365ea5..d125d1b 100644 --- a/client/src/redux/reducers.js +++ b/client/src/redux/reducers.js @@ -2,7 +2,7 @@ import {INIT_STATE} from "./store"; import {actions} from "./constants"; import {ActivityMap, Atlas} from "../model/models"; import {DEFAULT_LOADING_MESSAGE} from "../settings"; -import {getOpacityGradient} from "../helpers/gradientHelper"; +import {getAdjustIntensityRange} from "../utils"; const viewerReducer = (state = INIT_STATE.viewer, action) => { @@ -16,21 +16,45 @@ const viewerReducer = (state = INIT_STATE.viewer, action) => { }; case actions.ADD_ACTIVITY_MAP_TO_VIEWER: + let newGlobalIntensityRange = state.activityMapsIntensityRange; + const activityMapIntensityRange = [...action.payload.intensityRange]; + + if (!newGlobalIntensityRange || newGlobalIntensityRange.length === 0) { + newGlobalIntensityRange = activityMapIntensityRange; + } else { + const adjustedActivityMap = { + ...action.payload, + intensityRange: getAdjustIntensityRange(newGlobalIntensityRange, action.payload.stack.minMax), + }; + + return { + ...state, + activityMaps: { + ...state.activityMaps, + [adjustedActivityMap.id]: adjustedActivityMap, + }, + order: [...state.order, adjustedActivityMap.id], + activityMapsIntensityRange: newGlobalIntensityRange, + }; + } + return { ...state, activityMaps: { ...state.activityMaps, [action.payload.id]: action.payload, }, - order: [...state.order, action.payload.id] + order: [...state.order, action.payload.id], + activityMapsIntensityRange: newGlobalIntensityRange, }; + case actions.REMOVE_ACTIVITY_MAP_FROM_VIEWER: - const nextActivityMaps = { ...state.activityMaps }; + const nextActivityMaps = {...state.activityMaps}; delete nextActivityMaps[action.payload]; const newOrder = state.order.filter(id => id !== action.payload); - return { ...state, activityMaps: nextActivityMaps, order: newOrder}; + return {...state, activityMaps: nextActivityMaps, order: newOrder}; case actions.TOGGLE_VIEWER_OBJECT_VISIBILITY: if (state.activityMaps[action.payload]) { @@ -41,91 +65,96 @@ const viewerReducer = (state = INIT_STATE.viewer, action) => { ...state.activityMaps, [action.payload]: new ActivityMap( activityMap.id, - activityMap.colorGradient, - activityMap.opacityGradient, + activityMap.colorRange, + activityMap.intensityRange, + activityMap.isRangeInclusive, !activityMap.visibility, activityMap.stack, ) } }; - } - else if (state.atlas && state.atlas.id === action.payload) { + } else if (state.atlas && state.atlas.id === action.payload) { const atlas = state.atlas; return { ...state, atlas: new Atlas( atlas.id, - atlas.opacity, !atlas.visibility, atlas.stack, atlas.wireframeStack ) }; - } - else { + } else { return state; } - case actions.CHANGE_VIEWER_OBJECT_OPACITY: - if (state.activityMaps[action.payload.id]) { - const activityMap = state.activityMaps[action.payload.id]; + case actions.TOGGLE_INTENSITY_RANGE_INCLUSION: + if (state.activityMaps[action.payload]) { + const activityMap = state.activityMaps[action.payload]; return { ...state, activityMaps: { ...state.activityMaps, - [action.payload.id]: new ActivityMap( + [action.payload]: new ActivityMap( activityMap.id, - activityMap.colorGradient, - getOpacityGradient(action.payload.opacity), + activityMap.colorRange, + activityMap.intensityRange, + !activityMap.isRangeInclusive, activityMap.visibility, activityMap.stack, ) } }; + } else { + return state; } - else if (state.atlas && state.atlas.id === action.payload.id) { - const atlas = state.atlas; + + case actions.CHANGE_ACTIVITY_MAP_INTENSITY_RANGE: + if (state.activityMaps[action.payload.id]) { + const activityMap = state.activityMaps[action.payload.id]; return { ...state, - atlas: new Atlas( - atlas.id, - action.payload.opacity / 100, - atlas.visibility, - atlas.stack, - atlas.wireframeStack - ) + activityMaps: { + ...state.activityMaps, + [action.payload.id]: new ActivityMap( + activityMap.id, + activityMap.colorRange, + action.payload.intensityRange, + activityMap.isRangeInclusive, + activityMap.visibility, + activityMap.stack, + ) + } }; - } - else { + } else { return state; } - case actions.CHANGE_ALL_VIEWER_OBJECTS_OPACITY: + case actions.CHANGE_ALL_ACTIVITY_MAP_INTENSITY_RANGE: const updatedActivityMaps = Object.keys(state.activityMaps).reduce((acc, activityMapID) => { const activityMap = state.activityMaps[activityMapID]; + + const adjustedIntensityRange = getAdjustIntensityRange([...action.payload], + activityMap.stack.minMax) + acc[activityMapID] = new ActivityMap( activityMap.id, - activityMap.colorGradient, - getOpacityGradient(action.payload), + activityMap.colorRange, + adjustedIntensityRange, + activityMap.isRangeInclusive, activityMap.visibility, activityMap.stack, ); return acc; }, {}); - const atlas = state.atlas; return { ...state, activityMaps: updatedActivityMaps, - atlas: new Atlas( - atlas.id, - action.payload / 100, - atlas.visibility, - atlas.stack, - atlas.wireframeStack - ) + activityMapsIntensityRange: action.payload }; - case actions.CHANGE_ACTIVITY_MAP_COLOR_GRADIENT: + + case actions.CHANGE_ACTIVITY_MAP_COLOR_RANGE: const activityMap = state.activityMaps[action.payload.activityMapID]; return { ...state, @@ -133,8 +162,9 @@ const viewerReducer = (state = INIT_STATE.viewer, action) => { ...state.activityMaps, [action.payload.activityMapID]: new ActivityMap( activityMap.id, - action.payload.colorGradient, - activityMap.opacityGradient, + action.payload.colorRange, + activityMap.intensityRange, + activityMap.isRangeInclusive, activityMap.visibility, activityMap.stack, ) @@ -199,4 +229,4 @@ const uiReducer = (state = INIT_STATE.ui, action) => { } }; -export { viewerReducer, currentExperimentReducer, modelReducer, uiReducer }; +export {viewerReducer, currentExperimentReducer, modelReducer, uiReducer}; diff --git a/client/src/redux/store.js b/client/src/redux/store.js index 04e69af..dd0a441 100644 --- a/client/src/redux/store.js +++ b/client/src/redux/store.js @@ -10,15 +10,17 @@ export const INIT_STATE = { order: [], activityMaps: {}, atlas: null, + activityMapsIntensityRange: null, }, currentExperiment: null, model: { ExperimentsAtlas: {}, AtlasActivityMap: {}, ExperimentsActivityMap: {}, - Luts: {}, + Lut: {}, Atlases: {}, - ActivityMaps:{} + ActivityMaps:{}, + ExperimentsMetadata:{} }, ui: { isLoading: false, @@ -39,11 +41,14 @@ const reducers = { * * You can build upon geppetto-meta's configuration by passing your own reducers, initial state and middlewares. */ + +const isMinimizeEnabled = false; + const store = createStore( reducers, INIT_STATE, [middleware], - { baseLayout, componentMap } + { undefined, baseLayout, componentMap, isMinimizeEnabled } ) export default store; diff --git a/client/src/services/fetchService.js b/client/src/services/fetchService.js index d5ddf44..b1378c3 100644 --- a/client/src/services/fetchService.js +++ b/client/src/services/fetchService.js @@ -1,6 +1,6 @@ import {decode} from '@msgpack/msgpack'; import {BASE_URL, COMPRESSED_EXTENSION, WIREFRAME_IDENTIFIER} from "../settings"; -import {deserializeStack} from "../helpers/stackHelper"; +import {deserializeStack} from "../helpers/deserializerHelper"; import {Entities} from "../model/models"; import {originalFilenameToNewExtension} from "../utils"; @@ -16,13 +16,13 @@ export async function fetchModelStructure() { } } -export async function fetchExperimentMetadata(experimentID) { +export async function fetchExperimentsMetadata() { try { - const response = await fetch(`${BASE_URL}/${Entities.EXPERIMENT}/${experimentID}`); + const response = await fetch(`${BASE_URL}/metadata.json`); if (!response.ok) throw new Error('Network response was not ok'); return await response.json(); } catch (error) { - console.error(`Failed to fetch experiment metadata: ${error.message}`); + console.error(`Failed to fetch experiments metadata: ${error.message}`); throw error; } } @@ -69,7 +69,7 @@ export async function fetchActivityMapStack(filename) { export async function fetchLUTFile(lutID) { try { - const response = await fetch(`${BASE_URL}/${Entities.LUT}/${lutID}`); + const response = await fetch('/CCFv3_info_by_id.json'); if (!response.ok) throw new Error('Network response was not ok'); return await response.json(); } catch (error) { diff --git a/client/src/settings.js b/client/src/settings.js index b28ba1a..67fb10a 100644 --- a/client/src/settings.js +++ b/client/src/settings.js @@ -1,10 +1,9 @@ export const BASE_URL = process.env.REACT_APP_SERVER_URL; -export const DEFAULT_ATLAS_OPACITY = 1; export const DEFAULT_VISIBILITY = true; +export const DEFAULT_IS_INTENSITY_RANGE_INCLUSIVE = false; -export const VIEWER_CLEAR_COLOR = 0x00000000 export const STACK_HELPER_BORDER_COLOR = 0x353535 export const ORIENTATION = 'axial' @@ -13,35 +12,26 @@ export const SNACKBAR_TIMEOUT = 3000 export const DEFAULT_LOADING_MESSAGE = "Loading..." -export const GRADIENTS = { - HOT: [ - [0, 255 / 255, 9 / 255, 9 / 255], - [1, 255 / 255, 217 / 255, 102 / 255] - ], - COOL: [ - [0, 20 / 255, 0 / 255, 175 / 255], - [1, 20 / 255, 147 / 255, 255 / 255] - ], - BLACK_AND_WHITE: [ - [0, 3 / 255, 2 / 255, 3 / 255], - [1, 3 / 255, 2 / 255, 0] - ] +export const COLOR_RANGES = { + HOT: [[1, 9 / 255, 9 / 255], [1, 217 / 255, 102 / 255]], + COOL: [[20 / 255, 0 / 255, 175 / 255], [20 / 255, 147 / 255, 255 / 255]], + BLACK_AND_WHITE: [[3 / 255, 2 / 255, 3 / 255], [3 / 255, 2 / 255, 0]], + GRAY: [[0, 0, 0], [1, 1, 1]] } -export const DEFAULT_COLOR_GRADIENT = GRADIENTS.HOT - -const DEFAULT_ACTIVITY_MAP_OPACITY = 0.8; - -export const DEFAULT_OPACITY_GRADIENT = [[0, 0], [1, DEFAULT_ACTIVITY_MAP_OPACITY]] - -export const GRADIENT_STEPS = 9 +export const DEFAULT_COLOR_RANGE = COLOR_RANGES.HOT export const STACK_MESH_INDEX = 1 - export const ALLOWED_FILE_EXTENSIONS_REGEX = /\.(nii\.gz|nifti)$/ export const COMPRESSED_EXTENSION = '.msgpack' export const WIREFRAME_IDENTIFIER = 'W' -export class LUT_DATA { -} \ No newline at end of file +export const INTENSITY_VALUE_ERROR = "Something went wrong. Can't read intensity values" + +export const INTENSITY_NOT_FOUND_IN_LUT = "Unspecified" + +export const CAMERA_RANGE = 4 // the bigger it is, the closer the mesh will be + +export const DELTA_SLICE_BUTTON = 1; +export const DELTA_SLICE_MOUSE = 5; \ No newline at end of file diff --git a/client/src/tests/middleware.test.js b/client/src/tests/middleware.test.js index de4bc8b..4103df1 100644 --- a/client/src/tests/middleware.test.js +++ b/client/src/tests/middleware.test.js @@ -14,7 +14,7 @@ import { setModel, addActivityMapToViewer, fetchAndSetViewerAtlas, setViewerAtlas } from "../redux/actions"; import {Experiment, ActivityMap, Atlas} from "../model/models"; -import {DEFAULT_COLOR_GRADIENT, DEFAULT_ATLAS_OPACITY, DEFAULT_VISIBILITY} from "../settings"; +import {DEFAULT_COLOR_RANGE, DEFAULT_ATLAS_OPACITY, DEFAULT_VISIBILITY} from "../settings"; import {downloadActivityMap, downloadAllViewerObjects, downloadAtlas} from "../services/downloadService"; import {actions} from "../redux/constants"; @@ -45,26 +45,6 @@ describe('Middleware', () => { next = jest.fn(); }); - it('should handle FETCH_MODEL', async () => { - const mockData = require('./resources/index.json'); - fetchModelStructure.mockResolvedValueOnce(mockData); - const mockLUTData = require('./resources/lut.json'); - - mockData.luts.forEach(lutID => { - fetchLUTFile.mockResolvedValueOnce(mockLUTData); - }); - - const action = fetchModel() - - await middleware(store)(next)(action); - - const expectedLutsMap = mockData.luts.reduce((acc, lutID) => { - acc[lutID] = mockLUTData; - return acc; - }, {}); - - expect(store.dispatch).toHaveBeenCalledWith(setModel({ ...mockData, luts: expectedLutsMap })); - }); it('should handle error during FETCH_MODEL', async () => { const errorMessage = 'Some Error'; @@ -158,7 +138,7 @@ describe('Middleware', () => { const expectedObject = new ActivityMap( 'activityMapID', - DEFAULT_COLOR_GRADIENT, + DEFAULT_COLOR_RANGE, DEFAULT_ATLAS_OPACITY, DEFAULT_VISIBILITY, activityMapStack, @@ -179,7 +159,7 @@ describe('Middleware', () => { }); it('should handle DOWNLOAD_OBJECT Activity Map', () => { - const mockActivityMap = new ActivityMap(mockActivityMapID, DEFAULT_COLOR_GRADIENT, 1, true, 'stack'); + const mockActivityMap = new ActivityMap(mockActivityMapID, DEFAULT_COLOR_RANGE, 1, true, 'stack'); // Mock the state of the store store.getState = jest.fn().mockReturnValue({ @@ -216,8 +196,8 @@ describe('Middleware', () => { it('should handle DOWNLOAD_ALL_OBJECTS', () => { const mockActivityMaps = { - [mockActivityMapID]: new ActivityMap(mockActivityMapID, DEFAULT_COLOR_GRADIENT, 1, true, 'stack1'), - 'ActivityMap2': new ActivityMap('ActivityMap2', DEFAULT_COLOR_GRADIENT, 1, true, 'stack2'), + [mockActivityMapID]: new ActivityMap(mockActivityMapID, DEFAULT_COLOR_RANGE, 1, true, 'stack1'), + 'ActivityMap2': new ActivityMap('ActivityMap2', DEFAULT_COLOR_RANGE, 1, true, 'stack2'), }; const atlasID = 'Atlas1' const atlas = new Atlas(atlasID, 1, true, 'stack', 'wireframeStack'); diff --git a/client/src/tests/reducers.test.js b/client/src/tests/reducers.test.js index 586db5e..867d973 100644 --- a/client/src/tests/reducers.test.js +++ b/client/src/tests/reducers.test.js @@ -3,7 +3,7 @@ import {currentExperimentReducer, modelReducer, uiReducer, viewerReducer} from " import { addActivityMapToViewer, changeAllViewerObjectsOpacity, - changeViewerObjectOpacity, + changeActivityMapIntensityRange, removeActivityMapFromViewer, setError, setModel, @@ -15,7 +15,7 @@ import { startLoading } from "../redux/actions"; import {INIT_STATE} from "../redux/store"; -import {DEFAULT_COLOR_GRADIENT, DEFAULT_OPACITY_GRADIENT} from "../settings"; +import {DEFAULT_COLOR_RANGE, DEFAULT_OPACITY_RANGE} from "../settings"; describe('viewerReducer', () => { @@ -40,7 +40,7 @@ describe('viewerReducer', () => { }); it('should handle ADD_ACTIVITY_MAP_TO_VIEWER', () => { - const newActivityMap = new ActivityMap(activityMapID, DEFAULT_COLOR_GRADIENT, DEFAULT_OPACITY_GRADIENT, true, 'stack'); + const newActivityMap = new ActivityMap(activityMapID, DEFAULT_COLOR_RANGE, DEFAULT_OPACITY_RANGE, true, 'stack'); const expectedState = { ...initialState, activityMaps: { @@ -54,7 +54,7 @@ describe('viewerReducer', () => { it('should handle REMOVE_ACTIVITY_MAP_FROM_VIEWER', () => { - const objectToRemove = new ActivityMap(activityMapID, DEFAULT_COLOR_GRADIENT, DEFAULT_OPACITY_GRADIENT, true, 'stack', 'wireframeStack'); + const objectToRemove = new ActivityMap(activityMapID, DEFAULT_COLOR_RANGE, DEFAULT_OPACITY_RANGE, true, 'stack', 'wireframeStack'); const setupState = { activityMaps: { [activityMapID]: objectToRemove, @@ -72,7 +72,7 @@ describe('viewerReducer', () => { }); it('should handle TOGGLE_VIEWER_OBJECT_VISIBILITY for activityMap', () => { - const activityMap = new ActivityMap(activityMapID, DEFAULT_COLOR_GRADIENT, DEFAULT_OPACITY_GRADIENT, true, 'stack'); + const activityMap = new ActivityMap(activityMapID, DEFAULT_COLOR_RANGE, DEFAULT_OPACITY_RANGE, true, 'stack'); const setupState = { ...initialState, activityMaps: { @@ -83,7 +83,7 @@ describe('viewerReducer', () => { const expectedState = { ...setupState, activityMaps: { - [activityMapID]: new ActivityMap(activityMapID, DEFAULT_COLOR_GRADIENT, DEFAULT_OPACITY_GRADIENT, false, 'stack') + [activityMapID]: new ActivityMap(activityMapID, DEFAULT_COLOR_RANGE, DEFAULT_OPACITY_RANGE, false, 'stack') } }; @@ -102,7 +102,7 @@ describe('viewerReducer', () => { it('should handle CHANGE_ACTIVITY_MAP_OPACITY_GRADIENT ', () => { - const activityMap = new ActivityMap(activityMapID, DEFAULT_COLOR_GRADIENT, DEFAULT_OPACITY_GRADIENT, true, 'stack'); + const activityMap = new ActivityMap(activityMapID, DEFAULT_COLOR_RANGE, DEFAULT_OPACITY_RANGE, true, 'stack'); const setupState = { ...initialState, activityMaps: { @@ -114,11 +114,11 @@ describe('viewerReducer', () => { const expectedState = { ...setupState, activityMaps: { - [activityMapID]: new ActivityMap(activityMapID, DEFAULT_COLOR_GRADIENT, other_opacity_gradient, true, 'stack') + [activityMapID]: new ActivityMap(activityMapID, DEFAULT_COLOR_RANGE, other_opacity_gradient, true, 'stack') } }; - expect(viewerReducer(setupState, changeViewerObjectOpacity(activityMapID, 100))).toEqual(expectedState); + expect(viewerReducer(setupState, changeActivityMapIntensityRange(activityMapID, 100))).toEqual(expectedState); }); // it('should handle CHANGE_VIEWER_OBJECT_OPACITY for atlas', () => { @@ -133,7 +133,7 @@ describe('viewerReducer', () => { it('should handle CHANGE_ALL_VIEWER_OBJECTS_OPACITY', () => { const newOpacity = 0.7 - const object1 = new ActivityMap(activityMapID, DEFAULT_COLOR_GRADIENT, DEFAULT_OPACITY_GRADIENT, true, 'stack'); + const object1 = new ActivityMap(activityMapID, DEFAULT_COLOR_RANGE, DEFAULT_OPACITY_RANGE, true, 'stack'); const setupState = { ...initialState, activityMaps: { @@ -153,7 +153,7 @@ describe('viewerReducer', () => { }); // it('should handle CHANGE_ACTIVITY_MAP_COLOR', () => { - const initialObject = new ActivityMap(activityMapID, DEFAULT_COLOR_GRADIENT, DEFAULT_OPACITY_GRADIENT, true, 'stack'); + const initialObject = new ActivityMap(activityMapID, DEFAULT_COLOR_RANGE, DEFAULT_OPACITY_RANGE, true, 'stack'); const setupState = { activityMaps: { [activityMapID]: initialObject @@ -167,7 +167,7 @@ describe('viewerReducer', () => { const expectedState = { activityMaps: { - [activityMapID]: new ActivityMap(activityMapID, OTHER_COLOR_GRADIENT, DEFAULT_OPACITY_GRADIENT, true, 'stack') + [activityMapID]: new ActivityMap(activityMapID, OTHER_COLOR_GRADIENT, DEFAULT_OPACITY_RANGE, true, 'stack') } }; @@ -224,7 +224,7 @@ describe('modelReducer', () => { experimentsAtlas: {}, atlasActivityMap: {}, experimentsActivityMap: {}, - luts: {} + lut: {} }; it('should handle FETCH_MODEL_DATA_SUCCESS', async () => { diff --git a/client/src/tests/resources/index.json b/client/src/tests/resources/index.json index d7ab9b8..5d7ae3f 100644 --- a/client/src/tests/resources/index.json +++ b/client/src/tests/resources/index.json @@ -36,5 +36,5 @@ "ActivityMap5" ] }, - "luts": ["1"] + "lut": {} } \ No newline at end of file diff --git a/client/src/theme/index.js b/client/src/theme/index.js index c70a58e..366e296 100644 --- a/client/src/theme/index.js +++ b/client/src/theme/index.js @@ -1,13 +1,24 @@ import vars from "./variables"; import { createTheme } from "@mui/material/styles"; -const { primaryFont, primaryBgColor, primaryActiveColor, headerBorderLeftColor, switchTrackColor, headerBorderColor, switchTrackActiveBg, labelColor, chipBg, tooltipBgColor, whiteColor } = vars; +const { primaryFont, primaryBgColor, primaryActiveColor, headerBorderLeftColor, switchTrackColor, headerBorderColor, switchTrackActiveBg, labelColor, chipBg, tooltipBgColor, whiteColor, gray700, +gray400,gray600} = vars; -let theme = createTheme(); - -theme = createTheme( { +let theme = createTheme( { typography: { fontFamily: primaryFont, + h4: { + fontSize: '0.875rem', + fontWeight: 500, + lineHeight: '1.25rem', + whiteSpace: 'normal' + }, + h5: { + fontSize: '0.75rem', + whiteSpace: 'normal', + fontWeight: 400, + lineHeight: '1.125rem' + } }, components: { @@ -29,8 +40,8 @@ theme = createTheme( { styleOverrides: { paper: { borderRadius: '0.5rem', - border: '0.0625rem solid var(--gray-600, #302F31)', - background: '#1E1E1F', + border: `0.0625rem solid ${gray600}`, + background: gray700, boxShadow: '0rem 0.5rem 0.5rem -0.25rem rgba(16, 24, 40, 0.03), 0rem 1.25rem 1.5rem -0.25rem rgba(16, 24, 40, 0.08)', }, paperWidthXs: { @@ -181,7 +192,7 @@ theme = createTheme( { }, rail: { opacity: 1, - background: 'linear-gradient(90deg, #FFF 0%, #030203 100%)' + background: '#000' }, track: { border: 'none', @@ -223,7 +234,7 @@ theme = createTheme( { '&.MuiButtonBase-root': { minHeight: '0.0625rem', textTransform: 'none', - color: '#737378', + color: gray400, fontSize: '0.75rem', fontWeight: 500, lineHeight: '150%', @@ -260,12 +271,21 @@ theme = createTheme( { borderRadius: '0.5rem', backgroundColor: tooltipBgColor, fontWeight: 600, - fontSize: '0.75rem' + fontSize: '0.75rem', + maxWidth: 'none', }, tooltipPlacementRight: { margin: '0 0 0 0.5rem !important' } } + }, + + MuiDivider: { + styleOverrides: { + root: { + borderColor: gray600 + } + } } } } ); diff --git a/client/src/theme/variables.js b/client/src/theme/variables.js index 977fd84..99ba7e4 100644 --- a/client/src/theme/variables.js +++ b/client/src/theme/variables.js @@ -15,7 +15,17 @@ const vars = { accordianTextColor: '#8D8D91', resetButtonColor: '#737378', resetButtonActiveColor: '#8274EC', - whiteColor: '#fff' + whiteColor: '#ffffff', + + gray100: '#D6D5D7', + gray300: '#8D8D91', + gray400: '#737378', + gray25: '#FCFCFD', + gray200: '#B1B1B4', + gray700: '#1E1E1F', + gray800: '#0F0F10', + gray600: '#302F31', + gray50: '#EFEFF0' }; export default vars; \ No newline at end of file diff --git a/client/src/utils.js b/client/src/utils.js index b3ab1ab..0f9f695 100644 --- a/client/src/utils.js +++ b/client/src/utils.js @@ -6,4 +6,21 @@ export const originalFilenameToNewExtension = (filename, newExtension = COMPRESS export const getWireframeFilename = filename => { return filename.replace(ALLOWED_FILE_EXTENSIONS_REGEX, `${WIREFRAME_IDENTIFIER}.$1`); -} \ No newline at end of file +} + +export function getAdjustIntensityRange(globalRange, stackMinMax) { + const adjustedMin = Math.max(globalRange[0], stackMinMax[0]); + const adjustedMax = Math.min(globalRange[1], stackMinMax[1]); + + if (adjustedMin <= adjustedMax) { + return [adjustedMin, adjustedMax]; + } else { + if (globalRange[0] > stackMinMax[1]) { + return [stackMinMax[1], stackMinMax[1]]; + } else if (globalRange[1] < stackMinMax[0]) { + return [stackMinMax[0], stackMinMax[0]]; + } else { + return [stackMinMax[0], stackMinMax[1]]; + } + } +} diff --git a/client/src/webpack.config.dev.js b/client/src/webpack.config.dev.js deleted file mode 100644 index 1a802e6..0000000 --- a/client/src/webpack.config.dev.js +++ /dev/null @@ -1,45 +0,0 @@ -const { merge } = require('webpack-merge'); -const common = require('./webpack.config.js'); - -var path = require('path'); - -const PORT = 3300; - - -module.exports = env => { - - const theDomain = env && env.DOMAIN ? env.DOMAIN : 'localhost:5000'; - - console.log('Dev server address: ', theDomain); - - const proxyTarget = theDomain; - const replaceHost = (uri, appName) => (uri.includes("__APP_NAME__") && uri.replace("__APP_NAME__", appName + '.' + theDomain)) || uri; - if (!env.port) { - env.devPort = PORT; - } - - - const devServer = { - contentBase: path.join(__dirname, 'dist'), - compress: true, - port: Number(env.devPort), - disableHostCheck: true, - historyApiFallback: true, - proxy: { - '/api/': { - target: replaceHost( proxyTarget, 'samples'), - secure: false, - changeOrigin: true, - } - }, - }; - - return merge( - common(env), - { - mode: 'development', - devtool: 'source-map', - devServer, - } - ) -}; \ No newline at end of file diff --git a/client/src/webpack.config.js b/client/src/webpack.config.js deleted file mode 100644 index fcc3c96..0000000 --- a/client/src/webpack.config.js +++ /dev/null @@ -1,123 +0,0 @@ -const path = require('path'); -const HtmlWebpackPlugin = require('html-webpack-plugin'); -const CompressionPlugin = require('compression-webpack-plugin'); -const { CleanWebpackPlugin } = require('clean-webpack-plugin'); -const CopyWebpackPlugin = require('copy-webpack-plugin'); -const webpack = require('webpack'); -const copyPaths = [ - { from: path.resolve(__dirname, "src/assets"), to: 'assets' }, -]; -module.exports = function webpacking(envVariables) { - let env = envVariables; - if (!env) { - env = {}; - } - if (!env.mode) { - env.mode = 'production'; - } - - const API_URL = { - production: JSON.stringify('https://vfb.dev.metacell.us/'), - development: JSON.stringify('http://localhost:8080/') - } - - // check environment mode - const environment = env.mode === 'production' ? 'production' : 'development'; - - console.log('####################'); - console.log('####################'); - console.log('BUILD bundle with parameters:'); - console.log( env); - console.log('####################'); - console.log('####################'); - - const { mode } = env; - const devtool = env.mode === 'source-map'; - - - const output = { - path: path.resolve(__dirname, 'dist'), - filename: 'js/[name].[contenthash].js' - }; - - const entry = { entry: ["regenerator-runtime/runtime", "./src/index.js" ]}; - - const module = { - rules: [ - { - test: /\.(js|jsx)$/, - exclude: /node_modules/, - loader: 'babel-loader' - }, - { - test: /\.ts|tsx?$/, - loader: "awesome-typescript-loader", - }, - { - test: /\.(css)$/, - use: [ - { - loader: "style-loader", - }, - { - loader: "css-loader", - }], - }, - { - test: /\.less$/, - use: [ - { - loader: "style-loader", - }, - { - loader: "css-loader", - }, - { - loader: "less-loader" - }, - ], - }, - { - test: /\.s[a|c]ss$/, - use: [ - { loader: 'style-loader' }, - { loader: 'css-loader' }, - { loader: 'sass-loader' }, - ], - }, - { - test: /\.(png|jpg|gif|eot|woff|woff2|svg|ttf)$/, - loader: 'file-loader' - }, - - ] - }; - - const resolve = { - extensions: ['.*', '.js', '.json', '.ts', '.tsx', '.jsx'], - symlinks: false - }; - - const plugins = [ - new webpack.DefinePlugin({ - 'API_URL': API_URL[environment] - }), - new CleanWebpackPlugin(), - new CopyWebpackPlugin({ patterns: copyPaths }), - new CompressionPlugin(), - new HtmlWebpackPlugin({ - template: 'src/index.ejs', - favicon: path.join(__dirname, 'src/assets/favicon.ico') - }) - ]; - - return { - mode, - devtool, - output, - entry, - module, - resolve, - plugins - }; -}; \ No newline at end of file diff --git a/deploy/codefresh/codefresh.yml b/deploy/codefresh/codefresh.yml new file mode 100644 index 0000000..fa56389 --- /dev/null +++ b/deploy/codefresh/codefresh.yml @@ -0,0 +1,56 @@ +version: "1.0" +stages: + - "clone" + - "build" + - "deploy" + - "qa" +steps: + clone: + stage: "clone" + title: "Cloning CFOS" + type: "git-clone" + repo: "metacell/cfos-visualizer" + revision: "${{CF_BRANCH}}" + build: + stage: "build" + title: "Building CFOS" + type: "build" + image_name: "cfos" + tag: "${{CF_SHORT_REVISION}}" + dockerfile: Dockerfile + working_directory: ./cfos-visualizer + buildkit: true + registry: "${{CODEFRESH_REGISTRY}}" + build_arguments: + - BUILD_MODE=${{BUILD_MODE}} + deploy: + stage: "deploy" + title: "Deploying CFOS VIZ" + image: codefresh/cf-deploy-kubernetes + tag: latest + working_directory: ./cfos-visualizer/deploy/k8s + commands: + - /cf-deploy-kubernetes cfos.yaml + - /cf-deploy-kubernetes ingress.yaml + environment: + - KUBECONTEXT=${{CLUSTER_NAME}} + - KUBERNETES_NAMESPACE=${{NAMESPACE}} + test_image: + title: "Building Integration Image" + type: "build" + stage: "qa" + image_name: "cfos-e2e" + tag: '${{CF_SHORT_REVISION}}' + working_directory: ./cfos-visualizer/tests/e2e + disable_push: True + e2e_tests: + title: "End to End tests" + stage: "qa" + image: '${{test_image}}' + fail_fast: false + environment: + - url=https://${{DOMAIN}} + commands: + - bash -c "rm -rf /codefresh/volume/cfos-visualizer/tests" + - echo $url + - bash -c "cd / && npm test" \ No newline at end of file diff --git a/deploy/k8s/cfos.yaml b/deploy/k8s/cfos.yaml new file mode 100644 index 0000000..ea77728 --- /dev/null +++ b/deploy/k8s/cfos.yaml @@ -0,0 +1,57 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: cfos +spec: + selector: + matchLabels: + app: cfos + replicas: 1 + template: + metadata: + labels: + app: cfos + spec: + containers: + - name: cfos + image: "gcr.io/metacellllc/cfos:{{CF_SHORT_REVISION}}" + imagePullPolicy: "IfNotPresent" + ports: + - containerPort: 80 + livenessProbe: + failureThreshold: 3 + httpGet: + path: /index.html + port: 80 + scheme: HTTP + initialDelaySeconds: 45 + periodSeconds: 30 + timeoutSeconds: 2 + readinessProbe: + failureThreshold: 3 + httpGet: + path: /index.html + port: 80 + scheme: HTTP + initialDelaySeconds: 15 + periodSeconds: 30 + timeoutSeconds: 2 + resources: + limits: + cpu: 1500m + memory: 768Mi + requests: + cpu: 500m + memory: 768Mi +--- +apiVersion: v1 +kind: Service +metadata: + name: cfos +spec: + type: ClusterIP + ports: + - port: 80 + targetPort: 80 + selector: + app: cfos diff --git a/deploy/k8s/codefresh.yaml b/deploy/k8s/codefresh.yaml new file mode 100644 index 0000000..3241320 --- /dev/null +++ b/deploy/k8s/codefresh.yaml @@ -0,0 +1,36 @@ +version: "1.0" +stages: + - "clone" + - "build" + - "deploy" +steps: + clone: + stage: "clone" + title: "Cloning CFOS" + type: "git-clone" + repo: "metacell/cfos-visualizer" + revision: "${{CF_BRANCH}}" + build: + stage: "build" + title: "Building CFOS" + type: "build" + image_name: "cfos" + tag: "${{CF_SHORT_REVISION}}" + dockerfile: Dockerfile + working_directory: ./cfos-visualizer + buildkit: true + registry: "${{CODEFRESH_REGISTRY}}" + build_arguments: + - BUILD_MODE=${{BUILD_MODE}} + deploy: + stage: "deploy" + title: "Deploying CFOS VIZ" + image: codefresh/cf-deploy-kubernetes + tag: latest + working_directory: ./cfos-visualizer/deploy/k8s + commands: + - /cf-deploy-kubernetes cfos.yaml + - /cf-deploy-kubernetes ingress.yaml + environment: + - KUBECONTEXT=${{CLUSTER_NAME}} + - KUBERNETES_NAMESPACE=${{NAMESPACE}} diff --git a/deploy/k8s/deploy.sh b/deploy/k8s/deploy.sh new file mode 100755 index 0000000..c06ecfd --- /dev/null +++ b/deploy/k8s/deploy.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +# set to the correct cluster context and namespace +kubectl config use-context $CLUSTER_NAME +kubectl config set-context $CLUSTER_NAME --namespace=$NAMESPACE + +# prep the yamls +cp cfos_tpl.yaml cfos.yaml +cp ingress_tpl.yaml ingress.yaml + +# cfos service and deployment +sed -ie 's/{{TAG}}/'$CF_BUILD_ID'/i' cfos.yaml +sed -ie 's|{{REGISTRY}}|'$REGISTRY'|i' cfos.yaml +kubectl apply -f cfos.yaml + +# ingress +sed -ie 's|{{DOMAIN}}|'$DOMAIN'|i' ingress.yaml +kubectl apply -f ingress.yaml + +# cleanup +rm -rf cfos.yaml* ingress.yaml* diff --git a/deploy/k8s/deploy_minikube.sh b/deploy/k8s/deploy_minikube.sh new file mode 100755 index 0000000..9788b36 --- /dev/null +++ b/deploy/k8s/deploy_minikube.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +export CLUSTER_NAME=minikube +export NAMESPACE=cfos +export CF_BUILD_ID=latest +export REGISTRY= +export DOMAIN=cfos.local + +source ./deploy.sh diff --git a/deploy/k8s/ingress.yaml b/deploy/k8s/ingress.yaml new file mode 100644 index 0000000..5e0755d --- /dev/null +++ b/deploy/k8s/ingress.yaml @@ -0,0 +1,39 @@ +apiVersion: cert-manager.io/v1 +kind: Issuer +metadata: + name: 'letsencrypt-cfos' +spec: + acme: + server: https://acme-v02.api.letsencrypt.org/directory + email: filippo@metacell.us + privateKeySecretRef: + name: letsencrypt-cfos + solvers: + - http01: + ingress: + class: nginx +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + annotations: + cert-manager.io/issuer: letsencrypt-cfos + kubernetes.io/ingress.class: nginx + kubernetes.io/tls-acme: 'true' + name: cfos-nginx-ingress +spec: + rules: + - host: "{{DOMAIN}}" + http: + paths: + - backend: + service: + name: cfos + port: + number: 80 + path: / + pathType: ImplementationSpecific + tls: + - hosts: + - "{{DOMAIN}}" + secretName: cfos-tls diff --git a/deployment/codefresh-dev.yaml b/deployment/codefresh-dev.yaml deleted file mode 100644 index 2e0e508..0000000 --- a/deployment/codefresh-dev.yaml +++ /dev/null @@ -1,44 +0,0 @@ -version: '1.0' -stages: - - prepare - - build - - deploy - -steps: - main_clone: - title: 'Cloning main repository...' - type: git-clone - stage: prepare - repo: '${{CF_REPO_OWNER}}/${{CF_REPO_NAME}}' - revision: '${{CF_BRANCH}}' - git: github - - build_application_images: - type: build - stage: build - dockerfile: './client/deploy/Dockerfile' - registry: '${{CODEFRESH_REGISTRY}}' - buildkit: true - image_name: cfos-visualizer - title: CFOS-Visualizer - working_directory: './' - tag: '${{CF_BRANCH_TAG_NORMALIZED}}-${{CF_SHORT_REVISION}}' - - deployment: - stage: deploy - type: helm - working_directory: './${{CF_REPO_NAME}}' - title: Installing chart - arguments: - helm_version: 3.6.2 - chart_name: deployment/helm - release_name: '${{NAMESPACE}}' - kube_context: '${{CLUSTER_NAME}}' - namespace: '${{NAMESPACE}}' - cmd_ps: --wait --timeout 600s --create-namespace - custom_value_files: - - deployment/helm/values.yaml - custom_values: - - image.repository=${{REGISTRY}}/cfos-visualizer - - image.tag=${{CF_BRANCH_TAG_NORMALIZED}}-${{CF_SHORT_REVISION}} - - ingress.hosts[0].host=${{DOMAIN}} diff --git a/deployment/helm/.helmignore b/deployment/helm/.helmignore deleted file mode 100644 index 0e8a0eb..0000000 --- a/deployment/helm/.helmignore +++ /dev/null @@ -1,23 +0,0 @@ -# Patterns to ignore when building packages. -# This supports shell glob matching, relative path matching, and -# negation (prefixed with !). Only one pattern per line. -.DS_Store -# Common VCS dirs -.git/ -.gitignore -.bzr/ -.bzrignore -.hg/ -.hgignore -.svn/ -# Common backup files -*.swp -*.bak -*.tmp -*.orig -*~ -# Various IDEs -.project -.idea/ -*.tmproj -.vscode/ diff --git a/deployment/helm/Chart.yaml b/deployment/helm/Chart.yaml deleted file mode 100644 index d55d430..0000000 --- a/deployment/helm/Chart.yaml +++ /dev/null @@ -1,24 +0,0 @@ -apiVersion: v2 -name: cfos-visualizer -description: A Helm chart for Kubernetes - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -# Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.1.0 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. Versions are not expected to -# follow Semantic Versioning. They should reflect the version the application is using. -# It is recommended to use it with quotes. -appVersion: "1.16.0" diff --git a/deployment/helm/templates/NOTES.txt b/deployment/helm/templates/NOTES.txt deleted file mode 100644 index 9fc90d0..0000000 --- a/deployment/helm/templates/NOTES.txt +++ /dev/null @@ -1,22 +0,0 @@ -1. Get the application URL by running these commands: -{{- if .Values.ingress.enabled }} -{{- range $host := .Values.ingress.hosts }} - {{- range .paths }} - http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ .path }} - {{- end }} -{{- end }} -{{- else if contains "NodePort" .Values.service.type }} - export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "cfos-visualizer.fullname" . }}) - export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") - echo http://$NODE_IP:$NODE_PORT -{{- else if contains "LoadBalancer" .Values.service.type }} - NOTE: It may take a few minutes for the LoadBalancer IP to be available. - You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "cfos-visualizer.fullname" . }}' - export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "cfos-visualizer.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") - echo http://$SERVICE_IP:{{ .Values.service.port }} -{{- else if contains "ClusterIP" .Values.service.type }} - export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "cfos-visualizer.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") - export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}") - echo "Visit http://127.0.0.1:8080 to use your application" - kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:$CONTAINER_PORT -{{- end }} diff --git a/deployment/helm/templates/_helpers.tpl b/deployment/helm/templates/_helpers.tpl deleted file mode 100644 index 0afd857..0000000 --- a/deployment/helm/templates/_helpers.tpl +++ /dev/null @@ -1,62 +0,0 @@ -{{/* -Expand the name of the chart. -*/}} -{{- define "cfos-visualizer.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} -{{- end }} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "cfos-visualizer.fullname" -}} -{{- if .Values.fullnameOverride }} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} -{{- else }} -{{- $name := default .Chart.Name .Values.nameOverride }} -{{- if contains $name .Release.Name }} -{{- .Release.Name | trunc 63 | trimSuffix "-" }} -{{- else }} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} -{{- end }} -{{- end }} -{{- end }} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "cfos-visualizer.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} -{{- end }} - -{{/* -Common labels -*/}} -{{- define "cfos-visualizer.labels" -}} -helm.sh/chart: {{ include "cfos-visualizer.chart" . }} -{{ include "cfos-visualizer.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end }} - -{{/* -Selector labels -*/}} -{{- define "cfos-visualizer.selectorLabels" -}} -app.kubernetes.io/name: {{ include "cfos-visualizer.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end }} - -{{/* -Create the name of the service account to use -*/}} -{{- define "cfos-visualizer.serviceAccountName" -}} -{{- if .Values.serviceAccount.create }} -{{- default (include "cfos-visualizer.fullname" .) .Values.serviceAccount.name }} -{{- else }} -{{- default "default" .Values.serviceAccount.name }} -{{- end }} -{{- end }} diff --git a/deployment/helm/templates/deployment.yaml b/deployment/helm/templates/deployment.yaml deleted file mode 100644 index ebe8d3c..0000000 --- a/deployment/helm/templates/deployment.yaml +++ /dev/null @@ -1,66 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ include "cfos-visualizer.fullname" . }} - labels: - {{- include "cfos-visualizer.labels" . | nindent 4 }} -spec: - {{- if not .Values.autoscaling.enabled }} - replicas: {{ .Values.replicaCount }} - {{- end }} - selector: - matchLabels: - {{- include "cfos-visualizer.selectorLabels" . | nindent 6 }} - template: - metadata: - {{- with .Values.podAnnotations }} - annotations: - {{- toYaml . | nindent 8 }} - {{- end }} - labels: - {{- include "cfos-visualizer.selectorLabels" . | nindent 8 }} - spec: - {{- with .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - containers: - - name: {{ .Chart.Name }} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - ports: - - name: http - containerPort: {{ .Values.service.port }} - protocol: TCP - livenessProbe: - httpGet: - path: / - port: {{ .Values.app.port }} - initialDelaySeconds: 60 - periodSeconds: 30 - timeoutSeconds: 10 - readinessProbe: - httpGet: - path: / - port: {{ .Values.app.port }} - initialDelaySeconds: 60 - periodSeconds: 30 - timeoutSeconds: 10 - resources: - {{- toYaml .Values.resources | nindent 12 }} - {{- with .Values.nodeSelector }} - nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.affinity }} - affinity: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.tolerations }} - tolerations: - {{- toYaml . | nindent 8 }} - {{- end }} diff --git a/deployment/helm/templates/hpa.yaml b/deployment/helm/templates/hpa.yaml deleted file mode 100644 index 2cd4df6..0000000 --- a/deployment/helm/templates/hpa.yaml +++ /dev/null @@ -1,32 +0,0 @@ -{{- if .Values.autoscaling.enabled }} -apiVersion: autoscaling/v2 -kind: HorizontalPodAutoscaler -metadata: - name: {{ include "cfos-visualizer.fullname" . }} - labels: - {{- include "cfos-visualizer.labels" . | nindent 4 }} -spec: - scaleTargetRef: - apiVersion: apps/v1 - kind: Deployment - name: {{ include "cfos-visualizer.fullname" . }} - minReplicas: {{ .Values.autoscaling.minReplicas }} - maxReplicas: {{ .Values.autoscaling.maxReplicas }} - metrics: - {{- if .Values.autoscaling.targetCPUUtilizationPercentage }} - - type: Resource - resource: - name: cpu - target: - type: Utilization - averageUtilization: {{ .Values.autoscaling.targetCPUUtilizationPercentage }} - {{- end }} - {{- if .Values.autoscaling.targetMemoryUtilizationPercentage }} - - type: Resource - resource: - name: memory - target: - type: Utilization - averageUtilization: {{ .Values.autoscaling.targetMemoryUtilizationPercentage }} - {{- end }} -{{- end }} diff --git a/deployment/helm/templates/ingress.yaml b/deployment/helm/templates/ingress.yaml deleted file mode 100644 index 2ce18eb..0000000 --- a/deployment/helm/templates/ingress.yaml +++ /dev/null @@ -1,61 +0,0 @@ -{{- if .Values.ingress.enabled -}} -{{- $fullName := include "cfos-visualizer.fullname" . -}} -{{- $svcPort := .Values.service.port -}} -{{- if and .Values.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }} - {{- if not (hasKey .Values.ingress.annotations "kubernetes.io/ingress.class") }} - {{- $_ := set .Values.ingress.annotations "kubernetes.io/ingress.class" .Values.ingress.className}} - {{- end }} -{{- end }} -{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}} -apiVersion: networking.k8s.io/v1 -{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} -apiVersion: networking.k8s.io/v1beta1 -{{- else -}} -apiVersion: extensions/v1beta1 -{{- end }} -kind: Ingress -metadata: - name: {{ $fullName }} - labels: - {{- include "cfos-visualizer.labels" . | nindent 4 }} - {{- with .Values.ingress.annotations }} - annotations: - {{- toYaml . | nindent 4 }} - {{- end }} -spec: - {{- if and .Values.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }} - ingressClassName: {{ .Values.ingress.className }} - {{- end }} - {{- if .Values.ingress.tls }} - tls: - {{- range .Values.ingress.tls }} - - hosts: - {{- range .hosts }} - - {{ . | quote }} - {{- end }} - secretName: {{ .secretName }} - {{- end }} - {{- end }} - rules: - {{- range .Values.ingress.hosts }} - - host: {{ .host | quote }} - http: - paths: - {{- range .paths }} - - path: {{ .path }} - {{- if and .pathType (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }} - pathType: {{ .pathType }} - {{- end }} - backend: - {{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }} - service: - name: {{ $fullName }} - port: - number: {{ $svcPort }} - {{- else }} - serviceName: {{ $fullName }} - servicePort: {{ $svcPort }} - {{- end }} - {{- end }} - {{- end }} -{{- end }} diff --git a/deployment/helm/templates/service.yaml b/deployment/helm/templates/service.yaml deleted file mode 100644 index 0dfbb45..0000000 --- a/deployment/helm/templates/service.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: {{ include "cfos-visualizer.fullname" . }} - labels: - {{- include "cfos-visualizer.labels" . | nindent 4 }} -spec: - type: {{ .Values.service.type }} - ports: - - port: {{ .Values.service.port }} - targetPort: {{ .Values.app.port }} - protocol: TCP - name: http - selector: - {{- include "cfos-visualizer.selectorLabels" . | nindent 4 }} diff --git a/deployment/helm/templates/tests/test-connection.yaml b/deployment/helm/templates/tests/test-connection.yaml deleted file mode 100644 index d300c48..0000000 --- a/deployment/helm/templates/tests/test-connection.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: Pod -metadata: - name: "{{ include "cfos-visualizer.fullname" . }}-test-connection" - labels: - {{- include "cfos-visualizer.labels" . | nindent 4 }} - annotations: - "helm.sh/hook": test -spec: - containers: - - name: wget - image: busybox - command: ['wget'] - args: ['{{ include "cfos-visualizer.fullname" . }}:{{ .Values.service.port }}'] - restartPolicy: Never diff --git a/deployment/helm/values.yaml b/deployment/helm/values.yaml deleted file mode 100644 index 3ee9a09..0000000 --- a/deployment/helm/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for cfos-visualizer. -# This is a YAML-formatted file. - -replicaCount: 1 - -image: - repository: "" # Will be overridden by pipeline - pullPolicy: IfNotPresent - tag: "" # Will be overridden by pipeline - -imagePullSecrets: [] -nameOverride: "client" -fullnameOverride: "" - -podAnnotations: {} - -podSecurityContext: {} -securityContext: {} - -service: - type: ClusterIP - port: 80 - -resources: {} - -nodeSelector: {} - -tolerations: [] - -affinity: {} - -autoscaling: - enabled: false - minReplicas: 1 - maxReplicas: 1 - -ingress: - enabled: true - annotations: - kubernetes.io/ingress.class: nginx - hosts: - - host: "" # Will be overridden by pipeline - paths: - - path: / - pathType: ImplementationSpecific - -app: - port: 3000 diff --git a/nginx/default.bak b/nginx/default.bak new file mode 100644 index 0000000..f58b1b7 --- /dev/null +++ b/nginx/default.bak @@ -0,0 +1,32 @@ +upstream cfos { + server cfos:8000; +} + +server { + listen 80; + + location / { + root /usr/share/nginx/html/; + # index index.html index.htm; + try_files $uri /index.html; + } + + location /cfos/ { + root /usr/share/nginx/html/; + # index index.html index.htm; + try_files $uri /index.html; + } + + location ~* ^/(admin|api|logged-out|login|cfos|complete|disconnect|__debug__)/.*$ { + proxy_set_header Host $host; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto https; + proxy_redirect off; + proxy_pass http://cfos; + } + + location /static/ { + autoindex on; + alias /usr/share/nginx/html/static/; + } +} diff --git a/nginx/default.conf b/nginx/default.conf new file mode 100644 index 0000000..213f46e --- /dev/null +++ b/nginx/default.conf @@ -0,0 +1,32 @@ +upstream cfos { + server cfos:8000; +} + +server { + listen 80; + + location / { + root /usr/share/nginx/html/; + # index index.html index.htm; + try_files $uri /index.html; + } + + location /cfos/ { + root /usr/share/nginx/html/; + # index index.html index.htm; + try_files $uri /index.html; + } + + location ~* ^/(admin|api|logged-out|login|cfos|complete|disconnect|__debug__)/.*$ { + proxy_set_header Host $host; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto https; + proxy_redirect off; + proxy_pass http://cfos; + } + + location /static/ { + autoindex on; + alias /usr/share/nginx/html/static/; + } +} \ No newline at end of file diff --git a/processor/helpers/ingest.py b/processor/helpers/ingest.py index 20f5db1..ca44182 100644 --- a/processor/helpers/ingest.py +++ b/processor/helpers/ingest.py @@ -37,6 +37,20 @@ def upload_progress(chunk, total_size): finally: pbar.close() +def delete_bucket_contents(bucket_name): + # Create a Cloud Storage client + storage_client = storage.Client() + + # Get the bucket object + bucket = storage_client.get_bucket(bucket_name) + + # List all objects in the bucket and delete each + blobs = bucket.list_blobs() + for blob in blobs: + blob.delete() + + print(f"All objects in the bucket '{bucket_name}' have been deleted.") + def upload_local_folder_to_bucket(bucket_name, local_folder_path): # Initialize a client using Application Default Credentials client = storage.Client() @@ -86,7 +100,9 @@ def list_bucket_files(bucket_name, prefix=None): return file_list -def process_bucket_upload(bucket_name, local_folder_path): +def process_bucket_upload(bucket_name, local_folder_path, wipe_storage=False): + if wipe_storage: + delete_bucket_contents(bucket_name) upload_local_folder_to_bucket(bucket_name, local_folder_path) #handle wireframe conversion files = list_bucket_files(bucket_name) diff --git a/processor/helpers/wireframe.py b/processor/helpers/wireframe.py index 408541c..05d547a 100644 --- a/processor/helpers/wireframe.py +++ b/processor/helpers/wireframe.py @@ -3,6 +3,7 @@ from mpl_toolkits.mplot3d.art3d import Poly3DCollection import matplotlib.pyplot as plt from scipy import ndimage +from skimage import morphology, filters import os import cv2 @@ -13,40 +14,53 @@ def process_nifti_file(nifti_file_location, target_file_location): # Get the data as float32 to preserve the original data type data = img.get_fdata(dtype=np.float32) - def transform_slice(data_slice, sobel_filter=True): - if sobel_filter: - # Apply Sobel filter to find edges - edge_sobel_x = ndimage.sobel(data_slice, axis=0) - edge_sobel_y = ndimage.sobel(data_slice, axis=1) + def transform_slice(data_slice, sobel=True): + # Optionally apply a slight Gaussian blur to smooth the image before edge detection + data_slice_smoothed = data_slice #ndimage.gaussian_filter(data_slice, sigma=1) + + if sobel: + # Apply Sobel filter to find edges on the smoothed image + edge_sobel_x = ndimage.sobel(data_slice_smoothed, axis=0) + edge_sobel_y = ndimage.sobel(data_slice_smoothed, axis=1) # Combine the two edges to get the final edge magnitude edges = np.hypot(edge_sobel_x, edge_sobel_y) - - return edges.astype(np.float32) # Make sure to cast back to float32 if needed else: - # Apply a Gaussian filter directly on the slice without changing its data type - blurred_slice = ndimage.gaussian_filter(data_slice, sigma=1) - - # It's not recommended to convert to UINT8 if you want to preserve the original data type, - # but for Canny edge detection it is a necessary step (which is a lossy process). - # You need to decide whether you really want to do this. - edges = cv2.Canny(blurred_slice.astype(np.uint8), 250, 250) + # Placeholder for alternative edge detection + edges = data_slice_smoothed # This line is just a placeholder - return edges + # Normalize edge magnitudes to range 0-1 for consistent thresholding + #edges_normalized = (edges - np.min(edges)) / (np.max(edges) - np.min(edges)) + + # Apply a dynamic threshold to keep stronger edges + #threshold = np.mean(edges_normalized) + np.std(edges_normalized) # Adjust this threshold as needed + #edges_thresholded = np.where(edges_normalized > threshold, edges_normalized, 0) + return edges.astype(np.float32) + transformed_slices = [] for slice_idx in range(data.shape[-1]): slice_data = data[:, :, slice_idx] # Apply edge detection to the slice - edge_slice = transform_slice(slice_data, False) + edge_slice = transform_slice(slice_data, True) # Append the transformed slice to the list transformed_slices.append(edge_slice) # Stack the transformed slices back into a 3D array transformed_data = np.stack(transformed_slices, axis=-1) - # Create a new NIfTI image with the transformed data - transformed_img = nib.Nifti1Image(transformed_data, img.affine, img.header) - # Save the transformed NIfTI image to a different file + transformed_data_1bit = np.where(transformed_data > 0, 1, 0) + + # Apply Gaussian blur for anti-aliasing + transformed_data_aa = ndimage.gaussian_filter(transformed_data_1bit.astype(np.float32), sigma=1) + + # Optional: Convert back to 1-bit by re-thresholding if a strictly binary image is desired + # This step might not be necessary if you're satisfied with the smoother grayscale result + # threshold_value = 0.5 # Typical threshold for midpoint after blurring + # transformed_data_aa = np.where(transformed_data_aa > threshold_value, 1, 0) + + # Ensure data is back in an appropriate format for NIfTI + transformed_data_final = transformed_data_aa.astype(np.float32) + transformed_img = nib.Nifti1Image(transformed_data_final, img.affine, img.header) nib.save(transformed_img, target_file_location) print(f"Transformed slices with edge detection saved to {target_file_location}") diff --git a/processor/main.py b/processor/main.py index d80f4ad..f6e74f0 100644 --- a/processor/main.py +++ b/processor/main.py @@ -1,9 +1,10 @@ import sys import os +from pathlib import Path import http.server import socketserver import threading -import time +import time from datetime import datetime # Import the datetime module import shutil @@ -13,9 +14,7 @@ from helpers.ingest import process_bucket_upload, upload_file_to_bucket_root from selenium import webdriver -from selenium.webdriver.common.by import By from selenium.webdriver.chrome.options import Options -from selenium.webdriver.common.keys import Keys load_dotenv() @@ -26,6 +25,7 @@ driver = None wireframe = True headless = True +wipe_storage = True web_directory = os.path.dirname(os.path.abspath(__file__)) download_dir = os.path.join(web_directory, "process") @@ -43,7 +43,7 @@ def wait_for_file(filename, directory_path, timeout_seconds=300): """ Wait for a specific file to appear in a directory or until the timeout is reached. - + Args: filename (str): The name of the file to wait for. directory_path (str): The path to the directory to watch. @@ -102,14 +102,28 @@ def process(target_dir, file_name, process_wireframe): print(f"Process completed for { file_name }") return processed_file_names + +def remove_hiddenfiles(dir: Path): + for file in dir.rglob("[.]*"): + if file.is_dir(): + print(f"Removing hidden directory {file}") + try: + shutil.rmtree(file) + except Exception as e: + print(f"Could not remove {file}, skipping it (reasons: {e.args})") + else: + print(f"Removing hidden file {file}") + file.unlink(missing_ok=True) + + if __name__ == "__main__": port = 8888 # Create a thread for the HTTP server - http_server_thread = threading.Thread(target=start_http_server, args=(web_directory, port)) + http_server_thread = threading.Thread(target=start_http_server, args=(web_directory, port), daemon=True) http_server_thread.start() - - #wait for the server to start + + # wait for the server to start server_started_event.wait() options = Options() @@ -128,6 +142,10 @@ def process(target_dir, file_name, process_wireframe): driver = webdriver.Chrome(options=options) + # Remove hidden files from data_dir and output_directory + remove_hiddenfiles(Path(data_dir)) + # remove_hiddenfiles(Path(output_directory)) + for sub_folder in sub_folders: source_sub_dir = os.path.normpath(os.path.join(data_dir, sub_folder)) target_sub_dir = os.path.normpath(os.path.join(output_directory, sub_folder)) @@ -138,7 +156,8 @@ def process(target_dir, file_name, process_wireframe): # Filter out only the files (excluding directories) files = [file for file in files if os.path.isfile(os.path.join(source_sub_dir, file))] - should_sub_folders_process_wireframe = sub_folder in sub_folders_process_wireframe + # should_sub_folders_process_wireframe = sub_folder in sub_folders_process_wireframe + should_sub_folders_process_wireframe = False # Print the list of files for file in files: @@ -167,10 +186,14 @@ def process(target_dir, file_name, process_wireframe): process_bucket_upload(bucket_name, output_directory) - #last call for index file + # Upload index.json file to the bucket root index_location = os.path.join(data_dir, "index.json") upload_file_to_bucket_root(bucket_name, index_location) + # Upload metadata.json file to the bucket root + metadata_location = os.path.join(data_dir, "metadata.json") + upload_file_to_bucket_root(bucket_name, metadata_location) + driver.quit() print("Process completed. Now exiting...") - sys.exit(0) \ No newline at end of file + sys.exit(0) diff --git a/processor/public/script.js b/processor/public/script.js index ce8d189..6a21ea3 100644 --- a/processor/public/script.js +++ b/processor/public/script.js @@ -17,8 +17,15 @@ document.addEventListener('DOMContentLoaded', async () => { var stackHelper = new HelpersStack(stack); if (stackHelper) { - // Serialize the stack - const serializedStack = window.MessagePack.encode(stackHelper.stack); + const pixelDataType = stackHelper.stack._frame[0].pixelData ? + stackHelper.stack._frame[0].pixelData.constructor.name : null; + + const serializationObj = { + stack: stackHelper.stack, + dataType: pixelDataType + }; + + const serializedStack = window.MessagePack.encode(serializationObj); // Generate a Blob and serialize const blob = new Blob([serializedStack], { type: 'application/octet-stream' }); diff --git a/processor/website/script.js b/processor/website/script.js index 7edde29..5cfe618 100644 --- a/processor/website/script.js +++ b/processor/website/script.js @@ -1,5 +1,5 @@ document.addEventListener('DOMContentLoaded', async () => { - + // Get the URL of the current page var currentURL = window.location.href; var url = new URL(currentURL); @@ -10,23 +10,30 @@ document.addEventListener('DOMContentLoaded', async () => { const LoadersVolume = AMI.VolumeLoader; const HelpersStack = AMI.StackHelper; - + const container = document.getElementById('container') const loader = new LoadersVolume(container); - + try { await loader.load([file]); - + var mergedSeries = loader.data[0].mergeSeries(loader.data); var stack = mergedSeries[0].stack[0]; var stackHelper = new HelpersStack(stack); - + if (stackHelper) { - // Serialize the stack - const serializedStack = window.MessagePack.encode(stackHelper.stack); + const pixelDataType = stackHelper.stack._frame[0].pixelData ? + stackHelper.stack._frame[0].pixelData.constructor.name : null; + + const serializationObj = { + stack: stackHelper.stack, + dataType: pixelDataType + }; + + const serializedStack = window.MessagePack.encode(serializationObj); // Generate a Blob and serialize const blob = new Blob([serializedStack], { type: 'application/octet-stream' }); - + const link = document.createElement('a'); link.href = URL.createObjectURL(blob); fileParam = fileParam.split('/').pop(); //filename only diff --git a/server/.env.example b/server/.env.example index 4286080..94181a3 100644 --- a/server/.env.example +++ b/server/.env.example @@ -1,2 +1,2 @@ -GCLOUD_PROJECT=cfos-visualizer-stanford +GCLOUD_PROJECT=cfos-visualizer-stanford-dev GOOGLE_APPLICATION_CREDENTIALS=./application_default_credentials.json \ No newline at end of file diff --git a/server/main.py b/server/main.py index 1f78521..95e7262 100644 --- a/server/main.py +++ b/server/main.py @@ -12,6 +12,38 @@ bucket_name = os.environ.get("GCLOUD_PROJECT") +static_folder_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), "static") + +# Dictionary mapping identifiers to their mock file names +mock_files = { + "Atlas": "atlas_labels.msgpack", + "AtlasWireframe": "atlas_wireframe.msgpack", + "ActivityMap": "atlas_wireframe.msgpack", +} + + +def mock_download_as_stream(folder_name, object_name): + """ + Serve the mock file for a given identifier from the static folder. + + If the folder_name is 'Atlas' and the object_name ends with 'W.msgpack', + serve the AtlasWireframe file instead. + """ + # Check for Atlas wireframe condition + if folder_name == "Atlas" and object_name.endswith("W.msgpack"): + file_name = mock_files.get("AtlasWireframe") + else: + file_name = mock_files.get(folder_name) + + if file_name: + file_path = os.path.join(static_folder_path, file_name) + if os.path.exists(file_path): + return send_file(file_path, as_attachment=True, download_name=file_name) + else: + return "Mock file not found", 404 + else: + return "Invalid mock request", 404 + def download_as_stream(folder_name, object_name): try: @@ -61,19 +93,23 @@ def download_as_json(object_name): def init_webapp_routes(app): www_path = os.path.dirname(os.path.abspath(__file__)) + "/www" - @app.route('/cfos-visualizer-stanford/Atlas/') + @app.route('/cfos-visualizer-stanford-dev/Atlas/') def download_atlas(id): return download_as_stream("Atlas", id) - @app.route('/cfos-visualizer-stanford/ActivityMap/') + @app.route('/cfos-visualizer-stanford-dev/ActivityMap/') def activity_map(id): return download_as_stream("ActivityMap", id) - @app.route('/cfos-visualizer-stanford/Experiment/') + @app.route('/cfos-visualizer-stanford-dev/Experiment/') def experiment(id): return download_as_stream("Experiment", id) - @app.route('/cfos-visualizer-stanford/index.json') + @app.route('/cfos-visualizer-stanford-dev/metadata.json') + def metadata(): + return download_as_json("metadata.json") + + @app.route('/cfos-visualizer-stanford-dev/index.json') def index(): return download_as_json("index.json") diff --git a/tests/e2e/Dockerfile b/tests/e2e/Dockerfile new file mode 100644 index 0000000..9d36320 --- /dev/null +++ b/tests/e2e/Dockerfile @@ -0,0 +1,13 @@ +FROM buildkite/puppeteer:latest + +ENV CHROME_BIN=/usr/bin/chromium-browser +ARG DEBIAN_FRONTEND=noninteractive + +COPY package.json . +COPY package-lock.json . + +RUN npm i + +COPY . . + +CMD ["npm", "run", "test"] \ No newline at end of file diff --git a/tests/e2e/babel.config.js b/tests/e2e/babel.config.js new file mode 100644 index 0000000..a1749f2 --- /dev/null +++ b/tests/e2e/babel.config.js @@ -0,0 +1,8 @@ +module.exports = { + presets: [ + [ + '@babel/preset-env', + { targets: { node: 'current' } }, + ], + ], + }; \ No newline at end of file diff --git a/tests/e2e/jest.config.js b/tests/e2e/jest.config.js new file mode 100644 index 0000000..8ba1f11 --- /dev/null +++ b/tests/e2e/jest.config.js @@ -0,0 +1,8 @@ +module.exports = { + testEnvironment: "node", + testMatch: ["**__tests__/**/*.[jt]s?(x)", "**/?(*.)+(spec|test).[tj]s?(x)"], + testPathIgnorePatterns: ["/node_modules/"], + transform: { + "^.+\\.tsx?$": "ts-jest" + } +}; \ No newline at end of file diff --git a/tests/e2e/package-lock.json b/tests/e2e/package-lock.json new file mode 100644 index 0000000..330db6f --- /dev/null +++ b/tests/e2e/package-lock.json @@ -0,0 +1,9188 @@ +{ + "name": "e2e", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "e2e", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "jest": "^28.1.3", + "jest-puppeteer": "^6.2.0", + "puppeteer": "^13.7.0", + "puppeteer-cluster": "^0.23.0", + "ts-jest": "^28.0.8", + "typescript": "^4.9.5" + }, + "devDependencies": { + "@babel/cli": "^7.17.6", + "@babel/core": "^7.17.5", + "@babel/preset-env": "^7.16.11", + "@types/jest": "26.0.24", + "@types/node": "13.13.52", + "@types/puppeteer": "3.0.8", + "eslint-plugin-jest": "^22.21.0", + "jest-image-snapshot": "^6.4.0" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/cli": { + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.23.9.tgz", + "integrity": "sha512-vB1UXmGDNEhcf1jNAHKT9IlYk1R+hehVTLFlCLHBi8gfuHQGP6uRjgXVYU0EVlI/qwAWpstqkBdf2aez3/z/5Q==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.17", + "commander": "^4.0.1", + "convert-source-map": "^2.0.0", + "fs-readdir-recursive": "^1.1.0", + "glob": "^7.2.0", + "make-dir": "^2.1.0", + "slash": "^2.0.0" + }, + "bin": { + "babel": "bin/babel.js", + "babel-external-helpers": "bin/babel-external-helpers.js" + }, + "engines": { + "node": ">=6.9.0" + }, + "optionalDependencies": { + "@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents.3", + "chokidar": "^3.4.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", + "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "dependencies": { + "@babel/highlight": "^7.23.4", + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz", + "integrity": "sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.0.tgz", + "integrity": "sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.23.5", + "@babel/generator": "^7.23.6", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helpers": "^7.24.0", + "@babel/parser": "^7.24.0", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.0", + "@babel/types": "^7.24.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", + "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", + "dependencies": { + "@babel/types": "^7.23.6", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz", + "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "dependencies": { + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.0.tgz", + "integrity": "sha512-QAH+vfvts51BCsNZ2PhY6HAggnlS6omLLFTsIpeqZk/MmJ6cW7tgz5yRv0fMJThcr6FmbMrENh1RgrWPTYA76g==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.20", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.1.tgz", + "integrity": "sha512-o7SDgTJuvx5vLKD6SFvkydkSMBvahDKGiNJzG22IZYXhiqoe9efY7zocICBgzHV4IRg5wdgl2nEL/tulKIEIbA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz", + "integrity": "sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.22.15", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", + "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.0.tgz", + "integrity": "sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==", + "dependencies": { + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", + "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.0.tgz", + "integrity": "sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.23.3.tgz", + "integrity": "sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.23.3.tgz", + "integrity": "sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.23.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.23.7.tgz", + "integrity": "sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.23.3.tgz", + "integrity": "sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.23.3.tgz", + "integrity": "sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz", + "integrity": "sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.23.3.tgz", + "integrity": "sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.9.tgz", + "integrity": "sha512-8Q3veQEDGe14dTYuwagbRtwxQDnytyg1JFu4/HwEMETeofocrB0U0ejBJIXoeG/t2oXZ8kzCyI0ZZfbT80VFNQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.20", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.23.3.tgz", + "integrity": "sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.23.3.tgz", + "integrity": "sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.4.tgz", + "integrity": "sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.23.3.tgz", + "integrity": "sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.23.4.tgz", + "integrity": "sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.23.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.23.8.tgz", + "integrity": "sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.20", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.23.3.tgz", + "integrity": "sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/template": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.3.tgz", + "integrity": "sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.23.3.tgz", + "integrity": "sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.23.3.tgz", + "integrity": "sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.23.4.tgz", + "integrity": "sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.23.3.tgz", + "integrity": "sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.23.4.tgz", + "integrity": "sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.23.6.tgz", + "integrity": "sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.23.3.tgz", + "integrity": "sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.23.4.tgz", + "integrity": "sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.23.3.tgz", + "integrity": "sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.23.4.tgz", + "integrity": "sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.23.3.tgz", + "integrity": "sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.3.tgz", + "integrity": "sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz", + "integrity": "sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.9.tgz", + "integrity": "sha512-KDlPRM6sLo4o1FkiSlXoAa8edLXFsKKIda779fbLrvmeuc3itnjCtaO6RrtoaANsIJANj+Vk1zqbZIMhkCAHVw==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.23.3.tgz", + "integrity": "sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.23.3.tgz", + "integrity": "sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.23.4.tgz", + "integrity": "sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.23.4.tgz", + "integrity": "sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.0.tgz", + "integrity": "sha512-y/yKMm7buHpFFXfxVFS4Vk1ToRJDilIa6fKRioB9Vjichv58TDGXTvqV0dN7plobAmTW5eSEGXDngE+Mm+uO+w==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.23.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.23.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.23.3.tgz", + "integrity": "sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.23.4.tgz", + "integrity": "sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.4.tgz", + "integrity": "sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.23.3.tgz", + "integrity": "sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.23.3.tgz", + "integrity": "sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.23.4.tgz", + "integrity": "sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.23.3.tgz", + "integrity": "sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.23.3.tgz", + "integrity": "sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.23.3.tgz", + "integrity": "sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.23.3.tgz", + "integrity": "sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.23.3.tgz", + "integrity": "sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.23.3.tgz", + "integrity": "sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.23.3.tgz", + "integrity": "sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.23.3.tgz", + "integrity": "sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.23.3.tgz", + "integrity": "sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.23.3.tgz", + "integrity": "sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.23.3.tgz", + "integrity": "sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.23.3.tgz", + "integrity": "sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.24.0.tgz", + "integrity": "sha512-ZxPEzV9IgvGn73iK0E6VB9/95Nd7aMFpbE0l8KQFDG70cOV9IxRP7Y2FUPmlK0v6ImlLqYX50iuZ3ZTVhOF2lA==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.23.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-validator-option": "^7.23.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.23.3", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.23.3", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.23.7", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.23.3", + "@babel/plugin-syntax-import-attributes": "^7.23.3", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.23.3", + "@babel/plugin-transform-async-generator-functions": "^7.23.9", + "@babel/plugin-transform-async-to-generator": "^7.23.3", + "@babel/plugin-transform-block-scoped-functions": "^7.23.3", + "@babel/plugin-transform-block-scoping": "^7.23.4", + "@babel/plugin-transform-class-properties": "^7.23.3", + "@babel/plugin-transform-class-static-block": "^7.23.4", + "@babel/plugin-transform-classes": "^7.23.8", + "@babel/plugin-transform-computed-properties": "^7.23.3", + "@babel/plugin-transform-destructuring": "^7.23.3", + "@babel/plugin-transform-dotall-regex": "^7.23.3", + "@babel/plugin-transform-duplicate-keys": "^7.23.3", + "@babel/plugin-transform-dynamic-import": "^7.23.4", + "@babel/plugin-transform-exponentiation-operator": "^7.23.3", + "@babel/plugin-transform-export-namespace-from": "^7.23.4", + "@babel/plugin-transform-for-of": "^7.23.6", + "@babel/plugin-transform-function-name": "^7.23.3", + "@babel/plugin-transform-json-strings": "^7.23.4", + "@babel/plugin-transform-literals": "^7.23.3", + "@babel/plugin-transform-logical-assignment-operators": "^7.23.4", + "@babel/plugin-transform-member-expression-literals": "^7.23.3", + "@babel/plugin-transform-modules-amd": "^7.23.3", + "@babel/plugin-transform-modules-commonjs": "^7.23.3", + "@babel/plugin-transform-modules-systemjs": "^7.23.9", + "@babel/plugin-transform-modules-umd": "^7.23.3", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.23.3", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.23.4", + "@babel/plugin-transform-numeric-separator": "^7.23.4", + "@babel/plugin-transform-object-rest-spread": "^7.24.0", + "@babel/plugin-transform-object-super": "^7.23.3", + "@babel/plugin-transform-optional-catch-binding": "^7.23.4", + "@babel/plugin-transform-optional-chaining": "^7.23.4", + "@babel/plugin-transform-parameters": "^7.23.3", + "@babel/plugin-transform-private-methods": "^7.23.3", + "@babel/plugin-transform-private-property-in-object": "^7.23.4", + "@babel/plugin-transform-property-literals": "^7.23.3", + "@babel/plugin-transform-regenerator": "^7.23.3", + "@babel/plugin-transform-reserved-words": "^7.23.3", + "@babel/plugin-transform-shorthand-properties": "^7.23.3", + "@babel/plugin-transform-spread": "^7.23.3", + "@babel/plugin-transform-sticky-regex": "^7.23.3", + "@babel/plugin-transform-template-literals": "^7.23.3", + "@babel/plugin-transform-typeof-symbol": "^7.23.3", + "@babel/plugin-transform-unicode-escapes": "^7.23.3", + "@babel/plugin-transform-unicode-property-regex": "^7.23.3", + "@babel/plugin-transform-unicode-regex": "^7.23.3", + "@babel/plugin-transform-unicode-sets-regex": "^7.23.3", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.8", + "babel-plugin-polyfill-corejs3": "^0.9.0", + "babel-plugin-polyfill-regenerator": "^0.5.5", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, + "node_modules/@babel/runtime": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.0.tgz", + "integrity": "sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.0.tgz", + "integrity": "sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==", + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/generator": "^7.23.6", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dependencies": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "peer": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, + "peer": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "peer": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@hapi/hoek": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", + "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==" + }, + "node_modules/@hapi/topo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", + "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "dev": true, + "peer": true, + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", + "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", + "dev": true, + "peer": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-28.1.3.tgz", + "integrity": "sha512-QPAkP5EwKdK/bxIr6C1I4Vs0rm2nHiANzj/Z5X2JQkrZo6IqvC4ldZ9K95tF0HdidhA8Bo6egxSzUFPYKcEXLw==", + "dependencies": { + "@jest/types": "^28.1.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^28.1.3", + "jest-util": "^28.1.3", + "slash": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/console/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/console/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/@jest/console/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-28.1.3.tgz", + "integrity": "sha512-CIKBrlaKOzA7YG19BEqCw3SLIsEwjZkeJzf5bdooVnW4bH5cktqe3JX+G2YV1aK5vP8N9na1IGWFzYaTp6k6NA==", + "dependencies": { + "@jest/console": "^28.1.3", + "@jest/reporters": "^28.1.3", + "@jest/test-result": "^28.1.3", + "@jest/transform": "^28.1.3", + "@jest/types": "^28.1.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^28.1.3", + "jest-config": "^28.1.3", + "jest-haste-map": "^28.1.3", + "jest-message-util": "^28.1.3", + "jest-regex-util": "^28.0.2", + "jest-resolve": "^28.1.3", + "jest-resolve-dependencies": "^28.1.3", + "jest-runner": "^28.1.3", + "jest-runtime": "^28.1.3", + "jest-snapshot": "^28.1.3", + "jest-util": "^28.1.3", + "jest-validate": "^28.1.3", + "jest-watcher": "^28.1.3", + "micromatch": "^4.0.4", + "pretty-format": "^28.1.3", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/core/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/@jest/core/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/pretty-format": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", + "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "dependencies": { + "@jest/schemas": "^28.1.3", + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/core/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/@jest/core/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-28.1.3.tgz", + "integrity": "sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==", + "dependencies": { + "@jest/fake-timers": "^28.1.3", + "@jest/types": "^28.1.3", + "@types/node": "*", + "jest-mock": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-28.1.3.tgz", + "integrity": "sha512-lzc8CpUbSoE4dqT0U+g1qODQjBRHPpCPXissXD4mS9+sWQdmmpeJ9zSH1rS1HEkrsMN0fb7nKrJ9giAR1d3wBw==", + "dependencies": { + "expect": "^28.1.3", + "jest-snapshot": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-28.1.3.tgz", + "integrity": "sha512-wvbi9LUrHJLn3NlDW6wF2hvIMtd4JUl2QNVrjq+IBSHirgfrR3o9RnVtxzdEGO2n9JyIWwHnLfby5KzqBGg2YA==", + "dependencies": { + "jest-get-type": "^28.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-28.1.3.tgz", + "integrity": "sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==", + "dependencies": { + "@jest/types": "^28.1.3", + "@sinonjs/fake-timers": "^9.1.2", + "@types/node": "*", + "jest-message-util": "^28.1.3", + "jest-mock": "^28.1.3", + "jest-util": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-28.1.3.tgz", + "integrity": "sha512-XFU4P4phyryCXu1pbcqMO0GSQcYe1IsalYCDzRNyhetyeyxMcIxa11qPNDpVNLeretItNqEmYYQn1UYz/5x1NA==", + "dependencies": { + "@jest/environment": "^28.1.3", + "@jest/expect": "^28.1.3", + "@jest/types": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-28.1.3.tgz", + "integrity": "sha512-JuAy7wkxQZVNU/V6g9xKzCGC5LVXx9FDcABKsSXp5MiKPEE2144a/vXTEDoyzjUpZKfVwp08Wqg5A4WfTMAzjg==", + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^28.1.3", + "@jest/test-result": "^28.1.3", + "@jest/transform": "^28.1.3", + "@jest/types": "^28.1.3", + "@jridgewell/trace-mapping": "^0.3.13", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^28.1.3", + "jest-util": "^28.1.3", + "jest-worker": "^28.1.3", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/@jest/reporters/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/schemas": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-28.1.3.tgz", + "integrity": "sha512-/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg==", + "dependencies": { + "@sinclair/typebox": "^0.24.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "28.1.2", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-28.1.2.tgz", + "integrity": "sha512-cV8Lx3BeStJb8ipPHnqVw/IM2VCMWO3crWZzYodSIkxXnRcXJipCdx1JCK0K5MsJJouZQTH73mzf4vgxRaH9ww==", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.13", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-28.1.3.tgz", + "integrity": "sha512-kZAkxnSE+FqE8YjW8gNuoVkkC9I7S1qmenl8sGcDOLropASP+BkcGKwhXoyqQuGOGeYY0y/ixjrd/iERpEXHNg==", + "dependencies": { + "@jest/console": "^28.1.3", + "@jest/types": "^28.1.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-28.1.3.tgz", + "integrity": "sha512-NIMPEqqa59MWnDi1kvXXpYbqsfQmSJsIbnd85mdVGkiDfQ9WQQTXOLsvISUfonmnBT+w85WEgneCigEEdHDFxw==", + "dependencies": { + "@jest/test-result": "^28.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^28.1.3", + "slash": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/test-sequencer/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-28.1.3.tgz", + "integrity": "sha512-u5dT5di+oFI6hfcLOHGTAfmUxFRrjK+vnaP0kkVow9Md/M7V/MxqQMOz/VV25UZO8pzeA9PjfTpOu6BDuwSPQA==", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^28.1.3", + "@jridgewell/trace-mapping": "^0.3.13", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^28.1.3", + "jest-regex-util": "^28.0.2", + "jest-util": "^28.1.3", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/transform/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/transform/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/@jest/transform/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "node_modules/@jest/transform/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", + "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "dependencies": { + "@jest/schemas": "^28.1.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/@jest/types/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/types/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/@jest/types/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nicolo-ribaudo/chokidar-2": { + "version": "2.1.8-no-fsevents.3", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.3.tgz", + "integrity": "sha512-s88O1aVtXftvp5bCPB7WnmXc5IwOZZ7YPuwNPt+GtOOXpPvad1LfbmjYv+qII7zP6RU2QGnqve27dnLycEnyEQ==", + "dev": true, + "optional": true + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "peer": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "peer": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@sideway/address": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz", + "integrity": "sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==", + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@sideway/formula": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", + "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==" + }, + "node_modules/@sideway/pinpoint": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", + "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" + }, + "node_modules/@sinclair/typebox": { + "version": "0.24.51", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.51.tgz", + "integrity": "sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA==" + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz", + "integrity": "sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==", + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", + "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "26.0.24", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.24.tgz", + "integrity": "sha512-E/X5Vib8BWqZNRlDxj9vYXhsDwPYbPINqKF9BsnSoon4RQ0D9moEuLD8txgyypFLH7J4+Lho9Nr/c8H0Fi+17w==", + "dev": true, + "dependencies": { + "jest-diff": "^26.0.0", + "pretty-format": "^26.0.0" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/node": { + "version": "13.13.52", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.52.tgz", + "integrity": "sha512-s3nugnZumCC//n4moGGe6tkNMyYEdaDBitVjwPxXmR5lnMG5dHePinH2EdxkG3Rh1ghFHHixAG4NJhpJW1rthQ==" + }, + "node_modules/@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==" + }, + "node_modules/@types/puppeteer": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-3.0.8.tgz", + "integrity": "sha512-YmaPF3KLyDNJfTMlbONOWsAfUh9j0up8xA1G/uyz4c8yD80C2VUM5OTjf+sAS89EN6A6gas0oEzJThICf4OUpw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==" + }, + "node_modules/@types/yargs": { + "version": "17.0.32", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", + "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==" + }, + "node_modules/@types/yauzl": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@typescript-eslint/experimental-utils": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-1.13.0.tgz", + "integrity": "sha512-zmpS6SyqG4ZF64ffaJ6uah6tWWWgZ8m+c54XXgwFtUv0jNz8aJAVx8chMCvnk7yl6xwn8d+d96+tWp7fXzTuDg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.3", + "@typescript-eslint/typescript-estree": "1.13.0", + "eslint-scope": "^4.0.0" + }, + "engines": { + "node": "^6.14.0 || ^8.10.0 || >=9.10.0" + }, + "peerDependencies": { + "eslint": "*" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-1.13.0.tgz", + "integrity": "sha512-b5rCmd2e6DCC6tCTN9GSUAuxdYwCM/k/2wdjHGrIRGPSJotWMCe/dGpi66u42bhuh8q3QBzqM4TMA1GUUCJvdw==", + "dev": true, + "dependencies": { + "lodash.unescape": "4.0.1", + "semver": "5.5.0" + }, + "engines": { + "node": ">=6.14.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true, + "peer": true + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "peer": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peer": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "peer": true + }, + "node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/axios": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", + "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", + "dependencies": { + "follow-redirects": "^1.14.7" + } + }, + "node_modules/babel-jest": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-28.1.3.tgz", + "integrity": "sha512-epUaPOEWMk3cWX0M/sPvCHHCe9fMFAa/9hXEgKP8nFfNl/jlGkE9ucq9NqkZGXLDduCJYS0UvSlPUwC0S+rH6Q==", + "dependencies": { + "@jest/transform": "^28.1.3", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^28.1.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/babel-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/babel-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-28.1.3.tgz", + "integrity": "sha512-Ys3tUKAmfnkRUpPdpa98eYrAR0nV+sSFUZZEGuQ2EbFd1y4SOLtD5QDNHAq+bb9a+bbXvYQC4b+ID/THIMcU6Q==", + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.10", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.10.tgz", + "integrity": "sha512-rpIuu//y5OX6jVU+a5BCn1R5RSZYWAl2Nar76iwaOdycqb6JPxediskWFMMl7stfwNJR4b7eiQvh5fB5TEQJTQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.6.1", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.9.0.tgz", + "integrity": "sha512-7nZPG1uzK2Ymhy/NbaOWTg3uibM2BmGASS4vHS4szRZAIR8R6GwA/xAujpdrXU5iyklrimWnLWU+BLF9suPTqg==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.5.0", + "core-js-compat": "^3.34.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3/node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.5.0.tgz", + "integrity": "sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.5.tgz", + "integrity": "sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.5.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator/node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.5.0.tgz", + "integrity": "sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-28.1.3.tgz", + "integrity": "sha512-L+fupJvlWAHbQfn74coNX3zf60LXMJsezNvvx8eIh7iOR1luJ1poxYgQk1F8PYtNq/6QODDHCqsSnTFSWC491A==", + "dependencies": { + "babel-plugin-jest-hoist": "^28.1.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "optional": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001597", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001597.tgz", + "integrity": "sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "engines": { + "node": ">=10" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "optional": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone-deep": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.2.4.tgz", + "integrity": "sha512-we+NuQo2DHhSl+DP6jlUiAhyAjBQrYnpOk15rN6c6JSPScjiCLh8IbSU+VTcph6YS3o7mASE8a0+gbZ7ChLpgg==", + "dependencies": { + "for-own": "^0.1.3", + "is-plain-object": "^2.0.1", + "kind-of": "^3.0.2", + "lazy-cache": "^1.0.3", + "shallow-clone": "^0.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==" + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" + }, + "node_modules/core-js-compat": { + "version": "3.36.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.36.0.tgz", + "integrity": "sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw==", + "dev": true, + "dependencies": { + "browserslist": "^4.22.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "dependencies": { + "node-fetch": "2.6.7" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cwd": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/cwd/-/cwd-0.10.0.tgz", + "integrity": "sha512-YGZxdTTL9lmLkCUTpg4j0zQ7IhRB5ZmqNBbGCl3Tg6MP/d5/6sY7L5mmTjzbc6JKgVZYiqTQTNhPFsbXNGlRaA==", + "dependencies": { + "find-pkg": "^0.1.2", + "fs-exists-sync": "^0.1.0" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==" + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "peer": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/devtools-protocol": { + "version": "0.0.981744", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.981744.tgz", + "integrity": "sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg==" + }, + "node_modules/diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", + "dev": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "peer": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.707", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.707.tgz", + "integrity": "sha512-qRq74Mo7ChePOU6GHdfAJ0NREXU8vQTlVlfWz3wNygFay6xrd/fY2J7oGHwrhFeU30OVctGLdTh/FcnokTWpng==" + }, + "node_modules/emittery": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.10.2.tgz", + "integrity": "sha512-aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", + "dev": true, + "peer": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-jest": { + "version": "22.21.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-22.21.0.tgz", + "integrity": "sha512-OaqnSS7uBgcGiqXUiEnjoqxPNKvR4JWG5mSRkzVoR6+vDwlqqp11beeql1hYs0HTbdhiwrxWLxbX0Vx7roG3Ew==", + "dev": true, + "dependencies": { + "@typescript-eslint/experimental-utils": "^1.13.0" + }, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "peer": true + }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "peer": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "peer": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "peer": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "peer": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expand-tilde": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz", + "integrity": "sha512-rtmc+cjLZqnu9dSYosX9EWmSJhTwpACgJQTfj4hgg2JjOD/6SIQalZrt4a3aQeh++oNxkazcaxrhPUj6+g5G/Q==", + "dependencies": { + "os-homedir": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expect": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/expect/-/expect-28.1.3.tgz", + "integrity": "sha512-eEh0xn8HlsuOBxFgIss+2mX85VAS4Qy3OSkjV7rlBWljtA4oWH37glVGyOZSZvErDT/yBywZdPGwCXuTvSG85g==", + "dependencies": { + "@jest/expect-utils": "^28.1.3", + "jest-get-type": "^28.0.2", + "jest-matcher-utils": "^28.1.3", + "jest-message-util": "^28.1.3", + "jest-util": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/expect-puppeteer": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/expect-puppeteer/-/expect-puppeteer-6.1.1.tgz", + "integrity": "sha512-cnQF96qdoEcOD63j5NQMc0RtW9WRMW/WHKXEKsuDQ2tszhVH3qC7zkXXS4D0LTt9qCB3DEExioqylsQXvqPrUw==" + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/extract-zip/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "peer": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "peer": true + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "peer": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "peer": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-file-up": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/find-file-up/-/find-file-up-0.1.3.tgz", + "integrity": "sha512-mBxmNbVyjg1LQIIpgO8hN+ybWBgDQK8qjht+EbrTCGmmPV/sc7RF1i9stPTD6bpvXZywBdrwRYxhSdJv867L6A==", + "dependencies": { + "fs-exists-sync": "^0.1.0", + "resolve-dir": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/find-pkg": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/find-pkg/-/find-pkg-0.1.2.tgz", + "integrity": "sha512-0rnQWcFwZr7eO0513HahrWafsc3CTFioEB7DRiEYCUM/70QXSY8f3mCST17HXLcPvEhzH/Ty/Bxd72ZZsr/yvw==", + "dependencies": { + "find-file-up": "^0.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/find-process": { + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/find-process/-/find-process-1.4.7.tgz", + "integrity": "sha512-/U4CYp1214Xrp3u3Fqr9yNynUrr5Le4y0SsJh2lMDDSbpwYSz3M2SMWQC+wqcx79cN8PQtHQIL8KnuY9M66fdg==", + "dependencies": { + "chalk": "^4.0.0", + "commander": "^5.1.0", + "debug": "^4.1.1" + }, + "bin": { + "find-process": "bin/find-process.js" + } + }, + "node_modules/find-process/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/find-process/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/find-process/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/find-process/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/find-process/node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/find-process/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/find-process/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "peer": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "peer": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "dev": true, + "peer": true + }, + "node_modules/follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha512-SKmowqGTJoPzLO1T0BBJpkfp3EMacCMOuH40hOUbrbzElVktk4DioXVM99QkLCyKoiuOmyjgcWMpVz2xjE7LZw==", + "dependencies": { + "for-in": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "node_modules/fs-exists-sync": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz", + "integrity": "sha512-cR/vflFyPZtrN6b38ZyWxpWdhlXrzZEBawlpBQMq7033xVY7/kg0GDMBK5jg8lDYQckdJ5x/YC88lM3C7VMsLg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fs-readdir-recursive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", + "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stdin": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-5.0.1.tgz", + "integrity": "sha512-jZV7n6jGE3Gt7fgSTJoz91Ak5MuTLwMwkoYdjxuJ/AmjIsE1UC03y/IWkZCQGEvVNS9qoRNwy5BCqxImv0FVeA==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "optional": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/global-modules": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz", + "integrity": "sha512-JeXuCbvYzYXcwE6acL9V2bAOeSIGl4dD+iwLY9iUx2VBJJ80R18HCn+JCwHM9Oegdfya3lEkGCdaRkSyc10hDA==", + "dependencies": { + "global-prefix": "^0.1.4", + "is-windows": "^0.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/global-prefix": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz", + "integrity": "sha512-gOPiyxcD9dJGCEArAhF4Hd0BAqvAe/JzERP7tYumE4yIkmIedPUVXcJFWbV3/p/ovIIvKjkrTk+f1UVkq7vvbw==", + "dependencies": { + "homedir-polyfill": "^1.0.0", + "ini": "^1.3.4", + "is-windows": "^0.2.0", + "which": "^1.2.12" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/glur": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/glur/-/glur-1.1.2.tgz", + "integrity": "sha512-l+8esYHTKOx2G/Aao4lEQ0bnHWg4fWtJbVoZZT9Knxi01pB8C80BR85nONLFwkkQoFRCmXY+BUcGZN3yZ2QsRA==", + "dev": true + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "peer": true + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/homedir-polyfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "dependencies": { + "parse-passwd": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "peer": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "optional": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-windows": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz", + "integrity": "sha512-n67eJYmXbniZB7RF4I/FTjK1s6RPOCTxhYrVYLRaCt3lF0mpWZPKr3T2LSZAqyjQsxR2qMmGYXXzK0YWwcPM1Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/istanbul-lib-report/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest/-/jest-28.1.3.tgz", + "integrity": "sha512-N4GT5on8UkZgH0O5LUavMRV1EDEhNTL0KEfRmDIeZHSV7p2XgLoY9t9VDUgL6o+yfdgYHVxuz81G8oB9VG5uyA==", + "dependencies": { + "@jest/core": "^28.1.3", + "@jest/types": "^28.1.3", + "import-local": "^3.0.2", + "jest-cli": "^28.1.3" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-28.1.3.tgz", + "integrity": "sha512-esaOfUWJXk2nfZt9SPyC8gA1kNfdKLkQWyzsMlqq8msYSlNKfmZxfRgZn4Cd4MGVUF+7v6dBs0d5TOAKa7iIiA==", + "dependencies": { + "execa": "^5.0.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-circus": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-28.1.3.tgz", + "integrity": "sha512-cZ+eS5zc79MBwt+IhQhiEp0OeBddpc1n8MBo1nMB8A7oPMKEO+Sre+wHaLJexQUj9Ya/8NOBY0RESUgYjB6fow==", + "dependencies": { + "@jest/environment": "^28.1.3", + "@jest/expect": "^28.1.3", + "@jest/test-result": "^28.1.3", + "@jest/types": "^28.1.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^28.1.3", + "jest-matcher-utils": "^28.1.3", + "jest-message-util": "^28.1.3", + "jest-runtime": "^28.1.3", + "jest-snapshot": "^28.1.3", + "jest-util": "^28.1.3", + "p-limit": "^3.1.0", + "pretty-format": "^28.1.3", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-circus/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-circus/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/pretty-format": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", + "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "dependencies": { + "@jest/schemas": "^28.1.3", + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-circus/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/jest-circus/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-28.1.3.tgz", + "integrity": "sha512-roY3kvrv57Azn1yPgdTebPAXvdR2xfezaKKYzVxZ6It/5NCxzJym6tUI5P1zkdWhfUYkxEI9uZWcQdaFLo8mJQ==", + "dependencies": { + "@jest/core": "^28.1.3", + "@jest/test-result": "^28.1.3", + "@jest/types": "^28.1.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^28.1.3", + "jest-util": "^28.1.3", + "jest-validate": "^28.1.3", + "prompts": "^2.0.1", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-cli/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-cli/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-cli/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-28.1.3.tgz", + "integrity": "sha512-MG3INjByJ0J4AsNBm7T3hsuxKQqFIiRo/AUqb1q9LRKI5UU6Aar9JHbr9Ivn1TVwfUD9KirRoM/T6u8XlcQPHQ==", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^28.1.3", + "@jest/types": "^28.1.3", + "babel-jest": "^28.1.3", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^28.1.3", + "jest-environment-node": "^28.1.3", + "jest-get-type": "^28.0.2", + "jest-regex-util": "^28.0.2", + "jest-resolve": "^28.1.3", + "jest-runner": "^28.1.3", + "jest-util": "^28.1.3", + "jest-validate": "^28.1.3", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^28.1.3", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-config/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-config/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/pretty-format": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", + "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "dependencies": { + "@jest/schemas": "^28.1.3", + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-config/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/jest-config/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-dev-server": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jest-dev-server/-/jest-dev-server-6.2.0.tgz", + "integrity": "sha512-ZWh8CuvxwjhYfvw4tGeftziqIvw/26R6AG3OTgNTQeXul8aZz48RQjDpnlDwnWX53jxJJl9fcigqIdSU5lYZuw==", + "dependencies": { + "chalk": "^4.1.2", + "cwd": "^0.10.0", + "find-process": "^1.4.7", + "prompts": "^2.4.2", + "spawnd": "^6.2.0", + "tree-kill": "^1.2.2", + "wait-on": "^6.0.1" + } + }, + "node_modules/jest-dev-server/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-dev-server/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-dev-server/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-dev-server/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-dev-server/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-dev-server/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-diff/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-diff/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "dev": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-diff/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-docblock": { + "version": "28.1.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-28.1.1.tgz", + "integrity": "sha512-3wayBVNiOYx0cwAbl9rwm5kKFP8yHH3d/fkEaL02NPTkDojPtheGB7HZSFY4wzX+DxyrvhXz0KSCVksmCknCuA==", + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-each": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-28.1.3.tgz", + "integrity": "sha512-arT1z4sg2yABU5uogObVPvSlSMQlDA48owx07BDPAiasW0yYpYHYOo4HHLz9q0BVzDVU4hILFjzJw0So9aCL/g==", + "dependencies": { + "@jest/types": "^28.1.3", + "chalk": "^4.0.0", + "jest-get-type": "^28.0.2", + "jest-util": "^28.1.3", + "pretty-format": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-each/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-each/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/node_modules/pretty-format": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", + "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "dependencies": { + "@jest/schemas": "^28.1.3", + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-each/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/jest-each/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-node": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-28.1.3.tgz", + "integrity": "sha512-ugP6XOhEpjAEhGYvp5Xj989ns5cB1K6ZdjBYuS30umT4CQEETaxSiPcZ/E1kFktX4GkrcM4qu07IIlDYX1gp+A==", + "dependencies": { + "@jest/environment": "^28.1.3", + "@jest/fake-timers": "^28.1.3", + "@jest/types": "^28.1.3", + "@types/node": "*", + "jest-mock": "^28.1.3", + "jest-util": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-environment-puppeteer": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jest-environment-puppeteer/-/jest-environment-puppeteer-6.2.0.tgz", + "integrity": "sha512-a/oSu6dO9D+XoDDe3ZY/0Sk79Jl2FcJl7Q0D+3x22l1eWNOYe4ikXnPGhtmNZ3mJIpuAVIX6LytA8EraOk/aqQ==", + "dependencies": { + "chalk": "^4.1.2", + "cwd": "^0.10.0", + "jest-dev-server": "^6.2.0", + "jest-environment-node": "^27.5.1", + "merge-deep": "^3.0.3" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "dependencies": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dependencies": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/@types/yargs": { + "version": "16.0.9", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.9.tgz", + "integrity": "sha512-tHhzvkFXZQeTECenFoRljLBYPZJ7jAVxqqtEI0qTLOmuultnFp4I9yKE17vTuhf7BkhCu7I4XuemPgikDVuYqA==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-environment-puppeteer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-puppeteer/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-get-type": { + "version": "28.0.2", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-28.0.2.tgz", + "integrity": "sha512-ioj2w9/DxSYHfOm5lJKCdcAmPJzQXmbM/Url3rhlghrPvT3tt+7a/+oXc9azkKmLvoiXjtV83bEWqi+vs5nlPA==", + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-28.1.3.tgz", + "integrity": "sha512-3S+RQWDXccXDKSWnkHa/dPwt+2qwA8CJzR61w3FoYCvoo3Pn8tvGcysmMF0Bj0EX5RYvAI2EIvC57OmotfdtKA==", + "dependencies": { + "@jest/types": "^28.1.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^28.0.2", + "jest-util": "^28.1.3", + "jest-worker": "^28.1.3", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-image-snapshot": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/jest-image-snapshot/-/jest-image-snapshot-6.4.0.tgz", + "integrity": "sha512-IWGtSOnelwaVPd09STbJuLmnAwlBC/roJtTLGLb8M3TA0vfku3MRNEXmljTa1EMXqdRbA0oIWiqHFB1ttTGazQ==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "get-stdin": "^5.0.1", + "glur": "^1.1.2", + "lodash": "^4.17.4", + "pixelmatch": "^5.1.0", + "pngjs": "^3.4.0", + "rimraf": "^2.6.2", + "ssim.js": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "jest": ">=20 <=29" + }, + "peerDependenciesMeta": { + "jest": { + "optional": true + } + } + }, + "node_modules/jest-image-snapshot/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-image-snapshot/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-image-snapshot/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-image-snapshot/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-image-snapshot/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-image-snapshot/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/jest-image-snapshot/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-leak-detector": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-28.1.3.tgz", + "integrity": "sha512-WFVJhnQsiKtDEo5lG2mM0v40QWnBM+zMdHHyJs8AWZ7J0QZJS59MsyKeJHWhpBZBH32S48FOVvGyOFT1h0DlqA==", + "dependencies": { + "jest-get-type": "^28.0.2", + "pretty-format": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-leak-detector/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-leak-detector/node_modules/pretty-format": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", + "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "dependencies": { + "@jest/schemas": "^28.1.3", + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-leak-detector/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/jest-matcher-utils": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-28.1.3.tgz", + "integrity": "sha512-kQeJ7qHemKfbzKoGjHHrRKH6atgxMk8Enkk2iPQ3XwO6oE/KYD8lMYOziCkeSB9G4adPM4nR1DE8Tf5JeWH6Bw==", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^28.1.3", + "jest-get-type": "^28.0.2", + "pretty-format": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-matcher-utils/node_modules/diff-sequences": { + "version": "28.1.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-28.1.1.tgz", + "integrity": "sha512-FU0iFaH/E23a+a718l8Qa/19bF9p06kgE0KipMOMadwa3SjnaElKzPaUC0vnibs6/B/9ni97s61mcejk8W1fQw==", + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/node_modules/jest-diff": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-28.1.3.tgz", + "integrity": "sha512-8RqP1B/OXzjjTWkqMX67iqgwBVJRgCyKD3L9nq+6ZqJMdvjE8RgHktqZ6jNrkdMT+dJuYNI3rhQpxaz7drJHfw==", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^28.1.1", + "jest-get-type": "^28.0.2", + "pretty-format": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/pretty-format": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", + "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "dependencies": { + "@jest/schemas": "^28.1.3", + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/jest-matcher-utils/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", + "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^28.1.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^28.1.3", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-message-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-message-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/pretty-format": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", + "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "dependencies": { + "@jest/schemas": "^28.1.3", + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-message-util/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/jest-message-util/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-mock": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-28.1.3.tgz", + "integrity": "sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==", + "dependencies": { + "@jest/types": "^28.1.3", + "@types/node": "*" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-puppeteer": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jest-puppeteer/-/jest-puppeteer-6.2.0.tgz", + "integrity": "sha512-4Ynkgcf9FkHlTNEpdsojGLb3KtsToWqjO6SCigxb9Qj3HzIqhzJzNbDJ/XhiciNDpqDe6KHW9sZ6fjHphNLr6g==", + "dependencies": { + "expect-puppeteer": "^6.1.1", + "jest-environment-puppeteer": "^6.2.0" + }, + "peerDependencies": { + "puppeteer": ">= 1.5.0" + } + }, + "node_modules/jest-regex-util": { + "version": "28.0.2", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-28.0.2.tgz", + "integrity": "sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==", + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-28.1.3.tgz", + "integrity": "sha512-Z1W3tTjE6QaNI90qo/BJpfnvpxtaFTFw5CDgwpyE/Kz8U/06N1Hjf4ia9quUhCh39qIGWF1ZuxFiBiJQwSEYKQ==", + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^28.1.3", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^28.1.3", + "jest-validate": "^28.1.3", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-28.1.3.tgz", + "integrity": "sha512-qa0QO2Q0XzQoNPouMbCc7Bvtsem8eQgVPNkwn9LnS+R2n8DaVDPL/U1gngC0LTl1RYXJU0uJa2BMC2DbTfFrHA==", + "dependencies": { + "jest-regex-util": "^28.0.2", + "jest-snapshot": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-resolve/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-resolve/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-resolve/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-28.1.3.tgz", + "integrity": "sha512-GkMw4D/0USd62OVO0oEgjn23TM+YJa2U2Wu5zz9xsQB1MxWKDOlrnykPxnMsN0tnJllfLPinHTka61u0QhaxBA==", + "dependencies": { + "@jest/console": "^28.1.3", + "@jest/environment": "^28.1.3", + "@jest/test-result": "^28.1.3", + "@jest/transform": "^28.1.3", + "@jest/types": "^28.1.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.10.2", + "graceful-fs": "^4.2.9", + "jest-docblock": "^28.1.1", + "jest-environment-node": "^28.1.3", + "jest-haste-map": "^28.1.3", + "jest-leak-detector": "^28.1.3", + "jest-message-util": "^28.1.3", + "jest-resolve": "^28.1.3", + "jest-runtime": "^28.1.3", + "jest-util": "^28.1.3", + "jest-watcher": "^28.1.3", + "jest-worker": "^28.1.3", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-runner/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runner/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-runner/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-28.1.3.tgz", + "integrity": "sha512-NU+881ScBQQLc1JHG5eJGU7Ui3kLKrmwCPPtYsJtBykixrM2OhVQlpMmFWJjMyDfdkGgBMNjXCGB/ebzsgNGQw==", + "dependencies": { + "@jest/environment": "^28.1.3", + "@jest/fake-timers": "^28.1.3", + "@jest/globals": "^28.1.3", + "@jest/source-map": "^28.1.2", + "@jest/test-result": "^28.1.3", + "@jest/transform": "^28.1.3", + "@jest/types": "^28.1.3", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^28.1.3", + "jest-message-util": "^28.1.3", + "jest-mock": "^28.1.3", + "jest-regex-util": "^28.0.2", + "jest-resolve": "^28.1.3", + "jest-snapshot": "^28.1.3", + "jest-util": "^28.1.3", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-runtime/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runtime/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-runtime/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-28.1.3.tgz", + "integrity": "sha512-4lzMgtiNlc3DU/8lZfmqxN3AYD6GGLbl+72rdBpXvcV+whX7mDrREzkPdp2RnmfIiWBg1YbuFSkXduF2JcafJg==", + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^28.1.3", + "@jest/transform": "^28.1.3", + "@jest/types": "^28.1.3", + "@types/babel__traverse": "^7.0.6", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^28.1.3", + "graceful-fs": "^4.2.9", + "jest-diff": "^28.1.3", + "jest-get-type": "^28.0.2", + "jest-haste-map": "^28.1.3", + "jest-matcher-utils": "^28.1.3", + "jest-message-util": "^28.1.3", + "jest-util": "^28.1.3", + "natural-compare": "^1.4.0", + "pretty-format": "^28.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-snapshot/node_modules/diff-sequences": { + "version": "28.1.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-28.1.1.tgz", + "integrity": "sha512-FU0iFaH/E23a+a718l8Qa/19bF9p06kgE0KipMOMadwa3SjnaElKzPaUC0vnibs6/B/9ni97s61mcejk8W1fQw==", + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/jest-diff": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-28.1.3.tgz", + "integrity": "sha512-8RqP1B/OXzjjTWkqMX67iqgwBVJRgCyKD3L9nq+6ZqJMdvjE8RgHktqZ6jNrkdMT+dJuYNI3rhQpxaz7drJHfw==", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^28.1.1", + "jest-get-type": "^28.0.2", + "pretty-format": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/pretty-format": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", + "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "dependencies": { + "@jest/schemas": "^28.1.3", + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/jest-util": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", + "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "dependencies": { + "@jest/types": "^28.1.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-28.1.3.tgz", + "integrity": "sha512-SZbOGBWEsaTxBGCOpsRWlXlvNkvTkY0XxRfh7zYmvd8uL5Qzyg0CHAXiXKROflh801quA6+/DsT4ODDthOC/OA==", + "dependencies": { + "@jest/types": "^28.1.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^28.0.2", + "leven": "^3.1.0", + "pretty-format": "^28.1.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-validate/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-validate/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate/node_modules/pretty-format": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", + "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "dependencies": { + "@jest/schemas": "^28.1.3", + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-validate/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/jest-validate/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-28.1.3.tgz", + "integrity": "sha512-t4qcqj9hze+jviFPUN3YAtAEeFnr/azITXQEMARf5cMwKY2SMBRnCQTXLixTl20OR6mLh9KLMrgVJgJISym+1g==", + "dependencies": { + "@jest/test-result": "^28.1.3", + "@jest/types": "^28.1.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.10.2", + "jest-util": "^28.1.3", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-watcher/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-watcher/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/jest-watcher/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz", + "integrity": "sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/joi": { + "version": "17.12.2", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.12.2.tgz", + "integrity": "sha512-RonXAIzCiHLc8ss3Ibuz45u28GOsWE1UpfDXLbN/9NKbL4tCJf8TWYVKsoYuuh+sAUt7fsSNpA+r2+TBA6Wjmw==", + "dependencies": { + "@hapi/hoek": "^9.3.0", + "@hapi/topo": "^5.1.0", + "@sideway/address": "^4.1.5", + "@sideway/formula": "^3.0.1", + "@sideway/pinpoint": "^2.0.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "peer": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "peer": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "peer": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "peer": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "peer": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "engines": { + "node": ">=6" + } + }, + "node_modules/lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha512-RE2g0b5VGZsOCFOCgP7omTRYFqydmZkBwl5oNnQ1lDYC57uyO9KqNnNVxT7COSHTxrRCWVcAVOcbjk+tvh/rgQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "peer": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "peer": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "peer": true + }, + "node_modules/lodash.unescape": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.unescape/-/lodash.unescape-4.0.1.tgz", + "integrity": "sha512-DhhGRshNS1aX6s5YdBE3njCCouPgnG29ebyHvImlZzXZf2SHgt+J08DHgytTPnpywNbO1Y8mNUFyQuIDBq2JZg==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/merge-deep": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/merge-deep/-/merge-deep-3.0.3.tgz", + "integrity": "sha512-qtmzAS6t6grwEkNrunqTBdn0qKwFgNWvlxUbAV8es9M7Ot1EbyApytCnvE0jALPa46ZpKDUo527kKiaWplmlFA==", + "dependencies": { + "arr-union": "^3.1.0", + "clone-deep": "^0.2.4", + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha512-ALGF1Jt9ouehcaXaHhn6t1yGWRqGaHkPFndtFVHfZXOvkIZ/yoGaSi0AHVTafb3ZBGg4dr/bDwnaEKqCXzchMA==", + "dependencies": { + "for-in": "^0.1.3", + "is-extendable": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-object/node_modules/for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha512-F0to7vbBSHP8E3l6dCjxNOLuSFAACIxFy3UehTUlG7svlXi37HHsDkyVcHo0Pq8QwrE+pXvWSVX3ZT1T9wAZ9g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==" + }, + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "peer": true, + "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "peer": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "peer": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-passwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", + "integrity": "sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==" + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/pixelmatch": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/pixelmatch/-/pixelmatch-5.3.0.tgz", + "integrity": "sha512-o8mkY4E/+LNUf6LzX96ht6k6CEDi65k9G2rjMtBe9Oo+VPKSvl+0GKHuH/AlG+GA5LPG/i5hrekkxUc3s2HU+Q==", + "dev": true, + "dependencies": { + "pngjs": "^6.0.0" + }, + "bin": { + "pixelmatch": "bin/pixelmatch" + } + }, + "node_modules/pixelmatch/node_modules/pngjs": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-6.0.0.tgz", + "integrity": "sha512-TRzzuFRRmEoSW/p1KVAmiOgPco2Irlah+bGFCeNfJXxxYGwSw7YwAOAcd7X28K/m5bjBWKsC29KyoMfHbypayg==", + "dev": true, + "engines": { + "node": ">=12.13.0" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pngjs": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/pretty-format/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/pretty-format/node_modules/@types/yargs": { + "version": "15.0.19", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.19.tgz", + "integrity": "sha512-2XUaGVmyQjgyAZldf0D0c14vvo/yv0MhQBSTJcejMMaitsn3nxCB6TmH4G0ZQf+uxROOa9mpanoSm8h6SG/1ZA==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/pretty-format/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/pretty-format/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/pretty-format/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/pretty-format/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/pretty-format/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/puppeteer": { + "version": "13.7.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-13.7.0.tgz", + "integrity": "sha512-U1uufzBjz3+PkpCxFrWzh4OrMIdIb2ztzCu0YEPfRHjHswcSwHZswnK+WdsOQJsRV8WeTg3jLhJR4D867+fjsA==", + "deprecated": "< 21.5.0 is no longer supported", + "hasInstallScript": true, + "dependencies": { + "cross-fetch": "3.1.5", + "debug": "4.3.4", + "devtools-protocol": "0.0.981744", + "extract-zip": "2.0.1", + "https-proxy-agent": "5.0.1", + "pkg-dir": "4.2.0", + "progress": "2.0.3", + "proxy-from-env": "1.1.0", + "rimraf": "3.0.2", + "tar-fs": "2.1.1", + "unbzip2-stream": "1.4.3", + "ws": "8.5.0" + }, + "engines": { + "node": ">=10.18.1" + } + }, + "node_modules/puppeteer-cluster": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/puppeteer-cluster/-/puppeteer-cluster-0.23.0.tgz", + "integrity": "sha512-108terIWDzPrQopmoYSPd5yDoy3FGJ2dNnoGMkGYPs6xtkdhgaECwpfZkzaRToMQPZibUOz0/dSSGgPEdXEhkQ==", + "dependencies": { + "debug": "^4.3.3" + }, + "peerDependencies": { + "puppeteer": ">=1.5.0" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "optional": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz", + "integrity": "sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "dev": true + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-dir": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz", + "integrity": "sha512-QxMPqI6le2u0dCLyiGzgy92kjkkL6zO0XyvHzjdTNH3zM6e5Hz3BwG6+aEyNgiQ5Xz6PwTwgQEj3U50dByPKIA==", + "dependencies": { + "expand-tilde": "^1.2.2", + "global-modules": "^0.2.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "peer": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true, + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/shallow-clone": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", + "integrity": "sha512-J1zdXCky5GmNnuauESROVu31MQSnLoYvlyEn6j2Ztk6Q5EHFIhxkMhYcv6vuDzl2XEzoRr856QwzMgWM/TmZgw==", + "dependencies": { + "is-extendable": "^0.1.1", + "kind-of": "^2.0.1", + "lazy-cache": "^0.2.3", + "mixin-object": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shallow-clone/node_modules/kind-of": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", + "integrity": "sha512-0u8i1NZ/mg0b+W3MGGw5I7+6Eib2nx72S/QvXa0hYjEkjTknYmEYQJwGu3mLC0BrhtJjtQafTkyRUQ75Kx0LVg==", + "dependencies": { + "is-buffer": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shallow-clone/node_modules/lazy-cache": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", + "integrity": "sha512-gkX52wvU/R8DVMMt78ATVPFMJqfW8FPz1GZ1sVHBVQHmu/WvhIWE4cE1GBzhJNFicDeYhnwp6Rl35BcAIM3YOQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + }, + "node_modules/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/spawnd": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/spawnd/-/spawnd-6.2.0.tgz", + "integrity": "sha512-qX/I4lQy4KgVEcNle0kuc4FxFWHISzBhZW1YemPfwmrmQjyZmfTK/OhBKkhrD2ooAaFZEm1maEBLE6/6enwt+g==", + "dependencies": { + "exit": "^0.1.2", + "signal-exit": "^3.0.7", + "tree-kill": "^1.2.2" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + }, + "node_modules/ssim.js": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/ssim.js/-/ssim.js-3.5.0.tgz", + "integrity": "sha512-Aj6Jl2z6oDmgYFFbQqK7fght19bXdOxY7Tj03nF+03M9gCBAjeIiO8/PlEGMfKDwYpw4q6iBqVq2YuREorGg/g==", + "dev": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dependencies": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true, + "peer": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==" + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/ts-jest": { + "version": "28.0.8", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-28.0.8.tgz", + "integrity": "sha512-5FaG0lXmRPzApix8oFG8RKjAz4ehtm8yMKOTy5HX3fY6W8kmvOrmcY0hKDElW52FJov+clhUbrKAqofnj4mXTg==", + "dependencies": { + "bs-logger": "0.x", + "fast-json-stable-stringify": "2.x", + "jest-util": "^28.0.0", + "json5": "^2.2.1", + "lodash.memoize": "4.x", + "make-error": "1.x", + "semver": "7.x", + "yargs-parser": "^21.0.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/types": "^28.0.0", + "babel-jest": "^28.0.0", + "jest": "^28.0.0", + "typescript": ">=4.3" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + } + } + }, + "node_modules/ts-jest/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "peer": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "dependencies": { + "buffer": "^5.2.1", + "through": "^2.3.8" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "peer": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/v8-to-istanbul": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", + "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/wait-on": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz", + "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==", + "dependencies": { + "axios": "^0.25.0", + "joi": "^17.6.0", + "lodash": "^4.17.21", + "minimist": "^1.2.5", + "rxjs": "^7.5.4" + }, + "bin": { + "wait-on": "bin/wait-on" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/ws": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", + "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/tests/e2e/package.json b/tests/e2e/package.json new file mode 100644 index 0000000..cbaad4e --- /dev/null +++ b/tests/e2e/package.json @@ -0,0 +1,33 @@ +{ + "name": "e2e", + "version": "1.0.0", + "description": "", + "main": "babel.config.js", + "directories": { + "test": "tests" + }, + "scripts": { + "test": "sleep 30 && jest --verbose ControlPanel && jest --verbose Intensity && jest --verbose SocialContextMap && jest --verbose Viewer", + "puppeteer_test" : "jest --verbose" + }, + "author": "", + "license": "ISC", + "dependencies": { + "jest": "^28.1.3", + "jest-puppeteer": "^6.2.0", + "puppeteer": "^13.7.0", + "puppeteer-cluster": "^0.23.0", + "ts-jest": "^28.0.8", + "typescript": "^4.9.5" + }, + "devDependencies": { + "@babel/cli": "^7.17.6", + "@babel/core": "^7.17.5", + "@babel/preset-env": "^7.16.11", + "@types/jest": "26.0.24", + "@types/node": "13.13.52", + "@types/puppeteer": "3.0.8", + "jest-image-snapshot": "^6.4.0", + "eslint-plugin-jest": "^22.21.0" + } +} diff --git a/tests/e2e/tests/ControlPanel.test.ts b/tests/e2e/tests/ControlPanel.test.ts new file mode 100644 index 0000000..1c8b8c2 --- /dev/null +++ b/tests/e2e/tests/ControlPanel.test.ts @@ -0,0 +1,160 @@ +import * as puppeteer from "puppeteer"; +import 'expect-puppeteer'; +import { toMatchImageSnapshot } from 'jest-image-snapshot' +expect.extend({ toMatchImageSnapshot }) +const fs = require('fs'); +const path = require('path'); + +const URL = process.env.url || "https://cfos.dev.metacell.us/"; +const TIMEOUT = 60000; + + +//SNAPSHOT: +const SNAPSHOT_OPTIONS = { + customSnapshotsDir: `./tests/snapshots/ControlPanel.test/`, + comparisonMethod: 'ssim', + failureThresholdType: 'percent', + failureThreshold: 0.10 +}; + + +jest.setTimeout(400000); +let cp_test_browser: any; +let cp_test_page: any; + +declare global { + namespace jest { + interface Matchers { + toMatchImageSnapshot(options?: import('jest-image-snapshot').MatchImageSnapshotOptions): R; + } + } +} + +describe('Control Panel Test', () => { + + + beforeAll(async () => { + cp_test_browser = await puppeteer.launch({ + args: ['--no-sandbox', '--disable-setuid-sandbox', "--ignore-certificate-errors"], + headless: true, + devtools: false, + defaultViewport: { + width: 1600, + height: 1000, + }, + }); + cp_test_page = await cp_test_browser.newPage(); + }); + + afterAll(async () => { + await cp_test_browser.close(); + }); + + test('Load the page', async () => { + console.log('Loading the page ...') + + await cp_test_page.goto(URL); + await cp_test_page.waitForSelector('.jss3', { timeout: TIMEOUT, hidden: false }); + console.log(cp_test_page.url()); + await cp_test_page.waitForSelector('#geppetto-menu-btn', { timeout: TIMEOUT, hidden: false }); + + await cp_test_page.waitForSelector('.MuiBox-root > h6.MuiTypography-root.MuiTypography-h6', { timeout: TIMEOUT, hidden: false }); + + const selector = '.MuiBox-root > h6.MuiTypography-root.MuiTypography-h6'; + + await cp_test_page.waitForFunction( + (selector, text) => document.querySelector(selector).innerText === text, + { timeout: TIMEOUT * 3 }, + selector, + 'Fetching atlas...' + ); + + await cp_test_page.waitForFunction( + (selector, text) => document.querySelector(selector).innerText !== text, + { timeout: TIMEOUT * 5 }, + selector, + 'Fetching atlas...' + ); + + await cp_test_page.waitForSelector('#geppetto-menu-btn', { timeout: TIMEOUT, hidden: false }); + const textContent = await cp_test_page.$eval('#geppetto-menu-btn', el => el.textContent); + expect(textContent).toBe('Atlas images'); + await cp_test_page.waitForSelector('#simple-tabpanel-0 .MuiStack-root', { timeout: TIMEOUT, hidden: false}); + + // const element = await cp_test_page.$('canvas'); + const screenshot = await cp_test_page.screenshot(); + + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Atlas Map' + }); + + console.log('Page Loaded') + }); + + test('Control Panel: Hide', async () => { + console.log('Hiding the Atlas Map ...') + await cp_test_page.waitForSelector('button[aria-label="Hide"]', { timeout: TIMEOUT, hidden: false }); + await cp_test_page.click('button[aria-label="Hide"]'); + // const element = await cp_test_page.$('canvas'); + await cp_test_page.waitForSelector('#simple-tabpanel-0 .MuiStack-root', { timeout: TIMEOUT, hidden: false}); + + const screenshot = await cp_test_page.screenshot(); + + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Hidden Atlas Map' + }); + + + console.log('Atlas Map Hidden') + + }) + + test('Control Panel: Show', async () => { + console.log('Displaying the Atlas Map ...') + await cp_test_page.waitForSelector('button[aria-label="Show"]', { timeout: TIMEOUT, hidden: false }); + await cp_test_page.click('button[aria-label="Show"]'); + // const element = await cp_test_page.$('canvas'); + await cp_test_page.waitForSelector('#simple-tabpanel-0 .MuiStack-root', { timeout: TIMEOUT, hidden: false}); + + const screenshot = await cp_test_page.screenshot(); + + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Displayed Atlas Map' + }); + console.log('Atlas Map Displayed') + }) + + test('Control Panel: Download', async () => { + console.log('Downloading the Atlas Map ...'); + const downloadPath = path.resolve(__dirname, 'downloads'); + + // Set the download behavior + await cp_test_page._client.send('Page.setDownloadBehavior', { + behavior: 'allow', + downloadPath: downloadPath, + }); + + // Click the 'Download' button + await cp_test_page.waitForSelector('button[aria-label="Download"]', { timeout: TIMEOUT, hidden: false }); + await cp_test_page.click('button[aria-label="Download"]'); + await cp_test_page.click('button[aria-label="Download"]'); + + // Wait for the download request to complete + const response = await cp_test_page.waitForResponse( + response => response.url().includes('gubra_ano_combined_25um'), + { timeout: 6000 } + ); + // Check if the response status is OK + expect(response.ok()).toBeTruthy(); + + console.log('Download initiated'); + + }); + + + + +}); \ No newline at end of file diff --git a/tests/e2e/tests/Intensity.test.ts b/tests/e2e/tests/Intensity.test.ts new file mode 100644 index 0000000..8132f88 --- /dev/null +++ b/tests/e2e/tests/Intensity.test.ts @@ -0,0 +1,254 @@ +import * as puppeteer from "puppeteer"; +import 'expect-puppeteer'; +import { toMatchImageSnapshot } from 'jest-image-snapshot' +expect.extend({ toMatchImageSnapshot }) + +const URL = process.env.url || "https://cfos.dev.metacell.us/"; +const TIMEOUT = 60000; + + +//SNAPSHOT: +const SNAPSHOT_OPTIONS = { + customSnapshotsDir: `./tests/snapshots/Intensity.test/`, + comparisonMethod: 'ssim', + failureThresholdType: 'percent', + failureThreshold: 0.10 +}; + + +jest.setTimeout(300000); +let inetensity_test_browser: any; +let intensity_test_page: any; + +declare global { + namespace jest { + interface Matchers { + toMatchImageSnapshot(options?: import('jest-image-snapshot').MatchImageSnapshotOptions): R; + } + } +} + +describe('Intensity Test', () => { + + + beforeAll(async () => { + inetensity_test_browser = await puppeteer.launch({ + args: ['--no-sandbox', '--disable-setuid-sandbox', "--ignore-certificate-errors"], + headless: true, + devtools: false, + defaultViewport: { + width: 1600, + height: 1000, + }, + }); + intensity_test_page = await inetensity_test_browser.newPage(); + }); + + afterAll(async () => { + await inetensity_test_browser.close(); + }); + + test('Load the page', async () => { + console.log('Loading page ...') + + await intensity_test_page.goto(URL); + await intensity_test_page.waitForSelector('.jss3', { timeout: TIMEOUT, hidden: false }); + console.log(intensity_test_page.url()); + await intensity_test_page.waitForSelector('#geppetto-menu-btn', { timeout: TIMEOUT, hidden: false }); + + await intensity_test_page.waitForSelector('.MuiBox-root > h6.MuiTypography-root.MuiTypography-h6', { timeout: TIMEOUT, hidden: false }); + + const selector = '.MuiBox-root > h6.MuiTypography-root.MuiTypography-h6'; + + await intensity_test_page.waitForFunction( + (selector, text) => document.querySelector(selector).innerText === text, + { timeout: TIMEOUT * 3 }, + selector, + 'Fetching atlas...' + ); + + await intensity_test_page.waitForFunction( + (selector, text) => document.querySelector(selector).innerText !== text, + { timeout: TIMEOUT * 5 }, + selector, + 'Fetching atlas...' + ); + + await intensity_test_page.waitForSelector('#geppetto-menu-btn', { timeout: TIMEOUT, hidden: false }); + const textContent = await intensity_test_page.$eval('#geppetto-menu-btn', el => el.textContent); + expect(textContent).toBe('Atlas images'); + + const screenshot = await intensity_test_page.screenshot(); + + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Atlas Map' + }); + + console.log('Page loaded') + + }); + + test('Add Statistical Map', async () => { + await intensity_test_page.waitForSelector('.MuiButtonBase-root.MuiButton-root.MuiButton-contained.MuiButton-containedPrimary.MuiButton-sizeMedium.MuiButton-containedSizeMedium.MuiButton-colorPrimary.MuiButton-root.MuiButton-contained.MuiButton-containedPrimary.MuiButton-sizeMedium.MuiButton-containedSizeMedium.MuiButton-colorPrimary', { timeout: TIMEOUT, hidden: false }); + await intensity_test_page.click('.MuiButtonBase-root.MuiButton-root.MuiButton-contained.MuiButton-containedPrimary.MuiButton-sizeMedium.MuiButton-containedSizeMedium.MuiButton-colorPrimary.MuiButton-root.MuiButton-contained.MuiButton-containedPrimary.MuiButton-sizeMedium.MuiButton-containedSizeMedium.MuiButton-colorPrimary'); + await intensity_test_page.waitForSelector('.MuiFormGroup-root', { timeout: TIMEOUT, hidden: false }); + await intensity_test_page.waitForSelector('.MuiFormGroup-root > .MuiBox-root', { timeout: TIMEOUT, hidden: false }); + await intensity_test_page.click('.MuiFormGroup-root > .MuiBox-root'); + + const selector = '.MuiBox-root > h6.MuiTypography-root.MuiTypography-h6'; + + await intensity_test_page.waitForFunction( + (selector, text) => document.querySelector(selector).innerText === text, + { timeout: TIMEOUT * 3 }, + selector, + 'Fetching activity map...' + ); + + await intensity_test_page.waitForFunction( + (selector, text) => document.querySelector(selector).innerText !== text, + { timeout: TIMEOUT * 3 }, + selector, + 'Fetching acitivy map...' + ); + const global_intensity_text_selector = 'p.MuiTypography-root.MuiTypography-body2' + await intensity_test_page.waitForFunction( + (selector, text) => document.querySelector(selector).innerText == text, + { timeout: TIMEOUT * 5 }, + global_intensity_text_selector, + 'Global intensity' + ); + + }) + + test('Change Global Intensity', async () => { + console.log('Changing Global Intensity ...') + + await intensity_test_page.waitForSelector('.MuiSlider-root.MuiSlider-colorPrimary.MuiSlider-sizeMedium', { timeout: TIMEOUT, hidden: false }); + const selector = '.MuiSlider-root.MuiSlider-colorPrimary.MuiSlider-sizeMedium'; + + await intensity_test_page.waitForFunction( + (selector) => document.querySelectorAll(selector).length === 3, + { timeout: TIMEOUT }, + selector + ); + + await intensity_test_page.waitForSelector('.MuiSlider-root.MuiSlider-colorPrimary.MuiSlider-sizeMedium .MuiSlider-thumb.MuiSlider-thumbSizeMedium.MuiSlider-thumbColorPrimary.MuiSlider-thumb.MuiSlider-thumbSizeMedium.MuiSlider-thumbColorPrimary', { timeout: TIMEOUT, hidden: false }); + + const sliders = await intensity_test_page.$$('.MuiSlider-root.MuiSlider-colorPrimary.MuiSlider-sizeMedium .MuiSlider-thumb.MuiSlider-thumbSizeMedium.MuiSlider-thumbColorPrimary.MuiSlider-thumb.MuiSlider-thumbSizeMedium.MuiSlider-thumbColorPrimary'); + if (sliders.length > 1) { + const sliderBox = await sliders[1].boundingBox(); // Get the bounding box of the second slider + const sliderStartX = sliderBox.x // + sliderBox.width / 2; + const sliderY = sliderBox.y //+ sliderBox.height / 2; + + // Drag the second slider a bit to the left + await intensity_test_page.mouse.move(sliderStartX, sliderY); + await intensity_test_page.mouse.down(); + await intensity_test_page.mouse.move(sliderStartX - 40, sliderY); + await intensity_test_page.mouse.up(); + } + + await intensity_test_page.waitForTimeout('3000'); + // await intensity_test_page.waitForSelector('#viewer > div.MuiBox-root > div.MuiBox-root > div.MuiBox-root', { timeout: TIMEOUT, hidden: false }); + // const bar_elements = await intensity_test_page.$$('#viewer > div.MuiBox-root > div.MuiBox-root > div.MuiBox-root'); + // await bar_elements[1].click(); + + const screenshot = await intensity_test_page.screenshot(); + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Changed Intensity' + }); + + }) + + test('Reset Global Intensity', async () => { + + console.log('Resetting Global Intensity ...') + + const selector = '#viewer .MuiButtonBase-root.MuiButton-root.MuiButton-text.MuiButton-textPrimary.MuiButton-sizeMedium.MuiButton-textSizeMedium.MuiButton-root.MuiButton-text.MuiButton-textPrimary.MuiButton-sizeMedium.MuiButton-textSizeMedium'; + await intensity_test_page.waitForSelector(selector, { timeout: TIMEOUT, hidden: false }); + + const elements = await intensity_test_page.$$(selector); + + expect(elements.length).toBe(3); + await elements[0].click(); + + await intensity_test_page.waitForTimeout(3000); + const screenshot = await intensity_test_page.screenshot(); + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Reset Intensity' + }); + await intensity_test_page.waitForTimeout(3000); + + + console.log('Global Intensity reset') + }); + + + test('Change individual Intensity', async () => { + + console.log('Changing individual Intensity ...') + // await intensity_test_page.waitForSelector('#viewer > div.MuiBox-root > div.MuiBox-root > div.MuiBox-root', { timeout: TIMEOUT, hidden: false }); + // const bar_elements = await intensity_test_page.$$('#viewer > div.MuiBox-root > div.MuiBox-root > div.MuiBox-root'); + // await bar_elements[1].click(); + + await intensity_test_page.waitForSelector('.MuiSlider-root.MuiSlider-colorPrimary.MuiSlider-sizeMedium', { timeout: TIMEOUT, hidden: false }); + const selector = '.MuiSlider-root.MuiSlider-colorPrimary.MuiSlider-sizeMedium'; + await intensity_test_page.waitForFunction( + (selector) => document.querySelectorAll(selector).length === 3, + { timeout: TIMEOUT }, + selector + ); + + await intensity_test_page.waitForSelector('.MuiSlider-root.MuiSlider-colorPrimary.MuiSlider-sizeMedium .MuiSlider-thumb.MuiSlider-thumbSizeMedium.MuiSlider-thumbColorPrimary.MuiSlider-thumb.MuiSlider-thumbSizeMedium.MuiSlider-thumbColorPrimary', { timeout: TIMEOUT, hidden: false }); + + const sliders = await intensity_test_page.$$('.MuiSlider-root.MuiSlider-colorPrimary.MuiSlider-sizeMedium .MuiSlider-thumb.MuiSlider-thumbSizeMedium.MuiSlider-thumbColorPrimary.MuiSlider-thumb.MuiSlider-thumbSizeMedium.MuiSlider-thumbColorPrimary'); + if (sliders.length > 1) { + const sliderBox = await sliders[3].boundingBox(); + const sliderStartX = sliderBox.x // + sliderBox.width / 2; + const sliderY = sliderBox.y //+ sliderBox.height / 2; + + // Drag the second slider a bit to the left + await intensity_test_page.mouse.move(sliderStartX, sliderY); + await intensity_test_page.mouse.down(); + await intensity_test_page.mouse.move(sliderStartX - 5, sliderY); + await intensity_test_page.mouse.up(); + } + + await intensity_test_page.waitForTimeout('3000'); + const screenshot = await intensity_test_page.screenshot(); + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Changed Individual Intensity' + }); + console.log('Individual Intensity changed') + }); + + test('Reset individual Intensity', async () => { + console.log('Resetting individual Intensity ...') + const selector = '#viewer .MuiButtonBase-root.MuiButton-root.MuiButton-text.MuiButton-textPrimary.MuiButton-sizeMedium.MuiButton-textSizeMedium.MuiButton-root.MuiButton-text.MuiButton-textPrimary.MuiButton-sizeMedium.MuiButton-textSizeMedium'; + await intensity_test_page.waitForSelector(selector, { timeout: TIMEOUT, hidden: false }); + + const elements = await intensity_test_page.$$(selector); + + expect(elements.length).toBe(3); + await elements[1].click(); + + await intensity_test_page.waitForTimeout(3000); + const screenshot = await intensity_test_page.screenshot(); + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Reset Intensity' + }); + await intensity_test_page.waitForTimeout(3000); + + console.log('Individual Intensity reset') + + }); + + + + + +}); \ No newline at end of file diff --git a/tests/e2e/tests/SocialContextMap.test.ts b/tests/e2e/tests/SocialContextMap.test.ts new file mode 100644 index 0000000..a48278c --- /dev/null +++ b/tests/e2e/tests/SocialContextMap.test.ts @@ -0,0 +1,145 @@ +import * as puppeteer from "puppeteer"; +import 'expect-puppeteer'; +import { toMatchImageSnapshot } from 'jest-image-snapshot' +expect.extend({ toMatchImageSnapshot }) + +const URL = process.env.url || "https://cfos.dev.metacell.us/"; +const TIMEOUT = 60000; + + +//SNAPSHOT: +const SNAPSHOT_OPTIONS = { + customSnapshotsDir: `./tests/snapshots/SocialContextMap.test/`, + comparisonMethod: 'ssim', + failureThresholdType: 'percent', + failureThreshold: 0.10 +}; + + +jest.setTimeout(300000); +let scm_test_browser: any; +let scm_test_page: any; + +declare global { + namespace jest { + interface Matchers { + toMatchImageSnapshot(options?: import('jest-image-snapshot').MatchImageSnapshotOptions): R; + } + } + } + +describe('Social Context Map Test', () => { + + + beforeAll(async () => { + scm_test_browser = await puppeteer.launch({ + args: ['--no-sandbox', '--disable-setuid-sandbox', "--ignore-certificate-errors"], + headless: true, + devtools: false, + defaultViewport: { + width: 1600, + height: 1000, + }, + }); + scm_test_page = await scm_test_browser.newPage(); + }); + + afterAll(async () => { + await scm_test_browser.close(); + }); + + test('Load the page', async () => { + console.log('Loading page ...') + await scm_test_page.goto(URL); + await scm_test_page.waitForSelector('.jss3', { timeout: TIMEOUT, hidden: false}); + console.log(scm_test_page.url()); + await scm_test_page.waitForSelector('#geppetto-menu-btn', { timeout: TIMEOUT, hidden: false}); + + await scm_test_page.waitForSelector('.MuiBox-root > h6.MuiTypography-root.MuiTypography-h6', { timeout: TIMEOUT, hidden: false}); + + const selector = '.MuiBox-root > h6.MuiTypography-root.MuiTypography-h6'; + + await scm_test_page.waitForFunction( + (selector, text) => document.querySelector(selector).innerText === text, + { timeout: TIMEOUT * 3 }, + selector, + 'Fetching atlas...' + ); + + await scm_test_page.waitForFunction( + (selector, text) => document.querySelector(selector).innerText !== text, + { timeout: TIMEOUT * 5 }, + selector, + 'Fetching atlas...' + ); + + await scm_test_page.waitForSelector('#geppetto-menu-btn', { timeout: TIMEOUT, hidden: false}); + const textContent = await scm_test_page.$eval('#geppetto-menu-btn', el => el.textContent); + expect(textContent).toBe('Atlas images'); + + // const element = await scm_test_page.$('canvas'); + const screenshot = await scm_test_page.screenshot(); + + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Atlas Map' + }); + + console.log('Page Loaded') + }); + + test('Change Social Context Map', async () => { + + console.log('Changing Social Context Map ...'); + await scm_test_page.waitForSelector('#geppetto-menu-btn', { timeout: TIMEOUT, hidden: false}); + await scm_test_page.click('#geppetto-menu-btn'); + await scm_test_page.waitForSelector('li[id = "MDMA (social context) maps"]', { timeout: TIMEOUT, hidden: false}); + await scm_test_page.waitForSelector('li[id = "Psilocybin (HC; EE) maps"]', { timeout: TIMEOUT, hidden: false}); + await scm_test_page.waitForSelector('li[id = "Ketamine v. Naltrexone+Ket maps"]', { timeout: TIMEOUT, hidden: false}); + + await scm_test_page.hover('li[id = "Psilocybin (HC; EE) maps"]', { timeout: TIMEOUT, hidden: false}); + await scm_test_page.waitForSelector('li[class = "MuiButtonBase-root MuiListItem-root MuiMenuItem-root secondary-color MuiMenuItem-gutters MuiListItem-gutters MuiListItem-button"]', { timeout: TIMEOUT, hidden: false}); + await scm_test_page.hover('li[class = "MuiButtonBase-root MuiListItem-root MuiMenuItem-root secondary-color MuiMenuItem-gutters MuiListItem-gutters MuiListItem-button"]'); + await scm_test_page.waitForSelector('li[class = "MuiButtonBase-root MuiListItem-root MuiMenuItem-root MuiMenuItem-gutters MuiListItem-gutters MuiListItem-button"]', { timeout: TIMEOUT, hidden: false}); + + const selector = 'li[class = "MuiButtonBase-root MuiListItem-root MuiMenuItem-root MuiMenuItem-gutters MuiListItem-gutters MuiListItem-button"]'; + + await scm_test_page.waitForFunction( + (selector) => document.querySelectorAll(selector).length > 3, + { timeout: TIMEOUT }, + selector + ); + + const atlas_mnetadata_selector = 'li[class = "MuiButtonBase-root MuiListItem-root MuiMenuItem-root MuiMenuItem-gutters MuiListItem-gutters MuiListItem-button"]'; + const elements = await scm_test_page.$$(atlas_mnetadata_selector); + await elements[elements.length - 1].click(); + + await scm_test_page.waitForSelector('#geppetto-menu-btn', { timeout: TIMEOUT, hidden: false}); + await scm_test_page.waitForFunction( + (selector, text) => document.querySelector(selector).textContent === text, + { timeout: TIMEOUT }, + '#geppetto-menu-btn', + 'Psilocybin (HC; EE) maps' + ); + await scm_test_page.waitForSelector('#simple-tabpanel-0 .MuiStack-root', { timeout: TIMEOUT, hidden: false}); + + + console.log('Social Context Map Changed') + }); + + test('Context Map Comparison', async () => { + console.log('Comparing Context Maps ...'); + // const element = await scm_test_page.$('canvas'); + const screenshot = await scm_test_page.screenshot(); + + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Updated Atlas Map' + }); + + console.log('Context Maps Compared') + }); + + + +}); \ No newline at end of file diff --git a/tests/e2e/tests/Viewer.test.ts b/tests/e2e/tests/Viewer.test.ts new file mode 100644 index 0000000..b702f38 --- /dev/null +++ b/tests/e2e/tests/Viewer.test.ts @@ -0,0 +1,166 @@ +import * as puppeteer from "puppeteer"; +import 'expect-puppeteer'; +import { toMatchImageSnapshot } from 'jest-image-snapshot' +expect.extend({ toMatchImageSnapshot }) + +const URL = process.env.url || "https://cfos.dev.metacell.us/"; +const TIMEOUT = 60000; + + +//SNAPSHOT: +const SNAPSHOT_OPTIONS = { + customSnapshotsDir: `./tests/snapshots/Viewer.test/`, + comparisonMethod: 'ssim', + failureThresholdType: 'percent', + failureThreshold: 0.10 +}; + + +jest.setTimeout(300000); +let viewer_test_browser: any; +let viewer_test_page: any; + +declare global { + namespace jest { + interface Matchers { + toMatchImageSnapshot(options?: import('jest-image-snapshot').MatchImageSnapshotOptions): R; + } + } +} + +describe('Viewer Test', () => { + + + beforeAll(async () => { + viewer_test_browser = await puppeteer.launch({ + args: ['--no-sandbox', '--disable-setuid-sandbox', "--ignore-certificate-errors"], + headless: true, + devtools: false, + defaultViewport: { + width: 1600, + height: 1000, + }, + }); + viewer_test_page = await viewer_test_browser.newPage(); + }); + + afterAll(async () => { + await viewer_test_browser.close(); + }); + + test('Load the page', async () => { + console.log('Loading the page ...') + + await viewer_test_page.goto(URL); + await viewer_test_page.waitForSelector('.jss3', { timeout: TIMEOUT, hidden: false }); + console.log(viewer_test_page.url()); + await viewer_test_page.waitForSelector('#geppetto-menu-btn', { timeout: TIMEOUT, hidden: false }); + + await viewer_test_page.waitForSelector('.MuiBox-root > h6.MuiTypography-root.MuiTypography-h6', { timeout: TIMEOUT, hidden: false }); + + const selector = '.MuiBox-root > h6.MuiTypography-root.MuiTypography-h6'; + + await viewer_test_page.waitForFunction( + (selector, text) => document.querySelector(selector).innerText === text, + { timeout: TIMEOUT * 3 }, + selector, + 'Fetching atlas...' + ); + + await viewer_test_page.waitForFunction( + (selector, text) => document.querySelector(selector).innerText !== text, + { timeout: TIMEOUT * 5 }, + selector, + 'Fetching atlas...' + ); + + // const element = await viewer_test_page.$('canvas'); + const screenshot = await viewer_test_page.screenshot(); + await viewer_test_page.waitForTimeout(3000) + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Atlas Map' + }); + console.log('Page Loaded') + + }); + + test('Move to Previous Slices', async () => { + console.log('Moving to Previous Slices ...') + await viewer_test_page.waitForSelector('button[aria-label="Previous slice"]', { timeout: TIMEOUT, hidden: false }); + for (let i = 0; i < 50; i++) { + await viewer_test_page.click('button[aria-label="Previous slice"]'); + await viewer_test_page.waitForTimeout(500) + + } + // const element = await viewer_test_page.$('canvas'); + const screenshot = await viewer_test_page.screenshot(); + await viewer_test_page.waitForTimeout(3000) + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Atlas Map: Previous Slices' + }); + console.log('Moved to Previous Slices ') + + }); + + test('Center Stack', async () => { + console.log('Centering Stack ...') + await viewer_test_page.waitForSelector('button[aria-label="Center stack"]', { timeout: TIMEOUT, hidden: false }); + await viewer_test_page.click('button[aria-label="Center stack"]'); + + // const element = await viewer_test_page.$('canvas'); + const screenshot = await viewer_test_page.screenshot(); + await viewer_test_page.waitForTimeout(3000) + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Atlas Map Map Centered' + }); + console.log('Centered Stack') + }) + + test('Move to Next Slices', async () => { + console.log('Moving to Next Slices ...') + await viewer_test_page.waitForSelector('button[aria-label="Next slice"]', { timeout: TIMEOUT, hidden: false }); + for (let i = 0; i < 50; i++) { + await viewer_test_page.click('button[aria-label="Next slice"]'); + await viewer_test_page.waitForTimeout(500) + } + // const element = await viewer_test_page.$('canvas'); + const screenshot = await viewer_test_page.screenshot(); + await viewer_test_page.waitForTimeout(300) + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Atlas Map: Next Slices' + }); + console.log('Moved to Next Slices') + }) + + test('Toggle Wireframe', async () => { + console.log('Toggling Wireframe ...') + await viewer_test_page.waitForSelector('button[aria-label="Switch to wireframe"]', { timeout: TIMEOUT, hidden: false }); + await viewer_test_page.click('button[aria-label="Switch to wireframe"]'); + await viewer_test_page.waitForTimeout(500) + await viewer_test_page.waitForSelector('button[aria-label="Next slice"]', { timeout: TIMEOUT, hidden: false }); + await viewer_test_page.click('button[aria-label="Next slice"]'); + await viewer_test_page.waitForTimeout(500) + await viewer_test_page.waitForSelector('button[aria-label="Previous slice"]', { timeout: TIMEOUT, hidden: false }); + await viewer_test_page.click('button[aria-label="Previous slice"]'); + await viewer_test_page.waitForTimeout(500) + await viewer_test_page.waitForSelector('button[aria-label="Center stack"]', { timeout: TIMEOUT, hidden: false }); + await viewer_test_page.click('button[aria-label="Center stack"]'); + await viewer_test_page.waitForTimeout(500) + + // const element = await viewer_test_page.$('canvas'); + const screenshot = await viewer_test_page.screenshot(); + await viewer_test_page.waitForTimeout(300) + expect(screenshot).toMatchImageSnapshot({ + ...SNAPSHOT_OPTIONS, + customSnapshotIdentifier: 'Atlas Map: Wireframe' + }); + console.log('Toggled Wireframe') + }) + + + +}); \ No newline at end of file diff --git a/tests/e2e/tests/snapshots/ControlPanel.test/Atlas Map.png b/tests/e2e/tests/snapshots/ControlPanel.test/Atlas Map.png new file mode 100644 index 0000000000000000000000000000000000000000..9165fc4a64e3888df7f787a3cdf7369675deae47 GIT binary patch literal 80387 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
i{EOxnVfuHN9dwGi{Vo>k$zQ3o~|Q) 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 literal 0 HcmV?d00001 diff --git a/tests/e2e/tests/snapshots/ControlPanel.test/Displayed Atlas Map.png b/tests/e2e/tests/snapshots/ControlPanel.test/Displayed Atlas Map.png new file mode 100644 index 0000000000000000000000000000000000000000..887f12fa7e6568e0da12d157ca7ac062c5e94d04 GIT binary patch literal 80565 zcmb@ubySpF_%=L%(j^E;mx3q_(kUpCN+_UocXu}`Ez%{@f`oL(00V+_N;9Oy&>i0% z^_<`NV!iMB)_Ug;Jq|p3?`Q8juIsw*ecruLlEK5Kz=l8|c(Tu=RUi;_2?zvj4HF%F z6XMAo2>wEGRFQcMDej|Mhd}5cveJ@jZmF9yu3opDuVB05y_+`J^mh;NKW7H=-irC6 zas#KUdy)jlRK3AKO0?+hEY|yF*L3WO0oC_(?{D7z_?h=6%6jGl`fTQunY5%iS{xku zk3o0Q+s@siM1qnKUaLIB+q;Q~rek5)XzNa^a8-g9^nPixPZ8Ab48Ogl zVT;L96c+G+`>f{8b5zWu0{`J`?)jSrN0;L`(hF(dZt&dOkeJeGwCgiNN7+%jhVU>p zO6V$ic?T$>2hbL2&nkZp@P^TW&~P>e&d6&NJT9 z8J?)dv67Cu>;Jy%i-H?;Xq$vmSixxcFe4t)Qz}eaikA-VrPhS}gOFhZ#}G-MuKD*m z?5hG{SCd#>~;gu$!m(PI`5rgU>Z@VZQMKzl|qlkTiQOy+CDE! zAlJZYVNKK|Y^We@MZxnE`1F9V9?_4LxZw*sabXMDf)G*&__f^g4Ztn+c^yz@fYm9v z5J^0Tc|Cb7MIkMSZgPaLARMN*{18(!jUEG+64RdGl+9yUL)o*1m&Hw1nx+rqq#5%)DDT#qi%IvX`mX||5As_<_E=5;L}bgYUC$lqEC!&7<9gD?dld8 zNU)S}LY4L>)((B4_0Wqv%Ah;y zYZsiVq|nUGk#c+F0k3PlhEeNt+Go{hBiM2(aX{78W!nrW{lqG=Z?Yc?VH$$A0T zraPu}H?-{_{8&5WL4AC??B!gK(Tm4hwl%P-zXZo5N7XWsb)kKx7ec95W$0T!EPa!$ z?_K?6r<)pszZje9w%_e(+O~Jrxa48@R*r!heMFp83OHJAl1gHFl%6}25ncO5kwJ_Q zd_F7}#wz!RN|2#OPgjeP{MMh9mhZh3tgKigC?0+GJf`VQzjP;m#k{P))D?qE#To67 zhK_pw#=plJqoV!`!**w@0~&fdBWvUADQg$*9k27Ph2#1ve_{t5>wb^^d!8f{ zK~m`3D66b!A#QfelXuAHJCjZjC85I%r2FHzpJi+rM10%Z3SLGu@c$(IHHET=E1&=| zIEfO&X|=nk(FnCVBwlXtTR1dyYpYy_6WzewdxyuzHu8L+3tIHaa#;NGK=p~uRD(MX zjmMh4fuUhf>E{3;moV*ZYU^l*qoqVBiPF+KatRExW7J8>o^`!)p?vsUMU!JFfNt+xliP z>R-C?rLZJ-Lr`0@#!j*TgYHN2qvfVszHFsiyD(Z)SRZwcM>_G$TTetp5UuO9I|hU! z%2$*AUlV-$u}+0R;=O?{#9;?^A?)K=U=^_JKb%rmq`B^3rsj~X(V{xsVOV#=C4{n8 zhi={=TR`9)ladsgC0z1SgDEp|l+(An(++RCCLgVmoZSUp7mOAS&F1SIWUhy>R}E4P z|G2?V0(-<64!N^H0N)oWv zn@8eDYlcN{sv~b5N8I0k4f$5?c)FZ0ic9Sw=+m6>TrA07e9m_hO&DR!%zy3k77N}oa6Jm6C5(k6 z_4)Ufnf9tRdY`(hbtPY+2M2~igYe79D56nTYAwM0d?qsB{S<$~Wg(VIcuOGszE=4of#v{5^mtXW&pJ>(Xjp1cq`lLV3YRU4 z;`;419tpWG=EHX>Mr>P}b=~}h5e z%?oj17pv8dgibD_E@LATlf6ZGIKw$QK2=vn=v5LHF*E0U8%l-M3gGD%i5(Fw@Y>(v_c|DqF)}rkIinUi;r2M* zR-EFq-dR0Q67v@7N#F?EM9el~@Xxq09&U`ALPPMvecio`o+@}Pf4?{^@y(J?a4cnw z&FP8fcG=W$+4}i1U=FuPw>feOQPbE`Ra8{;ciD?nC@|uTzk}i9w_;BR-x8rrt;wQt6p`%dX5{0GU-|Kd z>M$?6PZ;54HMJ7PVN!0j&h6oZh=gIAdRJMOJDQ$IUA(w2{rWXU=DqOO`|C>r zJ-t%5U4uH;jXvTi@muSKufF~ar#KW)9#r-c+E7Jpg@D~)q^Hl+IAmgCivIYqedkRG z{CHJglQcn_FNh4*C=Kt7kd>Fu(j3m!@;P0OF{G)vM(Nx3auEpU!oA|Y;Lzf=(=+nT zQ%XC5&0Q<~oNWxJ6;ChfWkn~b3#S%#K^9SRVG_@yTWGHsSiu{iIiu{8)@?=ftSHcv0R(|6f%dyYJ^xJ~4+(c+BM!(2h?6T8?!^EldUT{BJZ_=dY(cdjEsL!j$@N~`W1Y(~jMn#)cD>8e(o(6*)@w*IuV9)4XN$2EJJebGK}U$`y{+a>L{rLh zFyQHqFYPyjQwI~Dvx5Jy1i^xj@(_o$)$`7#jGJ>(EiUG+Vh7D_cR3&r6KI8`vUb8F zQq7|qTRZ3*ibLM?w5(gs>nz+mC<`>zZarG5V{IVjU!>OMS_CfsPUv5xftPg0)|35xbQBV zI?9-OWv*qAhF!Ljxi_va_Sqqyo@a<1tPeAPYm|xF4tF1u>S90p{&4GOB|O--*>4VE zdYC+_rdae^&zFvHzQngaDl>r~XQNhoeWDC)T+5L<5M5g?T^vzU(&~(Ty-}JLfUu|B z-@F5CxU;1B>N}$OIYpc`LjM#8AGX0Y%2iNyi+uhw?-1kXCy>E_<6sRT&Im^8}7e_SgKT}j(J{-R$o^;u+ zomrc06iyRze&5jd8;eRvnWBP zg%efOlg-}ed;s?Lzp-t+rAeIgG=c&IFNoe9bRLu5d4M+ZKrm8B6^Ow(KjyH9eE2x> z(GyV{ib3P$S5(9bd7xh0yJq^7$7NbztVGu}oaW!1mVTeBh8nHSWaW^FWfuaYUwYKV zEj5n<-h-agsM;cOJ-6kh@i|1f2HK#5v5i8~hd9lx)=zdzG9M_r=c{qix z#e>arBAi|%g-STiAk8e&$!DjC+ro{D3kzLfBC5dlouFJDYg-lKEqw!TZNY^-bmN?` zu%e&p723lS!J;xp?@AZ-l$&-J+OHC(b(+H~!q0z(;-{;O1w zPxmkO`+1h(EJY{gf^2W9ZqTu@eSKl=yfL=$*`Ew#Ondt{a-SYHfJI=Nic@bkHx!;f zXBHRFKtH4$_-6bNpq3{&69Nr71R%&5w+7tQ@*2FC8sj9S-M9VN$4Bhz>nelEJ>w#s zMv8IgQ=?8?rYo_d0YF_0;R(HTYCpXNG?)pD{6H%}hPFYJg3+}Vbjl)@z-mK&rE!%W1#>~AUslGZ5W+5K{9Ef_*|L@<3O z6%C{8YPWOXnwB#8aA$BLUEU7OTq9GYLE<*LvY&BwDf3a&<40*Gt}uCgw#%(|P&$eP zISCPT+outx1)2xsxXhowX`wAO%&wyCTm~Spt#r$5zeduCdUBfd-g)fu_PXIpXk6Eo z8ksP4y$?y;-Q5*3#3D?7B-;Z&+qpVN@W5lqox}=xs^@%!$&<*#@7U8u8V+a45a_rc zk^pc+w$hi@^GPzWX7T+)%p0f;yDOBeZ>oxrXFOs&QA&xDuO%3%54ADso34eC_yNGl zV?K1ZxMopK=epnbWU+_iWHle=b`T@8K35`+L&`dz<~oeRXI*7;Ich!>$bLl zaSH4R36}wpdc-Ibd6%C*fus52LuGSuhqLx<#s$rB#K}VfM9SB4n;DOEPaB0YOVJS= zLl_a6dJ+m6I;YQt8zhq$qS~JaM1M!O7T;B7!Cw5V?K8ct|1%4}u`h(RN3UI;T~!=yipzXz(4-xQv~r4K z3F7I8tL2lt{LQGYr;b1&S#*17$0pE8@6sB-mXdxa5KCg)4O7PuRashl5%!I(2oGJe zxe8;k)FcOef^JS`B{M1(mj3pGGYZCg%e!uG zBi_;T6z&v#8rSiThhx8V8111wde(So!l)aBc+ ztgGJGy?Tc;p>%SiO4Y3FmZhh|$z2yrt7-{Jmt}Mf^X^3dz~*k-&@kbp3-*PMTzpkiLN1%nOia+7e~o17G@gMt z`=pHk0<%8>=_t}IGCVwdh=a;)v6~s9QDv3XM)0rEvJeBMX^9fO5SIWE{Mf3ml1@*8 zJsRxX%I{hnPeDWqIqEQJ@wb?TNQ2 zA+gf!BX&sP7x|y0ffrKoOgmnP$MJ!+{6R6Rk8j_ZjO&{hRJB8$aV1q?=5D~~9N+ zEa#}O3Vxpb9R`gna-kq{@ zUlsLG({}|*jM`OU}N!KS|u2qJ4Ng#7POY06gFzN z_4KS+E`%6)n9=z8amFXEeTsH`e-u#%myC9|IC0y}cxNh{%&0F+5xF0SOaJl>O$Ew$`Gs=S8FwTcRD5Or@MT{ zMN4O#wR_QGh43rVTY|O!n`*^>;KTokLP_4Iii(Q=N2!J!kCM-!r~W@O*sYi$qZ1La|9f2}bB#pf zKPU0Ot+V_eUitsQsq?a_0Ub4X(6Lx1;?_W;P;OxIAQDc99fBG1_{7l>3q5dI`@Lt(p=V#|1%0zsH(NXn_FgD?BFdroV8Hi!r=6o77UT_#pBgQfxI!a&*l`; zGO)!%k7tULQul8^Kz#UdlU$1d|{fcFb6iAN*nk9D8iqDff&vjUlyn~?U6!&}6Z zVRISkq=%`zxX>0v|2-x?(x|+4`GP--?xK}2{P|uA?f~pnFy26%UK;k481sf5)#_Vo zTjyW2(L=(PzgE-g&d7<+}u4i4}RNr%=;40sO^KbNqFMcinnmo>HZ2?{q@>} z+1~!cqr@tP`(rgCy2x>3VxMS=Z%}`kKzTd9!FUJv_Qb0}8hnDrbVgA(a`cI+h;jHO z<9DLpg9_fGvTT`ZlsSfPPpux_%AW^|`=kMPkohx^tfm+k=mhMnl#Y(g5(2jWX(I1A zZ9Io=A7Cf%y*CG))&@}gjCr8GG@LV+WcdrnuUtL2WXN@GQu zjw3Gd#=AhMqTzv*v4$-`L-&6bme5qrWR443jEF~3_)$f4E(0TFPWa|ECajhuLf@PG zD9j%X^`aM`*L$Hsw2;*_R~lJa(~qxx%gV~MJhvXftd3=L^MI|TCV#&RIX#-PH6JS? zue2C_Z$&9!M+a!+jrk5T-E8YAJ_s&3chJkiSKmy2Sfu-$t#?)P&3bGoDhY2@bnRyN zUXc$D4nlBg#ZvFd`xwnOxNG@dI){GE1Wz`cEQUcE_P##^GS&UP{aJt`?N*YklZ0LI zH^wf%Zc9XjPF<&)qq)ccsF=KF0}wyvbhiL7%e%oWnf=Z3EFA5P z+ST-)DDkV7FE1a~9t_FjYzj{wA{EAtFf#kIb#x=zhyU~f{6nebTS_57JvskuKGZO z$#gI!M!&o?AN@iC2t67gWoIBV0e!=;Q>5n!nYKcnl4(qOx>DSOmk_g&{9DS($}wWk z#V?%{hVQboNA{)lF9zV8+08hQ?^ZWoMg#=~J$?iR82BXV4M7$>!GPqvW}F-2wt9n~ zpPYD!fs@|KoeFA}&C5`c}v+fvv@oaA(17(KHSNj>`Ndoq$@x~;c7n2p{ zD%m06N2S(NuU=Q%K(}X_c?>&obv)MZ0Ri;+T$8upes2|I+G$u3lwHC=HG;?MME8#H z(M^l-V(N9qhYw@H%b6f%)k5&mq`k#m6!czKVesdKJM z&O}!eqjrBJwQ$YV8RbNs^TR-NJd>VyHm6@B??gS128y*kb-WKBrF-qYdnS&dyV{B@ zvv4$>Fv!X(o&u58e7eRy#zz;K_(C6)Cm8hsPsHKC^@V5aHv0fP7pljp@hL+84sduc zF1xfb^bql#-VA;|KrTV?eRqR9WeR+S$S8Bs?FsIa8ki2!#DglIe%U#1?su zh`cw|Hboj`0VEG!AvZsaqp2Mn5ChC=wjs$h!#f_)biOTs_}hMw+N%Tn76g_ypv0Yk zDB`!%mI~a1pkHL47X-9rgzq&*ZSBI7QEJ!%ltBD02S*hDoL6jWDwUAa+KbP-dDc_C zsi!PSNl9Kit)W0fM#{ZaHZ$KhC(GAoMK2;ZGo?6Ifypx8#xAp(zco-*@zrkfyY1aE#bZ>7jQRKAc^QKH4%~aK7n4C`m<7u=&*Y1Qb2= zBL#1MKbbC-XXZYz-(7HufC}qrjpyh?(ZLz;a6i1+7FN0Cdvp8>L*sX{xh41rk4hlg zda8=#XOqR~1D^|fth}_bnik7cDj3Uv&5z_tph1O#4jVX)FHM8qIY?)AsR6!ov`ipo z_+b&xwpBqNA4iE6EsyBM&uE^Dp0v+(|Gu*&K2== z^vh_zPNR@m1|omeXYn2LDZ*EG)gOaqe#Ujq_~Im?ySG=wv{VNBE1 zzE5z~ZqD0R)T&-Kc6J3wUCX^Z{Y%RUuyTu04p!~Dk4P|}ppbd=^>wAeM5(@(`|``p z*~S#$vLprRWrnalU?V9@OJ5<`xw+hyW2V#2(&A4QgIWdPxC;VGNm1ges;cBd2mPB9Wm#%x^3R{= z0o6%HL|wULHQBN_6PTA4a4}?I!D@2Ikfz*eUFByrLL%!a9{D4S+x)Wv;bn$ld`C!h zM?6P+TBL4*f*GV6=saazT?QWh_U#+?R*6auwz{@6NlDY$17s~IFT>}3gSr!lUI)KM z!j#D?#WCDt{jnNb+Z6oJ>`9+PM zkuk8!dTQY78-5-4<p&V62IJbFUMh^^jRPS737 zSI&ahp@a1a?p_S`dl*ysd3^^Z;2(|0kpi1n)6-f&VC`_7`@#IknZw-Nym!iVHuAyxnGnJI8Nxg9Hh&(z zSrTDl~1fMj8?fl?(oUCSqhE<2m1cc$B!({tDY29uoy4PdPd4tf!)V1mdhF zKsN9K@ZjbV^}2`4=7cQgoyAaE(&1`baVDkIu9IC3919uhp}!V!I#zlV(hqlxn%VUG>AWG`h6&}A z%fZa(4;|mQ$IP5J&;;bJ=no%M%sd}Ij_V3El1!){<|Vi&4FNehxv@qja{W{sP|i|T94P18s3>L*juMT2kIH|k-0FEfxzl--I4R?Z|~$% z_EH@?@Hc_T!0`<>gv0Nb{7d9L~VpO(wi5s)Z%PQ8}3Lw=9v4?Nbuz#wu% z;~#?WpyH^V5FYLXAk6pr-{--C=F@y#lYaP5=Vg~H#~oY)%~$RT$m3%$Zm~~=dyJ|6 z)3(Xn_~L%{@2<@3fN$0qJ$tv$1^yj;$dL+Tc!W?Lc_s`F+8D#U@4Zvg@&6vv?^XZ* zYyefgFdqK>c=ltkslYwVUnk}k+{|7kSQWsJgzHTK77UrH>Z!krJkL*f>tkdUtmhi2O*setZxomwe zENPMhNtba-MMdT0eD1on!hG1zPQn4CZBVZ5YkwE}e){;Oy7rR@icxoX1b;UOa$;iX zBoE_bKYVzsqB6{IIG8O<%nrcztFLFlpomW4=X(LCopzb}I_)~A>kc?wn0=+pQ8)9j zIY9r^LQY1*xr#YMd1_u_83aAp1W;-i6CtMFRMlf%urq@65bSqS zUK@jCSfo|^VPfJA*wzkE01YGYoAx=k25cu8Bu+*Uq`P~1;P05zK?$q6%NyCB0U9m1 z%!j68AVx=Q5XNY1hZM2BKRk{!X`P+cPPE_3^7n85l6Q&NwrJo<{xd547$J z!M?*))|3!{K&e1RrGbEUm2TDNqBkW}RER*n&jrvW#s{==l8c^^lXB>^PuDuS?X+T; zP3*K3#gnqV2LBy&p z03Obh2o?{dh=nQJRW6(9uoyl--m`$&K!D4Aefq;lEYa{ms z*;9Z+#-6QSqLb=-b()yl4Jfa8@!UB$1^H0?t#^f5NqOlW-&&et2*lf3{L!AtS$qe* z9zI%^>P8{@pyH@*VcGvXEMi(sF@cqwoSdL$EN8q`N+hRK%~M?dMjuGv2}L@KRhM3_ zQp#)mxZj`vQ{w4UbOO->&MNESLiOjszG3f4dNfPtJ&PNUC?G0;wQw6@LI6GetlNAA z>e<7fjt8u^SCM~4y4mN_{bV5q;hU;YB(2qc7F>K{=01s2K*&l!>ANmS!_r&FU2vqsgs-&{kOxkWPj(*z-Wk z1+xEkZOsfQs04Pso)x+_Htb;Yv$gAwypCs%0fGc1lLG?W7=WEbE<(p{qr1=mNrOPd?b`lWH>RVrlXQc`=66Z}y1{gp6@qva zi{~%SQ}QYSyO-h3hg2ko%1xhxVV(j-#eF>|AzzJ!eebMLs`2{j92q=uI2xh>gpYFU zTgMI}3ugcF;(q&LN7(w$%7^0D7sSmMdpN^+zHNa7Vj4xZ>6JD!6n^geE3s*5coNk% zGrMjgCzn1{u!RuH5H28m&bq;yQ=MO}8jRP?0kKOOBr{-GsC3NC%-{IBL+~igepaw> zadAluA_jr`Gn5<5f_Po$ES!+52rc>ala>k($dj2;q1?V#t_?t~Wz{JCG*O92h>Pn; zbDe2DNzhsO?2m@R$q6c7;EPOh{7?YnN|7nC=Qkva;nts`x0(vykVHkypZh;4UF%bV>@Pd&hWNFwPyG70oZ|C9Oc6 zbf2a*5RPm_G%t|f$$YWkqs8CgW~7Wzwy>~R>R(@9hiJSyska8&;VO`p^#Mx;fL40! zw)?z4Mr7gD8)7#2+1+Rg^yVOQfZ*l9FwzN;`RZWEjlJb79qjrTXJo$Xw)8CIV4+8lrlE-^^JoVq7 zs`>%AIVO4_h>WSDh3YbqbK(!%5Cq5eN0VvfB5s_jd89frJ3SoDbUZwDA1OGc=lxM&FK!50J1i= zrDfA}YJ!e?rzKm~mY9SD?{?}V6{2&g=u6*tXgMnn_c^lYl>NEfnsT_pkI|R@OM@Bu zZ`AhowycW_pSqU)P0*Y32^s#q_J80~^5OPyyYF@9B?{OR5vG%Hd!IRh+=5KtAdjCm zU!N09Rokut2@>8x2HOQ4*pLBm*5GF-C-Z>>W!5RkPI+*!q(axW&6k~x$FuTugiD~` z$aJy&9nylZh?zJII~5=x{kH=cg)A`mo=@o#cv1uEk8F|$%&2xb{!Pv4N(xdI8Q1Zo zhJZw7-0?nRZ8(nr;1qUBej7ayV}M%tWQ>4C@fE%>FJatWM|(+^@o7?f4`zxIV&VPcRPah44H-|W2i0w_F&plByo((=2)7h@m~X1I56Io}%e_F#Jp zfHZiPMFUEX*f*F$0nvaZKeCMcxnkA|^8sWTm^-b#ufyJ$;gK?Fq;u5K)HmavTgO|| zwMgfQe3;6aK${5Saz& z+fwHL>j8fW$hdP)J#LJlgLVSYSZ0lplXb}|{b6)nEN%8wd;5T;B6;Mc&sP-Wgbep` z|6zq6GBQdkNtS|4ruh6NeE#xu62Ct^(lM$E!2eE9eH!uQmF^dBe8@mB3k%o(fu1qg zZK|_3f4^E6?T-#bKl2^jg+q@rR-9p8E=6x~xhsuG_~v;T){TI36K0k~B)yFp%KSU= z$0fjaki*hpiy?_q#G zzvoud1Ca=Hn=2ix4W7TX_BdEm48>0~8~t@XS&ul$|8j8+FOf~Udp9YF_rnV!)NH?? z8<@{9urvtq=$_PoNFkt?tId;HXUdb2P)qc^avd`{y zXGbeAf!nV1jPxWdSd+*5yYuu(o(RDV(B3(2C+^tyt|=f!Tj#3_c2UCB0XLsjZ`!$) zeCY4j`SXXv=+DM;83m^2ZBRzYM1#B3*DYvh6oZIJK!%S{+xCojmGs+$Cx!BUi3&_Q z*Ui41dM$pxGDJm_&d+NTf2@#3Dj>Jx&u8fu$Oq0t@Qb@$wcSz4-ap^JdUP|s+sL3b zAQ<-!rytYTMfCwD-76cxh>My}Z~Jh518EN@%s~g0!3jLBn+C=xAl@ z7THuriqP!nXq-}-(DmZpo3N^Z&?i?Z);}x!!Am`MbGrdv(PFrp!0ZWDbXV7XQdW&; zYDTyBSNh?Twf#Gr)2501zBJ0F)y_cA%z^$9^lsH|f`zYw>rDm6{cD4U5TIo9wzjsi zQJC7X#mCYP$Pv-S#3-|hq+BElA8W4s@Psx2 zV#SaA$7hBtjlD?~2F9${oGQPw_^p^8TTqO$nyyKYpd43y{kkoQC+8@GfNElHXhEA4 z>?x#x;HE&cu1-^P?RG`e~?t~r8(gA*##d#p#l^lMiB+BezSSX^u?(sb2c zd7Er{b-^!SrD)$U{bot=Y*Y=TYFN?d;I*z zA3FYM4-D$!92~aq!`@TQz@Wpipla4b5n5Qd@nl?CMdh)iB+AX3H=WjpZieLqPz(D2 zEAspB;g{p)cnP>Sm!#!7W3~u~E&lo?2l!1~TpUC|P|zL-EL=VpYzGM1(5x&*b93g6 zuN({vAIyhsOh@tu!F7a)g9BdBgNCM7y^$?jZ4bqRuZ?a{U}Nuf14sk*Dk?hqh0E5N zd)WvITCs6k&^rJPP<3^6fr6g@N~)q#nnSor8n#z<43})Jk3#8VwB% zYomqyp!#{6l$7r^zl53^N3KHB_h@=3=N()(cX!nn(a$|RJklI-@wdC!s_!BX=>|Hw z0bdHsg9mLtenbH3;{zg-gqhiWaBGTzYq!+07K4cAyFv!mj0+zTr{yAjOY-zjRx8v&aJin-@y}v($MK#y{@{pg1WE3b) zM0*0A*VN1C35i4f#);Jv}*_@j2_9(m1FbQsXH7E!v+3W6>?eqhdaE-p-3Uw4gmatu*@32!N&4r{ZEd2*7s;S-4EEqVz_`1+=KbJI zHof!8EN>AJ$$4Gec^?)Ait`>;e3T~TwXbMtKvMx29vL@x;kNg9D;~lkFQwJgo+DQa zX5dQsQMo-eFz~{r-ul7rt|1oQmfY)~Sl_>Yhk)w`+xPDtNmSdnfdTjKnij4{$w5Hx)YP>jiXR|0qUTA=HJ z-Q8r`z{gx`0hM(@uM@)S(|!ZiccrT|=i(+G>A5k)Vb>0;~)IBwD%aD|>JsBb4=Z1tI51J!w$u zyo8<}9eN;i(vmm*;J|6t!;%IxCz!POS=!s>pMS}9MVJXWVJ?AUvmtk{2uW}ok4>u=cK|4rlNz-d7GqXG6 z+GMsI^<|dItsYlal|q|U!Jn%-!1WNlm&tfhz3)$2yZVha3`&5cJ;M)Kh~{UyVa6Y`>SL+>j+i( zmsZ?KnA;OE?)$4;^z^M)r@#c?ZqTY*&QXhR&x4WxgpQFh&A2Clc)E;{DHf}I((4JF z^pCZhv*A-sfRIZ80Z8xDn`%23#B4-;J%+M!qub$Vv$BqklDdIs)YjG-8L35yXqJ6m;BZUtf#r!(@)wH> z%YBM&Z-*XkyUw?OstAFqvNB3bx@djvO0uPZ!`-sMx~b~ph4y!9N*R6dgLM%=Q}yQf z?B*-8bD7GWH>x3EQdtm!Kv8;gx;7AqUdRqOrF0RLmZ6*sea?}HuOL5zP9#OoDZmVa zLDB)Y4k_g1<)1wlfA_#xVMJFlgJYHY$j2$J zj++z8buM^t5c-3Hoq^!Zzp%Czl#$VVNh5e%6H@H1IZ5uaneT&f_=8^;S>i@T6^c$v zds!F`vap=odzSkG*5cJTf=z#I*|aZJ|L_+_El8VQr^|942bim0t5?Q_d^X0|Zj+Dz z_V@0`s}4o}2-BIm${!v|072|dnr2L#r-#YUJXrz_9fB@J9ygFN1~hLGfny8>$qpKF zcz_W1`}9dqDeb!+xYV~feVQdoUIktkuv;tw0%oqVv+|I1OK|zf89+P-eTvsR4J(L+ zg;A`fA1PCP9&~K+5Re3pD#g&-@k)JZ$oTyP3Hk~u5e=vNn^@5Y2jQMKEG317iz{+YK4Hb@<>h7X;_^8^KXGr5`nzO2n;nP{V>s)Z=4N5Z2~gGh*{#&N**8;1{2h zt1GiW4Wo_C*3R*9mbP#d(}oy09;8A`LqkI)d=z_`!y_RfL5D#wmag(^qAUZnJEGy^ zyzQo|#EGOyx}Z5m6;R(j-<}JE`&Y z)%oo=qZ!Nd8yh_Zs^nmIUZ|*OZ8Wj7u(Xbk)8=ny;E9e)FDFUHlYSh57f*dJ~jVyH-y&s=p=uXB(#Fmltgl-Q7uFzI=JjL63utJyByXiXNCb zw#t_h5sWiO4>A-zJ$*Qp;QJpb{782_L{=9SltuS#g#`r{=I14hjdQ$xQ}Dn|PZ?QR zE*~EhiI-_`iXpX`$jC^=rbN;4gY|NN$ADNxtfr<>GoaZTibp94@F6UUHZME-4l}dq zc~wAw*VQG$7a$9H1qIzjxUF9IhbUP&Ig5&3j%F=c#O$Ey`1i!V?pWs2wJd^Pn`9Ie z-?L>^1$-{Q2fzvR%vsCH$$|O54EwyYyjfh# z4!FhQ{QQfDSc8P>>gp@K?m-n5v7k7i&r3l$(_GNBzO?kr*m%Fh(!v58P{Q`XK`dHY zTEH4RKpz|sQak$lOU9C!n}fC()X{C$PCB>i9UnRCj^4lD1sfc^Ram*({zlQEb#k({ z+tR+E?|8aDH7%{6s7QMi)p=(VE8;xT+4dL&+h}IIWdH=B_pUIUH(5&-D*p5T zfa>A^-C$9`EvBlxO|LgE+F`W-#7$If30GO4gZ@)t9``-9Dx1sriwm!diwldm;eoK- z_wTU*UKH@)9Ta=nUwbYrEDQ&}m6DR;ooOl~14D04n^T)Haij+f;7cW>KFjb@HUh*N zFK=%*(899`J6>0H75x|jHi!#^XI8Bf_S)J}oD5G-&+(tDAaa8v#%KXq`CY`;xDjf* zNqL#=oDPU!VSpG6%Fx09$C;k~nWa+P=)#E<6hT%qHH@Mc63W$d1}8m{hx322_uk=H z{%`#7O)3q$P-bN&lFMt$gX1_w`iZAg_cL^bAa2xvh|{eIb9dr{LEZCs zNWDH;@s3PRI^Jjslza1dJS1WwZmpGoshKSw9_!sxS9TNfV-OBk!FP2HC-M^Q=5U-ofDuPqTn&iwP8+}AE^ zDS$=E%gC@OZS?d5n91l@o-)6n26_OLBAyA&zr+!T^ITh78{Twuwzw%C>cw37`Cd)5 zdSzKD)1r=(NOu}s&bc)GHX#<4wEp!xtt*rv9Q;C>p$hn?PeXUgxoBPBK(}$PBqM_~ zv;CRB^jf55PEJlyNAhG(F=vwWL3v(bP*8IMi+KP%GVoWwQmHZ&IJ6*1%qXzE<@ZIu zxZ04OyU?;=npRBo(bunOI!@zb>b5-vsqPgagftnc>L&>Z7{R^nY%Cl#gwT0)rjt%l zQSr6=jWr0Sv&rtdl^o^cbJ=M!GU~Ii&dtc^%aLDeNRkd6hW0B+D1o1)43TnQ4S0Pa zDoO)d{FH!#mzAvpSfQXoXO7;9lP51i;#O_K**W=q{K0Ickb%iY6kP0!yG)B?(V4$W z8~}XVRYWdu95Q0}ldMEUL?F2!X>9z~%ROgYl$j$6%EiPKd{zCq-4J#>IzB!)t>a=H zzTIxUa>Mr+U+I2mz^;oW&n5B4zP_(k2IB-zy*^U27HZPy>wr&4$aE=b|I62ZN>^r3 z5;tl|W`)WPv2XPw)l@F6_oJhG%DgfHaA$d^W9e*ozlP?)=7|b|{2Te*%IJhn0rnMZiR;C>y;gER2K-bN7r+ zr6&l~^h;sA?ce~#V4fGa*skF}iHuZ(DnNB_Nz)RbN+V`xv!o6WG{k~BvdUOFI4-iX zrdOLgE-%{)JT#Nr-=P}@i~v7B<>q*7?o8I* zmay#vvb}8rdbngr^GdDkg1)wYH+1CES1J{}%0KybLQ#0Y;}iu6g{II_^Uw42Le8^> z9kZ{Z3%!45A|=~SQ=}56wdqnDCr%S)xV#yX1K7;W`%b$H!0?xbARuDqKIQ3S$TzaG zdqH|0?lCNIlO4tVP?Lc(dOba-abkX6L0elODyqZ1*g&SQv9S>j0p6LT84;>$kzx}Z zHQsN!iyUkp-dH>pIHn85f-@AIG+TC}E-o9#aurRS%1TNg<bqH}vU(-YxmPj9qzOT;gQ#Rqk$PyM+PX zcC-b{mff5DxJ&`4{Fe8f&n(NQ80U@6t{y$k?Zs}X`=I6c`Gr{chX!V`*Hb(5x(yZN zYmir1T;0NHK*RO%#?E0F#C+VPdEz;0BFbP(b93m68hhiq6%zhWqE@ z;4coEpf8_#Y!3?FeI_O`S3du{(edYZt)G+r_iZj-Y#C?y|J{%6m4`=0pm8lD=imGm zbf~HULEm}N$pFAouvyD*O;=J%C57jk)VAcCJUr}OSVyYL9sg(9oJz{d5Z()j7X?FU zot2fn}eS z+fZwQbqfYUMzPi%8r&mW-`R4nT8yTV2fZoUp1}4Guc6BoEN)vAgu3mQ0E1-SgTq8E zy9aXZS9}KqqPvs6F9`k4wVExqB8i|- z!`D)+^yh_o;-5M-654bSp4*xIS;xp|Gk`>RvFeD^u!FthaP{$ttFDXm!5mV&w%tE4 z@8tO1mKjh?ii!xG55iL7=g$dedy68V1s(!;G8|Z48SlNB9pvN}5{iX-SpcJ4^sn!U zJeItCp;Z2<^${Xv8;ix*gAl+I@2tb4x$aPV1^0+hp2vm_d1WzFJ|t0KWgx~wr;(#8 z3;6P+{A0(CaiRMm1@=UsWkLOS!A2^pAU2J4YA|h#`;r_;22Xrw4ZWLG?cEmVO$rh# zKh9n6`e=7)fy0%;hr+-$9PW2{)Haa;fY#6$ik;1(uIzgcUA(QckeF=@7}PAEWt(++ z^7P5_uaQu)v*&I(JCi4RZ=YZjJ?O2hNC_TedvVR9+D!}EwgX*I&j{)WxBt-+>F7weHc% zf^r{J;;@p%I@xe%CPg}6Sg^wzk8BKtx_H**YHco{wOeOI_ABf@~ywZUY2ESzn`;`aObN zx6@N!a=D#UWm3Gr#ufxSIt+HSin1~YH}l)=?Ev0$W^<2jAEk!&@B;4Pk3_LV2o7zq zdxZ8Y_FL__XaaGl1tQ(GDx4!-0OitIyCwOA3<_!Tv3x7Qbwg?>5;mn%ObDkFa5+zd zg2JN>wyzs_?jH>rFwmWG1wS6=Kdz*#T%BmJfBlkFF#Xl5VE{L_NpuzhhY3P(agl9j zfO}b=XyEM!ZLyaJ};P*6~Sd{G=4o$z@=3m+pseUd=L zK%vazIyxj>vbS!2nvOS^fQpaHdRh%NF3jx@AJ&XTqj8TMVHHw!uFfAH9bNoUpjfb; zS%d`ob+qWyY2HLFZ9HY(vmvP6A)+S0<1j%p<6ga4BG0eTm}%xOU%mh`*uZrryV!L% zziz6x9=z51H zvAW?~K~pX7PKEA|EAQ-wtTB_2ln55a;NiC=;wdlR{Cz0yQ+e&onN}Wn3n2oZdn3b? zg7;X!s;Evjm;ygsUQ3G)<+-;D5U6R2NmzEu_zjp!Ua9^&PD<=Gqc^jJt+TL zfrkgoyXW#0^K4f|Y*eO3mx0zoUl~O~38>+gMDOnnZ|?6{ud~KMnR{?*s(Rd(PgPxA z-D}=sjO+NU8@CkP0VK7M=&mVvVfBr)D@TKO+Ji81`=%S@}Q+mlQy#XR=F z6j?b~bBcvu*L!1Lx<2vR*~mBkGQq&mtHT!Vlml{bJNU_SJ()8(=c-%RtZ4GDU3>EM zDXKl`i9}ObB^-m0rOGGG9a9Sp5D@ZGSFtA*abKmMm{q$cTi;%vuMl6xy|ZfpELt3B z2;+%=?b4!Z(L&A|@C>(o#OE0BUymX%GkEQGzSp{P#UTIj7@Gz{IqWys6^dlaRv0Gluh{(Q@`g7J2|^M5d=DgftmOgI>9+LQp5jEH|Ko@;pVigvMajs?9ie9&!$WVk9^ej+Pd|+) zP+hy&tDpc?Xe-{?9vm>U`ug;p$7LzyfKB-&c8Un314g^7v1&TqvJe^o2ApQ6n}Xm= z^Gnu5FB@Es zY8kxX3v6~WIO5)r9-D36y9TTUpwGyt?%`!f4}*rAFCDrU&?IyT z-qYr^-lK1H#vrpqD%()HuW;8;)Qj@sO^Fe#>??nzZjgfuP>$RV+~sIFhsK3yiwv>A z0GXN2%VhMgYyPprjp^n~aniKjc<{)fy?2R^FBT%%BY9gr4XD}v0)J>?fOJ68*CsJ} zuy-<2CM7l98Zt%UN9`8(*J5~rv0JA4nnu#OVnM$Da$$ z4?>al{=mLhgH1G?Mi(z#n(8d3BYaK>i2&|Z&~C?IFs@@wXaGRO5{Yf&`{IBvW>(20 zqqMWL+nuvTn@nNe&32W=CYTuvcU}?SADeDRt~J4P_=JjL+~^0{h^w(dzdpWkXZSqb zZa_*y)3DMcQrDe}9q+hn^Ttw(5~8`xjaz7wd|EN@I0P}WvH}IaVSxLZZ7q+*2{@$G zTYk9zog5KtzOE?t8DiW?s-DhDB@Zt+UQmi+Yuw~Pa8HZEK(M{{ZIm^b4h`q-(#jgo zt2?{i^SU6L!3?D2(^VbW1GrExG~j|HaK2=N7MyXO4%;gM2PPy)4jMpXyE-?bA2e?9 z)YV6rgGaL8nJX@sE3-~ckg+a=XZp3h`pvr|zqz+0;ob1YEQ-Qg49p5~_i6%$KsxiR zt*vdphwTOA{gg!Ff3`LWe-4abMl_+D_J#xiqp&$Bc90*vQY)r!1_d5Ktge8`b3Ftu z!%8)JnnBFsn}_qfF3>96fVJ}qGLGX!w1epVjaxgS&>At@dNw90y-Zk zn71WKnjZ_~D1^*ofZpQ?lqTg&(*sJy9cXwXv;ha&xX%$-ug7g|YBm)`?sL!JL82%q z_{K$rqRkRt$=$ZU44qU16hCB10Ewl)aN&^{cK0Ma;PRDuq1kTrit&1}{UyOzURzUu zC<*WXGJ!px;I?k=an~!~o{`RT^MaSL@ynfAUBDc;0wv)*_1I6XEG3b*69xzSd>kAc z!pn=7TwT?2gCJJeF&?9UR&yZ0-j)_`5<$O!_V#VL^Hv2Z+x5^70&!x~A&*mEf#wC! zhZJb@`i~1g4h;>hh=V>h7+htt|^I*ovKFcz8-mNI+din%YmLa8{5j;@8*}^{QPz5B|t(H;w?7E>R-LT z9>R1sE2`s^PT6QQ15~>#*X1y(@@o;}4>I~^XJ>kvHMoI;N4L0(>^{bZGJM-AwcQ;`tZQUxwFa3Q~AO2Y=aQmNj7xKMKY!cpI zKMnZ*^p6$TX~ew%Xtubzih2!QZU8{AQ-}X``MUBt^0+nkxUQLOpN76qVEw&}B6h$c z0NgcybMFg+lKrRdl5DQ7&U^aUajOp*FAfRAqwlX%Qm19SFLI<@vpB122vx-V^~_wD z*>C~+dk72_pc?n?C11DQ7e0OLCH!-T_Zkm?JlSb-eqVx&FBqqtqt)4iUIegGGD}TE zpr)bm0eQovfv<4kTBY|`Avf@+b9=dYZRtns#xWoZfNhg@iajqZbo^m@ohbqeW-l(E z_*0b3)^NhD0pKg*5=$;p)6hhr(nA5pJM`G^%-OToEZ469Z9*@5?wD`&{sd%efRgon z`}QI^hnALE%$47@>hO-&(3v{!PkvB|5XQfrZH^(MXD>Y_)8I}A_4>OD5)#S+kadBwL7!ge;}&#e_e7a6bxHb{XBA{xrfqPOpErfCK-iJLaQl$DYa z{QiP7)5Qa@y9?~PY6~Bp+$D?rGb|@ul+lPsRgNC%8faz$0;=NYp>3|BzW4`9oy^L6_)Jbn*OA9R(m}2qV+S92 zkE>{V^mySQK5;<_z7G(cj%}pdk~sPREaHyLOGC~-X-skvS8M}-8C12Wl6jCBMxz|fR2Bq!q~HOoL3 z14RW@xf&W^5W5Dxm@*5zll$@3p@Fi%5?%W@{ zZHZA=Q$uMEoI)nFglEb_8`p+6_7#r@IT*O#DRP){;F&!)!Qm+i3^*wE`hZP$%xY^k zP@DXD2jnmNv7!gKcp06zulUU`!oES5?-Nz(mpzADy8tN!paTK!31QYTa0UT^5lj|y z{}mu5Au*4vp1fD6_Z8<+^$k$XcCSAI_{kqHuSEbY3-7o~RuTJepc$fW6@suikV|#{ zyRY*$FK_YWEe7OLqM^O58G)UN&uwQAZv@b#U;XF_pDx{G5<29^&@W*4?U=iB3@|A3 z=376h-ah#gnjSt&-C%NqKU_mtTX>DCsQ%TOkd*AE{;y|;A15~`|KA_OI{e>dL5$^Z zb4U(3aq3hO8tc8DC>=sA3y5Exs~5wc7TGR9&<1T8yZTpmn1H_eC@HCxk*&45`Vo{c zpj>EQ|IO;h7{C7q@wtokYd`f4wI5)Uy%OH}Q2>Qvl#;qS5OW2s@K$9dcEg>8t>LZJgH!b&lu!iJr@sq-9KR1tJv&o-BMWQ<(fd$wOi#Gu| z-T=y+?8x?rZz?D#0Cgp6c489H<|BqAR=aSrk34+oR9yVHRA^-aGJ*g!?es8QmTjGc(IeD3ycQJUnXyv;gfY5IKrdznUP`CU0QZ<;O~9O&-}Deld?U>Qa=-j$cfwYA*? zz(VzxFMjZq6>rb|+)lWx$w|t$NhTZ~dYUo*{>+aa-GH{T{j^%?Uei>o8#_6O1>D`- zo@r;-z{cJcvMDte2K*H}`AvuWW@h;|eVPD}8>OHDd>~*i(13r;ESR&f@Mn{SWp`@D z|0lco&LYGdi{9HASWirP>%KfMw29>y;_C zF@hRhX8+5lM0C|ir5f!cCR-Qb3OY=i`~C}@XcOJn*UfHsVbOE|;i$FZC`6C+wYK_h zZh}&xp%{2XK!+9%JL63!#^V07gJ8qR}0f33&7#4xN2Q;eUp;)A5`$LvuaXsMKwZbEn;q;QK?)_4&63+2bVz|3a(^V&LC65-R7Ac# z0HYrry_awFnU7zH3L2*@@q&Iz%0?I1=kS1Dn)JR!C$k}@AhFoRLn@?{5Fk3RKA>MG z7Fu(XD3tzk1_iY1l2a1suPvbf=UX%k1$JiGbVFamC4Y>2LX}@xTl-6WM7rbLc_~2X zRUYgM0sDABoMy;zhWruGtpHpHpr9f#HVf`H!Uh3<0L-=K4xq}*?;uDoP=0G;#Y(|# zLF@^gj*CJ<5%6y+YHEEh!^1g@+}vjXb7^nCw&yl}$2|K3zuiT@j~^{zS%*PjAqn;e z;DSe{rt0_icKAIvt2m!!zM1){Ru-3;znNQW_C)6H8zgzq4b#+j^Mkd~%is2fUacL- zC3sZuh{?^^?H8G+i^Az>Uj)BT4EWs(m$^t$fB@`wUy%nOlG|F*LEWO!XQZ{t`jvAK zx>H#O*aXnM2!pr?s$6+G*+BAsxUw0$wHl!amNWFB$L2E_1VrH|;1irUF{NX>Cpzb~ znMh%9Z=qkrbGM%P^f}>|ki&is6`H9ew#}xdj$2$?yChgjR9`O(7DWoDx4*y8yLaz^ zeL+mC-&aY+n{@;s!T^dNpm8>U?K{W+@aopq(d2jWRq$c%tCR>fcyHSY7=*rgdGi4A zyo5q%C}1L81!l}pAOWXQ`@ABYvr_AMW+qjV)R%~;sQO1ocAy}C%FeD66P`c%ELdaf zU0ht;HA?RU${LGo*b?C{U0(uB2U_SDfT;tqnsRK6yrorfc&?Auz(5S1wxa1cD^OxU zU4RNeG}?ey`ssQX2c*bo0h#eOsRA%NRi;M(4pv^#(_>;jP$|;i-w!Bn=qpJAz#C9t zZ{B{oZDGMRG!%{?NRyw+8!1a zMIa8?WLV^Hz&`|FNexfuDiiG8(a~g`xnFU6z=jBWp%Gzqt`^X-fE8*5#QIJD=U~vp zu+{)N{M6a$58620BkL+0$*t*s>~CRVO>42_I@UmWVp zcbEvJ=FbZSelFSB_8{Nm8=ZooPrKiwJHQhh1NhSL=29Y<5(-Wi1XU=yzj*`zP!>@n zz}x{07pOt{Jbo+z7WZ*H<^lAHZUboxz7ud=L;=NWb=Hl*(6H|L-1>*fpBKWueY*@1 zID~y)0!TU$NIodtOPR3Te0rMk(xs43pB|rjmYI(jeA|O7`rX(L-x2pm1xp z$=8v!MT&x^gP;pxwP^wLk$-)#J_Wh#&i5ubPJ!Ec1Gq-VfUpv5+z3 ztgTG9v&jN>x+d@pR4W65r~-g=0akWJZ`(YZ6_k=NAf9&|#mM+>b&Blf&bla|!E6e% z;b=!8OrdgDqxj}C6W{9V$AN=^8k{n}$j|>0rVxOue3SO|2RwH@rFbBVdxk*M#frnY zCO~;}Yb!i9_NMW$5kxXK;IExD(ujJ=8#hFE*5{5w2WxLFho~iP&wJB|3aZdBc!m>*v+qZxwg@fdZL1m5To)$Q5IQbx0cWV5~sQH3@Cm4Q)f?88&k3LMTV}>~$@cg)} zyW`gdkxw!=PZxPL0e#Z|k|cy1)Y3w_vqVsIQ+48JnG4;sXFq_XNt>oGH~yg~1rQ}h zwh<0J-vEOV*= zIa&&x6DozL>)tR$)=p81|3v!ETM6DFY)|4%LkOu(}E#E)xe7@jQn{_>LCg| z9tN~Pps{-5)XX!W?CkIFQ=WdxWRStg#Dt6>f_iZiw3>gtzYl;B>r!rJXTPW@bwxWk zaBo2~^ZtFY11uI+b#YM!wrsxEHvxz7(>XadK))m)B67*dc&!JT5<5kU8$@7jDD=T} zjg*E4lT;E3AXtQjg@KKO@`=5>W;fTPshD|>Hx`=6+)xh$HsVP@OlrPA=N%5+fE()V zO|qN?B~|+ya7aDuu~wbxDTdL4p0?<721$8~6N#;@ia#d~3S1_Jl%xE6>K0_VwCNdU z8E|j|eDF`Q&<9=l!g6$pIqj?_F$M3tlfO#a-dSXJWN0-9P;ulIX=Ur&I&ktW>?DL%vx|+Q&t^fKT^y~bCt%*kEc$mRWrO#2&>FG4*6k_s zcZ(h<$3B)-w4L^BB%%=<72X;G?$~`Shr!$B<)j@JHa2w~otPLNIZfI63q?TY1HqXf zLORhiN<`tQbs%FQCu=Xdp)!Z9`|;xi0f@-=Xn+i?78z4qCO87?{$1Z^&n(E!68hf+ z=%dQcI!zmlWP6vwtK6D0wbtPx!emjWzGGXNJQ@b&toCv@)2b1SCzi0%mFl3<>(;d` zS{$vT%rHV4Uie9k@nvZsZqr?n`eA{dk>?hnK;-sJBrm4WeNFmu=F0uVOo-Jcp>N(? z99!AG{uq~McnL&9-bWLwdehWrir!dhs%by!)<7PVdg#@>IFwKuQy|`{)Ra({DHokH-9Cet zZGcrs^e&a65gNbDXp%GJ5d_om zs;`%pa)V9r%;ty(Xo7PVdhbPJk_#HoFYJ0rNIV8T&_eq$dvy&Bb3p85q@{`AfEi~% zAw25E3yX%B_C_Z-N7VK8mu9&9*Xo(+W?%>-^1!%Z_q4&Ntzv@@wU2?5ewme3w&%lM znySLNjK_~ZxlhG_>zil-Nr7-Rq3l?(rl>B7BE{H-6!yE`KRdEx;h0V?XcCp~D_wi= z(D?JfSnpIk)sgHNKTktaP2fYy7h;wkNt_gG>USf6}JF7Vfia9OPbY2Xy?jQ-H zrmXx%pkN{mRCCT>HS|H0rS}F7;>UVxIkAyx;Bf?(YD6)~$YsOE2lA&H!1s9^zbeV9 z08FX(`I}XlbP#Pyhddx1;wtwwvE0j?oQeVhU4ki=ngZ0%-MvuF7X<{g;h@CyB_tOX zG65M&RjCK8DE#vU9@~ChAa_pxyr9_-TdZVn{~m-bd* zFI8_^Fa@MgRT~@TwP~lvI)x9?BNS<0!%8bcea)hi<1QJqeinybDL7Hbq6f_?;BTU$ z63B#`Uz;_Jv;)#<;vjh9gI<{x4cgPzYj?>4G&)pNtRI!nl$Mmlw-;IRA@2)*4Vv#2 zqKTPGS4|RY+iru_kxCGGktzd_Y&z1EQ#0>>*ZB6sDyOZDyI9q5t1M24ho}90&zwc` z+maYw>kMdu$zgOpSdDdV?}M_1KdcU8Szk^vLm8+wvy_Q+&Ap#bIDVK~@mP1O`5q@y zhk>e&v-y2a`&$&9Y(;!=uEuom5agAdou311Br2i*&e^k3ScN{#Z0LGkW@ncNl`==# z&}^NfE~E@$c3bW=y&|08STM;DfPyb+p4l{66T!_pNlK40B+)3fAFyJO@EqApA7khF zWOoFGui@rbE~I zJ-)|%2L#>%rlh-iG zu&^PtB2pm4u2$8Po|Ds2>XewNm>A(Wn`GTW{tp%)zfWB$PyTx}HZ}Z`Vyj)cK` z{=I}{N0tVhZmJ2sO2Eo}P|@S(*Ml6NAay1ooQpNh$Vw8f2 z(-Sy|TrkNM9_SW$#}-39bhLxn%J@Q5Y>zAm)#pG-U=@U)F0fX{gwLWNygY4#|- z|J@XhmAgPzv+vhbRZRjmp%#R&dbZjwO}?CfY*t1hFV+sZBXs!*YS zEDJ)#?Wt4|!MVa#*jHi|&(ZZ5K9gm{!0y_syx(xcJ$})G(~gx|IWXAo*6%e)>&+i_}X% zZ3bUn(eJ3_RNPl+UV2-O$ba?wz6`QY2lnQ1v$gVdWBJgzuzlR`5W0EfNHCt+xg(oC zXAkwF>-Pl|XO0ylh&A$?1h3EU$r^YSDX7dvYC&423W@`33ux?vZf`5z*cfi}jGO+q zJ=cR67#Ud^8P)xX_=ItQ_hUM3HZNX#zjkKOdUt7&7Uzi$L}yJ+?m03(DDg868}AC2 z7_S&;9dG*hO-vvAbNttd=cx?g#S_={L$9I47lH3i^>ev8VK>Y|m88r?+F<%pBsHP5 zF9d&WAFN-rw8TIRc9)S6%fg-=2=gAYzkNG7vC4;mczJB;UijyshY2i!6#XgkE9<&` zw^`Pw7AS^8wuXfPfXa}rS9S$3U+Lhrz%gqUn4Yuf7gl}uZajsEn$RD--Kb`X``pZ^ z_kk(eneZNRj`Y{kg)WeYa}VO-A08tCmX@8~Sx}iV-&_p8t&qchTlAqJw%^Sx@G{#? z)qa|wjLgg;TLWboY@UA!*pVVo(p%4&1uFwx3v%Tmz)*WFeMt?cJ&$^FRMiki{LJvl zy|4MhXLqO-!%e=7oIt&ObvC667lrcisJ`Ox4jrC5xkqwI>Z?t0Y-s}^ zo1s|zt;BldLl-jtST^78oi|G;n@f`ei-G3h@A=eT#DNR>{kq~$NQ}ZK$$Td)VONCy z_$r(upq3%vT;2Ix+tp{aCWNTBXKCo+zjoX@{(Gh1YoAF7gj%&PY#I4+`v}2g#>lph z$>LX>9@kKftnp~^koLJ3)E}87$^*wus%2=-1#i%~EPzxByarjo+5dS}*<01i);|~5 z`1-A0<3{zmQpj=C+uK)?g@(s0_8%@q;Zbtk3&3D{kFx+BM-AeYC--!n$mnuB8O8af zBre6MUP_ig)nxYeDs&fE7I)r%Z~tChSC=}41P6txx&k5-qGB^8|FceHe|`2#+*7FD zfbsO)myImKx~Y82ylYWx*Hb?o{;jBLWcT9BN` zrUp%PnnHvb+2p4xH}6{W@BYI}rS@SyGugKH6->L4^8>O?W`{ zuGKsATsX;8a)6{Do)6Dv4^GSbTi>sSAWzn`3vGz5qM^U@=qU2`0c;>d6u3$ZUlP9t zp#!{fLa@@BkcZ4-GM-OrA)r=QRUL791>-F)gOKK(OD74?7`ma+Ik)0ZD>UZw?vigW zoW(_HM1@sZ{e(AJ@=^3c-WPdQ*@FQYy1h~G4qJU7j8>tkUgUca5 z2De7@c)*1)jxZT4)8du3dg4;}Y%a8rIG_eTb6I zl9x*FPIv<9PPL+ENP#X(r|7ndAy}Ie`pFEBy_dXhIPp@$RXb(-;V(n4G%*XZuF(iUr35n@}$>!2GT6duJ~fGqzns&zNMKPU-t0x#knv1 z5Lckg7Zo4h)!K1-dC8vkug0z?el>uX!3YEr&=H}h8}g1k*_#neYShf z=@s%R6cqmEl5p!+p<4LQq4LjC92&XWiTj<$>qDOoGj5UGhWgpV{n?mfCzz&&%;OC) zbPr%cggi#(F=em~aeXg$K=TP>`rl3{0Pk-DfvuBAjiFr&U&hbcxpao3Z1%m+eC|$} zp}WNCeMdAUG|lN*y-US|83Hn06`r=q`?eJUcJXTHZ$IV`_SXYKoZFRWqtXu|=#U^= zLSkUl(+wblnss}Ru%8%y_B`w8m3>q~0!M7a_|gVI-)*Z7$VZ$mXNlMJv}uK~-g5DO?1(b`+Ax33G7aXeJiQ+ z_du~5p5Ebg|M>TzaluS#L%JNS&l9gHv7ZPnC^lRj!q@+6u+q@|#$ast$$WcKNx_(7 z*UBgkpOQ~4{l9Mee@$5nzn*9S-fRIdl^US<&^h|}RUlHL$40YXxf1!AD5MAlwv<`Uek~CaV=2-n9K@*V|ASQkBfRQ& z&YY+|CXh&lcAN{mCb{j2FvBo>bKy*;n=(&O_!Nh$)^Y2NkkPbuf3^P9+@f+=X}E<2!ur3$*APozv} za=uLF>pruIeA78*drc6IJ>)HL|GN0Y!#{*nW~<~ZhAvq|f-NS34kqbEFu<`a>B>Ox zE;aSLX~8XbN&-s6IgGzoxd>16f#iU3Kv!w{uP=x?Kg-}Rx$sV5qlwjjOWa}dly94H#5biIW>KMwEkN~^AbpZxRk z8G|iO9OgQ+|4`i}$Lr<9ZzH)6_a6g1w%Zt}KaV}+zbJgZsx(*>IhByt{NH}TL{8y0 z;bcqOf1RgfI=Cp{&V=>Z5H$x#1U(O33>X^){zzcc{U0(uAO?No#EJe~O~6P-H<((s zd4CGw2wQyiMIj8>^hYZ=0*UFp$Htvo67d z{@;EOab^k!6<`Cpj+j21&@L_qw6Z&`e!i|ZExU34W_b=YA8(P~pB#E`-pVAKul;bAZ9W~b_xFn$cAS_!)9U*I3f*@WS!N9Ip%FSSM`21_g z|9+kye~|m!mD=#f8ndq581OgCkquEY@A;73vjeK>?Ear`kk(w(ZKcJu!M1P@B+>+a zprTBz#QWqI%}0#`{1n0rG4#;C1J8NrE{6Z-1lH9*RmJ+V?ReHD-FhOl*J`tLW1_5Y z4Q=PBe{P#J|3@Y{nI~--vG{?0+%m6!dn|F!OMm$re>n>rdct#op%2PV_D>!I`Ld!27k)eB^pz1orIRJI0&KWwiA7gPxZ?;2QM85rr5B8{4xdZc+LNe0R z16QxU#aMDm6hi!fRDdl6s0mBOjeVN;NE+&iTuoOWX_cHx=5W7({BG6urt{&NA>U{b zMz`SF{Rked3n01lmRH1>K`c1))dN zX*Nx%eB1JXHP&2D=>8g3^xO$Nt6%G=siEm&k>&b|kWHhXZDn~mPK*-6pmO2O z&zGbAshxLE&hrrQT_PamlqCjcA{7H`%D11g-iLQE{V(T8?4K308=x6}+uQXv9`s<; z0|NtZSg*Vd;=nNI!IY}o^72s(NO%tF&F(NtD*ihRU2yGt9)9w|3DWXf22s%Je-|8l zT4ed_CCEWHO0$+?Jl=!Mb7)}BLu}j=0CE@oc`Gl|YsF5dqBep9ZV~t<6Nc(-XoxURi+%`SFSBPz^e1gXagF(erBZyZuO1L z@@I8#@5(0bN7x@SgprYvo4P4^c}j%R;s>v+k@*0(WgfUzz!DY2X~%I z3JzU^()_!W6e+8N!w2=h4*v7sJ{7Vh`V?z$XgoYT;j~g}*9#_lni5clur0F9Bu=RngG%;l(Q8kuyr9WhT?@R`pSWrWM-OJ^>M9A2gP znZM(5e>{BR<1i}(YOS-P5Yy)J0Ag=}un`D0yl4yPRbnt)4{x~%> zF6qRwcG2bCc}Bhr>EKLAXk{P#34=Rs{Odr`?{lBY#w5c^1PRP5H-P~EMfb5CxVxFY z#-=7sXih(oBJ*~lv;4i3G8=rqpV(7Jx_!|4D`haRetgtMNZ|M5WBBV5AHyYzpJ4;# z(}g1e_JCqeb16IAAcN=04*&PX5NzW=zSw8%;oldgYKRlS`k%YQLD|`YTWL&$UNlYh z?=3w@`?ql*EBXS)p5B>g`twW%ADl_zNVT3`YO?%_@7iC!cx+03cu^_<-RK#E1+D z;foGX1CR$^VmR$nO({B=D=v?K9H*!<3a7_~t!q#dkZpN<^b~YQNQRp6YNr=|-@oLM zzg7!*XYvmqYAx&d=!p)!ru|MP;#d4Xw^`RFDKXrDitwE-g~DfkqtfL9Fx_UlkLh>b z<%5Rb{O5(-8S2JWwzVPm`x`Kw!X)QA%Et`WK8!*B71x)-d1}%NhyQmIEc~Be%A4ieP1Hn>#jj&aLo_ zB?O;7%x^KlA?Am>d~D2c<8*!`{)I6d`j(6BM~5$ym)$V7E{7w$LC>W>9XcLU20{95 z&(6~EFTjwTo+#)jj_aen@T6VZUM%J)K3UYMA2Ruo7H#|p#-9SW z_CqZ1bD6-WbuGV4j)*Tp`buvjsk&@3^vMr;n*pm=Jz)|{Zk%~yL8G7?7~#l!Ad1Dn zOo-1s+%NCJZZQg3<*S8xAx@i%MxofI`g&z(k}B{I;W08Uk<`&SMO?^#c?=$OxZTIq zJfx8YXW%3_xRsB+qxI3|y|2tNw56_R@7TxBqX)e~w>G!hzOyMllT2|oX)9DXYpT^W z4GKKS8Cf{&OXN60z?WfwjaVHk<#eh`Jjl9qUz$NSUdX9qR=}ZcjP?lN|5 zfUjRkL*vCVU4teFaY1*Jd2(wap%Z2oy@7t?gWWDO%U*4>^qV_`It9)l5E^DRiSGOm zcn+-%%MP9bn9X$^K&_lSlxB&dUQSz)tb+3&M^@*G2d4MNzOU9&+1|!1(|M^uQ96P_ z~*jP`;gbEcCN!fjLZSI4|U! z#T9cO=0!Pe@9d#FVRCO)dAYEBsUrq}TyOlEu0%5Qxz)v6fDCoc!RNK}P{?IU5L0dv zE>MDySaqSFc{(T(#LggGfH>P}G^8JBsC zHy;w5cYMYG6OT=G7B_L%1ovGLAOyn{JYvwvO+dO3mYp`TMXF}B{11WFs}6=hTMA>3 z?nlTYjmJDy|EU~!LlxsWzw7LG3)_H@oCyu%2R$F=zI_+ESw}a}Do_iY%D%l$YzCmT zwiiFEPxqD-*px1r0vbUc1AW7$%OWb5{Xf4sa-47y_)nsp>6suS&WNSPFu-ET?0D~M zV;naO4l=GcQD*|kC0UILwmv(^Rx&nz3^hD1m}8&}U5KAha?J_t^vr_mhHW}N z4M2sQ%I)*AEx>5ucKvDCXFtQM3%CfCEgErgKw+`7W4I>W$#3>+0&-Z$KTE zfR0xeB7%*r^C)}~4k#LOEAc_33R7)1b(wTjE&|mzl3{FOBD1`_H`i(R)e4_Va2?Et z9oD2!#Etes`i0{eV4twt>X=q^Mdi{eMv}R+>xC< z4L*(bJNgcDyyN@*Vq?GBc()X;>s(F)0|z;v_M#3WP~AQ1drA$5CBZS>;p_8E>et)O z0Z~0Q+ml&<%C&6h=D{Sh<$P4p)VK44u5+?FU3N=atAgr#5pB+jRSfNR-AyQiALxwg z7K7EG%ZEZQv#=;ZwL?L0ia})iYZ5GeFrcoF_c`xaZ=;(I#Ky+Qr@LozoN^|t<4Z+# z*WN(u+zG(+(;z$BX`x@my%wnO|9mmUxoXSFx= z;_hlav!xT18{B)=xH)9)`Ke2{V=~pXwbMZ;LK8A5!~+AYUDdXvxA!@q8QftI!YWKe zM8Gf5p>GG{qAH(sKT6t#9xD0-BvUVmREW9cMK&i?mXX}&ey-0%XEid zI;n|LZ@~q+&#DEcQ#xBiw*eR-gF!X{$bN~}QMa~_oCr%?-)E5RE_KRe0C_9t(kn?H z1wq3X(>C@p2b1jWwUgm6p@2z-y_V(>&7ohnyG4;WlN_PYvQ)RB7HtsSu)TJ9KW>&< zwk4*>GXA@5-!_c?n;tFSgF)A6J^6jBJp<2`dw8uGWV^Jx^f%7^5PWLl?G-mux%Nzz14)4la>xc6XK(~Yw!3j^2zfvAoT)?yYl0VLCrJ?Yga!q#RwXQB;mBS4>w zgZd+d&U1C{d)Nc(JdqKngZmSlF(PH_HLB5#@s`(SsoU?$!t z-E!tdH)}cKqq|ZQr;D*PNucgAVcC)4WI3@8fm@`Nq6W+xjGxKX-Fn39RaQSSva#VR zH2yLtBQ5Kvz(m3&@Qx|+7M#;F!}jHStEzMBFaT0oR%Jq=M6?b?zlww|Db#3B>nBcd zWHl1CBuJ`GNEe=BS|T~E$Qo{lxgcdsucN}a^wvft>00hxeoEP}QW-y2jbb86%!@19 z!%l9Bt$LCz;0@@eAT}n}OmLqzkH6+#h>Yg!vXVB_R#eE@6Uxe1o*bZziYlTB$Wi4k zQ5{J;C{D1XFuHATKj*EY(gwo9vi1pTOOXNdu<^%5_!WUi-Tl!#NvHJ8hn_iE?DH-! zP0(R!SZj+=%v8^Ou{|Ce(pWble|4tqzHnnkMro7DST0s*TR3Lv|6%Vv%6}N=HCSRGNT-(tA))I!FyYQbP*?LJMhU zZ7h%TJn#RU_dQ?E`S9j9zhQ=w?0xTbuY0X)UF%x8(Yg5aeV|&nu%w{Kb|qO>eic%L zq2*3hq9HO^Mn}E>y3vvG*uX1}C6Z{eL{oomZxiSQN7wMlPi0a+O!OEIIvZ`-k{v*> z$yLJfcIkwgZD`GnHjj#rXJg72fPbM%XED|4(@)svGF62+@x<00IdV`Njytbo6h zVoSt&3`Zu#Fb_EkZ1x@b0;%Y8^%>!Lw{f27&_jqYvS_}}Ux8~5Vgw&W*(EA-9!Ec9 zfAQxtq~xR@gS_jZ4*T+~)R~9_M}YTdpC|>FnKekxb#BYEF91afYpFdg?xfgM3|74H zF*_f}+Pm@8^Zktp;U+2j(u$7Oy+{B#qst+?&osdh9YZ$dKCcsm;d~ILz(I+eO>;1y zRVm3?(d?UGLSno)B}-XLmmQ+h)|5bj+W$q1;iuaQMqWP&4UBkG`}8y)VL+aw>dG#_ z!eTmiFU@Ut9gc)F;4IX^fJs(y3#@kU{_a?!3 zHH0AlHS|4b~$ZV25kcr_fljJIy6-QE$qqMDXm8~MSUlr5qG4)wL1+4=8iHzNfj8GNpeJ^ ziSGJUo5l8ucBBDAE*0Xj&La0rICA0u1KRTU-#1&{5J!N%)wwiq@yu5A5mCRBGC&sf z<<}GJb)%k{BX{W_pIFRV@(BwGiF+bhpb2O4JH&h8a~j(TK%?2@CG`W}l>rKRq8QHO z^+zU^gnr9&F|FkuH|b{mL+b`Fu((b?1n`}rJ5AqN?PqbN|dsI z)Cc*TRL=l@?7M+8uvcwZ&A2Skkg5aq+Ym8KqHRgX%R-jJ4Yh{w@jOnLU_c!4VbgJ6 z0tC`QFfa;%r;~V9-@%xT*B>(iYJD!%gtK)34FWZ8CFkl=z1ap{b~4eGE@T)TnPo?|2LLttm4Z#$}g5K6)m1Q6YX{z>^~Lu+i0vO#aUHAuGcAK&6>5& zFgbT5$Iw=fIvnXSjbpD{Jh-Yq#C&*hORvhH4+8i?yQ~d^`wk;QA*}KcRcf6 zk6PJ)6warL+t2;0%KFD`nDl&D@lSgY%u^sWJBa~xalk0`)wg#mM4+w#0+#2GAHPDy zKL|$i2|{a$)dAjH@{1>T%IxMqM#O;>GXBfCix-Cp4$gqcA6`i0 zkg6?STc=;^qIQns3x3qA@aHcQ6GzV!YwNUbg(v}uhL|jR3Osa0x2cyE4WnQsfNaby zs=~xnX&_B<%`O-n7|*-aTa*tc>4j^bxZ|%tp7Vp?HnS9YIvCo5qnwK?$}@Y2M0`RrH`2tqR6*fz({+#3ZqMA&nd ze;YlfnWycW7rXfIehA-#n@XcXt1e>slQ#>#`bIwGH4v|PKup=_K7HlGeFOI%qQ#V7 zyLayO`P|RFQGGw|kK}zj#g2C~KUka76vWhg+Y!I`&^QgijM57S#MBTf&+<#{7?VMT z7>As@SHWpdlRC#0p+?71Vbo&ZeO?o2>WPFE0vYQX}ltH0j85gLbc?R8&|U4Rjo53KMPRUZHVAqd3gE)V!9 z1nB$wA0_W_WlsAmpdl1oOXlRx1%6}Xpda@gEo?a`88OZVX9o*T0lQ$z#C>QBsbLbz zm=7kGA;I_jzvFg!Eq|)1!D!!$T202TJqa*|Igrwzi4}BnfYxWbro$E^l-(VQyFPs7&amq{ z3a;>;H~!U0EJ8R9&Vm3D3REz6WECrFJ2YKbmU;qWoJ#J{fF({@BcR!WUln+J<%YS)$3*Ht{ z^-7NV!{RjhJ4D(0d(rpbYXapT?806VUAnBF#m=ljT{)AsY7}}@a9u;Sd(m9TU6ua> zHvbPQo7zg)|1)4QDR9EfO-3oXra>#kwJ%@qY?6Sg?A{|h$7$}%*mqPH5lZQ&fNGvN z*#KHxgyXaA(_e6hW|zwj9LyW7w!jm)c=XP~_}|xFF}!+<+}HO?Z%4A|i{Lo#($!;> z*J_9t{H0wE$M*PYe|)gn=0YFzKN6Y@GAR;xR?qK_8Zv)+;jSLEujv+sikDJf~aj zt2R~l1{46jMy$%4S2Mm4$XT;fEzG`W_O&m9R>JJzbkY0iYejT-wKA{nE?8zn2&(>m zrQhrH8Lhw7=^sI6u}@ey?p#-dlB>-z&z(Pa`~>}Q=8E#CSsHKXDn}z%a$l6!-36W9 z=dWG6rn%6U{%nU_N@C*fc=|&poQCm75j4Z>#G&$uW0j%edZ94IqjR3IWpq#ji^ay} zHYS|n-F$*m@cH0>zoOq3^M1Qpxe5r42JgbHe01D=-m6?VPQ4r|x$#>WS`QabDl4-V z2NFfSw~vD~|ICYxQ}b>rDq@YHi+_koD;`ByQA|vD&bK2PnODtcgj;$99^9Njar@mo>3cdx@$fFbKZ7<^Z`gQu8#s)}pq1SEyp{1< zA?Gh&-af;0JG#K-`{gB4St~6-$e}-88-F6kz!_cDSj~<4dvjWH`bL9kS@MOv)|j@s ziP87VzpCc;`)&e%sMe0?ss?|;JWzF?G1YptPaTu*kN}Yl@PW5X6_|&{`t6%WR6cV> z>p{27qO@zfvYTDp+E-WCr|PF~SR^7Xw%xsKfP`e1h#^YO&4SLWg4ZE-F%C7rzr116 zEfmdK-d`<)a?6U#1c9KvXt}uAoy(Ww`g`%BZ^jU1GB?_+5e(fo9%iPd$J}HZ%QU?; zn*cQg66EF_Z@*pBed0ZR0RT~*1$}>$@JJO;m*UhBG;8sCZp~-iL#6=s1;>M2DkMN# zu6EhJb@f?1>9x{Pc^iZ@-yGTIiN~HET-p5RHIbv7T6chQc03rku_`xcCwg+z|-Y9N+tWbMQ>HD0gP$7mkl zh9nnpokD@y8>LUbkkJD0^lBGQ2&OAd(3fkQn(6Ql{S zQkJWIn)og%=P(q~IJNxlz2+^~e3Uni+6D;igiB$A^(6@!?9K2%D_*sU<>=_Y$7zFS z^2bTwQtHmm-q||35r`svt@@Y?Kr9=juTP|w>2a1n)+ZGXG;E$Ep(_zYG~+i3tcGLj(=s{0*ZDV>^^e_jKYiQZzR()n ztf4!S`024MnmHS?(?3pn_4ZXG<_F_ul}!?NJ0KwH>IL@~B_kku`n<(%@7scAv^(9{ zxHqv`vG3mIu`s=c7l&&|EjG|-5ic@|914)YMK3@=Ku}FGaNvuB=En%}(th&d3@H!k zo)Tdvemc}9?YQ?XWD{qCWt>LNlEynhyhBuEXK{&WlOE zX{XV?f-ec#z1I3)D8-RzpOW~muD*Hxjm{IjU#btbxk2)p>Z%lRFX%&2WRGBw+IPpi z@yzdA93gjCf}x6>*9ue%5nws_t_)__5$1&Kow0B73w4Ql{lXj59<99|1=VGKOam0N z_CTN3K!Lfx-@slkqkw}xN=HQ4&4TckTaUJ`Iy$pLE$hE<(!lRO`o>1;p{e$+@{yGX zWp@9$>2V29rrmw4+t!}-ADv_u%MKSGM0gesyN^6=(J&@r>F-3?iYGWf+ix*E+PK!C z&ESUCEu&2$e^~?+0KXG?)&7Gb1dDj}y2#PmiPaE7abG|`#B+`^4&=G`z=xQ6K^zQl zY@$s=6pSjo1SAv_x{8;zaK!XtmkI|pFY)OzFZaD5lg z2R@mDid=BK=&9#Wm)iR&?vd?@P32caj^5F_6OmxE{aCPx_uK_7T_Eu!(}UunU=vYt zX88jD8C}7_SdKu2wVL;%foW}$Zj+vz%z&bw~^76l+t*Xxt=OGlpWOHhYu{_K<7Ngn-WPNim6 za@YEP$@RJfUycQY3^(AAb|yG)d(UAvlvY1Y z{vItnboo7=Zx0R$=DYni5Qvd??vP(?=RvKMh#uYO7uRPfRu#~G5ai)I$n%;!!YTU= zGL9|hBCCrIRDbRH&|xJ+WN*75cq4xIQ2xh1nh+iM5Z4x3FIX;6}zUdnajJijVEKd;Z2LEZ^Bn?$TkVy(mI~nPB?G~6DSHB;F(A(iy9S+zg zeZr+s#ftvK3_!kfuxjn|H(IYtMt6%IQFgwK@@@T}Etl^OFi}hQvE(EX10`-<0)s{s z4f@W%EtmT}4)~q3?k5h-RYMjAk_DE!*H*E-uj zTo={)u@3h%zQ@qZ%#G!>g|i3Y$)HfDUedq+tmR)P9}Dg2%Ae?JOkB(MZg?J9b!g?L z47H0nRx6L{%A6}-A1t`%N!O7T*T(-Gs+=AbPSVjyPs)jPY^54yb*d*k^ys`(p=Wjc zLs-K3KUa3_H(P&d)6u^(j@*e1tPSpnMF(q{2cK@!GM}j#pKBm26j6peiQ8ts=#(t* z?AZyice@mh-c1S?f&M^OX*(EF-n(9-y3tNzqZpD9`Ks9eU^gxQ@`h3hn?(`RDw%#} z8xP7!0j|w*8-_$G7fKe2MOa@{mH4V3?ZP9SSf#x`pVD9c9N)9yv+^aJYp?J?!|jqt z)fu^-(9X_IJ~a9{erb)ohu7#S%*pH5uVZYH(*gSRO?GHT1KjzjxkK^Vbv z=z~1Nh=By*^4&jq%xfyRH~JQjj9wN*F@r39kk8lF_JuF-y04d#@@7mvQ0eJTmA(5e z?nfKZIYtPII(NJVb`Uik9UU>YNf?DtOGPKe2ur2B`HCRt29<^Q?Cd$;$>tsS9me^q zHC>^YcDb{wi|(-l#r)L%VIae0?nQC0`QXU8Mf`6LTGegeCN(D1ix=>dXJHMS}$>9xND7 zJJm1p$Jas^6L-rJbDeI%Pm@@_@tao41!fFzm=&-`+Sv=`%4WC#QmS ziN5zO1q7ymo%@ZWhqQpDEHr)n`W}-zx8)ME;kMVRw%aW1&PvLOKWAYUXPVdC7PSVz zOvAHN2@`X&!Wsc5y}g-#c0$ibaRSJf03P5n^uw2*m6yD;!7d_yk4M9XVcP|wC#AS2 zW3!M(+bfePh9iz{6ns}n{JbgMarq>XKk)0?2jC5gtBF%dayu;vEVwU}2kv*9v3m$@ z5D!GEpbaDf>`b-y413sit~r?+|1~Xo=U9h+$xN7xtnB=pEd1%WH$Tsov+@Zkk5l|t zKQBH4 z+L(%azf|$~GUZ$*^4=O3o2Tb)Q}8%HHa;Hk)gOf#kpLbwo$)qz-;c!C_mlnljlL$s zF9bEd023psTq{txE*Uu?zTN!SWg$1d^D5nuy!?Z&|9bwvZ?2a-0OUDq1p^|eP*+#y zU9{tyol;p}b%yGwre#JJ2u%R4)_Cmlha3fBz`fnhhZ z;-%{|J|#&@{q&A;>l6O`VM|L(!dY-d9;b|rd!Uz+T>T@EerdN(4YgFdUamWEJgrc2 z{rdIZ#mfcjJt8ZX!z|QGyS+;uD^L?agM}S(S#VZ`z>>G47ffn=w{km?Un}%q8Fz%! zPvh>@3S5zS<>MU~GA{`I-sXym8%BJF+ilw4UlrfiMOzSoSt;{YfT#1gwy+gw9A6jy z+m@Zi!TFV^8ycpxJXE=x+|LA-TLi{B#V+{@11TR_MBKkT1#0;)NA1~(xxMOZz{Gg! zd-($}qJTKiV7$}Ywa{cXy0G;hRN^doNOJ z05@Ld0?;t*IZRT1z5-_P6YsqH^aQIvB{l72a5t7t?kI4!gvaXBj(dVbysbBQ&*is# zX?OC%mJ3|7q9d?rs~>Nv;UQpABiDS=Ryn+lSvmS_vw*kr`oQ`S0na8v(vb~A+XXAe zk^^G_cAw-@BW_c2F=|UQ$s}|ko_20-PU9w=1hdZz3JL(K?+W|1J@Z!op@w!TTQ4Wl zfe#U!z(e6kOu<3y$h^x;T(d-Ockp0k^h$-$W`0kHx5fhH%Znwi`0IiC!y9Sbt`8Bc znoK&92K--}T$MKPu6z7vwE|1py2Q}_TU25eM+PCNgwNMuVg7k{`X(A+d?1b{kj6y4 z$IUw%2fmJ3Y4HBa5y&Cz%45^zwC_(eWTQQrq6nM{x?1LsK+!(RF`ZhLSmiQ zhr~^bXp$ZU)cc&6cj1J)_hr?<^YQI>_;C^ot`=N=T524$HT!+iPJIs2I!oz=_EJg{F^XeZym;|qX@bUH3}DLxYu$UE!Ig@SUTqJ1I07-+UoHd{e13Lr zHEP6IuG>yMn5o3=0PwQtC_O|_qq!=8)o+QRclxuvvSL?{HbgJMW&6hc!%d$(8zXk4 zpmXlLCWMbC6Pkj$FUo0@RRxrkv{kT1JhqFB62*?DL3}5|BwZGaiC#qBqW@P+60LjT z_=Sqw-B;ltHu!Lj*4N2{()ju#wm{Bz`CSB*!gg&hC&lgB*okzO*RJ^HAk{x-U^-nw zaWV6uiU3OE%m3s&_rHp8=<#uTBrhH!`MxKTQlodZ4 z<(BuU?|#Fa{f|NfJ(~q|uue;zgp%ijBdXjEtrzq~6}$+Xu(I$s{wlxR>aVleA0E;b zzxwn~ol$pbFWy2kglVZS2Up>{vP87cyVj2*jJ2nK8+q%de;~}zYt$}TTxf+)bdKA=KX$c%FvX(DT*5gH~hBq;RJg5^nc*7;SRtn z9R&M8UTZ2)Kb_hyrwwi$dHwG%{qGX|uND07M)+S}fULm(`hx%8FF{iOmC5t^u12{= z!0~_#@BI1mppLf7%xrisJipnr`T2Rsj}o)94?|NMXd;e|OK_mR2Jp3@;!{BxE1{rZ zw}gaYGbk7h4<|Y~iD+pA2e;nJzWnYY%w>iz#Tm~}Y8eq|Ro)vrN`(a}q9Ww7Frz zm7eHa=s7Ph^lPm&z$%NmB@u=Irf=GhU_YAC7x(W+w z^LmDco|*x!9cJOAjGD9&UWz`!NKY>&%4R9GrKM%(S7uFhwXT7I^Q8qj`+jlb`Brpq zdcCq)b<2tpcBpvsh9%kw|D9o=PqYw4kosX!-XR>QmxZeM)s>*F<4B4@pET|X z%Za%5(&AuZE!mgfXSmjYR_|I8f<(`>+8b&0u6R1$0g#4aC1QRyVV+%Qi@UjaidY+DThw2O-|1Y1yRs10l2`KnT%ppR>zHo_JbmTC3azPkMDL;^6UqsZMySJyqP~9 zv)8QIZx6YM#DX;DGEkvHlqf}x;X;);*=cE#z}UKhd=Jm;!mGTjU<&lbVU^iGhAv1vI0NPXT(J7RH&QUPaJ}u?x?dOQ$Xl=nTHFRLzW&3ag&+ z^I7zBpKYvgfF?Xp2xsZ--CONCo7+7@u8oqD$|bUxj4nLW5O6Yf@a+|@v6o=CR}tWS zKqE?;Hka-bW0_totHQ4N+{^Z=fW-wXAlb5pm1u={dQ=O+wpxM2s25^loze!roT=m% z+ld!O&s3Hf;91YqSx;3)oPj&hBHE zR!pS#tmE@ITEdz`*Ytlrg*;19aWmiw(8|SBWATg{+u^(c{{|eRN}swkzR$6O&j%MD znhw13tvDgbouoj z8#%jg-@rQ1VzKhOKy&iB2EV&}lx(Y*xLM1abNS!y;ytU3xp4R>~z=i)J?K9J*FsX=L}Y zd)>A}BB00Kz+51PKY#wNXI{l?amvW4@iX!fPy-7Cs8|W=FAev3>(2y3>;GQ#;>QJG zx<*9%u;{vmhEbqTB8p#Xm1=H0R~@F0RfP7QTI6eh%KS|euj%{yFHJ>yvFSeHrd^LB zV16c`W#R#7)}_BCy(INb@~_an|F*(6eA<7>&bfrm>n4j+=jGjy@jPjE?baVkK$ zsG^bZatXQyKatihb+LjCDhLI?MoNVuP}+PUn_?jIasi0IG-1DV%0@efy{mofom7U<;!*76xJ7vu0CJv$m2j%!Sc(cRwzfKPXJ=XkdxM|5thv z>9?a@dp&1LSKvo-a6n5(1GUD~1WWr2XCssc)TwYr4}*Yt-Be#0H5H>0DiWzUSKIAL zX~=MQREPGSvTbNqXwiIUFtQW~h(t<47w_94R}vN<3WwqI_)u`h=G}SIv`JUnDqoIP z7}V(ztQ$^eh=4Z1>0t80sOItGX2@lA5%0=5uxJ96gH?K&HydlVsdzYHr|wd2l=_Z& z^>5ZUZ+xxa)Y8&DfYUg0#u-6B;oMMiU`&e*UKgMr1Eu6?28Hcyn5ctRLR@5kkJk-2 zTBSW^wP+uCY#Mwy4jc0q9z1+FJMzHQYuNcroH^iEkxH&u_=|mTKA-Movv`KN(2LmZ z+jF40P1JIp^M%q3d4cleM})dyvl`_)xy0BmSXD1n`RTsY`ZEfw|cmIZ~GI1GyB#(iBtx& zLq6l|$pEMtMrtO!eXATLXImW?z*^2Ba^j10C-PIP8Ltq$H#&o!QdQ0AIY1bL-8~; ze-4W9LHbnHiQ(r6}Hg!?Ndf;Be3_N_5MN&+xt~fLxf*BiJzI=J6 z{W^Yf#xutUFZCma>n=nh?4R-UIBTIW793&O)O9vL8;XLbA^E6RxY6dHez$YZ1(Fga z7$VOq`tSiPwbhs(-LvHH?=RU<=t=a(bc|D@-TEg9${k$;@H=o!!0&4X!x0^0XhR!U zp8cwh2;e}YYaW5=+~WiLB)qR7r|aG2IS*F96iXR~4R{u@dwbc5iC;p)E=*LyHwud< z<3l0lkh~FdSQuJub)onGGc0nvd-Mrc>(T;gby1&fla|y= zJY5BSHxTZJfMD36-Q=R=vmC#cJ&P(n)_Ihtl58gr7OcjdD|CO004SP){rQ+fcyWfPp7Og(#>$0_bT zS;?xPirgCnXGz9DC%>_+D~m>H=>IH5LYU{))@M|wAL)pWYF@vtcgxapVMe*Igwizw zVhfHCJ|vcusHT?`$ZLr|d$!)7z{wsocw>tvJ;|M|wB7}qx(Y1*Fe@&8Q{Z+laY}b{Ir%t9-=KUJoD(3vK%ZpIY;QkB2}PE zq}Q*Ha_qZLEu2ees;Bepyi|BybB;l67zUfF1C20g+g`sJP#T!XORVf$q;P%5FD|A! zQ}!Y0@*kMnt#f7Olp*lbw@s+mb!csdwsjzm-d7vTtQSd$_L|YkpZ>A~yha3AXE1a| zD?waViA17c$=V8L*HjsOJS2Z5Y(x+G7)61?s7{Jqpq2@+)Q9V1qQv!fL$C=pJ_JqK z_0Vn=8K1>Gf1+VQK-&B?D0_=(Y3$aC4L&7Ryx$f4Td==XM-!4B#+r6bU4uWPIOC0} z!Jvrk`NC?b+z1IJO*&c=72iNsoOX=vn`SSE?Ee8szu)Yl$}}=`_IagWrbp z7zaI;NyWty>VEwAI864~9NbPsON-TxJEtQK9E9D{I>a(2Ot=;0_I4sz2t>XL@NOrA z`2t#LTZ|xTJ_P;!o!0D3^Oz{mUIBS7aj4GU+PjZyV%`g!iuk^LW@QiLaw$GHb4ip@ z=2lfNH_+^P3eI>KD8pxftx{dH&m)hSQ(>5W>w>l_ZLp{!QwK`S2>F)N>mI<1pk0-hwMj?B02|CPz#lGS@ZxiGT&^>5;~vnhLdqK$gPwIF zqAvw3io0oP=g3K_HNLe(z8XhSgw@KQkx7x19e_>xk7a zkF0PkTaW1=JMRY_Ku1!29a1_D(N+`(4un30FzlH4P@t_SfxV#{5R3%W3I=)DQ*0oG zu-r?QTGNMh*t0qd`Rws@wysSH?YS33CuiW`gr1HLufDYySXdaxFbJh|mNJNhDNu@B zNpN0~=a?q>4rXwsnW@q{8WQ06f(bIUD|i@QxeEgj{8d83YwVe*u}nB=rl z7#YMNlcS9qJ~6A-s)pneu}WcKVGyn2$T<|C=OF1xFBJ7d!^26jo-75e44a-8wXybD zbxtvi_NH(e8S)PbFlW*XL&*An}Vm8xX!OweI63iY2R2MAG&ow zPYanuajO7u$i4qj#e$ne)XdCdh|qG_3jCeaU+9Qm6Az@%@cssc9%tr%(A0?I)_`jH zfM1%Y8QAJGXI57BT_U_QEF@s-UX=Ne?|?NG!=amFPr5JK zkBq041sD@l)>m|PUT$t{TVQ(`{sg^&ikC4&IVrrSWpVw9@w9-G9@*X|KG)K>T2qU^(x9)YjZjA2;_?a(6BM2nC zcWA*|K9#rsfMSyYigi(3hFNt4j{d?+ArSci1TQ1LR{xIp)*n_g{fXWVahm=H5B`6G z0soAf5STdNJV0Se`KurPg7l4i*8w>8pWnH#bAnI9e`{+LNQR(%@3wty|4J|fP7zLF zgrl<4*)oG_+kNThqmJ$W-`eiGWo~_Z}+g#Vw=#6}rS` z@=^_J)?*pG|50KnvZX^Vf1|%#Z;8yBT~b+~S9=$um!E$?LP=5=nTTNY5Z5+Z(sxLk z8zImoP)egc#*()+4rG^YAky_NUaW@bPt)4E?oT(i=VUH6|Mg_0_=iC7KR0e=;4ei33VQHVxTL}aJ#47A zrZA1}%7*xpU2kY>T}jSmll@t65;!3kogcr)dx2tAWLYG!X=(g{`Htx2Bs@V^9Kwt` zn93Ffz>4xn1rET0;Rd{jRB_e;2(_aAB;tH24vNO?!q^R4KsFF|4 z!B-`onaiJTs?oi8(dBCZ^7~dDGcH(K4Gz*-1vZK8g$DQ`wZ{enzF)_CECp~#PoA3b zE;u9^tr%tl9Q0neT;d$n-F7mGu6hzOXrpwz3GF6goW}0%1~lBxO1{zr z+rtW}=ZW#W%u|e$CK*F3fitA<*BRiMA3MiDk{<1ci7ZD8MLaAVA>7 zLNR59JE5>15D&+cRIb698gwl5G@JDl$U(_dK}#HTS1zi~1f7DiNa3NIU%&0gurA|0 z*t3XZr_^CdY)J~6X=%x2)?4%hkbr<;2#>VY)vtq)?hAs6;fn_kBvia4jl<(Z1H1+^ z5M(*?Mnjc5sThH74RURa6SZSrbYv0{IPk{IU~=Ta>n8wMiG*?yfHJ$`2qrP8#3*;F zBmlP3nGQqMfRW=9pe~DJ&9(yZ%wYSDD2JIUG1B9GszDHjDFOsp0}p3Eg7<-pEfNUA zo*MS1(AAJNhQ^$yGIDYx5U-e+U)sAb)nTrcU`p;hY+++l-Kx*Fxol`C?ZfhO7>;bF zb`e>!0J4+r3KZGpHjrRdL$GsWJp^6|*Jss_K>tuq6ctS?TE)c6a zE^E~u=tB$ll(uSrkL+VA3@0~ZF3Dwr;0dgoZ3Y>m%4J>|SRj&68?CSppouy_>jEL& zRYc-0u)`VuF3{b$H8w6cB!_oLG|{TH#A1LqSzU``zuIrKcoe}A6H`(S0a&_$4q8t< zX*vMu(?U-s)V`QgD(t~RPz!CFmnMrBCf@=KBUxnE>rW9uPv#XMNg3d+ZlJ~-#^d$v z&gsZQhoSCf2Lc&TexzvXR)h8?0`m_;E?-o5!2VD~4Fb&3bf|g=Fh(J$L1^-O zPBcQ)o{*CxtEG{6MoAiqB)cI~CX$kqupuB2obbW^6fgpib%fYbWE6%MngIX?=x$1i zHJfHk@o<&3>5gb?YlEBi2aj(-19Uz*3CCJM3MC5D<(mtOOQ7@#e-sNoB{a<1lcA@h zg52&nY*G@ugHCW0KN`0%yNDFf1xQ&v{5NVN4n`gxcSUMR!ymbPBB3QLA?21Dm=jEo zF^(OtLLz9Oibu*%w~#60U%|VorsGRea7^r|XF5`rPU zdeO{D2!NMs&`=UWTGeVxZ{N+~QOjXwPIp?KLhM>h3n?puvw~;FdM8lqgM=L2x%r9a zSAye{lPv<6ISmPGbA2T1<{J|9T)_!tnA-m>;UNy6TmvA3`RqtYCX^9q><%UB)SFaK zHXb_0Lc%20p87-R_R5WS*6z8pD??mRu)W|;8!P34t*zlrTU$><+wtNas}I@5gq%yf z-`cYGc4KKTa{8g!{=ICW+e-g$Rl?zkXY5kVowcg z1zbps_jWs|(NGUYsR$UtPTM0PAu1)+;Q2*E^WkShcBHhz`mvd}I~ywHwHzD{fqavw zf1&x6oah5mJ)1B8A#`u!(LXSX2RU?IGdsK+9esr$_2orLhKE3Y5)u`4>ew+6 z*{EkA%~bj=hA}m0+g+l#?%0VFFm-)oZtdE&mim5fO(1CJM%6!m{>q1YXN`^P(u|ez zhMpVd4?P#(35tX74AHMLn(Pg}9GOntK6*@59;R0lOqBem2P){Hyqm6Fg^G%Z$T}fq z<(+YjBgPz@XY~d+yW6c?d^^dz;H&KZzxSd3{4+>o_lBWDqA{m$3I+osK(z|3NDR$*$Mw5Td(5GwM$#odN!bkO0 zRpyMv9eeif-L0w`OC?eFi07a8#Gi^|wOHnMkz*JrIry}0r)JaL+C|)`%#PE?j@`rA zCs$-1e+!AB!|C0dKYsiuACt3tfZ#xL_I3rr%sE5tjnEcgdIL9nn~T5PJoO4_s7`cd zXLhh;-b$%3kvezTO_{(@nYS+e@yvjv{&1l+%WL0viuWDLVzDnZA*v~dzWQzuOaY+y z$sXAF*I%a{9M%8?0yn#P)22HguauM1ED{(V6E242zd88PGBR&JN|lb?T)OH&s^^2T z+PHi7R)YM{Nqc)CP{y9jVbz2a3+BU#ce{+sK#>!|ErV>jxhEqlOXk6bGyOfT1W+~w zwg^?_MbnhJX*1z&kByiTT?UE>+e!z-FeP3Pez+!3q+-|%QPJ=>$;m=OLXDm|8k(91 z9zD|9iN?NtwvZsxWP>KCEVX}#gSmAffq|ufsV>4KQ4V$TJx*1$$IZ*yAnoI#1Y>zj z32A)m$L0v^;m+1*n_@;_;J3f&3xHm2g6Zhx<*%SncNd^Rd(cWcL7uY4^gIrYkH5NZ zr+grfs#|!eC$@^R9rM#<-B)W4M4k14sFi2C%pXraR~I-_GVKRe%i0(OPttI%s}+ySd}W=A?$fFFV9IZHy#&j~v;3=dQ&1>N&fy7I9r&U2Yy8F#CvJ>bJqF&GIp=_wL`9v+%1K64_IE+V1_0L!XBnV8nLS zJ#IPOvw=DW2F#P;Uzi)ZNjOFh?dbCIFK&8&!*`uP>`{|mS|^!P8Eew(4s|LmZT@-? zBxujFfHS2V;9luH`}YsR+~1YTc&{i`@7>I$q7ERzsf0ui z)uTCaJ%lq#dP()AR}R>*7z%A^-aC?-M@c2Kns*s8d(*WCB=8?pJ!Us95b+Vy1GcDA z^UP_GHL;r=x#~jc{S40&h!K}SF7&4K5FwYH*^q-QIKYv%eNKv1)zwqliHnK0{$B`D zy*T39c`Sfpi4|9-tgM~EMvfd=um3D>N9)|7D}pM_m5!v|swAAv ztsH!l{^P%wSNs#N`g?`;9*+!<{?)S;*FLn^BsWhbX5M)H5%u?z?0LrR9MW2D?vFzb zeNGp16>wFiyG2Cu=B@67-|J9hLaCwswXABP<5r4wOKxl(=nR@s*{8IwHxtzrETyRU91_)tp&Ir{EiL;1H14lLu@fgw zoHH=c>dmKS9qaaG!Mu#Dh!e{ewUYnbxpVJ&#}6ll>{Ac5|XV0smoU8 z#rw1{J*Tp8Usu^o*|k*TIwgA0muFI8r`S%Ke?Cx+nasz|KdZ%^nF{7=i>JKV|{0a zFp}R7sfQkl`JC~RONHEFzuzc$f2r`Fwxzg2#Mjx#%1A9+V`*kQubsuw%D;Snqv@|V z@T?V6-oO6}@?^<6KkoEN{(!-_jqH{}saw%qJ5p12p1-JQrw}6_qs_^ksqjZg$HULp zMCIil=FFw~mu|&?7TodUpVQ6X#wB&V0ttuVa*Oln`wnjNjJ zt&0??XHHk1;X#})D{EF?y}613`zT!Fr!oC{uGod8urPnA&pG<61907BS;hj+JdLY< z@rUVR*5g(aR($Y=<2-%g{<4w2N&4Zy&eCQI39bq;ULDEyt>5r$8AlbnFF!1WeQQxB zkN+V#L<)l~{>>C#IuEorlev}2MV!0Ul)a}2nC+vb+kJi*#Dl~T8n_CnfS+dqtj*W& zYx9~lGvHEaQS5X3Q17x+Xu=#nBSt;tngr>FU13l5p8`y?J(z-h**|ttgi>twqy?9K^94K)+Qx3}6v>Ew(;% zo^?|C>*Lp(L&v*bcUhxu9oYI*#iZn#>xpG=Cge5xdW)b+dPs;LM_^D;wLTfTzmT^6!7*f#V`dKCHwBTEfGqlJ7%ZFR1=7ba~FXCeh>wf zO(_vEF<>e#yoXW9aNW(5GfHuFyQOnaM}A7eS$!IHaQ5^LSJ%*}IN)@1SD_2prY+!) z08_i8$`G@RKVRbF(SE6)z6Xw{of`*)AVBdRvQUh~6ev04v5kNVST!Rv z(|!D1Zob>}(b90Kp0J-eT-w7ef>l*zmsq(&DCL0+(haSItDfsyDlkI2jWQn?XMTdlhK&SEkQ_rzD5aZ>v0r@X?^A2ga ztB|0e-gf~twcDiKrat;TeDWkt2#UD?2i%zxcsKrfsUQ~cJ!xB(vWdsEC;%(oMR|Gh zlO-gZUT>0dMn*=#`!-lJmc7FK=W`G?)v5DfR}iIa1%-uUK*;JDa25PO&hYW$HC;y7 z(@y(|i(lln9=x^^!X$4TWdM+(0S2u|c8KT0y{QlZb_AbN&cNF}wm0yd{9;7qNTuO= zGZ3iXiDs<=E|ocTSf?`jh ze{JdF9UmEWaZT>K;M(yL?w^jv?`Klg~r<2yF8M+Wn^0DdqBrEI3l8Qae4qS zE&y_DECPvNKe=4!!C-a1q$BNd z(vKbPcXw%A#0DXT+eye8;g)Cimr=04mR~Jzr7F<~sBDN!*Dv=Hu07%|XEe-@s z1O6^UO|Wa8@#E3yLt|$Iyr%lNii(G=@7z`2ik?)AWe(sLa|M`z%}JSt);Nk^^Q1dV z3a|{lq~2zc+MFat;++YuXSvpEmD#@akVw#GG5-OF z{L8ht2>DQu5`r0*I|k{T;i-v+6}c+d0hcqe%J(4!vOVZ?{=8IE(-&E#sz0}E=_nni z{a>wpcT`i|w=JNE4GT&~P(e^ZsnUxbQHqr=RRJlXHz5Q?5v8g0u7IL~(rbXA(p#jL z5ITh3TL>XoNYQn6gAt6R0wH{Izx6#F(vO|%oQ^#d)G~3-DX;4&;Zr&0FK)2J#P~;yP|lQ zJMQhtL`&d-MSi8l`=B!Y{tg#3-AcIREdRSr%nM^@an7~`yrTy&BGNg zxx3S^D%tTE8xH{DeTPrrga@~O{a#RWnZxA$^dSc2`>-y4phf_7)xf|@U}F05=0cC5 z+bn*yx~674d?6+!iDx0Y64cam8Rl36&jjVQQ1k3A9gLR(%>Uq3;T;fAuUSU{xVIKc zGxTS_9jt!ybHj022_&N1$dKX?p&)9GKZv4lyd3vNq`%= zvYf>!i%Jxq?3Mah0o01P;@aFLC>&RjF>JiCWKOwoy>@3QaqcIdz<$%&QiU`FGK+w^ zXH#+jsUItWaMnv_e`JU!(F)Z_cR0BwY6NMsIj zMUI5js5&&?1n-|6LEH+p!l>mNVAzcX{!iImhpN;z!S>=ACtkqNpYI=hArci(yjdBO zrnAUmWHi+&G1@B{k+L~?%9bLDT-cRu)^J?rR21lhygLj~N6>ijUCc~O^`Hv)p8WC< znBWY@x%Lf!$a8MRvHJD)@UukP`T2RkxcuwWR58IgFx9HAWaKOsY~73ws{thQnwrYP zs>W&WCv$TUBIVmVkNI%0H77s=8 z(xG^AOM=_5UZ2TC>mx21he&2YEvPt&A0^mZSe#6{dcOk3Tr_giWrLjPLE&y|Eo0y* z#(iAcwd<0!>x>YLR9x7sL*>Wm#6Y6nb!EBQTX*+{YAcf#z&aYH@T<3Pi_Mm-s;7>V zmd2^l!0P&`byCNV9~YrO&QzOeWiqgutar5-eyru4YfoqxaA_GFzI+L|1)S$9y3b1D zR8x=65&V5GjVf9BZh%YT;u;`5s$~4}^2AT)jzC^{`KKEj@(>6Fwv0#d-B3Gn;dZk~ z{peBk_>HH+rP90EcJA9}(o?|c7Zmg%d6!gROX#(epZ z1`T6A!({Zl``~<)D4Wsv{!##Ps2NO{C%Cd7Xcn3|T%UZyP%vc=ur}i1n?}3pD0#6A ztV-p!R+!7v+T{CKNPQwUzyUYh7i+4k`!^Y82wIqRW^j(C%C;0AG3?{2?hB^`!c_VO z3UHRL;%Cq4oNJcUoiv;rdJ`L4FJ2c9plYz5(hTO^qR@>{bvozrFgs| zF=tlgT^aUql#^HSRZtkGtH_2Ea8nd%V88oNV2AsP29}x$k@=uz6*94uV{)V(eIjTr z!{MDvf8H8z+qPrxAcis-QM@pbI)z8S0Ip;Hh52ULw*B(wKP0^cBXUu%4Y$pO4$RyN z&dLoAL9D={8sA@fLCrn;-l~_fFa&|fbJsKF(<`l*6BkWPj%%id z^@z*#F1wY8PkDHC?cLJvV-6Ye^+0Bg)E_rSo+xj_wVJaKNC(9p= zA~(8%-Q!4zhSEq#0yz}S=I7_6xJL>FuV)kxcQ1Q(5OaA&zn7c z`c&F!>}Ucq?}Li_z`#MM3mH+0B-ukD<%A8*)aRfK7Bwn64@E(=^JlifKfCtr1L=f2 zb#4W1L#F-EV~})-a4k_^j2vJ*aXvsVZDO&2`d#?e%@X1fkd=RHl@t*ggZ_W z;^w{TP`RR}QL&-OnTNU;QB@VvGDMzhYf}fH7jjvIJByqheQFdmC_jGuD45RcDlad8 z9fynt_kC)Mpp$_xWL#x`Ena$;w!xG z!Y&=1_?kD+H^YnARY}1x_6ON&5n<~M$rp*Zb=)})ReoOn5CX5!-MfcXR8(RWV)l4w`_-#;g~W6iW{}q?V&2F_HT~N${wNgl*=xB?tERrT ze<)aLp}9_2)MJH<2UXP=x8c<_3-QengexOuAr56sR-TmcSP=r&)u_Mh$zE=*zT}do zCed7yDrpuAH8!N}=4e1Wy&o$35ho23egcs-Y9n4ezMosR9B4fmhozkqeX<6mCs)+o z6Rd7*9Q_bsSPle>=bDJ^`ob#*a8u=>j`r@!^o9A4YH+VpE|3{{L6iLw*1gJa_tDz< zUJ4z-2{Z-cc(hcAKwtf=7e#LO?uE`wM+Vri8Gn!4Ln|ev9_d|SGSGn`G8%f?2gJ#_ zW+AKcG1VJOEN(1}Kz-<(+wrz2Nza@o zL-2$;PfEh7{;I;nc&IWMO1+zp)H3Ts&U2({B}?sM8~B0)!Q+T`9-2dPU+61ELQP}{ z4)Vjb40I}>#wYtZOVyBtj~WRz&-c(5uMIi?;gG16-fMtbU&2Wv*AJtJbrid`xnrQD z-(R3|gY$-t&MpcGgBlFckZe_)#lyLrLH`$z+Dr#&$gvQ9d_a>$nPsk+%ak_w&6Wd~ zVTJ3!;u5^biL_F}#dGqc)mc-}^s?>EfT9j!V$EHpNIBRu(eH(XP74V;LY$!~FdiG^ z**cK6Lmuw9Hz%-^CWAKtKdAn4PgorGor6O|F#&zmZ<3^)ER>*FOIUL=6KGp>%hc@c zGqJ)*pfU?Jkqr1naJxEA`h-5b_53n4fqQOEkM%ho!hqu zZBPn3;JJ705e*LH>{#4bL?wOs@+t;VRH%mC|7g4}eLQPJ)9U2QmzUgu*>)qu#h2RSV7iXOCCCSa2K0)_UIYVJL#ZTY}DiBFL-%zpE~uqcjaSp^4kbkMeoW!7?}f2 z2v;>95AQsxH~s8(hWjD|W?oR8BKKn@=@``vy`bh63sjc|{IL z0xPZ7i$HFGgFKL$0f0s9|ZXii6 zKnq^KdR2Dc3!lhHX|AB_z&5*}8%TwpNhHBPaT^sOTl0_c<(Y{__u{>*oRrCoRqxL% zOR4s?uj{pJE|6|?6p-()u0440;59IOfU^{Lh>MA_iSsw4hWPT6tg|H?EB8X-Iu7eQ z?QhoQDj}_#sxmL3q-k1ZkALiuecs=1_%OJ$3*3nYex8}MLe)f^e0_=5c0EGM2 zwxAHQyVdLEbYZ-_wKU{tj#{}Q1LX+9OD!{_@f5dw4>~E2)hUQ}V|z>1-N@qRp4fMG z(p)g&bL*p><+2e8P;2O1$>U{9F~y+M%G1J}WF?d@|GtOVcm>7H83m7PTw*z;rPt9N zO2~By^_1)t>mArUHYi}amxFCq%{Cv0ti_>S^Mm^eC}F+Krw~w}hF!ih`y!w5oDtVP z1{jPl(6goRvndNP&V!rNyWdiSt^R)6Sr_B}N<_MK%i<8^yqdRudIO0~^&TZ(YQKZL zObD~tkWM6LJ(SNF^9n-R2VB`Nv?Ax#uv*n*RGeim(L69PkbCHW4GKBiQ|JSdjGcQ@ z_1d=gn+;c|Qkh>sz(PayO(>h#LU76TT$Dz$#hDI`uY{^x z*Hlz0fLcrejYfHeKRu|N>;}v2nV2T{xhF^%bL?4|-R%p%$T$pVxHj|h4)FoR#n1yZ zyWbwx-FC9~A@E0cEj3U|7WEAwj004{UYaXb-u)>^6Ku(_x2mbDgOalIUFLdLTF;54 zO664oFm#o{Hw2nV{r1Y9PHLbdjA=}H?qt(oh*E$pD;j?lE)in4hrix!hp;jOCkTcr z3!9xr(5an;jtu9{Ar=-I--LwRA?Yrv(j}*)fK0C8{UrvKYix9E(e6BQt?v}#T|g0H zX(=Dlpq@fqF_{ic8m>YN^>zerAbOw@GrnATi0$iu4x>scablxr$>xI>y}nUEFb2~x z*?}q(OivpQ)6&c^Yf!RBTd~PFNc8g`KmPX9Cj%jUxBYuqdm-t~)kK7C=dR4R38;8L zCO>Lm0t+2k--d<;w2bo|KTem_RNYg!r4c1URndYn`&Ox*iE=2Ycn4D%yFI_kd65<>! zTYO$_my@#|50{+FUT>&NmoDWtXG8^iefaQ%sAy(y_VM;KcmH!%y=LHm+ha$5#?p;1 zNGSEXmrK~wf8a(&pBH6jyw5oEncdjj!PA1%kpUmgTJ9Iyy;)nk02n*SdAqGqFsItx z)m+ziy(_zO@=&`crNl72)ewx+AB8q{q<{HRIXJCh+Lw=?*)j4$`=VvtH;o9x*VsBi zgGvhtDq-tF~o&2i9lnF3Qo7h?Aap> zaol&};${LXZ0LpwtZwPJX-NoY4;~!we*b;(=i&)7eC-?GWk9%IfZPTE)yvne`MJ`Y zxVT8Rr1beVSsa&fk6eA{fEtfcEL~nMuc{Jv7(SVpWV(xyab#&+$d=4#$ivJ$a#u?( z#*>|eon6Iq<3K{yd&Jw6REpxM(=LkbO>Z`wTMcd3WWRm-RA#d4QD|?-SuwGT-n6aMv#e1dv~etv%C zOeXWh5l6@IGslias*di!tRbwBakeM`XYB3mX+Tb7-+%rmat^&R4|WeqFxn+3E4GxY z4h~GIeYy?2!HPfXyUA%N60VPlo4XOEuzZ-hzZg$J;od1wLv{UPw>Qu>k6er)(YkCg-$c@`B-#31HshR%Vab&kd!Ul*m&M0^-67V(1)!w@14>zhCYaR{0c%gjLz(9#w zA-u19kw?C0_%_teZ8Erz3A;B*p69`>c=lo_R2!9;-o=w;*^jHU+hPSuW`~~%VDN~a zmboSp9Gsr)h7o=0FfIhON_(tHh91+*Lg5FRo4*-DFba2mM_8B(pdT4s92!q0IyNhZ zZq2^%_064ooN8-`f56~f^Pti)*C@Md*ZyGZj~gGC)#5$(jE@U|h3=mB@89hT~yH=a&i~Z{8HSaKVf# z=ybxul#85>&Nv_i#)3nq&K%hpji{ehf?!ZH-7Cq(qe)ix8y1n@RvN5x?FKp;;GfLL z%Q0U^m0(?mm9WY}!U23p)mQT6a%|=82e-po-%IKVudb^z1tbd433+9dTkUGGmV2$$ zn(6j@PGARh3hXY#)Il!9_N%5tq`31O7+Fs;gsih<8;Dkut_A|T!xi)O>9c3=1K2|< z(X-!-Vb#8@Tm=!nBrMs=CWBXi$dE>Dav}0#F8B<}IPypM`RxSoqydmk{|3z`I5i&< zp|0ugmbi)i=#kd8M$0J|PKfN-0t1yo+ft-B7%yMB(l&$CYZ+aL37)o{eX@ zm8Dk`ZPq9tm9_H`N5Ev8Co?miSstGIA!ViYgFBMURXe^?UcZ!5=X>biso%*f+?MOgzUNzld2#a zY8c&nTO&d79_d6JVO~{D4OWI0MIx+z`bBrA@H3}Qo{a1*A<^8_c~pgPb;Gpo22{CQ z0=t6z{F!$QmoFR^wh!cKCof!xx36tzFosIb-h_Z493n>T=IbuK1dOl@aOC85_r_mi zZKC=sF8|+44zO6gliIJW{aWFCag?9bPYyffP zuF9YiU(k?s@4|(*NNJU}alC38>zep7744Ct>cjCjLmsY{oOE%i5+oWc5_l~DR-6Tq7qE71nu4< zOpSm?8%sjEvI(LtQ*Bc{h1={xLL8$36axy_pIsbLWyyF#PHs;`UB$Qi3HC#QA(0?3 z%*RW zAl_d_<+Nh*0t#BHD$>D7-H=khGH8=wPOLaY=8P6d$JAS6*+=6c#Wg158Rd@B~L zY%tjU;hQuu4VCkUs@$QNLKJ9EZHu%FkYTn;>uiez;iCdlICFGj5y9}o&+oNiseXYk zPY6yPrVtkekQ=_sgyG>V(A{c&)4l@qCP|SJi^0s%Vb({|3*l)5sm1Ck$Ydk$307KR z6E0a3gS9bh!9fzS<_D=8G>DaH610xUkJ?+k!l^z?!m&$C(KdbMoB|N;^28gK_7Dm)96Qc>ErjrdL`5|!X;DIy6i5P~ zqu;q_&rniu`{IOEx_cc7N+cIpF5N4hUynJ=!jgp~nP2wMdX_VCBYZSoBQTdj=!4oQ z1>e3W-_X=#*|qDXCkdxPjg#!{MQ2OVA5}I3Ih9O$i|O@IWX53v!5vFOyNy%QvpP-3 zF#|WPEu@)eyUN99Xkbv;Q@9AFaUxauU1oarv2~UrIUNaS`(ye%%RLZ&lxgD$lHr{@ zmjF!#G>Y08AP)b858vb9hy~pCFic4x@lS9kndjpG59b9Y?+oZML^vA2xNSl+Ua54t zv&4fHZfJ5&&NHCN3!OfLu2mqzV|5=@M7uI2N7Zd}CiiunB%iQd_Z=Y&KX6>dug*j5 zKB^#i+kT-+M84xx=Ph5x8^;tCxg%120o4~pu1}X&R)S-eJIO|a}9ww zrdaoFviq|jeIQ@v>C=l~3gp^N-gpfrZyOscD^i$U^O^#o5%3C*Bw4?=GY z1Cb!jwbCtqjq9s5ikU4q_awy9jcaQBE@c}+-_y=zSTPDuu|o`$9ds9ph1 z0Kw66xIN16KJ1F zuBlV%`{rp{^>MyFOKFaLqR&bcPkq(_vl)Qe*0l3$&JqSEKjBP1d4QNbrKqTzRPoRh zrdbeSTdzKea$fU_(g!W@P<0*F%Auq%GFCod&JN4Y0(paAA(7%R)1#ATL)zCpFLBy&IZ;s-(%{okl{bqPc-Y0Ds7vQsnwAyJHx&k=zr$zP`pH{R(Ay z;v>rw%vThnSgFZr!qv$iZ3fO9Uy!VP@t#_uAa_lr(^?V+B*eTyuk^ zjmbXim13+chnk{PkY?(Km3M0&VeRq78#L7~|1!gFWN4>JbA{#NLUMZ>XOXiE8}q>! z0qM@Cb@%W_CyXY^;%u;IvdKf*G}uZqA5|6AB8zpCcoho5cV{-EryXbb3!iyi6;8M9>8l5D<`rh2{U(n?Cf%G}80=L#P%TrV#k5kc6d-|3)yI!kXKe^|c{dwmO08g1EwOAu?oAzgcb?GI| zOwP|2c+OvcpS$U7?Fo1U4n2Jb?~F}W)=)ycdSw_07Nfr279hwrF*iM;fDfAS2Z|45 z{Aeh7LBI_ObL_o3%lAxxLo|jFGL$s+3-J82*Y{#|ZY>izD&tQZW}=h+ilr9zz8+QN z%3B$@<%J{vFFE8!_y!<&JDf{R4%ZPo8=H!H*J}!aQnIcc{4VQesE1t%=J+Ap={=kf&z#7a>e{l{jFnF zcKaWZ{a>|nkgW(C>}si~NbPm7A!AfGKlkKW7uT~IYe+yl25;vr|7Q`kC0#l6ib=>sax|B1p)Aj`?pX z0$1)E+&XxZ`UtP2Z0VHeu9$mY+q$r=--fh*m86gjXku{y@0GZfr}U3@9aZSL#m7#J z5AS|mG&akBcWd1KqvOZu|NGwH8$i_Zua}dC@@{cU z2L^9Eue;~dqC+KFMwlNujV^u=_?uNIz<*wsG!lri$<+3H74X9>_1%~5Ck=?7)9s9@ zThGr$&wC(hk5n}SSMDOp_aORCjAiKPIaofQ9r98(c^m40qT8!`3iJ>(6fKz~HN-9?d5e zOhCrIA2NTsHF9rhKwEnlO>SVyJ}WKqp3Y*GjQKirZ|g#iJu5KzoDp`2nf;1Yf^aU~ z<=@}Qc@DSi5h*_H{d?n1YhB`2d!HTnp(Ke8%*e2VyYaiNV?uHIw1cw|(rV6jH$~3P zLlqf^JCzBpo(G6y?>RRUAr~iIHM z@)BgW6j_%||9)1LzXw4+t-N(H$DW~j5FnELtlktZF7UU#5>*f7wrw>XK4u{Y*)zXC z?i5t#@~5fL-X@oS+RX*+zRilu68L+sb~b5tdyOV*djI~O-{=_i3G574(AgSh2QK>M zHLr*ZEGNnR?u#a_zo&o%CK})+eqYFC!Y}r%D}~FYI{;70@3&=@sVS&+@o8JrGJM0s zVlpb^?=6j{E;il&ZVGqz(AxhNE};wQ4%@l($VZ4ON8zIhtP5kBO97l>Am?xfdXPn8DAT5;$Wc1VW`sAn0kNs9-c~U=c;*EL5Gr+`uUi$PBo2 z*nvjz5I6UQ>(@_%s0L^iFi;HyM!n)Gz3ZE(s3&zJbVfg(aZ*Jprp?JQQP7b|%E9lG zlS6Mryo$+rNPSOc(FM*c0cm}JhCcxXIXA%c*REfO3>rI-Wt-t*W94JPS@~DGp#*4o zAYuDi>NgHG*j+-amL^#nHi&y7MU0O_Rsf%zT+FdczIl-;g`$u%ec8f-4Md~H&B-;8 z_Il^$&GV3D;|;qxpf>Sp>(m;4rjiVzs7*R>zBno<7@}tzR~vfj4lwGl(W1%GUQt-> z32xD8D0X)hvuw54y?ZxkU#MHbuI$MA5@Zp=cZZ*viLboQL;~DVvP_4Va z+OaYHpw)TWGM-$VR$P(wllM3<&-kvbC8~*0TPR#}c9~=GgY-5&K|y~=U;-=9&T{m` z7ty83j$o)a70Afh4hpJa{?sd=YxDD;#7?GTYQaPPH_F4rM0Z}dyA6aJU?EHo@})8` z=YSl*e#l5jg8g%T-=+Y7Jdq7RA0DSEaQa+Mkbgb!Q~7m-Ydp9vAK>7q1T*Jqpa&u) zZ8%__QnUfV-3iDz2RDx=ZK-{HVq#3*0A)lhEQo<-OaTZvavl+=A5el_(bU`l@`!zq z+{x@;v735oAOeJ8->L-+_)7phE#pTkK@0LWI=c1^?+bV02rCQ%-ZM7VsloR^!veaH zkqTByP=lH2z>oAy+dhL{&&6|0hYmp-Xe~0QK(t4fVN!8}OWw^}CwtULgsouW3)MFx z)01e}nKg1KF-gwL_vN2H{{`#y)&%LeeS`fd%?_U!kjhEQ?Adl1@FfKW%>+8bk0DN13*9*?uGdbRbk2o>>!!qG9+{Z$S7)YQ~rGFLmnkBu9TLV zfu9UOSs#~_+!s;ZM2kmvU@5-NPt~3^s6u0JJ8C@m2AHrYbh)vQiK|p4J z?Se#9kKe0T!-Exc>1Ux6%ATlcy$axRX9fbBiJAGz<;&Z9IBU;?E=vhLe}SZ@G! z=Ef2n?6OX5AgHGSGE>Z|-Fo(!ik;og=g;XC-LY|USmGi9(q=Y!+}#OXXjibS9hTG! z#z^LuuS_S{<7~1EAPE+(H56LZ%~Hps7#->fu(`LG&9RL#|0)bunPqD6maZ~0WF`%V<(RM9j2b{^0+_iO)bb%|LGk>!u zg)7*PI>SW%CL%)l;zhEH3RSYg6Hf=s7XPV7Y=9*x5+AS5T(X}(G0VD9^0+PGpu=cA z`|aEEL_plB+4t56q`^rA1s~9S0})otFg7y$zyn8T2NfwiwB%cxU^<4R1jt<5M0vQj zaCY3QqFqA~)GJpC96}`gKB8~mDpEbXvo0~~WFXzeGk2N4JT3ZKo^oNr{QT)JuZu3= zUzF!-6fSV#D=&+2g%jZ`a*MeVqX&? zpI6N_J#EajksPapI;I{gebCA(HM4jl;ghD-w&3w)DQV{kr=AiIsoJan5CbtTlYdUE zc7@PVi1#uHw}$QlxZ#< z-*M2#ZE}D!*)m(&WCw*M;_Uq(L9O1Gx?fqOY`r)H1qJ1TbPP7NK;U||*KMc++BdX_ zwXLY|SL$^OXchpM2<%X8m}?^L%+P3q1}}C|+mON!O@o=)rkJwH;}TajjjNlVNLBK; z>QL-;Ig1MJFhFyGz>fS$vqc*`i*q?Xz(WjPTzriQ6k{hezQB3X?12u;!C?NIFkgOM zTN_G6Vu_n%4|`ZDwRP7Yf<`XE#nVfNWxibx^Af6Ye!6=aRAHzfzcCNhbj2{ginFpfHG(}mkU74SG>8NKIpT5Q@RpkvP7QB5*h;YdsgtoX_0mu zm9q!0VvBrSW@#xmwKJ|J9ekuqb{S!W9`nCi*p~y9D!uV9nyJ+>?&LD9Bsx?0Kqqf9Qxn%_ z>Gt z9AUhfjp_5KjCv3`oV~+FRk7AwZL**wXxs%&5+jP%o3E~OMs2|11)eY;rJ+$B)t;vP z5i&5*hT&Q{1)hp88o8-&n?2q2x(WrJ5^kjY^#Z1wLS6VaTWbg7|p-*-tyfF ze;ANQNan%Q(q!PCOw+z4xFks1o{0*93-EW@tP05qZe|epcK)tYlRN>Ykw)+hDE!Ky z(Z(tueIG8s>|RMJ+kS3&zgw%ZzsE-j7o6vyN=|o!MV@Y^Hp+4%ou1khp|fYNrnUvR zq#POQv8AIa8{+Q_EAA7ve;nMP$y?MEct=3vN>Z0!)=6IBg)tYh2^4wlS9!yya<|3u zZu9k4)`?6w?N=A^%0lecc~nJcn^D+cFC-jQGnILH-K4(F@>Y5~uUgBz2AtB{^n*~{ z*aMwm9f27<%8PaAUttGgxCS@wl6CmzQYO;`kEY+lW6&|XsPyVEY*uN8ak^Xvt#n#E~T^P zR7=mUe;qyk3HTby1kX?^81|N9!A4|^g{Q|c5)D^AphkPnxb4VC2N5ZZ% zJ=6*C>iNWQ_{u@|_^KrT2EVWVjU`uqTSxwB#wrH8DF4c2PR;(-;Wr=0%T{S=?40hN z9>3Y~7#+m9>@6=WS^5b*e?8s*&cDC5|6|{JrUA-5UXPZJ#;%@E<>4o*k}7Ci^LP%g z%G)s)-n_GtyeB|bsYZYBrAF?rRC-G=g*(aZlmcR)7Fj*Ru|wT7Gz3Z zfLudPOk`K_SU_jdzl(kO)Tu0tDLQL6n2CcO=dW1?n*KQ-M1)4c4|-E|wLqTJ}K@dWi*+*8n zy2+0w;#p|=57=PZp{`lX+9J%7?QuWc;R%Kp7rR$CJg)Gn=lWBbwX9wgI{E+mTd|aF Y#pU_RDRd{~sK-{hqJH_?MWd(x2i(X2*Z=?k literal 0 HcmV?d00001 diff --git a/tests/e2e/tests/snapshots/ControlPanel.test/Hidden Atlas Map.png b/tests/e2e/tests/snapshots/ControlPanel.test/Hidden Atlas Map.png new file mode 100644 index 0000000000000000000000000000000000000000..4e9d02cb4f662ffe50540d6bdbbc368962844f90 GIT binary patch literal 72068 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

1=SXrogW6b&4~e6eHIDo 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 z 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

mi^lUb;{AJKM)_E&#qK1v zQVZ%7x8ny9reR@Wm{Vbr=ZLAL{8WTfwbuT|q@uF2^3ge7f04fDG)SB0hi+SW=OUk2YPZgRk>bbQFA6X6C(Q)?bE&$W+Px z_$WcZ?XZ?0V2rBe-Ay^v0n31Y(dB#0Pdunity_w?FZ+A-Is|+c)_4TZ%DypF#fyg_ z(!AK}2y}alID{<*ZAhx8P#t6G5!|n33#&utvx6H`gz;ibCSMySnYu>?ieslS;86)( z@q%i|>(o0{w_oFa%+t(0pEaO4|H=JiU*6q>WqElSqSL3fb@gt5*mZ(~vssCp%5@Q! zgI|wYLaEE=qt(lf<1-&9avonYPLC6PFKU~hOC}~bFYL1StC_R*^p2aG7)K0F5Bby5 z>WlM}-PMuEjAS=#uemvcg(_jD$1$v}=u)z>ml4s1`F6`n`!uao^IOw0G&2V$u~l? zf6mwb*Br0Fg)oXzsZr?sCfZpQfTTY@FCBcer~wz1)FpQAd|`KjennBZI_ zXG#sNjvSsjoW@*SJD?7m)jnarQFtAVR(}f3DM1sB?2U&jb;+9vr>}NBPfS@poSSmL zR;ow$z{TagK<~y29_M_F{!SQOrBB8wvBL`mO~`uYQf~GB3mx^1pVi9~m5w^^rEiB& zaliZPFIvW*5)s;-XHmM(@n$1r3OJ{()6n$jhl%^?k_FR9CXX?WOXq4;A0Dsd2Cc>0 ze1#@c?RsGJTKtgtgrD!NBtm4P^uz5ykSXVcM!U)0lJ6t=4b4@$Ep7$;s;a_5fN1<>y>1F zx8Xwr&9Sp!s#tij^FO;#qslnmf@IAN&wv1{&E93J#zjApi5{Cxa&mw6?+scLbs~Co zglO*+Hi{CbEN5Hob84NhnR%w`pYY<1d8buX%06r;H+ob;bXHt2s4L|D>Acs4tS0hO zGiTegw4PTu(pMZ#2yssct=3W0f1b^omD0T$DY!{56WYEv@bP}fj)m)#SLbrBO0HUx z`AL{M&(NKDF)H8C}WUIvd?s9>^eo(b;UGBI+8e3YT8fW#~n5Ihqwb#@&fxlC8Pw862}M zAuUFQgd`;24y|XuK)6Qa@ZP-X>ulMT3U#Gw|3WMES*D8E`QfaAfdSX<_6G!;lPiis zMr49zMI074QQ1znsPoz0kn{1E&OX78Xm2$o5eHpWXCXLF-ajsUL*UtPUhJLc$!<|}jC+h2=OX%yV z(b(y|yrl6U{SH#H{TXF?Qx5>GKx1yTrWj z<9)UlMYo=t&wdNTIrZ3_x@}RtrveZi#;FFrN9(m0=Vpsy=S{Q2YYwjlv)bU3pnW+H zmRJwK;I$gDSc8s3lBZMu+U#sWY(F}`)ZoOuJ5jhZMKWb-N=G5N(`{1Idj6XC*}>`B zbrKGZ*4L%HW7!(zJjhIQKi>VI^yy(*dipk$JYLuR)w=J`jdOSl7EbuHjy&*S`5{g2 z+_{rnOsX=zAf)GigOQOjj~!4?S((t!*fZ(;-T$Bo)MjEYH+{z|mTIs=`;R5x#9l$Y zhpLP528B%QFv+K#V`-Gu_Uq@Wk0JD)4T*7#r7FdJ_OZ8F1PZc!l7}7$tgPBv&KI90 z#3!V}f63>BBg0u-UyV+q z7=~idB{JUTif*mySDU(jIA$>ybu`LZ+v>d=mN?rw4zq#k_`I@{MQMTzjqCfB+{)yW z_3AKab5|p;j-1XKEz}5;cCbvC40hw*CieIj%*Z}qjz%!FaShK{P32b|%HzoA$)hzA zM4Na|)@{EYu&@?t`_`@RfZ(YLU-$k_wRTqUW6G)O{wKeweV@0T_TAOX;d>+5^JoKj z9+I)bwU;)~#z|sHqOrX1HJZORx#LIEAwoZ&hr4-Lw}GL!Zuwob)V$tZ>^h5#cS}24 zE7~DX-jR~^`H}lR5iX~yMV`Enc;=PCFBfsKP9bQjv1DYiu~2{NgD55OX{j&Q2jHLy zPGRhi?q8MugnIt09jdhhF>`AxwnExwG^cj=_I!t2WpH6TwnWip`M=Njo|s-t?Bj3^ z{?DQ9f_|%H`-?gZt(gJyQ#Tfb$>YY4HvY}~?gHmFQEe^SWQV75_4m%w8GpPQ87^RS zrHncM(ZjhhV*N(_O>w@ghI!+4L%m$|WV|@jiUhoRyF=?!-Ijq-KlX-D{bJGsul7sq zJsO-h&T^l;sVWuh&B=KFRKwH(W$Jow)L-+I1$!&G)acOxXR`aupT+E5r$ydZ%hpz- zL{HaEk0ouaJma5rd8au!RY;xcS4t|AWV$V0<2~Xf=iYTRy7#E2B}ooA){$zai_w26 zqkH$-3-!oR-hC?2waIP_nMarzaJWn(s4$|5;s;9(R|(XooY0oszC7qK>iv>b|B+Ln zbl&DpW)4ZzifWpAoR3JA)F;0<=MY_=O%BHIC0vc{Vxo$rLFhj@NNPf-a_4DZc6jZDL3<*L&B_)V+&6*3q*5FoPLIe>RB)p{o)V1+jzV#&+f-MT7NTk=*C2E9 zIi5KkNcXJwH`&NP2*Cv-?i@BV>Jz@ z5B}@1I36~Opf>sWvgcA8cM8n6Om*J8yy}hKiFbOwx;VU6K9(mWJ|8tLR(<+*x-_qI zfLhHM_a65tMl8v2T|tsX=VsCqe>}FaFZk>@jh^4epCSCb4GWXjH-n$zbto#3?62OB z92#9wG2%fbBg+Wn<=Pe!SaBTS;%I;a1y=<5GZnR0zTGcv;{2f}}0J^W8|o0YJ}|K#8A^bxE6*IWMo z#NPiemt)qA(yBt^ji28PwvBG-SWs#@Pshf=thKAGoLu9|)_VuxKhJ5C%#m(98YtB> z4}Vr7^Xr%{2z0S=GPrd6_U*C>i{CU&t&l0JEkIWMxAazB53mA0X})!zJNZIawGv5cx^SLrh++8i z<%^$;)?PSO{|uUnE1?rQu`SmnOB8ZA{qy_zI}xbio2{441SrYLm+P8sBVW#!&0=F= z)$=`apZybPX;fHY{&hyRhsh?asNyj}{{FJM#4dz(86Eebzmb!ZYnTZJ3fB_8Pfk{V zA1K6RzGneC6kZVxusoO0wG(@au6ZYS+`o4(jSIW_vdhbtw=7C48D24y;`*4~wVbdJ z{P5uegUJ^EpR0BTOSQF+ch_vYXH~K_n%g&2NGi^P&fxZYZJ`*;9zE+na1p*Hg0My} zN3~7UO2nPoO^OEkiI1;nxBd5L5Ps3=-m4oc)t;m)&Hi`k=hYtkT$xv1LNr;F&K{if zWDeZ8i&5yj6GkQOvRgIU_T_1Y0>W&xD1d_h6%1UiHK*H|dTaDdwUc2J7My(&f7XM8 zvHD~;-7)2-GlzU~F-Fs`XPH6Y9jwI$q8S>w%Fd5hoG#7?Y_c7n#KWqV{uD_T{28ms zwl-hY9YAC`TRf!2sif}0K??h*{cu~0Gvf{>EjqXPsPg{$L`M*34e{{c=O^^h?CR3M znJ*1yi(=wavF#(~3ObHa;!tGwe*IV;%ytd9MC+&f{tM-kKT8&9u=n)`>8iT7aiRH` z%Bllqy0ZuyIq!nB$LUtf)wQ8zJ06`nDH8VM!`JdZ_+R!);a?YPf~L1E-fdC3Gprw$ z#EY;Nq8fJ?Gq2iiXFa+evm?UvC|>z9;@w(q8CZeOnw2U#V|lvI^9|ar zBGMH-g&F$1XJKpn7f$zZd0@f&Bui3`qY>!mS^UR**+1K}Lbqwgjb<5`{KoByePK=X!v>S(MIG0twpwUfj5^%1O2^j3j^;dvOUzj*1<&i|W3-dA zLntlEyw}D`xh;QcQ1HD()IC)ce;_Z9`!rqNsQo>2c~0^3TrD7mlA1&)+z0#by6X4!JtMIFcXXnvq}aaw~(`YSk{+JWsbokrXTt z5Uh3D(h$@PrB|_}czDLMRP$f6=Co3wD`mgnhf%G$Jt`A{B*kyss2?^HNSBXm$kT0H z{{Dp*c+EF&-=bZ)cFnhA9=pi7?dGGr5wkbGzI~tMo?{SPZ(uJCo=>?rm4xTE{c+{$ zRe4x%l*5Bs8p9@k!eBD)*P4|c`fH>1m(bC-77}a^TO`*r?!FC$p<#0=H4LMhTEy;F zvFXrE`C>9>K#c64%xf>hz@z9bv(~2&w2)7g4ne3^*fIC@_2FI@^GEW|J6(d@p695D z7bRv`QZ1oLPB1sd3R+&rf1BFdlhTzSNbtQEq(3CZXJ=;`N)=$dHKXW!G{1~X&h!4m z-M5!&G{}f-S&Lu&NOwQMhxnnEPZEh5EjGm*6>{EY(5$eVKinb$PUpH8sn#JUGSHr; zi?z(PMHXthT3KDOU94&Q{$*fkyd3AlhbYvOZU^zV_|$s9x~-0th7r|Vhj%tuLA=4==`L3cP-%} zQKu!02054%nGS`vw#piH#@+@N>j(mI1UTO>U%tqvNch0*UFsgGb|r{pQq{NOanIN8|`1fcCYG=g{0(GIUt znlWik!*+M=K+3ucA|3#2q1;8q0X{X@v$nQ2x6S$!(0B@M7Zvu`##%_V*-{l#BoG>| zYxY%}4LiWZ3Yd>JeSMaR+B2tS4spTbxUO-0P>bu;)N~Kpo-hz{SXfvi$7@g`VU=gr zN+%h`#gjmIlFZvM8=BoY60%{qp3>6-yv~+Ob(VT*az?UCU@)$rw#U&m*kh4J|Ioi^ zNpIh-KXj8==t=1T-WdBNg9s`r%EOn0c3y@Z(cFgZb5C&+@N|~@Kb41Wot%knx7Mna zn2|$Kp4uCl)cINEyl8fko?xN3)O+LJ{rgX9J={Uk=&((GTJ2(=?7Uzi9ZKbE63_Rt z*URJVIRDj;N?mtMMdB5Xk`DXlFEF~wVbb=9BlLyyF;3qjh97y3!yC3YYwb) z=-?@2@2s|6#Q*jEiyV+75h;@F9guUY!`AWxxT~TLt7K5((0ODsJCj67Yb9;__Ve<% zpg=@th8!Lq)^*|>AsbtXZ(q;qfkw}O@mJ+9R~>&kV*(4A4q2|8se+d=5NA25D89#+ zTYFAHAim2G~b#Y&FoNWMN3 zXeph=l44?s-1^@(L4>?QO4nbMq6BQ0hczpvo*BOkPa2MmQnj z`AizVK0B%<6CAffbEr%LQsq)fwsvjugUDoB__VY%hS3spImkum4Jy`}HGd<%et(4f;~5ztVxpND1WoG^wQ&anMs4= zd4QxR=&Gf`*Tv&ww7WI_I)ffI^C>3X25JypF)1mjOsT~LvZ6!${sj`Lx4W-%vc+JQ zFmTQ{`1zySqgYe;mD}{lF!J;BA)I0$Mz()E*Cx7l?OB>Bh|v)Ri+3hhqFy4l0S9cY z7WP<8x;uxR%PJ~n*sr`C%u?&xnr(RiD!?0Z=rIz7#wKx`9{;=V5|d72ji^`pRaXyf!~aav09V8W3`S2t=n@5YY0FkFl* zev8Sjp_a9p^^nq7czA|0O#wHLZ2ra>!pQs7jX$s3(Em0r3yOx2HJ!JjN5l4yRbpBf*Kp>`>5@k!ZjVk1}*Y5DmNsxtUZ2N@(JB!>3kt#u)DM|opwkepVh zhg)}&92cr`pm?1+FIh>*08EFMtlHzNJw<9Do8AM#^^4LcY>QIL(y=6S&nGF8IP^R` z??4m-t}4HXl!^+z1X!w@Lp2Q=icn{Adhv9!+g^Bz><#zsac~%`=bhXU^CV$3xaAL(HvC}6MK>oS&t5J1+3FB7w@GP` z7Oy{9u0(jclS1&`0Soy@8w_;X`&J8F>c0UkA)yx}3;c={@6W_>`~R|dWyqq)E(o%7 ze6v(nJ&yiEmdOe`Zb=NNT>1^JBVMy^(=EjvP*yDe@lZtIv~UIM9U(M&ijd!DsAxU0 zf<9_1tl|4ATRJ;_cx_*g^>3e88khV))8fwbo(l+_Bm18+(&t@sl1-3hu)Sobe5m6~ zFTE7ZYA5?^?5ifoPlMND7Z)x7erPAkIaGcF%MA4NsdbaYMPqBQs8Lo?$oD8I3nW0T zMdpV@O77zWm-11Tg?}iRhrxzwhi4xB{Yt_vySGeCzQACqM<#6&!-%}JxsLDAxP>58 zqDw-#uHyd~;FLJx(jVB^@GvtoU&6$U`7?1UbwY#WepJ|c;PTJtou(o8KsaD>qhj77{sF!Rj~+EI+eJJ4F2zcyV%HTT*7yGL#L1Q~ZaMLx zA~!qj^|nhj1q$+`;6(~U(%Y_d84cLJh`?69F1m@8<@LwNH^QQccN9GQW9Vbn|L3Fr z#OMFoUN?&V=fdT@G3qi64k~<1frJ{$o1Yr_9zk|r55ugTd_Fq=JND5({&}uBI^wHW z13Ttf)_Cp#N`gV{)6tP@(@A_??nxlLAMJcv{fH@N062;;hRC7FKNr(YvRB42@mh>=eUb}L>9!~J3<iUT_mQ%cOvI61?2C# z!~Qr7BZA(*CoArHTthC>&flKKIl2#Da?`~6PM-aKZ_GdMeeKz}>&6B_% zzt^=j?)B@}Feu@{oXI31kqqrDGC5gm^$hSom=QKl&H&2hwyr5>zlhr0w1VO18#pzB zK9#`OG-V|OGF}s3m!8Q}4*cJd9?&>lXHlw8_F_pBZn~YLqX0eu;1-me^2!5tTNGK9 z!~E&DcyYBU*msCu|GtIyHObgE9cX#I7qeiNPL*at{EVUifVx(b#3xq)AtTd$Ui3Xo?8Y#M7=5w-9 zn=(?kNIdhZXC0haA3z|t`}I9;((|HPb@Y8;7wA<~RKalTD|<5zm5@l|?*7P{MM|2` zMRJHL14b{2l(697U>jS4r|IAjYz%{W5tYkvUCj4SZ8MYtjsr$Oe58q}jVZ<8WS_do zg1U=7Oss*@vZ@=f%pr`<0AO|d)0l>oWTk6VRm9e~_AMe29Iyea6UbZ4AD2`NCv81OU=xYKBMPa zam|2z50_F20zyKXjaZLUwE<|vUE!V1I$>&(|4Y9m^u9&yM;vTyx?8vWp|y@%IGV&D z83Y?GDBiHE-mZxSIr1ThHgXRGa@YXdMUvA5ePmM7DV;iO{0xCn!F=?6n50%ygKv;( zxy?=Ro#9X+hly9;KjV9K8D$uCy#W0zLBKp#@`4>|UV=b#UyZvf1}>RbqwbA4)_ zF0g<|zd#b`Hc%pA>1LMtQoZ+$dpvy3&rS;6j%;{%c*rC@#9%M^`}(pW5~0LUd4-2x z`KpqQfi$!%{m3N6A?3g=0tMF6cEm6yA~6xS&WFH3XLsodIP{1*3RDXWxPeB{hml1& zS1YMqr4tc3{=SRm0S?{zndYG7pVgS4SBiq?VsSQ%)EZ1-H5ccu9F?m) z82D8F;LJPTUA})@*)mQ+bosY@SmI8k$9RQ^=MP#4b2+ z4_RdrgC;ka0PsGHV$oGoiMx)aWF+m?nJ7%(vq|3p3!)kAI?OE{c8-I1OF#o7;D@xdv|gAA26HE+B^2etZLBPtlzXR?z zQ>71SX@VS|vJ)vk+aE(&nyi)d)7@Oo2r6GI3DEF3ny-RbSlpX-U7g5>l_ex1iZo|{ z5>5z%1^fsZ`vpJ)y?GNJ9i6_3Y>X^afGFhT=ouL1s-!7nig@^cg9jv#g2;=40+E=R zQxOQc-j|_hi7a!w%bd`IKh^C%7p?|J#p&rzkB0O7wW@=kl@N4jh>U?}Q#I9EoRk7) ze}S3qba#NH#B#EmDaEa!_I&TL4uj0?B8v$MFQ~ll-n~Obx*Gu`!y2D@NWxq?`!zGi zV1IQ4*78$tG15i?^dlCeI=)v?QBmC}L+wRP5MX%d0Jy}b{4XkYd1q#4QDP-MB_K9G zI`0@Eyr*8yG$F0Lra-6h7aCPJ0O_E;G}=Q9?j2s^P6ni${b*X|9Q-P6t*vz%2Qh!p z)Xj#CgUE=8+g4Uqahi)+tJ1uG51^r9`|Frcaf0+&@~`N7cx>xfR9(35-122=jF4moJjlh zY5L&AWH5`|bjYLUJ@ZqrYKqt{bTV(h9adX33_(DPC=bnN!?|^6Y6mk!T`hQ!P%jN) zsTIGvCiv5d2ojr#j_$Q?qaX0Taz{h8=g-oPd+ZiuulUj&6^@t*QQ>DFA+gD|RgX&7+c#Su~)`$#z z>9Fen%P;X7bxr|dm=5BM1|bGV(^B`^F29Iv{gzfW52^nobJ6@enZlt(vW7XH+mQOxq z10@HZ&lKj`aL?0O2`!H!LlQPsgcMXY7}?Rmb}Ru2K}1O@2SkzW-UVt0ra==`gl2;TEQhRpn&sT4=gyUi-a!@JP#I~seuUqm7?kCMPeP?3i4|bENjrc zkRC9@4iccAn}Cbz%F(PX1g;gZEb7Wz;*2ar8f`9N9dr{D&;UG-I$p{T%mIO62*3y- zw$sU*rB>+oH|pF5H6-71QUXeHEvf5-je|p_CQb^B)2;U#`MPj;^eS#4C-iFzZ$|A` z@+>ERzWXZkd#N72x$WfSlwYh;X!M9ez)bdG`va&mccrD*EnS~|RSxLweGG8f&rl7z zH@pR?)*iJCOl)lIkI;l*MohAQm<{b0w5NM8AG#i_ca<<=c5f zGXQOa{@R}nia8kE#qu5>`-V@N@;R)kBAXMKU7cqF9`IR=$AYt7>FHD3;-{q+n&6g| zyK{#Qyf|&PYZ2SD%*GUFBcBdR0QO$lfsnjilp%s&uRiY1R`*GO)n(Cfe5;svTj_ zsDaNEbRo%=^DKLQj#ozo%t7 zx}$;1e-H0AQ`HAQXW<`K7~+txcD#`PSBJhhuBMwr1I2)zevpam=!u;F3~E>@J>xm3}Q7H@D>kQgO4= z{_pXwx$eo|(`~D-fvy?`D6&q~*Ao>;!J?P&XfotozivEaG(ql=&*X;WHIG{;$T}Ob z^Y{2Z_fcP0Ezb1y;o0&h&EU&kuaVw7I5zS(1;FuQ@C!jwNI%Ct4j1g-Qs%=KppgUw zjm2(o+yDALzd3!E^z+Ae|9)BqLCSB|pQQi_TYtX3u~(rVEo?6S8-_*fhwVW;qJ5TT zs}nFqYK|Hrm-g@1dsDzdbQ~7?v~#Ur==^9NOUrlxl?eQ81%^k8u&p$+%HNtAa@mz? z4ACitWnL?P-$ZMlx*VRhslSjF*O|y4Ib5k1C+etW67#oDSScOk!eFF4_X-d4=>u5O zKfP#-`}mRKN%o69J(Em@qzVZCQq|FR;4fn|Y_R;E)C_3>oTUJaTB&pP47%*+&!2ZJ zGH&}|T*7>tXn%23lhR}FVP$n0CW2cwCx*B0I}-$HbQatR&FW31drR}!Puk0Ftv{+# zPhasZjdAdCEB0-eCDa421^#(j4Ke^@>AH!Iz*&j4sxfSQd`7k`9vB+fZ73%y4|JgOK^ABAE&_EL)YNnd5(WX(B>JsEU!6?l zFAaEt9+pNt+7tVo(=&$~Z~W)P zucrOpt=~_~f6^Mp+YknwmdkcfzQSR-ecxQP;8DmwdqHSEaZEJnQ3(fZG!qoBShS1S!0C0(UuvJ?q-l$fq}JmsC~IcFtupS z8&;NB*hzzvi=LzNu1fnAg|U(~Y`0TDhD}*&^RDp+{T>7{`<_hq(oXZo%=ekFZSSbg zw>KZtlxJ2?7!`ABc{&nNcn@hH! z?m)Xn;J=Mz%_$4a%&qb3PO8)^9TT?F@k~A|1}E}LE=?oYnoY*burLX(Gl+}hwYq7_ zgw;f|=2itREeQZB1YHhcpzsJ5MPI;N$$3eDpZ{g=V>-HqfKZDrIQIum&h}DEFF37ZJ7GUGQ0b_R+lbT@ z0N;qoP$Kmb2!pop8!=De>VGuBH-1vYLHNQisNnfN?pM>UoZ9kDbuMw<%-hb&1 zwm0GflPr#GF(Re(Z4GJfsgV7=Paw-5BhP%2@00|N#`TN@LKmA$>; zx8RlX{ZSLx9wlvUMGueU>{DP*cufb*;B@0%9UVl5!l&Wn`)D#UGH_b%I!HQF?(X8? zxz=AFPbgoAHw_3~m$`rceqrHrTnscA9gU86$w2}pHa0dcC@9ENWy>C1TUu)Bj1vTW zj0d^_F%y$<|A1%WeL{-SARvB#K~RRX$F1${MdFTLeW@)rjd+4QufE@Mb8~y};6c3} zH*#0N2(G)L2r*y;cN`E#6PA%d>g?Shlve>6n)vr#fI=zO3^tI1ZZL)LRE08^G_j$9DMh^YbOHn>#zR zkl^EX18gj;tY5xx^PhB59^1kb15T%B`AYEV(@kPhQbA`%+r^)Epf`GZd*f0G`J-X( z&(6+{{n~@6L~o|)0hNRs*~_zP(dTj-KbHFR$>9JJlL8fHU0Ykgn5DL?f&zYVG2?p8 ziPrYcPMo;wbs|RjhL)C?ry1|e-7|`f`!b(%g1uc{O-&fQ2F-f;k6*m#|4a}@B^(d1 zoRCr!;=9(nx0eeh_uF=Mk`@&v0^Hna%&e@RK7a0Y-~`ini3ceOiL|t|$d4aC5S{V- zl!YS=@0p(q9%+~^+upg?Jvq{$H9u!CX7u{>y;>OQ>_*D|_rAeNm&ISbOCmEFVOp>0iIv zO>@s8pJmqQ!f`{`@uCOhp`oFm`I&(+qK7q?jb2zduB?m@K^7vt(4#H&;sr}bbTv#^ zm9Q3CK__MqKX1SRu(O;&vjyi7r{?FoicAK~TZ}tn15#6YEvxq!C*4c^;QSz@8Zk6D zql@!uVq)Svm%Y-t`T0^cM;#qnUgK_X^ftn%I`(~V@G2G6xS0lqkN5I`<RcTe$y-x1cs@4j>Xfloi_W;2e6d6em8QM5G83yjB@bBM=jk>GaN{szeQfOd^H=O;3S9Sc0 z2jG3#**0_%jXD_21c0?&^_P$t3%HK-blakIk^yZbV5>U!U?!LLg_0 z=eZ~mk$GE~pXr|_cJF))3^C!I@+)R<>*{Ff=u?5#Ay{8uzbA9BxZ&xU93M{sL=|l0 zO^)@4AUh6x#w8#isB3^m@i{x&aAmNoMBn{H`stG=_0jAJh~Z+^2q3rM`;ez7 zP9^u;FENn{QFCI!e=xp-Q**YjzPh%yJiruKd$#8M>ebh_o}Sqx$De6sWp9p;Mc~Oc zcUGhyKEy_Vx5u)09nvS_-8G>S zBRCXvMFsSlqQC%9;9OYjZfj%XANZ>g4wjCJvVk8M_-q#rWmGI<=yOo`t4rsU~)Bew~9U7g}GsZob=nWo6>rs(z<& zGaw`0M@79$aHW7!3*}0+&0KKCB$+sArD@9hdu)KnJy++$eTWKq z280*}!t=rc@)AyFg=q`zZf`gA^boAjmNf65eEdik7#OIQH>H5osi7Q<74V>-pg^ex zK%g%=+1>4*qFu_E4?j3PJG+dBN6*zOqH50N)vWgoJ_HlfwY{SQTuddJkdSdC8`;?v z?(S#8&IMaW19%B)rQcPir>C8qk8~_8WuUKGSXdAf7g;viMSk&{nz~Y9j{{ATkco+D ze0&@s`#`uEhKM-cMI(hoA!()l4=Va5Ag^;Es{c74Ka9cJS$ScdGV|*>O;8>iixM{2Z<>uur}4^BceggcW&R7sHr(OFgAverJbKQ z4Eedz-i{4xpTNGc+QUzHWb)#n2cM8A7U0UW$mqsj@(>OE(ZInVLL&c}?fR?yyv-4? zIh{s0#!Mm)9|o$`p1a~=+)cIZGUA0UM**}|s&S82FpcLmFy!d$EIb+>6Fub$Kbk%I z@`V{9oBs>!{dJ#u{}ByK(Mdh;jaqFvXJ_(>3iQ(}Pfv=Tl~z}a+uN_v3`4Ct5)u*$ z2Nv5r8!I(`+01XS3C=wB{#BnSV*f5M5PNmalS+x1g=G#*iI_f^1iG!^ALQeBqQJ)y z4(6!h7Yks02?!tur{Sg2aU0RNIC5kkd(@4CgEO0+un?Z;_71X=iaKfZ*};dqm|s5M zViKv41h1T7`}<7f0kzMcZ?)9de`u?7fNIp;y*@lL0)2XPuPQM~Q?+Obg@>27t)rv4 zuP^_{4wR3@6OE@&pMnG=w!gm*Q4tXtdDq27q}s)IW@9o0ykQP8KN1Tkqk^2>O*bY+ zMqP3#00!#uQH;r}@D*kI__!zZ%-rE~tbHVzKv6pcH7CF8@THe-B{JwC= z(l&ynCagac3L#-R7ocXS4EbOY9z%Sz@A8ldgW#7EhS9Z{{fF)T5#R$SSJ&y8nO9>=Bi-FK&6bO$&m2um zxWQqAUg@}DW>+PALjSBshtm}n-5PMP5E|Er`lO%@;%N(9M%eQ zLb;tbuYd~lJ*VO+oFN71uES;3!Cp!Prn4MPQD!!_G=My-leIl63Srm9h3r}4Mqdy` zMMc3#_w>c_Y}T8F852oeg51MW-#ye0)*Au`8110d4T}YBt6PQcde}a*A9C>G=jssU`>4|G*rQyBYPf3G4s-{QuZ_bM;zau zs;G>bovyDB8h*mXpoeHL&Ri$wwRl;?8Mrs{A`H0S7#MY7u`j6_$Gv%@QSXh0i4bzy zL^S#}&rDAT)a&Sc|IFPPYwcc`UtUqsmuH~ly86m z_!^Mw43d&5V5{Y?sL>^Ic621jsj^{!aB4Kmk<9H02r`5T001)d7A&vaT$+Q47_UOx zf$ID50~!fo6#Vf(vS@x6x}UbPq|7UI^(qPf=#}c*W@ci7qRm==*&{7sngZ4~xM z%%>+9fpB^mRs~Rz+wpSCqwbEbuGFfk#JAU7-UJ3dd}V41M9DQB%>>V*ZAEYl3fSB4 zLDjRGs`D5txDyu_CnO>Qe;df%s?+TY`0GmWkgne5AeswZlH1q7V%H|j-KBT9smexz zlcA7Q)FlPfqam0`#rD2mJ>ScH-qzJ+Uc3$xcA@8m2MI@&&-S*BLefJEYl0A<(P0d) z`*@!~NlQ!N;X@vGEc!^&B;>8bquxi#Q0?Vd$7JGtK0;oWK3`>s4To-01k_34^alaL1-?oAHcsw{yN}$+p|61IFY>< zokqON%U{ycUkHXtK+Xf9W<8|oc#&uJ&Kv9oPc<|y)%oGAfQ-Tj7DO)i8Yrz>eKIrx z0c*ViFGVzOnQfq?ZB0N(vy+_VzYnrQaxsMEp%@DQS6mx!eC? z@4bVf%DVQ^RuIexh~ywaLcyel(b0r)K!3+vvZLJE5)|u`OwuZrIM4Y8@K3=E z)eu--*R|12!GHTot~A^tj}t)3#!y!#lk$4*C?T2F<@Dr_C-DQ8o5pYx#iK3>6k1xM z53O(5&Yv(8W`H8dhxhMGdqd=$$f*%>}YGF^z!n8dPcm|{P_6I8#i1^Hasn} z>}G7JBq5mXyHqzgctBFJM1e6knZp0OUq*&?Fyj+RF)?Ec3!4o?I}%7eQcgZq&gwsZ3Ji1>SNR{RcQGmdB`*FS@#lJVL63G*=qC@f899F%d|4I? zuL?wJ<%7SD2dQuXwGUmJD+D~Z@=E_=8W3ktKmPQKSsQKX|zMI_g!Ix(#=m`qy$uV(eJu8 z*iSL{#^dZNLPtkOUG;?6?MP`}(Lm8~lDmsgO}u*Tz6U*{sO_%un64er1-L4_#@)cT zCK(X6wU`-H0qC%}u|dq4uVQD{yPXz$KoE4B0QDSuCR_$uoY1x16IA${6xi;dzga-vsy(6oWwD+k{IbJv^~qo!z%Etnj`8b??0r5N{0<5#tU1f=s{AiszwVy5 zPV(KhnlGQ3SEbXKz`#!Nnos8kdXT8D81Uy@!9a@>+A}+)>J;V6;LMIDl*jf|n(dJ= zC+f4?!!Ucs5e3uCt;hKXepVuaV9{jSG1E|;^6E&`ixfJaA4a7 zW3ps2QZ$oYGC5c#3258V4>1OL&EAJ8C??#nyI~^utalj9Ylo$g%`u+}8>(bTL5^&2 zUxs2AxEJjTBPkFk{UfN&(iHkUyZB>7MX1A~v_dOh80-$yA~>0t zm^wg5RB|W#9`u9Q=KGUFY9)3IEG#StV`zf7e)Z5H8B7=O+7JNBwa3?H2TEdK{KE`gx0__x2wEUQzrJRmEg(*)&d?Iijy;_t2?v#&K2(^!==~HL#nX5^9>yZH&}av zv1nr63kvH9{3mnM`&m{P6or>2hZPZ_G5BiOj1;~1Y9=rvC(IBM8DxUX6=+#=qETuonqIZQk$-4MIyqmFCUT00oS+QqsPnDuC6e9xy~*=4dL)mn}J9ZAH_c zGY|$G*qL(*sgm3>VrjZAugZ=7UZHvh4h{m46`zCBMosu7^PjCokPnHf_@b@?tq&o4 z0Tk5X!q{mLY#3{+3GWNz*ZmR!)xMbFNJP4>9s(1Or5aiRhIrPKn;opgYOq07D1pIf zL5nkn=&_4NeM(P1%P&LW_xbaMqrpcR^=4*f8Z+a~U&h8N1NlNpN$CqSqoCK*|xqzEHEq1Op9TcFxPHv2+6f8xt|qnC4= zgpC0#07H7eS<~ti*o^@%Wi&1$=K$N~%MrkdJOk|z&1~JE2Gij%$@xkgj`7Pm8efM6 z{!ckM6SvyW)`rkmwa3K3j!P~J0+JQz^$pTPWG~;msfYIbR!8#Q(~=TN)Y^79WsJ@LbrFRfR!@!dj@wlh`i*6=T_ub<=K@CUdSg@wh0IWFUxHNh0D zif%5XKX>t@C%_JX1B93xfId<_eL4)A&0zq?J&b<|HS}s~^{WUj^nmrj;VyKkN`)^0 zsbry`uF4t3eFIYi3G6lSZkr>l#CoU@I=DJwq&DpK1{e}Wfm>>>mVC|5jt}q<2$JLK zZfn))1fI&?-q>fy&h#be=xn&H=NADMx4yXmik z25XD%>w5qw#HvN3Du}&!)d}l7mD_V`;6=hdG`_xb|9(TWC>~N=i$c)5gs;4(p(S9k z&a^Ku|@Cq(Gr`*j}}=E802({jl&$zE3+l@3}7YHYX?V2tjyl3K%!c48faF zxRNcY(=RuY5-u}rx~xn^O?^Nc<4g|%LDh|o!I6h2u%ST3>ain#!E8E+AAw7TU|Nmn$PxH4uB$M@f|g)lrTxlvT$AN%sAja zU7()pFrsjfgyjC-)bg2~+d70)NPv*dXm{il`pf3a8s~+!L|_#Tde1Z~j6sdX0l-60 znf(qcYzdg7j%!_7QPI)W&{BiNHM&(Hg#|4SXv7WAyfP4id+PQssMS;eG%7MlKnq4Z zXK)Z-aLu3Z$}H%PhRt6I;>ZTSvt%oSIVp?&spplP2_ zo;UES8V<_a}kEY#J;Y zH#axPpFBo~6j3vR*HJ@8LpP|{PK?bBl=Q5ZlB6*!i<(p%&f=8DG9cfK{RZ zz7-fA&Mhn)-I1nF&BAgMB45z~cj`02heSn1b(k!GTTP-E#$=TnR$MFrz1lyaje|gc z`S|$2H;zEH9;O%?(d@9Ls7voXmGatH1g2H*>pFn!wy)2BPPVSYovtivy_W|#O0v;oZ zO;og?jg45;H_Z*{(HOMTy_d#lb!A38A!$7lOl5=3gQcErOV*B=!=Y@1+!?0nuDV|? z`y*>fQ%eiyi)RCjAz;QZeRe2t$ryS8$aL8Ou?~wJheb(wu3K&p5`8F8Jn1}sB0Sx3 z-P=*HvadQ9lOEoELu$2I@YhEe-ylufitxrX1IJ96Q)wx6;kRACI1=NJ{@+45% za)Q-SG(K&;S(icll~pkKr>Wpl{jegkDVQjP8v*VZk!GUr!G0Mq(DP~Bn1|BGC)>Vu z&CF&itWdt&my=@&@oz12o33mt`#&eug4MmXwUza{_f~;_nOuqlgf2EN!XYydSn1qJ z&zis`IPF9hl`moE$|@Ah-ZVGw?dfK%af9u8Ohz9$b!&JZ(F6tll4jWTpq%QsxoCvC zWPS|QaMc#X1>OH>rPOA~To?R4Q&67=%M>nVEd%lK(haA>)r3=3d-- z$zT~&0A1g~r?}5t29C1`zX8Z`Bsq&aD!9h@VqHgL$Lpp^d`<=LnabDoeT5Dj7qzlU zGlc}90oCy-MD?B2hTFToX>~{wwp{xD$*$_r8SwNgzep(V=;$cYj;{qxLljcx!rdnZ-1-RK{PH>* zJ^C;ctJ7V<$W3J7FaVbye29dd$>b)A9G=v%phH$eoNH^sO{G-a#y;9W%mRM*GfVt7~ePpp|?3b(_dPSO5fKi_-U;;<{qj zSKq{F4xE{AWB{qvrH!mJ_$#&}0T`bQCWBlYS#*2g5rpG+EiY<*;j3E3q6yT{c4Kk> zb)bJ>;4vn-H^#uX0pN8~3X+{thj) zXs>Qo`a^%A_XnWt-!7`1g+%NW6O&Ca3ERbs!FawcUWit%uKtokVnS1M^E}Vy=@rj% z+V@fm*Sx$phXO!S_5- z52U!ya~9T|_{4vPpFbz~K>&p7`uh5#6B7l6ZjWPPXwCDBdaD)W=wS=wJ=vYyh{MGf z7Z)d&K5Z=uQAn{BPg|d_YGpDoz-x+{ZLF_DS^w6(d!3_iz(+#M6M|vklJMtH$bu#% zFXj~lUO@Jp(=X4+($;D37FtYz?|Q!W@cuV zKLJ3bTe`X-4W<$~5`52(l~rKABB4n2v@wy;afjKKkmbh5`!}+ky*)@nOY1HKz|-Qk zC&a#{h2+!F(iZIWuNYm4hmtU%VeIRxTb8_g5dJ$lK47_;{`vDmk@VK28-HS5&o)q4 z?!>-&{W{4lme$1Zb5^RhzW$(k_Q)T4pC1>fu1N!G`a{}3&Mq+U>m;NB%yB;@=-zxqRMzq=nu($+q9{=nbK+x`!|Fsgr++yCeP?A%AHq-(?Ekn6zA z{9lo--Q!5n$U;>~Ti(XTCaPKys;;0S+|d4k-|d#^f1Y;Pshx+44L;uwqJOI1fQkA_ z@P&E?XTQDF8Ais&ybr3jb$>V8B^ZNip0rt3+gx!&3RCRtF$wTr#<|YUbj{O?TwjKb zN8DGM3v3#~d12aET-l_m%0gn|;t+~;v<)G*r7L*z z=1qVbxb&4_C4>*OU*1XKYHmgyV6c6|_t*2b_d?@hWN7G`o}ONs9<>gHd827x^7E@8 zbA+;7*vSvqnO~!<)DLp-T{-!ncOHIZ_kPGn%B=8`i0rlb`1$iuEiEko`bo?cup{%p z_Y}q)_FGt>HwkVx1MHua3oY$Z)5Q^xk%3oYVuL9JZ$snb&l3~%6a$cEx#Mj}W8gRD zJ347XGhgW0P6&z4t1GcN7_BG+kE-(F&%=88GW*{upDL7*p8nl9_ZN(mi_5olZsuplg)^+}C%czo)b~PBMsQ6(2@rdUqTHWUR zJ&OK3y+8VtTgou}&{D-5AcfnQot=g7idjh*;@^rkEh6R%chWiR z0V@L2jE%?9{xv9n56!gzZdod~b9s-34#JPfN9cnAQDG4gU+S-PkbL2iZjsjd&)ZYE z$P~R48@F^%ou*Rr^z7q0a_+1VCD<6|siHr?5J5WWZlnI+x&pzT>&M5OU2kSgkUk@Y zMzdoqJHlLe8C=uYn9*FZ*3$LP%P(POmb9)n|8J47zrLzPF-^rU;YQHkncx0^72RSk zCr3>5pI3d&$A3K}{PO>=#qW=d(*J=y2;{;4AD-J;0GiDJ4)0%I(HO}wmL(owrhBQ> z2&m;FM~dF3R25E^mX-#Fg#0-;xcB~*l`zARW5?=xd$-=d>Wx!%pwN5VcYSn1&OUvA zd;{ybmXVkbXi2E)<~1Zf^4W3i&erqN9|I8iEp2TjO-;>`7K2iE0mAzo0i$736pPoa z0LBjY15%?2HxlM194-K)tVFg4Adpw~@$n(QzPi$rgGU-7@w?Le{4t=7<{~Q()p5&R z0tv8v(QZlvg_M^7yE=Mw8K6!@mSfMM$v@e)O(c_?KL?%Vas~1 zoEgWJ#YL#1214Rp-_nvta067#$zZFQZr)6Nf^9(80^p5Bdeo}$GHv`?WDAOwwu`JxRLXl@`%SJ0~v zU(2UgUtB7KM-{PeH+DUaBNMlm`?Xb{0yK0geus6^}W54op{=DxPj4JuffP zpL|2eQ10kyYlEe;voiudz@g}yARzSUm*Mt$Xl+A7 z?Ck6%j7_hSi;D;VWsIt8!z!WG1E?yX$z3-$uQjvFTFG}?u$!KqW+1d!3IpJ!3lbCn zq|%%T21vbZZAg$sUD%wdnc1VcZygQIQlT}*X90!P)ujO_npc^bYC7Us-!!V$AUA*l zU<}~J<0e0f1d{+=m2q@>dmKxe?>=|Mn;~5l63DU zUVw!Lg)(0QR2P)x-+lauz}tuB=f6Y7Cg#1_dZ?zW-N`aTkKrp#MR+(r=xWs9D;Ukp zK0xtv_C59&<;(HkUF3Q*XD9(dK|N@m@dVPu$SGYu3T>=i0&(vq9JK=}{tz@MQj3e@ zT<|%Nph*Tpz3{Gq0T%K`L7zTn%`E+zjhS+b^~_#49RjPV2r$R8KfFYADspo8(VGO; z`o_i)=*1ybQb2D(oWVzEHsEx1MIe;`Qa6O&#QF2}kjj+HES(}f!*r{IUE%W%QX!R8WaiHansF3vB)U( zJbSzy;OO57jxkimX+uXCYOG_N=j>A8Ibck&*3Z=yzZAGtejlnMLJb6};3s`I>cZA^`esp?j~liZ0Fa^jH2W65na6j2G*COk-0nwk{$dV-<>lo79MZwNIXWJM-pUaJ z0~u(-8sZ0fXuv4*}+lypLp;v05ks`FoZmJvq2Rh5M~?jw^)}R zJ^L97i(_z0Kfh?hT!40qsGS`PfbB@xB#K!9Rjqte`Wirt2s?F`4J#|1l8jCPQSR4d zTNOZ7g?xAApHqZ$NJ_@XF;IiX+jkspr*!1uocPx+z7u^fh@Ugg4FgQXc-Ym^F^~SL z`*{|Yq~_OL?6fiF&~vKy@R<4#!)NUSs$;S#o{YY)TSodVI&S+wxHdYGTKYbrvQicW z4gMz;$ub}gDhfcGOwcaPDc{|1yKT1BT++itWEszkh!Wiue({It7csHij5~J-=UTWU`F|d;vFAK|(X}V)kTMe*Uo%H|{&Sx@yYG0+f_x zKmmE5nHd5;1OPw@;G7TMGO#xXbe!|d8AHZsY3E5cdU`7+aYs6ER=B3fmT3&`jPUjr z&R#1rHWnzT7kGHm=%l?#0lfzp7tjPz3~kB!bbbQJiw7cJy#guA{bS7#3^eY7j0^=z zQIUJlVB0z?qte<*<)&dO?l^zSveD~nz5P(|S3 zfGbDlrO3&ii!)UccBBa!Eom&0VlcxYW-pa%Mf* z)#gxp()Ipb4$(DVcU{Ny9)dD7WKIqvp`v|ZTAG^e8CoksVkm@T(A4W)P&oy}o*I=B+vG zijXb?02xMx3pzbu|FCSH_uAApH=n3nzXYIo=<&U=8_2XKOpGVh0-y`JMOUw04Gd*I zpuItgn#q#|WI7~@Axk6NfM-zva{|zIOx6j$PGD~^uD!~)Ahp3^V(;gV3&1w(I;ZmW zM6IZsou(!*C=O9jV6WglpQQ)XbJxRV5?^l&3Z{>gjO@0KHS=Y@3)=$pw{G7a%$Bfz zsD|0GrJDqhGz4MeG4d+P;@7=*H9(>#3if-1?J?`;;?-h383Tb8aPvYV>44iqN=gdV zeH8dKKbOVQcg>BBjXrqw>I$L4QzxE*lTDo7O4{2k02kOS)d_(e*i@7{)Tx0?d!a_-WFn z@!I&5`AOO99bAX|yT!AW-~TK(G;U4PY8zr*B}0bagZRr^x)< zTtgd7fz-$bVF1c|rCAH24WzkPUw;ejRdbxLcl#aAo-#<-~Qvrj|`HMUeM0nrfwuI;lWzy zjz3pe=y=JYjN$C)g_(e3Vz59hQrFfdC2XGnJ{|!Cph8)s{)oNmabauA1J;J<_Ej6{ z=O3|)vpdqsg?zP6mKXP6+qwgp5NIR=3<-=vTY7KP{|cU;a%(F3AN_%%kaIV`%u9Xo z32?EBZpu`HB8qmow>X^ffx_5Z7mR|owGn81UR_<3L-oV1vKlr!Fi!_yO82D?v>x!k zBH+2YPm8Kk($hD9ni~HqMnVLNG23g5l_2c&v%sDL1p+5unMLW2(;Zj1VyCMPP2Aqz z`xyGe8XB*V@(LgfFt$22J%81}NVH>~_T`#flytS>0tV^QlGf17OwX+04E7q#ID}4s z{51l0Hh|fC%^Un&j%1LX5DJGnR$rGUE$+kT4#Ud`-(hq#3Oc|}z>RGyaZ5fI6uO?& zlQ22C=l2*GzE7cB49&A^8}m|qrSskZJ-+?m!FJWhjWytn=y#6IL+5U3WyNA=JqtrB zZ*7|l8^%)Mm9xF^%ZRKPC`i2J3ODR8?>C@WNvyfNqB9J7fv((ddUo=_9 z{gDiGm70=#gp75YZ$AHtgIJwmtrJUJ=pFYvDg1)|VnJ@8ij9%~qrR6FPMA3s!fy%8ExO&u;k21IZ{ zulN`z^G$a4s|SN?+IcF1X8&U8xVo-G0}+WqLCIl4FU$qi39+3h6ehtvfvAuikZoZj z0Qw{q0MhjbtzZd2|LrV4e-B2j6?9Y)jvA~7sPF@955z&0K*~%GT(cpBgOKpRZl&w( zo#~%+qEW;}6H+hhucVqD9`vyD04AgZ@^Hvh!XW7~$Ck(5PN@Y6mxs6_E#0=na-W^s znwqu1d^li3vX}L(>qDQ#cv^Sw<@56s6N+YLhropb1nCt32-XSc^?9k5&&B<$n?hn? zZ`*&JusFvYQX2i>z1||#!^ryzsa*}7?Ylf51HLXgevMCCO`ta8{=v!Hl$Y139;5H* zfVB&df~zy9wV(0DG($@$<=ZzAh0s18=r%3ng88lYCS8&Ch(kT#X% z0}5eNUe9^=~;f?H|Ur{H?`98M;{P(L0hH z#!f5apv#xIG_atrwd%UPy*&(vz=k-CoD73rrKqRpnVSA0w^~5UQ|EXzTf>QWETB!5 z6kK)EtMSYXVT@nBF2`4ddv7rSUjuYx zH|m6iz-T738?Q{PekVs4bQL2OmQ38OXd93^cT;T0Cl^#1-bij#q`W?o)ikiWJ@4$%c_yCSO(XPB7r9|@k*R)Bge1LRcV zQg=Z)?@5_mUIDLlG!3CRIQ=4iCt|Mfl76X}X6B|flT%YJB6mNYMFhS@Ffuu!r9(G} zfNg`ZlA$FO`wf5l`VC|IqvEHGv$KnWI`+Lv7l~|8yRc(Ld&n|A4r1|%6S9Pvc^2x% z7{10LHAO9p?>B6%jR1@YD&?O`PrRotnaxwZx}j^;amhBn`HFz&>Ldsfnh`C>zk>Lh zwoM7hHJ-q5TnSf0k6qjdBVCW5YhggZxH=FPpI$fPiJ~x#5BH3dm1P1`8#Zsn zFxm{n80eR1ZC)V!#uO$nEVBD}4wt;6OJwK32;f?*rUwb`METMMDf^(oyP zjw@}%U@*0=xD(+OL_$rL{z@Pvu1=Nz6@RFvn%vC5`)k(?PVi$hVW)a#SSdjA zSHN&tudc1xwh6t>$+2&ZzY7aJbEi|WXsoy`Vn$m-g=_u(NdpufiC2N^9s()?#z!wuOG4@IR!3n?1u0bgD2=v31s7)Nf+}fcZOcLn$d)S-fy$ zh&X74z~K)ga=G4H%MW6-vbsU9{%z^Njqfo#va|sVr#mBv zdZ=)a^zBLdcLtJHOt}l*pA&_X)KP0{2T4(EWh%;k$1`s6!X@D)GD3!29EFOI_*i-H z)7iV!T@?xmf7W|+i7_ng9{gkhzeOqW-!(k2|1NoX>#SoaONHhuf1p7H+zdb7U*uHq z({cBx%gubWW{@YPcS=dl!G0#U88QM|3(J2N>9BZUjS7Ik@A5fo# zcgPxX%I?3>uM_6v{GXN1ijgSG)M~{CQOq?L6sc0XSv*Ex?xFDz^j*)wU7ENikdvQ; zeb!{HHvUbK;Rt*-FADY76WvMskoC>>uE52ASL-b;hO+~0mr}MexD2Qa|9pDHUs}|z zztAzJ!`^V1<8C==pi`>gw73X6%|YP|*ram3r}7dSkm%RiGQh{ul-$+qYM?#N#*0ZiJhuTw+FoxG6263O0v zR+iy(9IDqNEivOBB?>i`H*KHs;-=qM%};0GdY@E}o#FfB0z-G&DlO6Vf+w@6tl!7m zbE5&(ie>f9K+Rlmi_m3KdT<}O$J+1MVvAjI0I6Ze-Z zvZD6m5BOEO$|E|Qb7fB;q?G?MJ9gtqKUl=|o~6eW z-q6~ygM*0Q_ec>|JA(DoB1r2&VerME9Y;H>sp>10r%F#y-`ZiHe$B7<+9@_HyJd22 zF6+*96e?O32xo%}p0U4&v5kcE)5TY_YiGBRZ}Yv^UMa6&&X5|NT4y*D9l2|0-5}0? zB(Jw}##p?AEw;yTf6yLY1J{JSl$ej4Vsqh?!f=k=)?El!QM$wYOj>%e=+5?2&ZAR= zmr7x`^H&ej&pNd=HAH;RPJA^@jTro^bN^jwD)6;ewvb5Bc1=55UNJq=))l${#ZAEX z)WHx$bf`F^SkCIGMgjx*38&Px)q`L{Z{vPH0+`f8K6?7A_nP~5*~hPL+eNe=DHm2S4DI{;xm%Uz5OA^FyRdLw@Ckn^|1O z@M(!d-F1-0ls0DSmlaPEw7iaHszHCJX=}F!0>t+Py_t87Xi|DV)-tHvU9}NbBLDHO z#7pgxLGh&tL1w+gHXKgp!wVGZd<l1a)TMV0k9`Yf6Tt~-U3<1WUwsaO~9E}+K zXyLiK%PSLsfp>3;f3VrHzG9{RG@9ecd)mXdUi`myr?<|GDR}`dW9jVJZGGkCl)gCL z19y%FMZ8nB7L;cv{dDGkIMcwu?gzA})T+vtMPn-d!V(SP%bzutNj~%7TsTgoM{o{k zsZhx;gKP4;^LrR!;YB~|tdmjlMMbMG?_A#>J>%bh{&%9m=YHn1dLDn~W9bE%6IjN( z<2$ZDc+xsQMLIW>)(Shq?DY`;U`&ZWdJMkc-z&fu99I@-#&$&PMy!9z^t|Z{q*Ot6 zb~yh+Z$t(2x>M6Wa^o&lYH54);h@dBh39`nvB5OlIuDPAykMQk`bD0O+EpTHpm?j# z)stqf{N(s9A%zv0t)ky13EvYTmtC~};g7eMNxVuX$?u4hWEiEpot6u)l=*ZX6)%6U~k;3$F5^8Kg;}qk>;9 zAmIhD9FRdtSGoZg7DlWOdF@Y8=8HK(n^HOjL7FTkw)0c;fE!+FW<*&+mWq>Eu!Dut zzhWauCDA{UE8a|>$N*Y!JjxNHZf`hYv}K)s$0>>jNhh^zru|nxX)dSSB8ehtXA9*P z+Iq>qcKbx^M4^1WISKXI&!Ak?%Kmk&Z z7d!fonX>s@gC}iQ|BnZ^G#*p(<#fvHNoi_pYK|jK?}=7?7b*PRD1aGM@}Yr_=50J1 zJX!{{VD5*y%1dNB-ohsK5lz-+4ErW7O#6HM`u{P{y3^XN)sbXhKBzs@z}_`5dx%NT zVet8p;T<{kn(AZq=j^7DWK9wo#b!Zf%@o~>LuaO&F`?2R~KI8pAkWApPWfsGgVHdXVLguk*xk@c*+lD6J4*p zF>zc+A}y=UCnH(mnUDWBz7u};^_)zcMi#uC>)<-HogxcjIS=s_Prl!)(Nf$JBA#FA;YeSJMiq#^~ zrCT$6OtM@~*_V^-oQxnGYh+T7Q;+5l2L-k1(#F-*)#DyA0|Nv1Sy{y$MVTt!&2&*}Y!i_~&jP!|#rZaDyQX>hqiv9*P=R*Pmq0Ji@Xld)x z`xX;PIS57PPYztE4qtsDkG~|fy40}nY1FN|hSorL^-3iE6}TB510%TS&gkEs@wp?3 zupcN^mlE+Ydan1o%`Obgki;otupNf!5s#DAktg*1{e-Zzg;TdyCVGmW#=Tti>s#!_ zT`JmRc~p5oBs*1bKO9m*vJvF9@4^!J$~T7t0}Fu+YOQ-@Z5+hmbEfvvZp4G1MDF%B z*SB2IWZ6Sguu7K>?=)T={1%zEMoT!zhiekf*vallem5IcM|7LARkJJ|Y*?40#^H2`E1E0C|(M!sHH^gqvw`Y{XTBYyW@ zgf2{znJS3P`-7MWt;h$Kqxx(x>4AZLYX_~Kjw(9x>AQ4kz_7VnRosN@$V&a!Xz$nn z4TbU@te5*2~IySH-eA{KOgd+!9v}?_dZ9FFEnCTjJS)~YQu%LW1O}O zMH`Bac7NTS>7xdV(gfuQ`Rtij&d8TFBeekJr38uG{y+RW1t8BnA@XOZmh9F&#|xP@ zkyE*9&mfPN75cBsJg;J4U?4C574var`S#rS#Jw2v$q2rN1x~n1{ojuu2nz3fgAV%~ilp=Y$+Uy9Lm#POx2VZ1>IaGEnmZ4*`>M-2n9BrHJPTMULi-fas`S>SgC{npK7 z;#P9xdQW%v85u%@x(TeEAUKGj8mbzqeK*g#_-uD1hrtnx=B*E8ym~E6lFK%ND10{M zpwj##uk-fBwZ#X|J?&5*tP?749P9*0O8QEkzKBbK+3T~GSO2Gl81ful%PZK9T zFVH&GEM~gEHWl1{csbGEYc?0u(wX4&$FB3-G-Ud;i~=VPqB?6;`O8jA&VG?oBTS?( z)$scW%z$_buLH;j)TO%JcmcqqS~xq0O3Qca2hipPs_&

Wc>Qd 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 B6a@eP literal 0 HcmV?d00001 diff --git a/tests/e2e/tests/snapshots/Intensity.test/Changed Individual Intensity.png b/tests/e2e/tests/snapshots/Intensity.test/Changed Individual Intensity.png new file mode 100644 index 0000000000000000000000000000000000000000..d95a059e87c81e15e298edee268ec39a8c672ed1 GIT binary patch literal 85246 zcmd4(by!u~7d8xUN|X?h79=Ctp|y^Zb~ZwlKY+n}2HJmr6j6;He^84)h6=zzKF+Uc3=} z;h_3$_t4n4wCZl0$(rvHH)*e46x}6~|Jj+VH|fM-Y1$NaUMp-%9{=VM(V3UoKF#pR zcK^nMqp79fi+AFZ>b@D$A&kFGHdvU%skS`CRji%%;rMu!wAQ2EF8E%AB;s-Jp!fO` zJJIDVT&LJc4H~j_g8xqOFtH3mvA)3Q1J(tNSNqfX@i$Z@b*ek_j1-5xERCM^>K%&t zrQmsg)$LBRT>qA$bOZu1ujlp$+KE`189y|)k))iKR- zK?m)OXOo{Z?_Bp~X8#9UUB1gVxdXr4HMpWk@vdPqjjnidhI4G9LqAiw(R7UbYR%+F zree|ZTA@NwN`nZ=DGc|Bf#_Pwyq8opTwnEst{IZPXlH5RDeP)->G96KR(gWJH4>;- zf9K`SReF!uvw?;<@!%K2(hq(Vyp&NZGE)6wW4At58+cv#(HD9qv+KfkH`v&6irW7T zhY*~vD(J!7{TwW6qjCcdYmVy#b`mRUj3#>{g@%_TA}(Gec-zoWF}jy}uO5wYbYX-$ zEYO8KW6JEM?m5HxY}X4PpP5`GlIBE)vb`AHXB;N|&3lVy707QsQ}2I1+)Sb&{=zP9 z{B#SCp3}&xc&Dd}%8z2>zx_#)nKFH~?h zf{0lJ9eMrv)CL7UlX4>3yAVtI$rV14OFA|NlSZjTFRE}Zv-2_7ym)kB3VT)Zs$F|R zX2Mej!npa4ZKLQu6Q z%i5gnaDRUBf4jLcdkEu7mdz@EjX?X)05lAIF9!UDE?(UJm)pX@1q=RHuX#8odkS`W z9{OWDfA@UWD%muP?{S67kLaSCoy?R&;gi=Q_8Ok{FBB|Cr^e@fmd{tmFb~u91Qfiu zx#L>}b}=6F&id*tr@OS^aH$n{xZlp2A>XoE`!;x$knoO*3b|&v?fmh#NyE|egV~^+ zmE3CU4cGlddu^c|>cGiW- zvL@rZ@Wc&}iTDz-vi^7fjYUExyG9xhVh`4&@CK3>TTyW*E~T^^Ohwx>rY{JeHaBcs z$i1XI+k5ZvSh7Z`8~W(RFtU}r|H=dE#S}+SMQ*$};c<@pVPeM`*LE7teiqOWnF3t!`enRB>c9Q6ady zGPsx;r8To&zF|<~f#!)wv0EFd;94P}XJ9byO~c=rj71WKB~I;6x+4p-2?zak4mPLz zGM@**jfD=adVJ<%QM&=4inBBqGBgM>owM>1S~y_*%kDE{p`7M z>lXLgys@Wiea^L}-9c?+oXzB18*}cB@6UMJqu3X#+0UY!*UR44dS9?PIj}lA{aHO+ zVnKuG&wRF6b-bReS#C!q?iO!ReHwZ0dLXW-sEFXe^M(!equSklq}W(SQt|?g`!=Ul zoI-9{Plt`jyEiY>h`DIF z#|2&&LXVklrYxMiXd3kXeNXKFvZZ3yqnn7rq!?a92zMXcjrY#wo zwnBYEME{PW$9o)C8#Z%LqzK^syGykjM!t=&$bRX z4!_NwYj5CMo+)b99Xjj4Q}@3iBDuhS-s{(`_aM)xr|znm`;>=gbXseaw(CP=qUh3S z340*ZWfw6Tx9X&OZ!bS7w==8IV!tIH-@+@Z97)QmwmIcZP@vy@na^}cB1z2k=g2qa z`dsQjsuEr)s?q_eL$Y4qbk&3Q;1H9m-E`AmgPGu%s0~{YCWt{d<>^ZQ<{)S0tm@G*!y&Sfzrf=Rdur(HkafA1bpk ztWwfh8!HPtKC_}(8O&`iU}0>KrDbIFT^}zmblQFO`SWK>0V{>V`*QK}w|GtZ zSe_nOrTO5JZJ%Lp^yX@dGl~mSly`QG?@t8uF3qjvR;B5u2YTw?Qb?5TfA#DT_Rgit zmlyny)l=J_qOj3}VYblQ3mojW3sch5XRW^6 z62#5$aUKr0`cnypsumhpwcd=HvMYD|l`jSJ&SN?he0sc3w)EY)jrr%}1G;}_yD|F! zBiP2pEosplSE%@#(WKDMMO<<>T$e*aDpBQ@%UuE;+*d?2H8I^+kmX7&@~m-g>ulSP z9#~(G()XUPZ**1>*y^Rso3+&Tra0kCTbofoxyF@VbB$B)X;m|^LH@6Jw#r|M%l( z#9~*1YKi&vB$uOyAtpgVLD*A4;%A7dpZUoMhf1xzjY);4PoGW=={E;WTMCie^>ch3 z{1Q02cDWDBa;D)DUj0WyWa7zYJpn4Pi;8#vLR^vvW0c!;s`RJkz1Cjvd@cvo1n)QbCYZQ}eGtV- zxq(k5aK!_%A-6;KRLx$M>k(HY=X_SL=6tH_@t&-!@$IFhC5TS%mX_6f??tEy_D^TU za?00*oc5RHngg$w%}1)29>r!pRA4{CG)#*T4i~nG(<1sh)VxdCt*5fGV7Ay&A>5GWSm-)6!ihDFIRP$TYQZzIB z#}r~N0#O8&@u-dZ{CqOABaT0}W$@;|A!AJ!(RGbh&;}iWyU>w;;8@;RsWAM`^+#8z zJ)YfZsQ#SK>*YCazH>n|#S(+S`Av+0>e`A9U*}Ma=D+xhXNQH0+-;(R-#$mTtMOIM zy=IJio|q{yxH^1rYIhQKPO^VJXjc1}m9CH)gI0eE!y!%+gZzz~^Y!94;|^bKkxxu+ ze>yYa^ir(Fa>K*pKF8|9_a9?_j1?+~rQ9Rs5Z~^Bh9O`zgPB{or>3L6F;TfRUT&`w zE_o+_iZk@%M_R@Su@G(d(+J(?__HBW1?*GQG&D&4AW>gka(^1}#8JjE$y}|#$2C?ClOnGdxD2O%opno+ z&&9uL$5pRxubVis@r>c zdsFZjT|p!Wzcv^ycv)oB<3*O}?g_cD;IO%~=v6;XOT63dbjY?`rb8U7cEY;4y0Y;C zAq3(l97uiSO*%TXpyqqt7x3Q&1~LMUh`9Z%ZrZXt(~y0@rP_D8{%voOvC?<@4cP5z zuWe0cW@d(}^o7%mx0lkBepG2XGs?v_G}E}tj(>k$X4MfewzKa%^!+t6QgojxBqXHb zc)gt5_YQpN2Q!>3U=<5$JO5`Ds#hMvUl6aNbASKdaR9M*WmI`zzLV%V)XJjuI&z9#KD=da6hJmNkh1tv^Jk?x3iD&P4hw3Nn$$- zzbP;sA>TEjxJ%WT;nM1GPBGjUo9L?`shF$R@;w`!A z>1?yj0nG-5gruZR2UfEg5UwFP+&6FfI9hZjLtd%aJJ(8nmZ>aqb};+m#S4yK+n*3D z4$f%u>0xme-(xOu5|!?B2|J$d4muuXboB7IN3!a7#n~85WC@p(F1&G-inxP;K)kM=K(r&V(%E7CaPh;_jToq^It%_WvhQMoH~9W#`yo5eSQsSu zhRym4P4Q~xwsnYlmy)gC(J;5vSW?{gG0f5498s_51YvhT5?n`_3RoY9#WmRLN!Ug}Op;dvOhUk^r*x3&(spJE+vBRP}5-;MZs z;1uXJH4;6&o0l-=r{7LSo)|`+s1NHWcx0(N;;eVz-psKwjTt|bcZ_c;$(7L+?|G?@ zb5!Trw~V=bLVr&TT(T?vwflh^0xw40y9Se4M)UQX9a*gtlVS=DxNHVGG)7O|#J%6* zbrqZSe15>9R`l0%v)QH~+!MFWsXOMCyUGC3flk%&$gNkOpP4R-oHfi2t=YXA$ZCae zg7W1!P;Au;#A`KVu?h>9G*742%k*?XWG^zmHf(YH7T1$i&qKvXtqWf7iy=u9{u{HnEEIsEo~c89=G$}YE9pB!yN8{g=5~VLpOYw ze%K~=@7_)PMy5QrAfWe-j**cuj}=f)X{o?O^r>Y2um7P5^hRP27k&FH7OJp9dymE6 zL|;L_kFI;+4H~(~L4tQ1+s_eNo3CFgJ_j(k*Tu&$mMDMgc^!S{HeW%ucjDkfzLixQ zi}`P-@iA>n7^d#jb-eq}L`v?@nAlL<_bl1P55^44)+XFutKO6>MwU~kU(`CzcBq`% zl(=%mX}Q^WG|3S0qmJLdP2$;x1AU9jQk~~=4F+9_P0KSkjNnMt9h!Nog|iuQLPd?P z-RbJdjYZ&bWM5)?E3_;UJ!Kw0zLKq8a^a)RV%LqEH=m@-Utb=~RJeN=-PqXJQ(vxk zt|f%QaE*bJGhf9d(9e%yZ(RlWJjKO31;zh^3B>7omn1^*y*JT2#`?;0l7e-HqT=1r zL*idtQ5D_i6dc66Bw#oxIDpTI$I)dM8sZ$X7xqwvFvO91E%2KE^qy|}JMrg)!$Vmd zUky$oZVX0YiKV~I72aCauQYM}badNH*xn##ZL9lUQ2cDm7;poXvH7PC<|T1bG|u5G zx#fw+>y<%J=B|ca9X^>gSf~;tYrj2iJkW)AhuH03FeCktDH3s`m1Aheaw@;#Ko(av zPZpz|Akx@#vS!<>*W5~=wW&+r4#8CsyzbdYwRT$2Kjl#IAk}wj&--o1>#oYB;N9Wu zd5m6sH}Pn}YRnCcG16$#$V;C0>&?83@A}fT3o*>+;cXt&Y+O)Sx9AftF{^bIp}sBU z+1$p`f^oo=cc^G}cIdiCgvYL8o+m3Hnt5d)<2)wXApk=qnw&g38uCxAAEo$Z+Upl< z-{WHNPhHp>*}E#4ihlO24YIWzF;hzmj(o~yB)fLk_I$fcxqo3Bj#$xV*}v}?PRt-8 z@_DH0^2FeF!4J#C*XK1Cv}StEPF!vyj33v3wtm;R=gN0x9nspXO@43^Q+xk3jj{jL z@K6DxGiB6SKazc8*y@e?n{WBj8fNv>FZFV<67ge9zQ^I$+8$V)=r;F`__Edo>VG5K z_h`dpMQX6qo#sAyQ&Ga-os<4tNyEerZHl@(;^RDJ!R|`#b*#wur_y^&UqoIzPYZ=t zN>^8+MNZdDk0xxaJmZ~p3e}vPD!iWTTS6w4V6rV*u}|* z^O1igqx<*U3iT+^LQ@NLt+VR`<`JeZ*qo*jR2L$NVh4&3RteOn958;mWISv)=*~!} z{md?3GH-o1Glw){MI}W&##^XDBGos>F+kUQlZ~;jn4_LmL|CE34{L&rv?_2acb?X$ zJ;VQ21FgO-evM~8?XfftGfT98&p6sGIV4Mgk4ldaG%<9Ts2*P;ouYG79Sl62h} zt*SeD_@CEed(458mcFgKRq_>v&`r91uQ>$d$}pO{PkF~R`c?<9ekjwS_&mJoIB3d zMcw%G@WuHV$F%H=U1u8R~RX>h6opWT&JX@q>$y-*bOzo^-{Q> zLr!T@;15J%lB#2%&l_g1`p@8fv@pk)tO<#U?}LCwHX5MUWr3NRo=!we{HAyQcIt;e z!I{Dl&qfA=Ui{CX@3MPQU%U2UbdBx3S{qh9?P#}p$*7!>(O(bMT;zV=HdnE`HW(%5 zdK|w~`i%K`{&snUkNLTtI}HDq1{+MBTg0zQEqR~I5*l}MYN#^EZea+xrqAyjUc|>| zt+f90=-bgYqMLhbgC#9yD>23N-8PWFr5%++_nibugb?|oYX_%iJIl5$!L_CnCk!CR zi00Z^FZX2-A>#PVPy#!sPl-Txzp5O!v~KL{myF63p-?U~mi!)WhynRaw@<_kGt5TI zcj{lJ|E5WWEV|jsftOQ#CN$xG?ya$+8O|8j*_2%pxER21KqliXm}@iBFzNs*v0q8?>KT$;4YJr=C z0Yb6T={5XNiyrNrF8Rx4$)~?xH-%oc^3^WZvGUZg>1Z)Y`M9TX;$@j8|FRHJJo4`! zzZOcsBj*Ty;3rl^tMnSg=3sAZ0)TsgEx$?En)6hYq4MmY2DB55lcMdQ5Fw4&9=D%F&A_X{9Fif>C!evX7GQcT^=hY?jTR$L=Gl{ni_MsY?boM< z4U;b6sk`oU3i25LxM6ulrtNaa(vkyFGAR}kK!Q-jLkOY zLX~Pa*QrH#2HHo^h_h7k(=~m<6k3aiQS`Y-B&6+~S z8qxi+`n3`T%&GE?s(FC6FpFzh>Lr0}nnKut%pE(6_LHuZ0vo8m?GoO2aen3sBad!r zkp@k)wJSl`;bf~hf0&DAWz9}lLF|wQ`T=cC0pga2^HGK-v%Zw(I>&ovAdN&_z`usr z>{C*>N<>s2&J-5I_3}}U$y$FVnfOVbCrpBMC+~B^(Wt>)ln94UIe^ku2XeI)K*R&J zP&VP{D$I_~bY0L-5MGPFZ~yrI+C({5s}Vw?%XyKicS%_vkzw`Si*5BA67XI9Rd z`oPR3<@q#IIRF&keCzq!h~>dt1!-vxzPJD;r8ExHAxojx%d&cU^wZPRi2Dy7Ok0BE_BAdt)Kqu z*N)-NLMH}qk?C+K2$n?G$730!W>hN-92^ zkp22yBcs%sszOcVr+aV7h3#05_tx|q-Vv@27ruoMuv#6m8Y!_rX69D4DJdi*W=wai zi1a20iM6$}SIh1!L>0g^)|jxP>V(S8s~!jz%_G$*%3Cl@-NWs92a!b6W^!N8_W8Pb z>riMZ!62+=8s58%$~}CjTlePDjT<-eocGPE&fQpDj~B#m4QFhst!}${#mU1A1?rE1-9qU zPphA+mToeTvYosGo=1a7Gqy&Gx-Z5UChCq9Wr%Fnc&DVMCX5(v)ncDBh>9i*7cK^e zhCTvuv1{e9mq!k@X4ckRG%lNBt*x!AAbW!{xz$M4{u6Wr#Gsb*b@qx)5v|-P&`k4R z^?$A5c2uU!$jInO5RN)KWyhf9fEA2djYx`wXhvkFAv5skQPZ$5j{J4ZUez=+(2p+iL$WxLxPxp#ULgo#<6qP4GLSB zneH#{W6{B#Uop3zeQijvpSS}WW`=V1HMqHc$#!9MUr9l<6PlGx_Xtk?uy7{~n*1rC z|CUr}fLi(ZM=Xek($Z6)!ll7;K=<`_KbfU*q~1qqbI^t9&CwJ#=!&m}d^S{S#Xubt z)!p5#(JUn;#qD+?0N+&~!mw3wvR#DU&;5E?rs7~mW_7%rtc8kX`*1PIW`EqB`RKui z-`Q3=f2FsC!1ZVknvT!X(^S~-cbEH3WcC(fOM*Uw&MoTOfLuJ_LgoI*~+>S0qwLhCdCP6!nHCZZXVLpnR%*g#{DcxZy zHG@jnE=zi?v9YlyTb&;=Iuhd7XfQ`pM_V^BJ&xC;3u0PYPA=7YzReK-Spg_Brlu^g z%r7BETz2~hA<>g8U4xyGvRc-??{xE;2MPy>9ItYZ*=tWEivt2R9v6z`HBm;jVXt1j zimuxPH3qplY=II4q2GHSN(Lgy{Y;SP)d3CJ`BX`ZH;Y zfiTYJ(P`qF$I+bpKl1glq0NZuuw!x6dmL|6C&6C4kc4a|d9Kmr$6h5pT5RU9S?i9K z_)_NRa0ivnQP~>=C`316lDkufi?r#L<2TII zpKn9qm}uR4-`QO!m3%!xYy#?rC0py`HGAUTOcYipqpY8|R9zHXEgE^f5*!}>H0uE- z7S^<-fV5nv=!P*MruRWX$Zw)>sU?G>7;pvHozUa1c)XY(m}_$XKBhahP&~5d?^z)Y zZ{RkItba=YvXkc5rx{+OYfWo*hNIeji^#fn{{A3HVdW00v#eoZW5YupK782vEtg}E zh=L-<mJZ_7MqrRx?#pFVve_kA*wiV^{(IXUErN=7>&6QOmjXes>D<_VWcGY*Z9 zmwogIr?$2>RWtDSV+x@_%J#BsS0?`BYGWEyRFsDvoRt8MXnP^*qHrr{1qx6F(vPn& z{cW5JvF_xNQ&dv25=uzb{GE!!5kbvLDbAw*IPDbI9Yv@EeqWyPu|g|X@^6=1OCyjZ z-NGfp=P=nR^jva<()&)|h5wEVYh*#z4>nXJ-ESlR=c|6N+5au=w+gpI`*WkvsvS1; zA>Y<}cBXAeK3sz7NkYDDo~_;3kNCs56+Qnp1eRU&dGlt*y6jOo9wDGqxGSpNr+Jo6 zR5ZIt1_docaPDgF{KlANEl^1+$3{;__ep^2+C{dP zQT5ZbH*OUDF^YxYNc>rmmIw4Eodh8TUGty?Fn=LJef!Se=D|7oPw>q|mD<4l?$5dW zJ?mxCM$61h3cuV)eqZ~y$8qknj!xmyo_1SM$A0FMk(a0ylNL<7MGF`G^ZEZ}QjF)K z^k`_BkTYE!|NA{q-vXcTdx1aLXxa1g?TMV9n@;V=a2tl}@&2Ay>om}KfhgUpblQbP zg96Rq4lI)K0bawAxAwCq83ih#lX0;HPkOy{7WI%AehV$nQEF}jJRr+Dd#l4KDJhT3tY7k3 z1kS<@JSGDb5@s6KtvB%~`A|@3dv|aWu~~z0J{KswK6Q4yVYs&{=uJqZ!DzBd z6pSbf;8tRf(e+4ufQ%0mCD`InJ)XeKK!x6N z5J}aX5R8c7m4Nh(01(vfOT%}?`FYmBADb=HgU&eqTd=I+X9wQEZr&rs&*K5`c|yC> zD@aUD8dZJ#{pb3hYh!%`e%O(8P6~}qbdlpnEPM3^`FYQ6vWCBhzcNrgr-I$uwC_t=O~`N<0#V+W-{45rFK& zY&Blo6E%Et4i6yN(Ez47Vg9nTs}oBmwIpCnC|1V&+^rcLB;;H#EQ@!xodbL?U#|mb zLJnaCIR7G0hL^3OjkX&Ttm>4fN4v8T&kgcz7B7n({k*5Aub)5s;q2!im@lEND6nz{ zUCN(B`T8NFxj((Uyr7Lr52dwaRC8n=6%z4epmIHW^k|AYJ&Re1LBiUXMisRHV`W(9 z3(>!WhPWCG1^Tg!zglb&{<`?K{tir?fYUFdkEg?hlONsB z&semp;{E;cnu2JMu$FSRwk8mX@7`U+hK%;+>$6O>ZqO1?hL1WQT#U7fovu+0yWy8W z1~9-ecAZ?*iCEO>S3?0yB#Wvn$Ox$RH)srtUAcD8cphGN5JjTUot3OQTnENQ|-59Bwf4l$d26MdeU;XY~M zG9Ocs^Sp`5hl(FULqi=7rlmHIPf;E-poj&IHdH2qZpcplNq=2(0M`CJ$>-=b;2Qu6 z_!kosQ<3?2?CuKx6(Vj=;HBFw4Cfa<0=+=^)3`IcpKM_x^qa<704iJWZrBQ;JbKV% zt3E%~$|;?Bgz^>?ylnrXSB>$Ym<` zoE)uK@R*H+gZS1{;b>#Gc9d{_w*LTjSpDYobHmJU9DD2IGO)gqfmB!$PoEM4zh>>} z$p$~z={f!`9a?ru_%*)N_fi??n zKrA@A9#Dfp1!flJ_yy%9Na4VT2%YUsA@;vOfu*CP0||iX1kh9nPBV|(j~_oEKMCgc zG~LXW{R19QKnfyn9umaj*UX&Hu-AVr^~Rynoa<5h)2~mNI8L9*Z&V$#iJzZvKi6`^ z0=pm^1RbJg$(E$lB6qOe7oQR`J+}C1kq-=er}b9SX0E#^F?s8g-`!Rn$h=S#5Z&nt zGysy#ODL-+k)>9%rORKLV?>?#U@n<#vsH^thavRQVXI@%va+(~@wIMLZ+v##F@Oqy zf#n_$$#&`w=2XN2GD!hq6U?s^60`!b0$Y6Gno)Fm%7D-5fs8q3gA@e{JmI*QK;O^dc9JcdB$fciE2tWd2h(p4 zm(p25k0&h+$kIpR$&H!wLxcI?)D2>-Y2@1^_scfoSAAcggKzWUgwAfjQI!D!_%=tM zr5zpT?Amp4H<8T^7(2rA^<7BrjRE`<4ZyYmed-M5=>p$VJloB6C&@VDP7u6$e_HAc zmiqGBdnTyvue8siUAdJ2)k`~K>EWzLD5Q74EgqtBtCL@Qrxu$Ab6^G9A+vE7Tv9x9 z{QDc=E9J!V23^Vql)~XkXZugbxzBT{;YAtQ%(>-aHR{0YG+bni0#F(@oxE7)hUaIe z2r&E5=b0^ZP`I4#K1T&Un1kSoT7L@e(xYXQgBibcFjeN628*_l1y?lat57jR~Zyi-_5#0OrVRg?F#`&>Y$bB{)=0{9wBWBcJnv%I~@8 zT_CBX^Sc8t?FkBRBIt&_;En`ApbJ$H$IVd=Wdw^xDFBnZEbX7=6TXjGHD3okGmc8c z;i3n%s1qv5>FINei}3sRt{J{~fw)5HOa=}zCmq{+q!5rP4;7|%4vl&~V*!_M7U-84 z_;RsCxG*3`vz!yw$`m)r@Nm05SHN-mMwF%<1r#_DUtJD^4sw7z^>7jTx8heMoiJ6U zD>>!X{c70^R(qwlFMC7%PV2G#ATq91MhbYcZm0JNM;v(7HA-I`06GK6HlDQfGLX!hgJ=j?!rkcR_OAt87mkGD1oHFK zL$rHaNen3<&m{ zw_YM3VBZq^y?H}%tPIp z+1bEea0vnh))1hn;kbpWa#gJqX;5=LBmv}iaTCn|+zi^>Cy^%uPXuj$UIBgoc1{86 zN%z}s{#|V86)ywa26T^M@|!KclRo1?|9#2*6e+;0>7=XQKQe}7v!)*CNlf0Kmk0cWVK z6teRVv!mBj4UUZb8bYhc2xR)l55@d&SJVKcIW7NTx7Kv3Dv@`fBde8*o!;wHKV4(c zYoDBA8=VF_x_)JMYX4Zlhvw1m379+ihe-ZZQBhuqrFC<6GA3g{|2Tz8W%oZM{E+}c z{32g3-!n`u!VU3D^g^{VLqZ4g^$llc_!gXHf&M^)pd0J!m$`qxZK>Yy_e_7tg2ZOK zIz%y*MJL@Hn1DgoTILnH{kcQ_7bT@LKd{IsJBr_P^XGr_BY=h8`Hhla6tw>OZW=qh zhmaPe#AK7G9M4Ix1U~uDk9ys|Kj9XtwUS*Sv?RPI9$W(GH<(YN1x*;a4Lfh_<)|!l zB|IN_`8x#zYh?mxk_KZ)r}0wee^=BE1i z$wWOpSz%T%1M{yhEim>^gtVyBJUK%{z0=JU$zla}gMmv#>iPWr!emV~p5Deo92*2K z`x}$Zz&;+HpLrjwmy-Zm)}C6H&xBC{cUXjOlJG_`cvmmsW_AE+@EeodUl$#!bmoU$ z%>1j2*JOa6lM|e&7!n{&qJ4NxHv~GpWj#JWAR-<>p&zoxakCAPS_l@clO@3*UOaCo z&Q_aKp7i_ntv5U0efXdUV(kNS48RPMTjTc32asAl#@u)6s*>vK893y`;Vb}4_aSN$ zwX4rS$zH3-N#=>zb1oG)6Q-kg48qJntyakIH|`YMp7r0u*gVBlvQ^>i@<_87E}UXyt0bEBN|S<8^F$4dc;r|dLbsg z{q+G_-iuZ}U=11{^)=bZARV$#f50&q$f6iNJGZHF-!UKm-dk)|j!tt9$dJ=S`7m*z zvS_kC^>p$QA(Q*6UEJyWy7()~W!Cv;Qf$m82x}i2Rks6O4Dt)GN-rDUg`9vTpGw3w zZ|K#Z`W3RxE+XO;9>#P?O{84LWnNN#e+7WA*oGL8frqlP&`t9E^2OId#GKDmML|yw zJtHG#a418GERagD4wjaj$LJy*T`d)Kcd91|JnEOn_y7u_U4e*EB7#YYmWz{jHz`st zS%+g4u~n|ePqNis+ijeI3D>iOp#CjBWf$OgIBcX2U3n;S9~F|S@UHQMzk6r-Ia%Fi zb?6Dq>Gm4s$7h)X8usJ6V526h=Roxo0N)^cEJB7Zr<>e@R0cH(hqb+RuB6A3o7=!LyxP! zm$Q90x3VAKa68SIQX5zwA;i7?@rU})O5YnPA?QnHj4_9&oCY^iymapFow|s)h)Azj zF1kSLwu>PV8E*snxHK3n5Yi6?FME`i3oE5-HS-S2GT#1*{q5Vgxy8ldb{bJ9JZ^)I z7YCam0KBbc?teX1?X$A8TL8I6Z?dYgZ(!g@hSDtqWK{?>O?{)I#loYa_=TJsbvQW8 z$1u}mV;*UY(Q0UFwzjp^z52$dUQ$?y+nY9C6V5cqZ8=4&p`jt@xSg&_JUu-gBWS}% z#3)P8#q}X8OZM0Xo19aR7&a~jsN~H^WKv(>(=27&df$MLGEq5uXMNS~R4`&Gy&3X~ zO4pY5_WBoJQA6jS6d~j1f9|v&Slikf)6wBidTanr&qBk=mN%D(F5%#OuBbq#p`n2Y z(azO`G9NAU`r7gS#%X?nKOB2Yh!={ur>YurN{x<=F7SGp7<#ZDKY#XGex;O*tjG}` z92np-8KC-{?EFMgQ5HH?-iBPxdvXArfJ)1rpJ5D@+Y`9CopowW0(u510SQs(xiDF7 z!@H{$K+gFA)l7sqLBOk*?hYKz&CTiX#et8yycLNwT<8!4PXx8NxI1)7^7j)K5+49a zrVw{SPfdLZX8B8*{f{0#w5k*nF&(-H3|!vj|ELn=wECl!=w~ zQ{JZksTSnJ)l+cic=`K>J$?2JjYGdlmW7m==$2OhludR9@)Dt-yCJ)CL|B+v(xq)1 z15qviYIijyDH->bgiJX@j~h2x^KOZUmfYkoA3mIEWDl)irN~<&3JousB76S?Rmq?T zSAKZ^UU&REFSL5deyxoL!NwU0l1mh!u(!9@a$X}*&N}d=yXOo0@Z*J-0>Z*J_4wSX z<#zb&l|^p=$6meai>||S4bUa^(vmTY>NY*fApvtCw_Zp{#vgpg+jny*on{O4tEt)9 zc4&mJHmA!c_!bs2TU72cPP&$S(5;v3E;QtUE%^eOs7XvroM$~>GB-b8qGAu86WFk` z-JiTG_9sT8I}HHuQULXm1p2{r0RLGh9Q=wF+I1QmA4j2;7cIeZ@eE1r%v z$xV2qtV}8sS<&K)zXB2jxn%M^@0Fw76>x1_q;Wey1C^^C6oa*S{^$EZf-LR#r@jqp zE$kqppqu=@x>_7@c6QbgV?*?ofM#y3WRjMj|Lx(9MSW{4g~!1G=FvV)&0-S!e6kCs zFfj#j)hUtdI05MNQhM^5Xb^p z5dgl$4wZg>%x7oCXQN}z_Bjg^nV>*|?}6r+n?~G?-p9wVrBn3fh6T6}=G)oD4I4jL zz*OsiHDj+J&Y2X>fP)DmAcTRawX-wzBW?8^n!UX}y&4YzP*m!nx9R8S#|>5+I*#88 zV=%OB;KZ5vB=-$kS`Tno6hdbhtRB4t;Vb#Za2oNT_;r@in>-MT>Z@QHoEADGnQUJmRtB*r*y4b+3X zLDW5~Bj1P=6rf@qZ6n>qWM04Kh3PyvJ`M}E#DdeSScnW56@ z!A_972t0x0@X!(TpEzO?5+!x@dw1@jp`j%}*BA>`ojM0Zjk@_h)%VStPnZ`jC_a8H@#?Et(|tQTzG1m6fqcEjlD!pVyr3K$ zVu$21oUcy_xs8~3E-d0@x!rI#LJO1{TxYIn`onIP4IriwaF=HTR1bRanW z^JfjPa-$7r2xR;j83lzxqy!jRaQVk9F+jy*B=z&*HF2XA6Z7oueq2ykNFnqK2c>L; zFciNSf>5|hIhyqIr_p7a;@$H!u|fGHHls~JI{L-*416TzC{aqXQ6Z-EcJZ7Ox6pFK ztsB9%7K)WNWakcUW9up{EuEU4Mw588d_f_vok?H0bTvsK8R7#B96DU zv=ULWFr=cPC@~xy9P_-CK2W;g{B50)ZO!Cl^@L22mW^!SJNh_=N zZF(6u#j8DPYCJAn@=tPhwb>XSR&&bb;${|buoQUn@6D$y$B(-)F*SpD z+gM+pOp-+OSW!`JBT?=9;>n2!%*|T+gle`j4$k%#q$^?JIQaxGCT8aBeXZwD!->er zhm0Hz-E-czAbX!~CwC1$433XqP5MTq?EJ&vQg9@+rwG0zQK48Pd_tP~@l7#carE+4 z1ciH^XlOLV@`~$lkS`~gA080_P_R3Q^P9ZPYhfWFMWx;&&oy<61i!E_BA_@8 zrhK|QeDR&#@eK`}c;r`_-xD=6v9mY#Y^Bph)YWl=f2aDLA7u-G`)C2HtKf#DgA?&a z#U1nQQA7~*z+cS2FDY|zb32@$?q7?C#%1lVr9uF&^19O$@d=u0&-MXZ{l(7Cz?jAk zKvHj}Arrh{gYXlmnHjY;#lxme{ryBxQ%%sF69g{LJV03gW160EA>?Y&7 zsOI-RDX2gWQ3pNKMT4{Op;J*#8Vud z^~FT})~#mJq(&d3RX0jEzJB*y`?V3{q^+LV?fY|eeQWzY8hXiWmwr46rRfeN`qNhh z?Lrp^7Z(zd&d!3|9@_oU*wXO^;6=@wETKHj6 zk_nH{i2%8J(y%E&T7L$q%cD`tg2yhmZW%(+x3sY-vG}z*H8nI>vZMaBJSF8FI2;T0 zn~R;ADTzo)C1IDJZ=8!7R=d@Bcm^bnl7k}*8f|TH7FF_YRc6X>a&s*zZRC^0IsrFe z*L->M9*9n9Bj&sQSGpS$4q~Ypdph{X;1sAAyamAQyu8Pc9=XLv zbPw%Z6R^AjLOC3-ml7}b(++c1m1uV@EG>;58baI6v9dIB!W{*o0MvbHfEC(iwl&bl z!x=A^nwgzNsavrX#o4^O6A9U=`#7}FJas$OI|N^FG}p`9fIBe@57Sj?3`?}(zCw8i-IZ*{?Xi-dS+peqXzuT={7~Qo;9Jw~;r-tV$>L#Dk(ntvi z6l(ZZ=y-TK++4ap*7{TO*PdlN8X88CMh#fo*-b~PFN{Q;<=-TG1$@Dn$4xBlgPdH< zq5f?UfFdz6 zUU|YLfsuZ^;FJ`sUB3IdL^L!Cia*e=&JZn|`2t(|{Ruc;EmVjBJ_X%4Ahe+g37zRl zZevpwV`Cz1ZEX%yo^StR&#f`#D+I@OO)=m3kJKbCpjWS6y|S{l2GvJ&@1+mqE8xp| zwO-f`TaD+~T z0TmTWRH9CAjC&0>p+kD_*)x&{4;op`-l>7bx#BLtdeaJfS@9G%K#@gZowh6n{D=kxKM(sLt zA199A0;MCISPkF6fTP2yU%p)NfUE#6R3113d*^FrCe!WPb6~$Vy)p`!9d#UX^`dIs8+X?dG?>GJcN4Mct_W!6}&t?F@War5&pUA7vz7!?xR4z`Gx z{`!lSbqzB?2#a?(5=iC^Mn>?SXrmX)Eo*ATL-d>2J^W&mba*J_a&Qq4o9{s9i7}sidIDzLnMCJM0ZScmM@L5wGvh)mT*I?XO&0T6)T1`ecuyi89ER&2x2Nm@zZI;K|R7ielmlOKA~% z)2f3PWDF=Qac}P%e|yqmvh0$!!hA;&AR(?ZS@?y53JD)rq6Y>7va@TZ&1c7}stp7g zVOMD7P}4?uU}py*ZLD-N)>p@)q6&`z4mHnqx^spTKjpik$1=EbekE3uBOy?x?V{JLXdTM$(~zKxLSx^|h|frX!7qHYD(a?)U#V;)VFv z8eLeNO64nXJjTv$Eidq2)sru`e-~Q*>3cC|&i{=s+gVMc#4Z>|{`&3_gO9n6|CCxH zPXx61|9LoHxn~J~>nMF4MCAX=qwjy&%UkCT*W5((5Y{X*QByq$ry!YwxV$yw7z9yZT`W38;x;kVd3svx;^4}0>cM5T!_I%gjYU& zYDX^@e^F5pEruhuJy#Xz0W%e309IuI!vWU6RajxK51wyRLc)DzBtqNv1Se;rTGxK1 zWAd)oL;*Y`-*LpOVS;XJsedb8o%T`}t;ju_QTPZWzDfmQ_KU3-5jf(B8ku^KWN&M% z--A(*Jn$U_c*Opj6053VwK%t_Gr+}P-Y4^07})9*ORN|N{T1-P6^v(#^E9)Tny=FE z+w>O-`JaJ$WCdx~R!4N~n~;BenHxc$57^9nuyhPgS;l%SU7sr*Zd5p?M$9*DVg&@_ zJ9dzKQ~TNH^n(6x0$5NSemMlR;54`egatQC9cX{}1l$NcaI!dH>kG8^i`KNUzcCKJ zny#)$FVdzRI6eXS$B10^>=_j#N^3X?35h!!%~xRC_#8q%$XH4XH?G0*hdR#~fEb@x zW)$s)kbxA%bDAU-K21K7nObM)-!s4wIiDe{=m=%`hW?2LA-Y7Zs3| zIj5eFYIt#jxgm3&;OMi#%))ZLSlAD0U&BK~pWozJf@b6l+Ahx(XQb@`o1T~ z2+#%Ln!GsHnVhVEi_W;N<1RSK1=ATzl``q=sw4GpsjGKdr2z$}G#`B@?991yBlt{GRB5SrXS#kZ_-;MvumIPY!FxU9^)rsZj*EH5AgKtor@H$3 zVOT|nmiZ(L(3xiq0d7FNBFLn1GNgd71nuZ#5<&oO>$qe~db-;0S{nlk#?lNX7ADt6 zHggIHs2)p`rx1ZfdNIaZmeut!@=(BfS)A4BJKn9;1c0PaP|vP~H0XJkSj+^ENqKVR(9xe7`ufHJNk*%0I*zft=ocajLCLZP=G?3EUOQk{_Wt9?L*9^YgVNCm z7XtA7XYfms!I#4g?id=ymI1xVQ!~%v2nwvZL?9-AtUYw(2$COcEQ2lspu!B^jJ5H> zGapsTmcgdym6$O%gjQ);*=3MTF8-jTQNCY{wBuM)lr7eVX8_;RG#2YVcS2a00aD7b zL9s|6JENBNEv0<;09B(0Q0@Hi;e*!9O-Pkp&4dM{DkFB@0Wu{Fqjw}{`QJ7dU$F@Y ze+DQ((LkKOU_Yj~w6x?x_E{$YBL)J@%2bE{37=;ODQvlF9*45R>s74vTHYx&;y-fa zNIw7{(UP8TU@S2~k;PbzGsmP6Smh6S07y&)4wN1MRXH{!F`{Bn!Jvmfgtn)V+pBa@ zLbjiKs$ZLKFYVX&B5>MPEIawUnpY}j$m#ix-`*4k+5|N<^-r)l>vtGdI<|i|tJVgR z*3NVn`BX?QYXCT11J+|RT~r%X_lYb8!bQ(&WYO5F#qeQ-*ZI+Ckq$uMr$Iq9fFpz4 z=eDkH!#o2i_RSkc=rj|2Du=i@Gi>T4$y@e=F3Sg^qoems(M!WLf=P|I^Z+btQ#vVg z?&v<6elp5_?E48jRrb`bG!ux*YwqHp0Rsik2@Z}bNlh=wtg-R&DiIAz|%flfqeu9Er20*8ojNz$jkmwz6%Nn3yppA%}}w3CDaQbt=MN<5mPc( z>VKJ%YVpeyTFVjZxV=4t7j;`XonzWC2EiNZG$(+V)&*R3UuV2)Bt)#mN*@}SGZ`2^ z->;+bx|~vR_vobS{!x+xJems~oo_Yp`J#sYRRH6`rD^0L5giBM18mEmf@l~(Q%Yp% ztIU@U2YgGn*dZP!4FLZT%UvcuJwx?fxP}U$4LLx^<~RxqWBqoCZizE33yYGAi->7s zJ8sb~15gks{ZRl?&k5Seg@yYNeXbc9ahT-1o)lKBwa6R#`SV`TuoVC#qd+B7>b$L@ z@&ysD!kqr69CH9V9&Y3eFRux38K4HaR9B1pXy0`M@ogk7X~GiqJ}vFVrTNk@D8GFK z!4#2B2{i?jnL0W2Gb&<2yEysT%<>`Z4(dv!~{ zz`lL^DDMIp69w65C({Th0> zx99Ggx-5WcI?xnUYpballRaZV0aFhCbS8ZV;y!+CmOMEI9Als;`D{J%AU2_NOB}6N zNim)@s1)-QZ=N%q(PNuozP>uFy}CPgddWX(Cu#q)6CSAufgJ~|bed~~3jiFstj9P* znN%F_v3!8Hk=NV$W7og{i#L)a{-~sYRMO5ai$$0*U~L#OHiTw96FsxrvE!wN@WTFE zhWVtDjI_>dO`cURCnvkzl?@FCK6-w^LU1-R>Ld$!T3cJ^j1E4i=jmUbc887piBW0! zGUH&BBw^(+fU}U%@6~{WH#M{P4Yq8H59%5`kZ;iNc=*Dq!2h614k9V2knLZ)4X6@H z9qmG%^No#-tG(|zd8&I~b&3nfp6a{RSVaAttKKRe*PfzqzoWf97>C1Ky>@iGBr4XC z`UPgcp6ozjV2fGqsh3)APt;mrYfwBv4`CdGZntl9P8*RQF&%hkw97&7%o&SS8|oIZONP*OiwLekVzNg~}Q z#|4Edbv5*wSS4mFrU82>Gi2a~6|$1zVd-|w^jaC;o979lFu~rxd-s^hwwM;;-CH~# zP%yB)VV~}vNA^4mxOFm8O|UH^9M#Zw%=4@i+ea>@CSFk2w97J%;?O=^b)Uu|D)U+njZzNAcv zqm{8=wZLQ&sN7Um0v7<|)XjXM5PxyqIbLfD7Ma%VyuN=^ny=VYVCOv`d#)P_MfK#m z9wrb79D(vXt$e=U)qZ;h)>QCoPzF@?n;*T+D<{gt#KdzRE+=3P+m@4_)^*(&o5YAW zY#x|C&hN1k`e5vRlWYO=##9i2m2E zU4wGXgSG(S#h&b@;4Oii$BZO2Xi8qx0ai7 z+!`!^&r#ckb$Npb2b@ty>$`qu1*Oz|r-R`ZeC$ zl&^%H^-|}dmVE@7Jkskg#{BRSp91V{jG!{Ox@Kw?P=I%hdh}=qlJo%!G@JA6jo6Xm z>5MN1Sqt0P!P<`Mmw3{e^VXVh1t*V0Km~^Ai~=*%CZPTn0WX~}Er8`bA^Gs>Q)1e` zTmYao#6THr#{wjVA7MRvuZszI#_Hw^I|o+xEq-@xPeMl|6zhqg5?Cz3ZwFR-OKq== zV=lhgGCQOGk>|_Gx75rZkTZee_gPZXspcgCBA5;$?yRuU?JxKtxi&Lkh>uF(heU8l1GB#c$UaP2u zh(k4p^`=6*1b_dosGgzas)uywn1opXFu@UyGiX;NfhGG-5>fB-si%cdI>!F=@skHj zMw^Mxldj%&`o~U+_i1OkI^RI?6MODUNj>&gK3|FI_ue!BT5M6WV_|VIR0Xbjd3lAo zGi+>Z+|ANtRI+M+`EzozXXGxa2sYm!LMQYn?1`y26YPz&x0sdOAF#N-ZtJAtq_3|J zcqe2K2LeS!L=J(u4!C0^5X}mUil9i?Vx%o9CN?xa-ZeE^qV+uQ43C6>t*z~M69FKR zr1Rz^dbNgMOzjGO`Lep9p#KFlB*380pFfvrIsjaxue#+tr0;97v(#5daRV=FGfAa&0c|O(~`j1GiOBSFYwh=sw!O1DlIL=>DE3eR;9F! zobm)PK;b6!Kg>MH_RL!WG42!00`B>P`0zhiRS4GrDYc|e3`A)m``%h}|HdPcU+?~p z0#*NWAengqb@1bjoq+xKiv8j+BM2h=6zvzycSM;g$ZJW#?$oDBb}8QoxbZbWg37;b z^gCfiemxL1XZUrAIVJh*Qcdumn|kP69*aL{HS30|*M@(;e>R}Q0?Or(clU}R z)%XyFM)+5rR-f1lnLGlWCLq3`Q_x;Bk_9{yvh*e|aY@N?y({nLbbj3wB+|+G`9~A7 z8pzJbR%nC)u#1%RbnEH!j2&axkb$W1ot0aJ;+$#DaJ_fvV50jJEij(*y z5{7;rfJ6$I49Mu}j7RVxod-~Rg4%DM(nZ!7rJ*ToFAuzu5``(P9V&i zV8@xIm5#KOnp)zo)*Hzl8yb29dld)^vyub~>ryH?1?m@LLYFm`elfzOrFp5i!u%jS z17C7+ZLP*i2(}zqn&)QS>h>VdlhESZVpdgGM}6wlDFE3{^YD~eZ9g?{+xa!$I{!8E z_3QgIOE;=_*D^(c5i`Xmj8(6c^S@i)>nODTwQEm2QJ<=-!BYS!fonhGf-Y#~fOHoK zGSCaqjk-d9L1NZ#P~gCG4I(CjoLSe^9WZee%%^r6s2LC7RQ#tqrF#Y7ijIzX5uXu- zHepvTfosB1Kzz_+nI|;#sGzIf6^}=r%gZ%uyO4YT_a~)oj5>J4x(>3wn%a#lTf_fYQ}9jRMUpi_h@9o*L}b&wd;M8ImQ z&$wVlEz0yCkow)#!cuiDn@fMM0+1YSKVe7iF~q;Rwl=A{Vzsg3y}Nhx^vurMo}6E* zirDm87J@(EAG}%U9f1Fsu zWis1yk~Y^YzxYbO0fgnICQ_Uje!IN57%v-S1_(8u)@y)kV2cV zNA~kpy`_GTC*kl1a{2Z3F+fz%op%O`D<^Cetm#`uGjHO&q_3@-Ef7mfb@FWn`ghZQ zTKIW#&;I>G=>^*ZT&qk0GFPsCIeq$TQgQL-+m}p7J73eDq$B+Bv4R>nul#Gs1b|l% z0{%5Qpmz3GHi@a}{i)plWmIMs(7Lw$zjqZO3LGC~=|LuLh0ls9b6*>p9c@Sm690zA zZJ(4eoF+$ZrJTYUOogYUOOkP9;!Rf1m6mk?6H3KH^aqBX;@!Kq zqNSb6YgdT_bR-OUZox;eytGJ%n~B)a!!^VTeM?5AX!?0EPmsau_`8Mx$&iPMkjN3pVP9z*0N>j0%t< zM4Sga86d6$H8m1yR8S%H(j-x$JvV4!ql^M|WUAkb=SH=SECDs)uU>sETkl7Vi9xSi zx;Ebh3hwDd+ZW5Kw{L#}SCfe@zKGCJI->AkS!wC3^FO&E1yIP;Ubyg0eOGsQ)hS=H~ODN4^T~X(<4R z3$N2ZJ4g~Ve2*oIAl&)t>X$P!=YVA?3lsp<&!4nawKPCY^8u#TOn*@f@apvo^BS9= zzMTv^=k-g_Baf*y?qz8r8XMp;0I~kK=mi)S1+eq|1hRq?@D1vzFJHYX2O2tPskySV zFU*b#cBwmdF&sJ4lB!_~f{`P@D;|aka^r@2nLU)V!3l>Qg8|2%ic=ud1J)*zgl8FE zf~+(BgTRTOd!dp7K;QYRPdRP@b2CG?4}=DQh&}>-FvT(Wei+p1ncD|}69r1^Yh4)w zu&e{u6QHp7yRAFlEPHs8z*azfZq8-~Ul9rUd3Vq?*>#}E(!|E<85zB^U-&@*th?#z zGRv-m28LAN_jCeSuE#{~pN9zqe1IF$()55b8PrE8?PsLN8?k^Gn&bTWLpeoHp`;=x z=W?;*V0zIrNbdPv?(cx2Bh1t{VCMjG&StX;Cb$mpYVY5_&&J1xIIAgZX+8RMmkpi_ zdOi^T2CNPsUV_fxb|w#aMfe7x<$;F^ApN`I;x~w2(d1+`j0{ni`{Z5K9qsmJDY{d+ z^c6T92HgDEfefCQ$O(jwk+)4hfcf{Ifz3Aor?fy%(6(LLjbQP5Zj+pl6l{!>Nnv0? z0Cm19uw=Rnou7);JRqg+bQE|V@%i}?=3O@pzm1$p(=2*~Rwq}2t{Twxz_P&L;6ugF zoNaTxuvqN&N-ZV?CeA*-aw$7Ieh^WLh=}NHMpekc&TV0x2D}bLpi+SZ6^+b6gc<^^ z4O;hBU`hE<)%ImVftCZ3HNY4BVZ1|qQD(eR7u8ou1};9-7J<6XLLd}@sQUJuJJeDY zUZmp}I39+F4}&Px2X2JxMk(V*PW75VmYdL6b#+ltNMJwl^ZD|dpKV8(Sz_)#*qp=w zzoFXT=fY1PAY>u80l-hA@^TVrx;BVZ!J!ZKJ3G@LSJcoDjw9rMC@I%2 zxKDSu7EBtk5>870}b@JunjxRLL_hj(#mg`k&DAC$G|fJ zaDMoBkI&&#$_qeR|NhDjrK%bp7GteY3Y=Ek;@k#eZri%tf;8(Zt(Gj%4~D11XQOl*bQ~iGcdpem4S7s zXsvg8hV;`4=Kp?H=9_MAjG)Y@{PM-WyL%f|Rkd6RcX^?mp(VKWfVNu_8R0PBn*KZ77xp70t z&dz6HX~`z{9BomdAm#5(*$9KWx}FST913N9j`M862$~H<8}&5JPa67O)oHJDG&dHm zAVqGTg8t8qESFp-_4z11LP-*-4!{{Os7GSEz-5F(PiM=(-;s)H*YLM8n!m!YC-fpKno9{^$P!w0MD0Z8Or z@#Q)>%z@C1J32t*8wzm8+rmQM_Z#Iqm zJW%6-tO(*O->|S8Pm}BJj`cjtQ=~2UHlVSyNk{~=w;$er`~p3+A0(c4idPcc#v>vl z5$z!A>$h)4t?w*BRX9}nkkpW`=Hv4&QkB$!vUWHx<1{J4j=f{cUVGFauC!6 z+0OGeC}3JYt244VWNO(60?2)!n*b8^V^Mn>q?_SQ%9<`un`Tf@tE$c-{BH(kWFLV5!uxTz*!TEz823`pfcwbk(WiDP_n@mlbzeXHf=w#DqrR{?G>>$+;7^Z z?g@i*O$Zq2sjRTmqJY_kBn%*RJgXOjgo|G7dr}j8+I?@=)3VRy@oxU^Qto zyI?#<&iC~6h!aM_0OfpmU|RU2$?O|{d&7#4Qx<)6vH%ke4Y3nLW$!Yz&-4f|GB9XB zRtecGvZ5y^vjUF_U@RECsE-(b;Deur5vX#iPm5eslyu+8spiWUO5k1$4L{qFFF{e6 ze-4~iWswH`{wfO=wlH9^YiUjKb?#=cs13AU-Tc-gumfyID_V7|!%UZi z&z?ODr$0tUI{RCzMZSRIhlLP<0wbaA4dpA)yZ~>P={)bbtux1O>FITT5KB!}S|g@2 zO{}f1j;>7BL`usmNnADi)(SQ%80x&sycJY0@lTaB9!VVn^Ff5gK869X5MqO2L)_nQ2VoA$S z+RgLw#V4gD7q#{`6_n!VFOoSIApqZ+2!IqGelHDS$vL~ifK+BXIyUd%F=sjTjL<7Aua)uviDMFqHm zUI3G2pZnc<^}g2AukXADF$8ib7VNJmX7HUh-;{(0kaCR6k55#n!tq%5iJk;7i9~k! z1cumg#8T7Ltyxe#)s9rKQG9rzWB!S-P6x3aJ-koYUUmM=-L*eu3E9i`X zlmV+?k0~3B<69~!S0O;aCN5VWNJ)UAT)eAIXEEKW1dr}FF`>u7rRP_Hl}hkQkM!Bt zh=O%gD%r59z%53TjEPQ{)^KK@=no4kMe>No_f% znY;Z0I%B(D!H(PeArhex%7DY9JZ$*2OXoa9E|q}BWNG;QdLG=EUi;`Al&<&e*<%Dd z*|nY0_SQHYt`=m1$hIhe5xl7QAUi|^t`Gvi+M|4jm1i>^10v9A1Mz1OLzyXA){+&r zcvdLtzZPAVVP}5}i3WZbKEXHl25~UtH;g@UVSIkR2?|WF1WXTRmM?KT_uEk+F3iI+ zeRpTU69C%joQK&7C>nz*d!aWqlOL=z+>aX@=Sy5gm_^;Y+aR@o`()$hh7(w2b~K+Y z)=1!oL*WknK!XHH#Ex=k!)nr0@fhae$B*aVvM0dmF}oD?6&6V#&H^FfB+MP;Z=ddp z%s;TAj8g~jAHFUgL>5S7n3;J55@uLDA+!&Ti~!`ucJAEwa`B^;uwG4o(f}p`q$o`g zZ*;IE2iVYpiIQ<+w6^c_sfQ4qyu9)+Hx-Y*=}jFhBZA8jhKL;~?h%?hNKKsxxi-iO zLO{m>6;Q|xRm&`4KXqk(&~u`{=&Xhg|Bgz@A9x*YU2aT4WAWuhZ*LTFNp`sQrol`% zHEc#9);vp1wMGJ@ROCVU-U0lOs$*&%Chi^2p;Qel5r`i_Va9e`NwIX%B?kJX+ zXz4gCUbE}GV`|;}6n3iujbhVjBC82WHLK+D%?&VXVgdUdSF79>8E|s{R`~NN6LPSo znkc#&bi#7XPTj#HS05dG=8rl>XBv7K0pgqhr!#Z3u%M4{xKPq(eaVl1q z`!m_~c(B$Z@j^|PjyUID=|&`t^6^#kc`Yu3sXe|5PUtkid9Hy+@g@`?ZL2c9RyA|; z@~Vfb{S5|7BMn>MQ6}W&UF^)zWy&!jIR{b4x}CQh@|q?QM^7=UY$yQFX z_J-$tx7&0G`0tYV-PhXeDk;K-zo56D`A)dtBp0h}g}MuxXO{?VII-O}fs&iunsAze z_{I;)mR>P7umh^t_=1i-v(T|V(}dktnJJ#WWVkd!c?sJ&ILKN-Xh?e{L7ZI8Z*XRH zTW(e0tD5&JxK=tYQBn)a_@f{YSBKhp&L!g2xqQP~8wT`7C0-UXMj&ZwRDGerKo#aD zhNKE~-*+N}5tZT9uE<&+n#LDC2gL-}`sTfXzF*?+HBgDqG!r;TFv5jhpszahVZinuKESB4J4V2rKof^Hr@e}R)WFMIkX+UY| z{mdfgVJD-!A1%o~SGs)3*gY0x8?|wlqpG58GbSASIy*bN%@P8JZL#k5K3(Ew&0JXz zj0vq~(6-E7@dazP#gis5=d_jVo1Q#ix?m)iiJcw|MN!B}=V0vy4*LZUPGVTx#Ar4T zpgKOnWPO{@=eTf^{VhCF&LQ_4Gh18yUHG@bbh>N}SCkbU(6*j~zqkYvNq|Jh3Op0t zOq0sqJj)W6XbW50Ok%ri(W+o`b6e4eaCvdlcuK~^{T|_l_(7|()vuZ*PD)lqqaR(S z(+doi8>ni5gEb7y-gDE-xuA3x{CX%vH)*Rc!hYf8+d`+8!(uC)+gJK_ga=U^LZMJ` zDJ0;JJ}+C3Jr;HfjX*>%I#Th^VgFe}S|{huS-PtBwI=#U*~BGJEuE(h5NRPaXJ(Up?15chQZ zd5Kmzcrh5abI-4L1v670@@8ETtRLLJH5M_ysquiTd|QUAfKRoAZwFjIA^6`XI!Uo3 z_*u_d_*=S*$5*b&$4ep?`1e7mFQDMv@WW9{r-{1v`UIO&(Yla=0klT5;(l*9=t-K8Y)qHnguy9W*nPm;X9=8uhxFwhU|`=aw#nV2aC*U1|jDPik z)YS_LvDv5JugR93Nu0HK*i2QluIq>N(NxTzW~5|;eOIQ0j_B=8 zwb@Kh%sictLF#>=32$gW`CnH~jyk^bF2(Y~+mL+;&az8Bd+X;~LfMe_9sc`$x?x*! zQ+w0*g_6p{9jbdOCS109M2oh zW?mhZaj0nU&x|Cy#=ppZ!)Eai`EsSdhNJhJdXwE(b?YNHzP?NpjMY*tAD=x#2&wDk zqDH>9`T7oIoWjrv{58{&VIEPr<3o+IMte-jb~|Z)?Rd{(;e>66xq_&X!o7g*cf(mF zUF$z%KD4oZZD||#-Z2TE4v+e;mT%YTvsdBV1;g$1**`tej-udhe4#fbbMqqR&Gqu- zI9}xOgOB~)u+?&2w{G8g9-lOFMU)PGQfSgeXQiMVo!Xk6AHlw^V?2IwUEF!#hQ;H( zUnMVT)!=o8Bj6g%6Mwh1@rl{X9V1*v+EXkJDJJM28S%1Fc@2G;B3VJjiaAv*O(P@xbA=&#MvaKE*@!nO;BgScc~a{jD$l`-!6 zuh9@3^rvg655=*CqE)3&a$#hwT9IDOvzATxmQkd|7JhrqH2l|ir2TjBJo*(V;4A9* z|3niM(q+(T%-5P9vgYY#>!(LaJ!gbtl*{U#X9;sxH>W(-Hti}#;$}PTUmc559Xv(0 zCt=CvceZC6-84q~u2_2xuTPVSKO?)y>j6|6nLO{tzYmD9CSlb3oZ#cP82+?3w1I01 zspZ{+FvgeJZOvPlrdEnjHuJAa?$Qp}S%H^RKB1gSoW%W>Av>W>%q;$W00_q3H!FE(Q!q8cb1t92=clGyG>%cz#mh!~v0yfx>s)l1p6Sh}gke(r zcW`<0YDCt6@eHA5;Kio0-qmvHN2+p!RZc>S%A>cmo7SB&*Mm1t5ugdB82);|IO^+O z9PiZyCT?z)z``K%Va0GP>K?AF+`#0gsrjz!!L4fCi??U;bB;QYOD=6|ZY+oUaL6fV zH+@cHJ&HX2pOM;Tdw06hv3lnGgO%i0mz-}T_J+|XD6~gOa$*|$(>)Hvi*vu;`YQaT zEa~+It*3&QssADdMu?u@Le&gal$%$&|uSf|lE~&+9ZkbukuBYUK*~ zBK>RV>L6E@eyUbD=0cCOJ@7a(n%Xe;i zg9iTJJM>RDhVJA@Gu||$jX%04yyMN9Rsr%s?;U@-<^R_${eQnnDvxXJd(s1YhOe6jwPILkC9j*n$eYdH)T&g-=vShQ{3+XdyS5hpM(j9vObj z_P1rcKB{e7=GebDaB1l0GxXdRp#xVUCWJ0^)d98lMXQ0nwH|kz%d)L)4H(TTNY*T( zMI{fyK?N>LuTB{P*|y9E19%-^FD_f_ShDl=CSec=6i&-JSA%rS0P^ESaKepnh`!S6 z2q(WGrTkYvj+SpPyz5R>jq$M6DZ;EX6QK-H7fFE=_ zv?&co-;8dX6#@~6KS%^6yf%E$HBIwmSH%h&H%Q0C=ksx!?MXvxfX}(l=4tf1)u-F7 z>pIuA$g;42yFtKYmr~Gcn(r?_&Ib9KkJx$-01rd;!d{{#lII1=m(h5?1W5^_=eqy= z;NrkW-Ayk#w8UrvQ?C7Icdn`fWT&g*3(HhPPq8H@Bv;~T9Jl8z^+{UH9t)pZdV3iQ zu*5YHps=_PB&EU`cU4K4)k$Apk-6^SAqDcf0xfM;k4aSZOAVdln5e~^jl}^>;J(HR zHb{k=i|{=7QqBz0P+nHkAhD{ed^7KuuuZ>P?QDkbYe@RVy%tF5DhW*ase@t*agDh7 z5`6jM_IgEyJt5QQp!n(X^?~{7lNC^eMq1LYmNjzSaRt)sMiHGXGlyaMFImq;Tb`98lA}~l>TGnpOu{d>~_;uB(l%yKJQ?bW{J!jvS zW+sMj3%RzAY;;=VpHpEM?|LBP1G=h{P?9zPV9;Gf++Y@YwJkFU5Vv=6mMGN-SO|;P zo9k`K&ck66WU7~)+UW0_+$hwMRX}l}J}WSkoDirr@Bbs?#--WZjoK9QF_63P6JPfL zOhZ+rv5nVw3+979*0Mp2ETCBMPcc;r01Zbqc-9TQ_2+#K_QutaQX^7Mez><+g-uny z6B~3})54w-P6LizuSD%lq@{J-CKLHbo6od#b{<_GZwm7D1-r{CIMu-ru&pdOHJ}Qd zVd;QKmknm zESI_=U*C-(hVo;83{edwM(RCB%=iQ0tc{KDNtm`GJa|+bgMwiYpU2OA{P#XT?siF7 zoqjoDsbNyjQ}ALqP=Xi1{(x@bYv1VVE_Jqq3mogSRy(!9O;hJE67ay(^(1)GvzSKP z$-r4u4nAFWo90QiAPO|>Su$RP(?_bxiE~VVRTv_pjMZ%;egfahFLlA>`zsMR9>wrm zyvh&=lGRE#hSi=erovJ*^C+SZEz1{g0i*?ay-f6kOE%~1R*qo zzJuNPMQ}gWVTMCF7VDNJdt6DyfnlRK9{HI7c=@VbU1DTa(A?&2IQWz;b{m&8ymXc~ zsGhgt96S4(%RDPB?IOhGb$*wH9~<8^D(Je%xanayg@V1euWxu`I0%ssRh#k=t)!*l zn6n(a?Oo%wK&csm(?$dK@fDw!Tw4sPR>PHWgF-wI;8Zik=Fd{4VR#G);0TJ*PMhZZv$&+{4qSy8JA0tW7BIlzOoCJdnMKCzxc+^w zts#br2}fK8!c8kAt@WK`2OE%iKR6sx9FFWjBau~nY2u_^W6^lkano2@u!Z;V_(6%* z?z8c8f;v^!+HtxeWPb8P$b?YpI3DVlQ9K0H*v>KDY&T1HlZLOHd|X zF*7&!^XDx+-3W)G!nV<-e=WVQ^HL*eeE`OThaK}eO>H%ZP7zet52P$Lp!hRvTAw=( z_A0k@ysAfk^&AdP0o(XNg*g^woquP1`%6CaQB$v(?;;N0;+aY#GWO2eo{Di%hSN9r zcuOZfZ$v^|LvHri`MXlg_TTxZS?1@^coq#E*K0ZsE!SviW2h4bGbnD|vG7KHj8`^k zVF=wp7@4a^7wDy#XFBdHj?A-`qHMA}ZTkH5bOn{QcDZ4zpw@eg`ZO0x>Z;4=OATo3 zIX}ZdQLclSt%X%DVS_5)ZmXPzUo(GgEwDlj=P^|$^7HXwgJ&$xzRy^_PS5i*@M;~S zrR6JMFpzfm9v$QhCOm=IpdKehX@_%;^t8XGv(1bXZ419t2&wcENROmvU@8J`T2ixi z$qG%|BI=J_Np68*30ij;86Yxe07;es1kU&NWYg^h#TR{cI?Q$(v{@bM+UW&YXZfB} zVP&yk@<+5CJ%w|--~{JFz^OJ?=X8q&+1a6#prZU~1;GK~{0DaSUjYZ%13;e-gO`o2 zZAntB8#l09Xwl@2T0;;Oy#NtmwFJnJJ}qWXgV-mt_6dW|F>c2cAcNdnt0U7PFnz)upe9)y^?dVkZ7HG(-X@oTceh{yt-Sb4veGd-!7ek%p_u&#BtMv03mo|p0(vAY`#-NFSyx+tvOEL zl>D~)wpbA6enO+6vExxzw`9XxiCFSh*ds2*SBJ=JndGBqH8Ngc;P_d<%(TGr6>Qjs;CR!X9}2_=vu$c?VqF=t1o8a5yd#eN9uJyaHBvP) z1AoPYrI4U13L^TD`%IQ>wA)n5Vtj%mJ$!>lNg28CJ%H5CdXZ1|F(9j#54KQ;|Ef$t}A z#YSR>?#^vXSwpCdb8|dg95t#he}UtY`pG1D#@k(%-I3Gk2MC*as&c(HF#|*)lvEEg zJhq21+b5A~5kT2NUHbFM_p;!;J>(xTHM8wSvo|g|Z_UF&hN}eE9KKkz>qrQ!d@|Aw z?{r0yWWzmP3taEQGl4?_a?KMNt;um-;ww4<4rutR$pebA2I2vpZ))@uY0Znzsg^HmzCc<>O+)txvOo(o zikxiR+_;kk+Of=n=(b0@_5lRXgUk%_))Or3$zf|C)-->xZ~hRn-CL}hkM*UVe|;!Y z&&@m<>TT1y1w8p4#L|l8nE4mJfzx3Jyn!T?w7h}1y+ctC4q&WyyQuxme6ZA&e@o)a za3{7RFQ;6wt7~U_!EU{?NHXB9RXkkcTm?0(E(JZXo#XOy!Z#T}sPen%Ii<1~g58i~ zcAl|=D?M*~C!@bLV~X+5v+Sz5gT|b_0YO3p)`uayEooh3bVP+6%57^vc{70HN$pzw zPE{j&;7G?eu$6IHFTt}sW9_|-Hb5dIFhm2%o0()7)Q4}1^WVTgbS8(5*YcLkv=X9w zwoA(F3pPr0w|Q@fO}^8F`C|p!7G$;d^>u-KA^{G0`t=1+JJV>ElyF^2IW;^QsULXt zpeV-;(nQMQP4dRgtXfw0DyYWXX-CP~lswN{A9Sy!!7h9${IRvq0FHHwp*(OW^dy+v zzA2pFCjPqVhVe{4WRHwwLpEijo!wB>0XumwyUE1J8W0H%Pc`YXI1e~#lsX5k*M!Kj z77f}3lD{t6eWpHDrKX{GaM})D%V}&z0k?HHpd|+mQEcha06NYc0g^+uw;f&Oy zvn^ee!QqzS3|_ypnZ*|*NhvpL2{>^~FN8GMSa^z`Uw-I2q4{WH%(kC7DaK6;8D0F# z3Vc7i!26@gH@~@_)EP}I6H4LI5 z&v|!!Y3Z%CMSKl7rZCRC7>>6^1$`_ifyO0?B7QA!Zoy1p~uiCA& z$krkoH3;HJGAu55Wt*h8Pd4(rMlK z=b5lyLw2wmHNq9ND(@BjZpNsy!>vtv zj2hUvDJXV^oqTI}_via48}6x9`e}G1S6EJk?7r0{RUL`cr$s_AaQAA!x<`9~f79)N zcPmoRJdYLn$aGRR=y{R-xatRq>$I8idbxmW;%Od?*?3}huciibe)Os+T$=rwRKVAt zdJ&~8PrJepu}X4vX4cxse|hfF;2ui0c}BgB{M}Nms!usT(qB%}yQ5SJ-sFE3K&!!c zCAFRXZgbpaWbpyr-Ae-bu(oxc8hHDjgYC3#^BR(6fttUxPwW5^^T46g|r0(QuU^NTmqrf{6!L+A?ecI6-v|4(9E90alpxE>x_kMazIcXK9yiPg zwIzFC%V*RwGUXlnY6CI90?u_(!|KJ^0>bd5&ZI;B(Yr*g>L%jbaKX#AMEX#J)0~U9 zEsLyqxoDLqTr0WsO@_f?IzD3O^Th$OK8oO{@S&jls}uCYhZyj zqQ5#{GUL_%(p>-|u%mR04FW>^s`54OgsmEg^Q1;@TbR|0haTUGxu1rZ!HXd!?phuZ(Uk>0kGgmNWkl(^)SWhI|Rl zUocm*G~?T&a<+a!{rFVs)-ric%;3e+;l*|Tv-Vr`r61Eec_xB81g@)fGNfc&33WZ- zkf~0DMT1TE52VN;6-WINP|!dvHqVs#+qF4(# zM*k{v{1+gts;?i4mS9QfQ8^Kc9(~!-Btn!xaA@UB(rxP=_tc&+w$Vc8@k{DC_!7W| zlmAn%*)4@M7?fExckFwk+3`F+(!Pft)v9dvaOJ`g3}CEru79960D(8T^p_IU{eos( zqtfGSIG^KeCF6+rS<&p_EV^CswjSAAwKJ&(&*LjTrfoIhSnO-#%WV7hR5xLY+zCO1 zjZ^}5yXMW3ZSAMxT_Vg;v!N4MR(CN`5$_ zK-F$Y_jpK+efIVX4^nY|%ApT@`0?OPHn{zf6MvP2CUg#$&4!XJ`swy6Pmjo|+nz|> zrA#fsNoDc!;AF;8InF7skv0{cV6Cq0WVP0Wl3uh#-KK|VC|i#^|Ed;S-iK*b84E02 zRq)iG9wzP1Kd7Ve{or3whQC<)q@}x!1)fHE`p%c6vYh-T{ez=&?yAM*vYcUTi63O- zM?Pk~#0FlGxb>uIRI6)w;zRg|Z2Y&7{nt5ZLn|dpjkg+%&GxiEThkJby9_%$A-$N2 zxLRwOK-ME*1d*xi52d$Aut{0jEYRbH`Z?SZ;KsKpcP2+$t=XiT(h9$Q&`B_pxubPL zn7VbK$z4pwIaXK8ql7!LAb)Me&Ha)_!+Yk7SBlHAD%X8fRrXFwzy+or{ei?UN^yUk zpgVI~fhSlo9iV5ysKV&FAo;HCukD5hf-RDhc7Em6?kwKbp;pJp_WD8lj>!)pp=^0K zW>ZKMt|=7C$1X~tP_2o8z#~6W|AM%5@Aim+YkS_xk-QG8dObDmuJzkRkzbH{$cKLs z;OXMKfX}m`u1jB5l?#MIoy47ceHIMe4Y8T5{_&9s6GaB&f>Cpu28quToYz^;avcvP z>Sflxoyg<%(hFKQfop~ST^E_SUB3|p%!^sT;ccj6xI;E36pDw3X;#V`glW!_HdeV) zKP}F*_KMqn*lfk^ova;I^fQ{TR(+?J2WfV*+)zWe=K+AdT>ASYM$kz_9;mnn(N}o6P@~Z7$@N?J0DIz@45FE zO-CkD?lzQU>#@x;xQG3bk7b?VzE*_7%6fC=QxjR+*qeBH%yJ?Uydb}{UT4>ZusQ$<|{;-z=%a*jgi7zH+wAyym#}PeD8K~+F|fbg9ut7U3Sl$(k>-knFn-6Rlbeq9dM++V+? z9%)$)pyK$A>jPD-&ZL>B1il?_$QHbv;gMO=S#L0UPDAbM1&Np^E%tboT}Rb33r(i= zpRA@Ge|yR}oP)y)n>Bt+3zz%o7OYNdLNa~zqt zsgd|s-bGkFSCuT3f^TyEI*@uUL4mU#VsGv@tp*=-ZT=mpu^< z^0|CLcb;if(MRxygz6GR9q;nL?^RWCZe}2xCd$L$MPT;p^G%HDAqXExH(hV zJ;GYL)LZL=Ra(=>!auP}UUPucGVK3aa|vWrEtfB2zPh}eJjxU8D);=h)C)KUf$+c^ z7%0FCiS-u0t>LGqABv0C8f0R1&IwR5zFwIsJl7s})?)PeT(jO%k!G>g(eq=Z1-FrD zZP!%w$iz30XhgQK9U18v41Zs(bu#*ZPPoeJ$)g>nb`~!jRPV8-#56zQ3fsRYia+-R z%dTUpIbNJqdO3NQS9>8qM_0eb^&&oX-s7@9bqeZ-o^k_&C~|qmzb~)b9Lqa$$~W-H z`*$P&P$`G?j8N&YFEWAWeE(Sfe`el3wC1HZtAFk~0)iswiTQH~01XmXR32dFW&=l( zrUC7e#Kz<#Bp;Vlcy-^Z_~L-Q7Pqy~D=>-+E`Ay=7%&b~NF^{;1?({kv^; zc8}O7LypZ_r`ZQIC~O_d@YXYb7K*wXT!##f%)ciY1KOZ4Qd!>9;d-qQdIT3}gAHvb zp9&lHTE@rT+Ip0=lN-SxC89(F=kfdt|M}l8(}&-oXU)CHLbhl8%;PKAnAFxbs0WKQ zdp)XEwsd%>_p$hm z*g?*6_}gK6`pKwpzQ#qvYFONn_ZG*gCS@|OvC+SQ|dZH0{~d`Uwk zZhRWK+^fHl95dpWVljfbx8(@1Cr{+Bu|z=F7=2jLCqaVW{MjTeiptzeMbarQy_MAy zTivsjpuRu){wE}l-XYekN?iAp@2QMz6R!Zrh?IR)!_&$?Hvm&ERQ85o#o(jNLsO~V zh~*Ex{nzjoE0cb%(zieB0ob>FKU#IiDNj$19*%n;@u!>re&k}l1yhf}a71~%FwrJr zbBj$Sv$PJk@5wIL!y0T!7UJI>Yzs(5!vzxd*GBkZAAiW2GZ=iao_Q)}l43-Stg3ud z>t`jGbYdt!(h&+yf4&Qv&dhavo8_o43v!Kszi(ybZ;`CqYmgElXE_ zW_h(n!HDsh^K*+jolN1?2ch9Ze{ehCWOSGoJa2iE=xq97e44|@g9}zP+M9`=Iar>1 zViJ%1aD%3H-1~FO(3YOW=jP9N=HG4~iF1qxr*5a>Vb{ftHm^ebN4<Q-!kIm{%+h0)|R4=F90({bpv~#8}`?=tBPbn7PfJLw$ zu(578^S>)kN8ahQZ~jb)|2(}v^Ldsp&+%)yffE%t$zNgx)0Gya-*hr2M3w6jvBkUU zCS|C#=;FnTBP3Yo1p5747i>=7!Sl=NA1Ln8n?J(y`kLYA&nO(_N@;6jXEMkVOsSfm z2A2q=7X$V7`dX$0U7>Ffm*Y*sA%>*>q#0dayZku;MHG*iVt<*QgPdlMY<$Qz9P)JX z?+%f=CviobI&W1n$5D=vM};~?T*?Cu5}WuNvKE-(etlq`lcj^8Dd4Wu!O4>R#aw%J ze6T=s=du2Ca5yt;!r<+<@ALGE5-vsT5Q7N!yO?7c8;+c}t@ShP=u?8wTyTWKzu^Pu zBsunILhKE*3TjNsu0uprM#H3-?iHaqm6l|$%zfO?UpU8os4-kY%AYZhU`B@m{P$5* zLn@j(RyLA%SxG}vafOIn0<%I6$MDeoZSEadjl$ifS%NH`ykaw_RU}!6JcLPN$(kg} zkrCAh?j*b+7lymI(-do^pHqG*GnLmoQ)#+DtLeZY5qI4{vaj)xJ!S=!ha9?-yur>+fNt%&t0(XwYn%M;=kFpx9(OVjpA&nYOJCx zdr?7BVysL&AWuv+9O}m+%~?ZG_V{?&&(ewu42drZu5mCpWgKrk{PuV~iH>d1NCl&; zU6^HWSV`+rfNDfGr>vgd{egytig*@mq^6nVR^*cV0RnNKgTLoA4De$DWMc5P{}Ss+ zB!K1N_v`sd!ryxx`0ptP=BNMpnBZxG#DU+F3O+eZLv-<zw_q51_tKB|NCarKj+f*JCY45PpmP+Qw{>gg<8gi zgGTuZ>iZU*hoc6|h3;oVw=+ewFa|VqcgevzA;#91a8T-a?NzeVw7F2iPG06W`O8&B zLxs7UCpru9HNo*B+9okC)-o>E>b-J94LDhvTU#twr%&@~>XLoH1}JsnoNPd$`D7%IdqKvUcQU7AxXiQDz$`BR;v9V*O`nY6 z^Hb3RTI?L^9c(V>@OQ_%mba35Z`WW$>$@&sqG23-2+I~H41C(Rb(9^xPAk0CB*IAV z+Jw^KBT=g@(sbb2mjFrs1QcvIZbe-PF z*%VK$O*Q>zc>CP3n46#B0w2N>Pe-IjPSKX%X81GG_H>)idta)(`sT#Zh(|lXe)h)V zZ2Hwl8nJ$K!A6BcWZ#LEb)s(q^SG);b^koaX!s@uU2N*H6!5hfQxrb7+xH%cak83! zqP-YV&cya-_--u8h&;B48~S|3v>e~?`7>+X>7>s@_TEkA#dDCdPepI+c!JQXOBJJj zc3-haSbD|C+z{vTyO!TqjYFC6=t&(LGGFM)$chM#{h zn4t!%E)d=nHZ5a$ea^>_7>@7pz9t559Y(~pfo3wT9=WENVe;?97RyuK{IxO-hp)-$ zel+CJ@wK|U^Y|@HrixznW3Y;mNl{!nCzyW4AI=rNp; zP3oRiv1ieCk{IsSD%!RsS{&%oa^2FlKpNT1lSH62T=hy@^1{u>fx95XXV@J-I)mdu3rCOk-J-SgI?7pGdp{B z{jj3$1)(QWRnzB%o|smpanT7n&ZU5E1>cs_X=E-8L?zXJQ;_>aBVqBSKgDv8#7f^n z(Oz%~SiE!eb}~VSIxH$GsTZX_4=BqV$La^Z@36b!eFCe7^N@cf5Q|KpJ!AwZEZ5aR z(K*2V^euVq2|6wesba9z3hKI!VT;vUoRKCI7@)&nf3b@brRxNN!Snf{eXhMq8&17B zR-+Yb9gh8@7i;ro?t5(-h7_j&ky~?XYwrebnn4Ix z;=2d3BShX=QI;tz&|60^#J0F8PupQLZo~&~yj~tvUAyyOa0-*Sfq68Lclh18>uRrF zapve&+?}1BHD0jlmj~3lWJ|y*V6!m?LK>pu$9qBEIy5FmC#rDJvK-e|v9i0h1oDw6f7$H4tz|5Q zWq9v+AeOi?Kxph>Y|9ABQF~9)Wg~sAs)6UCN;ep-27)vQKJrEO|<{DEhmt4YDq@;o47^q>f>)4p98Jst0r_(=#b zLcM-m)hU3`)eBBUp=r}qQ6jy&J4aXA1ijRON@cEygs}y(BUzZY%zJ5c_Pqz?jRtFMDuv7^~O6x*)hx7{B8K)Wfp4#6)>v z;HD_HpXNlG1-IdqdZTAYV{M*K?79iV9N?ofny{CF?@=lGhHYv)pQQ#GcsclH1)4?2 z$A_}q*5VwaoCfkR0kTL;0Ef z4v2g0V*yIiJwMgf^4gmu>A5Ya0<2wT)OFq}mEW&E>5gBxDeikKzEUA+vm`PtYiGHp z^5x6JRlt8S_1W%toMg9^*A9oq<7lyW&X~R*%Wi;!F=ksBc|<_?5oCe#NR}if^?P=KsY~UPaPV$?Gmt z8g9E#-_<8UDx3m%Xc>@tQYpr%$9!)R;1K2Exebuz4$$RjF6IktZ*2`Dqna28>9bBK z#Bc<<26Mo%x&lzw0Sc2$`*UM~ZodaG?!}JtYNIaGvE`sWvI4|^=0IBla%;W7loAi+ zDG_+U9fq$G_`=aMoyp|1w7CnzHN8QXeR@G|2sl-|I!|y_COFRb&4F<491y?(N$!oacM0J&vZPT)RX75zTOp z2(G^}d%f6hYHJRL9rBbL8<|tn;yM7I7CEw*1cd+~76ih_iXaQo+$hx#Aj$0Yb=oL? z`)~#jCy{sE!IQrU27I1(2I{XDS~Z^UwmoYoICZjN%9(!qbZ4l@EO~WtG^gHg zsp}27R}h07jAsBuqU_GoL+W^YkKvLW z$EX@mt^|4Oz~JEEDEB>J55dXkIS0JP4shbqz&(G=4)92k1gA-;O*wN>I_a@fqBq#n(IzSZ>}xr zZ#&C-@O+=XeyXaPo<>?TXSd3l)kB!Gq~^-IjaNyR%UKszOsoc0OGo0|rPIzFVek7O zVsDJ$FW&0V9xApeV^F^2PbEjYCF{6&RYsFCU}oON3w2^plGk*m zk;ldqCHc^Gvn~~@;gUN?PyXot`cZ=X>{%3yQgfg^H3tjYht^lG#Cn_dW(9=B$D_|% zmrBDObOEI#{+rK|#jkNeFc3%UF#^|Q+_D^g3@9RQSPK`IvXs7PjTU$mFv`TS1U(w>1;wZE1Rfh=OxaC zjZ1{q&lq`A))l**dU*AL^_QuqdS{J6y0f!W0GO@ZMdHgH{rX|u#BX8ua>ZM6MmW1e zk!q*uvgt38$?Ezpsy8a+oT7DaM9Zl~t2#wjv1{cN3|bXvS{Zjb%}R!CSoOW>4%L_E zZ9zHiHqRGo9U}Ep>3Osj!Qqy_?ku^nqv-`ZU>N(#z?*DmXV;Uf>z105!py^? zf*Ey+h7FGT6wYP7tjD`bG^a#i&`Mrf$a#Yr$fsXTEFQ*#KKcz%xgoVG<&Q=<*z^ZKmcl4iR%IHK3G5zKqoNg$;2P6?jYG7p2yEL z2G!1uR;a(57xCCE(#d_^H4SS~2N(m^dxcI`_4uBZ#`bnJ&yp5?j@AM`71sXs=t_YmHEpligt3iy7joB73Ehc~Zbc;jF!H4$AS5M)eA9m)(sw#lzF7*S} zWeR-;wKUO%12dortfis-^PR9Enj0*{FernLk^r=To4ae$iE`GDOQd^oRGO9Dp=lo9 zIK|2=l50HQ*xDL2yr33+!-^qtt{>!TX#_IX*Pq1l+iRuYj}IQ!O@Rw%cVEV13`UifW5X2mPi;vt1^wHe`mfrzo_?sYsqsi`ixW6`1Ydh=!ZB#YB^x8CS5g3l`a!L~0k5Tf&98ntDJ}fQ*JF2Wm(}@xVbk=PyXX za^;Fva3=V7sJxC;{k=^^5Zk1n)VwDbCj{D@kx=!!mkt#w+PdY3J*NdPlytR!F>cvS z@uTFLLB46aZ9%|oH5+^_rJ*s~iO=K#uT-&y3OlP2UO!}pGLO=2o6Q!ng>!LvhzMO0 zCly)mCTi!ZikpjV@sQY(*F}eZk#yi(dv}CFbgo($Z>H@yVvRXTE0jUE{U8%6WH@1L z>p4~E`cZInK`C@1IPG(=A?t*~H9u?!-ps3B@+(z;E0j?fMVSmrq#3bx3}YC=v$Nbo z4|Y>DEbkHSqNz}BTcPo3pSHuobsyTd)Gu4{$SHdwA-43uz(7|kFJ&4->7l%bFQ81^ z8nKLyp!rxfYTX*YCk$IRMLqO=%xH;%uW#X`gTQ=go%gnXsCCrtqn)pPIh!AIw0XT& zhl%V%0$11HIX1@n96l-P}~zJ%v=!j&Trn@vPB@bv~=(e3DRlx2DclX6@XTDc0TOm&=ww}rxwhz0zyYZ7D_nQs!)e7G^s^U~Nz}1(LqDth{EpPmGEU1@S zL*2+o<<*3u6LxCZDx*A}lul&ddtfn(0GUn4)gPLS48-b4G{dNA)HsKmots$p)w9RQ z=J&ky`(&W`Fl&!9f{9+d-rWCY-Zx+=SNz41OpmRT5EvA&9WUi94v>vYPfusNd|7vG zY)it}$jB5ZXJzE%GHv6cRzCvEE$oJD>g(#5xw&N;{AqI1NXQ9Gcz?P+IQ8{|18so1 z_h~AL&r56lr9YNiZhDC*gR&2|oLOrW+F@(KFANl}YB|aXzAl4+6oi0Po0f9x{UVsJ zTu~E=zt2_qQ>ToDWN^WWgihoZNX#XG3kds*B&c)BydPgJ;4l+-ue%3I86k)Z|E62y zM(Pcn_z8u%K@3yVlrxBvjP-h8YjZsFdwbi5dBkne)2jw?DaRiJ*YFS;sBmUNB_xPJ zXtKGjEy&39#{jC>eM5f|x8XQ`JArSqBk?#4)hhTFh{+hix1g~JP-hA|0MWpl^=5a7 zTfrhK;JT8*>g5ld!i`IOj=u~_-n^<8XSY;)pueSoBs??(XO%3Zc+i-RYS+n;3C|cO$uh&i#!9&o(3wr z=qLQC-JzoOY-`NAl2eY9d+G&0SfedMiz|%y8A)rf*g)Zgw4n%CcX}5`o9qN?9lqTP zKXc{`@HnRf!GSI)H|lTB>+36n^TTU1=3ceCiJcoL*>u}0tQUwrw|?#z>3l-j^$3f} zuXLu}ZRzCX=g_4Cp5+$1-UY=}6t7;^!R|wiMrbw2IkqUuPtTs;3zp-~QmN z%`^Qbhmx7L9jGP$Zkhh(s5dP&EXbwX)ci+YcN*nS#$m$zF7^hHD7me;9>S!-9$3lt z0K-pLBcqp|%OQK|P{fFVQTh^Oo7pVe;Xyc#*Bw`_dY@_^)gHSmSY@qMp?@4*fh9#pnB zUbQBkltv(>u1*sMR$phb4jIW zD?3n*v%o_YS^w%0E9#{NCANwf>(MNJ>#*cRubp{i4}32rL_2+QYj*EKa3}uFQ9<-> zDH%oin>F!zrxI{mj~~Ch^6}`Nf~V)RGiM*EYw0^~RV>fNGQ9AQXW<=rzLqMpOdjXZmW*qA!f_R%Ajq%&idXSpL#twNJ&nuWfz9Y z1kDq~YhT0e)!KCv7MYzzefjcbT+i~^Mt7Hd_*hilfG`74L9}<$2cl8l(cO-0XySq}?DD>+tzVh}4X7?PK zEjxSrNrxjMlKp6Xl-rVr7zCAyf`gsRdb933fJ(0UkZMUBcvldQ5Hu>*;x(vyY=y1P zdDf7)?9|Vr8_DPwA?25Pl+InjFM^%3im)#?MHlw+0%3l1jO~oQ`Fv6yCF$;#?}HEI zZLQHIfGYbO6pDAP|2kXb=3D>^bUGMjB}`w)M>o2f>$ z<1!~7m#*8%9bKAXk_e;biKgDBw>B%YFgoM-N zZ$c4R6<&&fWD;ytHDM>*3#GNJe)aU2;bc{m+AQ#zgh8m}NRC#qjIi5k53qTxe7W8p zsx3dYkh5Mn+44GS=ohld1`hLVpe9QMx7O^_%j47{?xmia-SINq;5qQFQE>Vp*M`z_ zh}g=*23iW3WBeej$t$e{QZm0d(8Q3~c}FLj_<1$l%X6~vG!lJV!+O=|J^4lmzuH-j zs8IoK@LwVs*1P4OW!w89N+%!N9Ee>~x3rAz>W9UX$7Ayzq&YLez*o8A)t)>lg+ZQc z>j8cigw_$)-S6mok`<#!A(yCIw_;dXSyi@HX~^m5&^9%rY7cio3Pwq(ixa|k$bRmP zzkhDQc85Ybac$CO!1| zu;Rmq-|Dv#0w8h==`}|%ugka-41}(ohh0N@N@^@@9)Sz)@a@y9aqXOQQ{gmF{d!dT z85`5llNYi<4&~L$o4iJi3NWXOK*qKYyK@n~V;tE9mqi&DN_ST9V7Yr|Pw(T<}^oVwhD zWZFTX_`%16RV!V7%Nys@qhuiD{Q26~H^=z+RG5wWSJ`neG6`*jf$%0K60a|! zAM|Eqap;k0y^JdX77`4btv0(Dc^pXM9`AqIy$U3gm&xoR-FNAXXKsXXVOL>&*!%jznK4qpg2p|07zjTP4iwE=aOhRu203`>#Z6!q%DNy68wyB!z|K;g!tV}BZAUpc zvpfC%Y!>P>P*H5SE>(HW4CE)5Px#lfGBbDV?zr`$^}Qe}2n2$(_>vbk276huZbEx3bzI!>rm?|yc2|E%s}*lTGaEoKdo>! zNCPomY3qA+LNoP6ow_Hfs?Z`i_Jm{rZS`aUBRST4V#^#t$gq+XTaT(QyN)8kIoM`d zm+5fA9|+55{DP8`h!*G%{7mv*Dve-Cgl8Xwhcb2U`=5D+?R}Qdb%c$dUlXSB+)!~e zXo|41T#Zu(Rfy2IxHJgIXIS)ef;Zj?92kzEurW2M6UtBwA^vse$5Ys{-puVt9ey=; ztG!(h>gy(Np+>zoIAzIWX-lhWQyGGrdUod^MW+hc3$UFXkZj}uW`6SsU6)uvCwCN( zCv$%?)t*_DL6KVHDW8IXTqLt&l zaQ4z^{%M|RK@z)i&Li8I%evE(Yi^E{b*wIxoH>Il`sGfaCYoDBQ(yn|AF9NWHn+3~ zGQml{$#{(De0``joWg#(%iOp?IX1OsdQ|$Dggqp$AZi^Sy zpPo{q0Dl^kFvfo|Ma9<}1htxkR79bUb5Qt!{#aBBhxbDWiWT)4gY%P>mzVe1?7~SO z0Qyud(b1eaLm$wfjNX8_$y`^Pcb4^_y1uY{aFGix&Cc+9D9gFq)#Ve%2sq3d0~5=4 zpj?oZ6*f|xpeLS#L@DEUSD1oR=yqlrkR=a%+)M~On$31?fd)qkVwg6*gIu0u3h1VY zqtrZ-fM6;MRtO}ziU(a903FOTiEd;9ET=^^VRF)_HHKdqSp4_Qhl(tCY{wZO{uq*q z;R#L|EIfpv+Ft2aCEw+cb{@&sfS6Pd__RpqX4GwIN5KAj5fapV zDRr-PiG=j&@p{>w^!xf%xVGV;3g-aJ8_{vDb7l~6-qONYTfJDVs{K~V9)E&H&>?#j z|F}WHF~BWpNL#0OnnEMJJtn*-Z^8EF1$j0)M6eLJ{%CqN&bnMt5`%(^A1y^x(eGkWCoHck!q(VO>Qq$8T*a&nsqU^TLyS@cG zhN9d3*#PWCSoIk*r&LbgSW`fo=cm8Xz?UB36G zZbMsaXzb{FdZhe7>z0FqL(a5o7%xCcc3;^8Uht{molFJy{i}60bbtYCx5sErp1cPf(8K0#ONK!)1bz zoj!Pc`oJsW%}#+Lmf(Hs(YY*&C28X8UFB=I1{y6$kP&z1dhcFLm}%@*O&P9Jv2!2F z{aizW=%U=!BT`e-VV5^PPZk#1I{-U~+OWv-$5>IP9~$pA!ma5LpizG~sk^T}X2V{_ z4MVNE%&Gp6mp^O_vu9_ipAe|%vBk;j)$77pwf*zwF)&JUux|I}VdsW+hYUuC^p(dJ zoLatH4rE%kVyaoaj6Dp8u@2OI*Go26&v{?+tM38nom7~L$wf1iPezrtr@Z8r3Zo*h zLpV9ijvOi@qq@pndwSPO*aezVSaa=Bz(5BYkZH4}OIconERJuWpUe=8TY~4XC))W>N_L9=DvAJYT^<{I1ACDq!ph6z{&TnL$=@Dy;q*KLC!OEGda)nQb$=W)(nEbE7 z5gp}lr>FiwMFu^|ocZ;nc~q^1J;EaULxGI-F!{Pcbc*rwfgyfSm()_+i&3}?8=q2Xn={87sD17k}Dl|l`rQy5(HYvjmtp9$bu|9*-4 z>_hkV|0C96Hc54HYROPX_g}Q)?{4CfM7W_dGCm562{_I4gf8r#knj<*HprBNSrU1K zQcOOczxU6tl9H3O%YhDuz|{Enz3-oLIQFjpU(NKrZD8RGzYvSOOD0DA=k8%{Xe<5( z`HfR(=sZOFdHn{TUp;f6(_Af}<4_&#n?=F3@KG3-8^3?AufS zKDXajeSXUD>F=Ll3M6zlUK9Hd0C67zYsmq{b%0%ceXucgu}tPq7em`+Z^LgAh~exU zm4=hC4x3*x!>z$LIu+l7T<)ro0hf~S2i+KrLVN`nFW7#Qrsc^Vpn{poI% zpE@l0Z~NUXnvt6&M}|FekhWwsz)T=bW`nW<3ryn2F)H#O0J6I-4iZMNa)hvBud=^^ zXmn?CL-V&|ije5(O_XS8srI1oQw2p;1r3cSh3qxC8*dg&V;kbPr+$A$@#Zx#aHv+2 z>2^e2s`OwrFI;x5DsJnp*&~qlK1n;mB~5+xLBbGbDFHA-eD)U4($x0i3&BTvgoIuY zD2v&V?==f0f}ue{xsW2}aXfT@VEts~-n5-*hH{~aZu(f&7C=dnEEy11b(PsaIzRFT zVn?%^^EQCuaWl%Nq840b1uWmp7h~FF2KFzRO(E$ZWvHB)$-*nIy|G=%KinBJj|{NK z#%6fKrz?x2>PUc%f+B5k)D40AKzj=x*#Ke!NxTOmS*iMSxkR7B(jG1iA^@D9UlWH4 zA32Ax0~AAwWa9!fCVU8EgN6+AEFwM0XZ;+g$Z~#a~7I;d?b|w}A0h*l8K`XBx_$z(P`*k&^aJcW5lJ>bLpoJg8>dlKa=uqv%r-OnD zhAoi@$yZXELd^+q*#WY^8PSsZ{=Ei-W-@rN#TI;{b}jC5Q9PQE0aKT0J`ORgcK~V1 zynB?P8q^{J(Vule!w2WFpvbO6xVKYu?r@Cee@mV6TqR*S#t*=T?P135~{0GpaC0* zwK1RRcnDBZRhed6&72$HxXMCKsTX4-y5U|uj#3~Qb;s!-!F50cpdb^HnU|*k$aO%` zsY74`LX77iPAbdIYdP?^HPYS>K#u6f#$%AbZsghFsK)NkCrkfAiW8sg6Lu=i|+Wbd!amG9BhAUG=n4eY4%4Vl8b!cL8agjPrewBmrJJLL$3 zdO#1@tnRfUfLQ^Qr4EA)w!^(Y2K$i@1zeU>AdPUPVl-E9Q6nid^ep6*z^|_S-magJ zlA?>iwV->HO}@JzyHVe>&u}9axn*iV7yJUKLoWq1Ul< zlY+H%F0n+E0G@jE$%Gs=1kq#U)4RI5AP3qpUhh1=GOLUXLT?gTX5D_6A`tAc5_tTe zX4^9!VrLt;8YCBZf|A>qisGENme3J_g_7;9ZJB_?ONlUDn_F6y<>=`ztHKUtf(J&S zsmCn|2@BzVRQ7S#r#$*agO-rwju`V;qk*)|e3V66%T;z5Bqt?bLr??hdW(tAXkO3l zeKanF(G(&$M9bev1$Upj($oP->|U6+ zRXeNEV2}f@$j4-Z)nn%A$pkFVpydr|?;lPTQMvCTqn>b>Md++ z07|hZQNj&^L(;*3j%B^{FoU6K!j=Wzw>>coX3e2ZtV`qd0P=#g0Sds_sknRbo;eJ& zUm_i(gIi5ZA=e@_NRk+Q*zyuhR950TITk)5EA$W#qqEq zbMv2HKf*&oul|q@XTZ<*>jTO_4Gxt~1DFCtu$`p4ASX@+k>j^-d7vl($*@3_iAnx~ z&8pSWgVd|`-*GO*E;v4jyha6wIIC%l`JQb6a6Nqu79GN*jD(#W=PA&J4F@q1g6``H zuvVeJe6dG>83@o44k15%Ix*i69c*L{P&J5IWvnh?*`(nqr*A^~0s_`UjSGYX3A`xm zbV2tyR%tL1S+SV!I3>i^3OspSqogEn3Kns0q^uBr1PRMRfQ!k^PXEkMWYnLGo*NU^ zGc#j?@F@%6GBcIYiW=|1Lmb?AJSaiFyYs7oEi5{kO&Tz*ubqCZtC^W)f*hD}?&)b)!Ku8loH!STYa8;Q$)a>*jUjx=(E)*twaX4?nXbu27T` z@?dPRyTK`C_BBk>5DZ3cSUyfDb3ay1mXXoO(WD^$3>D?1TEz`#UEUPz$OAZ|%+2Owqc)}FL z|`-lNzmY0sR=$~SCa6{+@tB#aT&GnANY-_+VsYs0X3{fp3)gY74Xh{)im;P_;K zLCi9Vx<~~>qRFpjBO|-LJd_RPEZd zJlu%E6@V-f3JFVFkB)=oH`A?ruRCUC1q6UUFA-hvo2fvJ{U&!IX6{F;H)lQDy95Cfr$6>x-N z7XILSv4B0=D|E(o%IVGyeV|j7Ezrq-N5Wb9%&g?uDH#Igw=74vkF$g*#I#j?A#uJn zwBlA1$#DIfiIlg)5h((n!zRIj9d0KE(#kt*Yd?Q|?iSRWy+o>6Fv%&)890pz@3WW{ zHjYm=l%D=kxOP`#;K2m}hf}PoG$~3fFK>xY&{*YgV5W499UUDXJE^_5Z)TrgVGe%ND;Z)lFfIFI+nf0TK{#eiNk$mQ8^hC*bzPA33ga+TUlAt=N1H!wJ z`T_p_ccrA5J-2NI%`Gf`F1Mh0wByXGtoFEidwaiqZ`FaIe~I3hC?ueSa9^%tm0bpe zyzboLCq8oM2no?GMa4@5hhk!kK=Sot7@K<34kx+8xO3*m@dG?L7_)NV5v1qgAr=>Z z@p#Kgd_rvY2=3|p=V;m??dl*IRiBj=m6Vi}_x*+!=207~d|0j{MOEA1y_99scDnoh z_uM${0~YAE5yOwo?1O$shhFQpZ*3jDbtS}bX>1h4bm;()9B^6kwI z4V5mW60DB5OiZq1Wo0F*lsn9?UT=4A$e)3r*6}qz9RSLBiQ^4l{^3GGB2Cy`8kzRS3D8GX#HT; zt#58#67dv)m4G;3W8{Z(rVW#4L`m^(+AN$auBdn#LeSpl`Erv>`UbLUdk9r;*IkuL zl|M#8V&S||R#pZi{)dHxgf50OUGv(lg-WF#54Jklu`60`HSJAGSboo?Rw2lBoDM1$ z5j-OGWc>jd#hAF9T=7Qnr%!?zxw&`YqnMkv#E@V5P-J%f)cNy1U0oIHtHWL&9j1rB zL>7KqSa>HFU7g2_I>24ViB~&~KoK2)SMOL_UO0U40KkFYLG{5a z`SgXa&Sn<#mN|s49XB|2n?H2l=lVF1PkN9*g_Ruqh_{e2h~W=;D;;8Rik$o%48a@P zY53)P#%{YC5eeP1fnj03b8}fYn)`N_y!*W3mFL&B!4H1@x-samQhraG{$TZ??TZmj z3Yx0Dzv_g=n8`jhH63RS%bM`zXf)!UaS)hsD3@=)e8v}^fYw57WMilM)>cwpM&88n zipD1CBgI42ww84U*KX72kG5Q*r=Oeuv7>jx^U<3GHI(*b`Eo@O@4;sTkOrg&D}Nw0 z)%g+`5%BIy93!HB*&1EL6CuG&CZ24j>ECxV%d!=4ivx)*75bKAF$2SQO4G~A%5SOa z2YecK9*S*qeoDv6#^#m*F7EBylZXg9&2FDXn?Gk>6qcn=Fh5ZotFiHL*d340`h2#m ztv$Ve{(QyhnT-V_BL@c_HLU^6g;@Fdz^SX;$ZKp#5r9@BS0BVKH7|AbC5b)A&Vy1W zA;3>xh1K)rt5>`wtY)k}ce`ErwfyjS{P(^Ne=Ju|`IxBQ(t;GyhMqe3Zh<*B*tz`k z%1<|tcyRz+v1i}}GKa~S7HeG)bRruZ)bvPl=eS&)i@`>?37c29u>&j+E?kmwT7W2beND(vr0`<)3>fJ%{m$8(+k*Dd}wVY0p$D5$6pBm z0sCbGzUE%M2#tt{NCpZearf>KNG=?%(!!_GG5YoAGf2u&c)g2M0OQ zNQj6&0UU*ZAl`G6g_@eWJTJ^+kLog%J<*p(+)N-mcG{6{Hy&Dur`gt9loJ;h?*N!* zb2E313IEBjkf6T`qTFy-#Hp#NU<&FWCz$7gGtnt`I8IAT3knrXkEfc+bt<2n2EKR+ zOH1}p8Aho0t5EANGio}svV^4r-|3ErhcMKiJOe$Y1Au!KfB3Nb{Z;y)V<#v%U+QrB zL`R=L{5+SIP3SW+SYKag66X**{H{G(66$)YQ5&C<1f5#t111dw*^dy!hoXBjT;mIB)93j z6R~hOXM0o~TT>m!ggm}+s*A|DyzM}$z)XhRDfB!v0^BISjt&KPe6KpeQ#jKQ3Z&li z+0Ygg6r7@=A%UP(MxK^DJSecz#|V(2)fQ{v_9Zk~5@z1;c|cyU6C{+BAe7oA)Ym6L zYo{I(>_M@y3r~qo#Tg=l`85BT1_GG=FqB2)n8^(Gc6XRLIPPd^Q8S!54)`ymkHN=H z%E&kdn`zKkr%byS`5fXq6QE#o%J;UKp(Aj2*>S_Vbp)R!3kv()d7fah)DSQQ|= zN(I|ae}IQ1BqbdL6{1=YU3m-5B8EDK*RZBPcyJMrZNf*bSlaV{j~D3yye0`4$3HLK zx3T>l9Zvxmb(w>Mgdm~U-1gfiLeQJV@DU`Gms3Ly{PdXTmeuw~yVqS+Rq~g&E&;mN zqBtA;uavYj14v3TGc$hx(H?ExbfwHX5bOvF4Sfli&96{7JW%e)HZn4T^yV|Mr-Uac zF0!$mfQduJZ^r-v^9Kl^yfkmlzvV{NPW8xq5YomB-$PnYf19Fxd&E6NZFSvp;HplI zCyhYtNrErr#Js$`YTc@8Y5>_yDnUJ6AyWlb zP@7hCdz|oj*dRB+-X}03!sp|QqlU1XD1GuPscd=T6{X(Odsk{f-R32LtCL{>!9MW= zz`hm1rh%f6I5XKeL_w}n5wDLfc|Iy$gi;K8PR^5F+Y@x!#MNW`LJi1(qPJs!ctFsfLC7J^N*y`aOT4@;3dmTbw>BbBBYZjQa2H zcV%alp^1)V#P_qu4nMZHf1#D*Et5Le#SOCod@==HU6LF%i?FkP_1~LGW$nr?00Jx{ zJNt)0{oUyc173N<;iKxacvn*%>YmKG1d!&dSeTA@dcZo@TA{Z;`R8h^Q~xZq12zE* z@)Ahbcmza8Yx~sTqwF7?2=w24VC6d6+Dn35RlPqst>m+NIusWnPgonA57?Lf(DGJ8 zfzPaoD*MhMa8HF*HG)mYQc-QpwQTVb*rhYRhiMmSp(`o)h9JXMfZunr6uI6W7@zHI ze=@FQhV?zMf5p?I!z-@B@Mms*{#*8A?{pug=4M&93Js)L4)Ld)Jk*}GlJcoLQxPBO z>FXU*H{XA#^yO&y-=_yxKeYDJ=<;J3kWbCq{E1GzkW-`&`q0$m8%Bp*0+!jVp>nO8 z{QTndK|Iw4!!At7_XaTvYCm-lVVxxELCsfGgEkNHDqreF%_j!3QO6HDjY%UX8#T32 zT#WUSN>zfTSkO-v`Rw-Xwd*-*Co)xtwA=Z?0ek&As?hM1!|-ArRI$Tar>j5O9%xJO zpGu^ zts88C8)*@=++VU<_WSPi>AG=J2-aTn~;FE~Pej76k!5xMwi-k_d&GjdS5aK@NH!MonHS2KGcKq-g zKiLa92fJTwR+nT~=jPyKgJEj`P`k6wZX_AUAy)yHmBK1kAISj0YwrCa?WcL9YRJ!E zAyP`(xLkJkA2`hf)y0!%&Ye3>piyaht?PQ%0Rq5KRB190e1O{g)BN0Lz*m#nX3f7J zn#mMdBKiw;J0(4Rtx=%Cf|uZ_y7_z{dl0aLr<`GsO%X2Gt^Qwhy#-j5?bbFth=QV| zbcYDiCUWzD&3s}A|;Iyf`Ew9ozh6EfOJSB-QD%A@!5O7`+xuMo5N#2>|vO> z=f3Z2U2CoLT<2*CluZ~v{04E$qna5nq$U3D3oIyFaFUcvc24#6^{?XKv;tkFD%BA# z+4Jju-;T$mXcrHSTs7uXlUx6DYV{1SS$aB(sxnIHbXB**p%g8Tt7-17v&^_Zlrh@+ z)G}Oc!b!}jKgRIFG)Fgtgls6~P>r6LQ`?fmSQ#q#)%}CUU1}br6}&VkG_*O}MPu*# z)~1{ld%5~kLksCE2*Von5Q8By1CKA|<)cG3#V%d?IhftY7k;%T&rc7xG|vtONKYDu zi649^A@D`>RWA^Rl;tWeZiPisClKzT?0Ip&YhiZwHJ?5b9YTkmwvDSRf3n;BdydXg zRhVABRH-|$wh|mfI{4)X>fr#1R9joKRg+5L$B%oclr~m#r8G5H+MGNd(0@w)tisG? zs$y$H(liYbN8fWxdUdQ49hj1kNHzl-b`!(_$}^`5O{kaIy*57ly;0WLoy!sU!+6yZ zOPBZ%9m)5qTXxo;R~1fZuVC$5IgE;Oo$2JODx>U_mLX?-#?~H_oNUcu<5Ce&nCn>t z{G|!@JZ_+FcgCosds&Tm_f4kjx>%hIzQGC|GT-!VB-;=a)S1)I%4;cD35}q&NwL;K zI>e4zyNg1bHZNSd??P7NK>l>h^{TW4I1*u+{L-#?P0DS5dA_BqiRSzeQ?UG#F)F21 zF;uC@PpbyYLyF{N{lnvx^sdODpl4UFUTyG2KdGu2TU>k$+y_6oFZNR0I*bItc!Y$n zp~e+27^)DoQt75eg^kkw;Y+4qgqoR^C8MXOR}s^t-dSPN`}xizd3h@rY7GsIP)f4k zjt+|Zb3u#eeCGY6;97t|5KIXC?Z$Ab(b1#{NDHW`lfVD^W$&srYkvhAXFg+Nl!#WW z3E-bQXAwO&Fytb|BP9(2g5KAG#E;OJ0!JxNHiL84*||A!T0BRy&yV@9-5*X(n(;AgI>)^P%%j{|?u@`(A? zW5ux0U)6ZQ8com%bgbCjb=>io81b;Fq^YvE{9087!Qc||WOS0tyq}q0=jpM~UVFwS zj7mKNvc}=;j53#f^LO<)d_e|cn*1ZY;KZ9-z4Dx?V3jnl3rXZTn1C9e9E@&FC*Y#Y z;W%QpD(a8e>yC~oPWO`P>0inzgqQ(%Q1r5s+;X%En^j*Qt>|l(z9vhIQA<1P=3Z<8 zm9dcW#wT zn_Mm53nM)x6dIRU)0LZiuz?D^CorF zgxutciG8&jxm*>5OTpaY5|W`zAJV;2VAa+&0Rge+RK%$TW@IBjdlT} zjbN{XhG6m*K-1vUxIuHDlH$H)LuXAQ`~1day(lpxu&DenGdo|RvG=mj{;=^OSn8r7 zE^7bO!;Z{b1BE8Uv^Iu%*UNza6)hpyv%Z*`np&T; z5YIIl&rLLpE7*;od9ev4oFUlVA$-8SS8V=P6Y}D?9-n~n)rQ?rJqXwR_a=5Q{WDfKUMWb;smmV-ZQ$wFu$4UPnMgW(sKV$W=>xKA(Cn-# zd({#Yl<~qI9LIY*jV&RAZ56s4525Gd>2;>^__41a=0R#r4ds(8La;h*>gvKJB8uU+ zpT&FgCe+0@oRpgYhO+&>8H&lskV6c;Zev3uB`uv+ScnI;RjbS78HKWN+3=YATvi70 z40IA)7gK+9oAyKZP!#L>hT--ssg#TigOKOd)3Yb-pb|OZ`mdGE^gTli6 z>X8T-wY1%w@_rW^n-KRt!JYahlgMj9m-VUU;2CJA6_1FRm@vNl73v3t6U;r?F89km z)zEmhJ$nbWN#^MsA$*{D4tMGw`26_$Rsyg5BvrJv-}Ggus;Jnu*NC(a^4~r`M~mk% zy9+Vv?me5S*&jDeO-;ELG8Epw0W3H5>sL}(7uIDjLZEy}S5CP`LP9dTurS@7ir#Hr zwnjrK+1nPr=w+Hpqifc14BGE#Ei@AV4i^_EuLZT=O0&bX)Yxx z1*Uil1gx%FBCL@2%l9g+k55HhZAFt^|J-r)IGF;A-NvQ9JJ9!(adwV9aN~HMf9;pT z2c4v}>DQ~Rgk5-4L&AUEV43Jck4R)8(e^-aMJWGSJTuNdEzGs#61JHjNEg&@jjwVm zwp>Fat$wAwx1Mcnam|Q))YwnL_qRFkgp)e`SUZIYBf*E5M|kUVVJ=BA@pOv4Pt`a*!2xzD z32$!^=rBhn#G0#38$NmZ^z~f5c6fj3)8{58#w+D{>g}65JCacJ!?cdw_N;8p);z_1 zm%gpv3n|ZF5u(a%kms;n>SY9K({J;HywP%cK|zYZ2+G#<&O|PgeafqsFTtH=xc&Ku z=GnP9%$PAeU?hX#g$7RQbLpIwZFu|EmK&%V5!}R3uD^nMpjHh~0_>S!dXHQB9k4fC z)Ey3mqTy({&D6rekhw*aS)Y;J!MdL1*jKd5$_KVCHs)5`UhZtx6CEv8PAN0nb0P79 zL#{=}%|Vag=7#~@F5A;Xd{;L&G%kJ5kZ@{$7_FkP9Nov3kZgjujs}hTsVO{uLBW~b zB|?M`%s;AWp&8D!V#8i9?RhG6)nDR+NYbm-RW_L6V|ei38e$3>c6BGN$Ge&^>ORxX zIRsq`qMZfN8>uR$`sp%h-_jKgKGoGxGdwImous;Z>k=8+(s1E3VL0D-R92MLX`eq| zhM2&uOoGo%*wP}sxwj{+mxN{DS%e0gO55xY#XLW@ind;uw=6_n=v)4dHeGdRH;sI- zFgNE9Euv?A>6|KRYQgdGX6*AM!BX+}OsHWTC5W?L7dKDc59s=3RUGtH$RBg|V7qn| zWN#Yt^#r-RYl`dznV2XtlrvBr5J8vos|ZL|Ur9`d!e2(5og5efJPkn3CDW6VqP#Ar zBF!7Hx)BY(l0-kHr(-~;PE36e``tT29WQm5BfboXyl|zC<$W7{&x{POow)0fTZJ^< zZ#N%hECh!n1_P)%J2%cF3LIqrk&%Ra!ip}u;3Qi7b~^m_>9q$p{QMReHp+`W$-~As z7Ox!Ta>DFP>4t`lt*tIC`5^kIimU;BTe!$pck5VW2RZ*rRphs!a>( z*EPR)){UxcEvvwCrKxyN(!$t?Kf%naWTC_QpoeOOH_YGYNZVbes&XzQi!n5Ksgi+( zULj8r649vm_@LcT$DI=+ZI>N6yoc%tM)}XKIaTB-8fr%6+T--1I(e-NYBBKC$g>s8 zU&a24?(PD0ljp+l$B$Kwg&y;jA&NXBsvwYG7xxv1{8HTX5i_i@zb&BkFacCx{PQ|E zC?et^^u@=<$2%)$-#xE6A6Y@|Wzc?$bdK%4A0y`vz2)X#K`p08JE^wn4db2T<_X8g z?mLqUzmoh)O76j5;**kIEz=HzIe($^!x`7pt+wffg+Np@)t%4OUhXcjNEIHddTs-Z zCRaJOErQJ_9K@rX^=5=2(93~-BLMr-$KqlFfPdLp#1xD*ZZRfFKx-Ha3rj`IY}Hzk zjTp5JE-jh;)4id8e%H;|Kj6D=kL}666||i35qQ)hm&wRlXEO5hi2-$22gC{;0YCxh z>pZtsd)Da#ZA&P5>4b%`weyJK77WzZ!-XB;*ga-IgfE8k)-6Iv6lCB-p`msO`U0Z$ zXswLoH=s~?4LuSW8TXv=rVpY>Vklm^SDe1u&k?+O6^ec~Kl>cj>M#7BK+1A8Wc|vczEh_>qA}&|6%M zi@ZQU=t_mwC>$T0TS?c$Dd!J4)MwYOMV!A5H0G0} zJ7}Hjut6Z`(Cjj^E5kx9f-|#f!|svMFc>ySMh4B<#(GF{tY9)Rxe&(cHbexbNGD|z z=Kn+-x<`oj`X8uhB?adEo=nx(!x2s4RvFL`%P0uUKId?(I>wP3Oor-x^v&OfhvMqu zrJSRd+KCmvvNUe7sxQ?U>g!_bkKARtLcjG;u(A4$kh{>^KQB2*->PJoplRPrY%k2r zvR@A4n-rt3%3%C;*t%}vEcgHoN_h6_a=B=^t+cl{s*^r!YN;_sGe%qA3CSXOK2V)g z=(=U(Al(fqS16H~0b@d&G+J((d{Ik(d=@m%T{kW!?$zHW2 zrxm-oWun>n+48T4r_cz0c3iqdD*TdX;<#N0?hLH+T~TCl)`yT}{nx|qi};c2LM$w- zv}+$nxfP8MUO>hI|FE&K)yEZxh)ACG%`4`qTT=?V6B5l4#q+ok=zC5}*X;JnLyr2T zviIY?eskU@s$IsXhrzHLa@DUdFPl5jWkYPw&(BxiVIjoo9~cnNv#x3|WT_4bx&Hhv zS+ci#a0?{{Ga(iTOECcQ3WRlzJ#jITqH2MxZpxDdJPsvq}&(0;82naI53DW(<>{O zQ02hf7u<$o^ihWWnLVWZTnK1r+E-qZNX_iLd#M#GG$<$)QmX)fo;wp2^{TbjQ$|L# z0aqk$D+LiM0H^aNFrjNr9Um9uEy8xOFnX+u9-2Y{0}l6;Ib-B(53FTFme}HY1{d5t zpkw>S)Qp#~2<9AIt9+Q8q zI&A6_z7ax9SsX8k$m++g2vsiWRow%6_Y9o)~lGBrPtHJ5tFMjFS2 zV_Oj0;rjJijZIJS4YjUa;t3o7lbQcRVa8o(X+2!nO1B}C@akraZUD5K$QSIaodg~h z=3YiisG>k8uMjTEx)QqNq{E5@vq5h_y8|;LTIsz(A`#zphxv{r$1C4gwMwFrlfx?} z-6#-KD=Q&@H^lG2UB&OZNQ*-)a1|~|XX1SZE?PXdBex{&x~D8Hpf3sdQb8B@2 zjju@~fvC)-PX|CU>IPJ#xAzG&NP$QI{D+G95GILKJPg0o&X9pDv#dvo^8RA94ZyPU z54d z-eQoG-=L>AV#dJPt%(1$^eIG>EkKj4Ji8ms=h&SH0wI((=Snst_-8d)Pgzb6XAUyU zQ?F#nf%lg~EdxYoJOToYR23g+){LsITANTNvY-PBw%)(HJjQCuMf$PMiAYJDL4dal zB$RY&ZWF$N^lsv3{{aq!PHgPfpLq!*qhF)NE-u_ooG-Fp7p_L%fevPlov6S)A5V=TTuqJR(qnDD z8j|!Pv4nc(lFy`k@^6aD8i!vrzFi+j{;?c6K+RlM>TvaWAb8YV+;i{zNY=ooYI8R*5OuI#?q8aJ;pV1E-yn5Uca7v%1=&p}m~~K-RTiY3f61 z#l?+dXKzYM2=w(QnAt3=2Oc>7|^n85L&pKVqJUmVyW^yM@ z$j~1j{phMUhbVv+I3qqj4I-mwF<;h31znm@i*d4UB)q8l&DQ?0 zRg(TW(7Yix@bU2xyNrQB$HjH^{QO*<@75UZ^1utckg!SLijZGMVi%ZGxm@S5*Rel@ z9cEcP^FjM|evjL(-=^EJdq#a)_T4)@UnoH5V&EPm$Kx@?LNs(TURCZG$9dnue>*<) z8=@%l%(&d^e`?SF^lEXC4gCAkI}79A>=i=xtL*NEDNYC3kyJH4ReI>eI}p{}EVbjx zlrD$YFgzYp>GWMA7{|)D$MX!4tNrTM?b`{EO6$Dhmn)WfgG>19&`FOy`g5!JFGX)X zjSzU^QM6n~-~K!3^yRv{5WxW8OSL6qbE3Y1Hy;5n{ImMIWPbgV0;2Agw)I=qN>WZvymjaE7L=lPl&FRv zs;9%GoP=twr{?G5Kpce0J4tBI=DdJ${niN4Q&VsKCr@56%EuWx{CSDWnNhS0S=noY z`FbJ1h$jNd+#`8qbVJJrMbPs*JUpajV!}kat#HoIL;g$31B7lu+Y673`h+(;mtlm0uAa>{0{Rx#|H;i6|1nN0JzaoYE}f> zcPps&;+%ghi)lfj!ormq4QDY3KBN-S_gGm6% z7cUq=983Izu*b;QkQY#>cHL+63P?C#8qRlUL3?J5KmX?yg~a>gLYsxM-rm#@^eHF3 zPdI1i=cj%!rM!~+(g+NGSoq;^ivuGGsC-7Pp_;C4M`F-SZNr)IuiW0g`}ONrX!qPX zT*{b%c+sk=%q{`xFSOo(@7lLybqgAtnU9URUUrZ^y7iETvI<@0VK)2v_Ugc-g z+`JCkfitQMhc86O!$WCQL<;dn(2@$Z6dmBlt>&A`)5Ap!U)}DJn3ok5>!$VWF0B_R z@F`gi7oy>c)*y^qOAVqt*T)`s9?iu8;yhe9eO>5uvneUT1hfI+2|e<@75yg#S+6s6 zm_K~ZXXa>cXjz$@`cXOhSk2)&G=m;K0b{oBl}?DBrsS5lTcV%x&pCG8sqD88#B)@q zGfI%+9bfAW71pSjlf3M1pGo!)5?w-Iy-}J@<*xUY(+d!6F&Sl*6SVxNsY_pcJMzt! z`)5yfsirV16#{-{XNNPDe<-Nu{Q0xpGNFyw<6!klcmJLmEZ!DJ?#i<3$LS&KvFvn~ z(@WE4J0kbg&K;j_mAG_GSWoiJ$1*V_R$VM-y&>(Z!%V1Zl{;nW5ptGyal|Yy16oEI zx#vgQ`!056@P9T0S*vunp0#ru3J{MPKTwx*QIq)nv!&$zi2gF}{W6lE$}Y8M1!os0QjnV$q}&Jq=c?wPxw^%jS3a!*P3kB zj~@&rmzP(w1H$cITPMAOa}!Xl=@waEF~oa?m#QQNfL{V_t>ZBy(>&0?P7${1G;Uv@ zKq#b8ht$+0e($JxW`XbVE=%wy8v1D=AOWF}EetF@dGe&ts09n!!2O@PW8D;Hc+SSY ze-Qc@>6ZFQfCL*`aq>bU^|CdGcxC}0Lsnt%&A+;r)aE&g z1={sPs%_TJ*r4@v;juJ%4UVWgY#3L;eEfJih6^J zWS;&0sfE0vnqg}ozKcFkFO_3wHXt}*}&$hn%sSP<&iQeV5Vs@Vc$Ry_{8x# z-dorJ9i+d5Jf-~U9}?V|ZateE>*aUH)PfS}`yb&vKWICY|_h zdVWrVXw_ZZJ?iqmbfi!7?nPG~J@hKX@+Kyt4R@|jF;#7Iy#W-BJ?vAZ^+W|C(#~on z9yR^a!8d8FJ1Sik*$A_<)8eun<$vCws^00#rDg!I6DRQ*O&R_&_wXMiXB9X0e?k`v z%;Q6SSo(j#&n0P>K3kv@-297nKX{_S!lk)n$2s+HwA+_m>>o5ch|+)I1L|@S$2r=D*ER`qZl^-g{O!Ai>`zJn5Ow(_%iOl*jGTm z3i{96wjsEMyJbo{{yCO2-3Qw>iwln71A|A5|GfND_=CbLS5FKXQ6M_Kc@jfcgtyXy zHdH;^r+*PyfmRsw`}@em{WoBr(bkISS=j^9)?cc`T$h5Do0biUuRB=;8sJEEzLP(s zgfo_EqVfb#fB9X+IUKF`D6=P%F6vR${}44~A$R0iZZ#=S`pY1|*D8h+mnWj36XC={ z^jxVpzaaddPhR)9%S5*PH2c3_T5{#l0*!VahPjjQ2cloj#P9$0(ucpWOfm=dy3KhD z_x|aTXFdR)$nbt6Uo`UpW*I`9qUc3kZVjqH zw{>v{ge30Ktz~!of8KjB8Gu|M!A`BuhX-H?1ILBpUXoxvjDw;sVn4OrkcpLdpd#FA z_iOdF)UE|fUGmpO`%)4e^A9IaN>ma6KOnWu5zPUNv3N>KLy7(x_1*$6A6^Oaav3%) zBY$en>&))=&jm_k$Mej28e)fF9=mhsOAq27lA-@84L!q4Ykc$?X_T zI9S^VY5deEq9Zb2EjsCVW4Cjg`ycY-X&0l-S#|D4Oa$--Z2m(_JV30Q{NWZu9sj1_ zKUZr}ACBNy=>PJ(5gZ8+_r@uDek_ra{pay_fw294jMl53k^{dF4_Tab{13q|^q=n; z%a8FWrR_{X2m`*>F@`tOKR5rl{Qv9uRVc1@#VDfOPPVC9COBwz##0_*9-)5tuM=?) z^AE|K7qc8rF|PW2b?k;EO~rq`;xG5}?`OTYy%8xAaq|8@QRepFvsV@O|9XD-_a&)@ zVbU*8t|8Fg{gN{+B}YK#E-b0N3@OTV>lQ5w3l_)_41YCafQi6j<<)}ZH$WGC5=_Wj zHqdQaDqO6e)ql+gP0oa5r|4r(X7yL^xA`$lY;1&fb|rYk#BV?V8PNdDgd&?sk=4

nK#OLneK?j}CJ9mEM%_n9?vj3Y4pr`u|IKGXb`BVMk z%-0vq*5yFV-Ca9nmvrzcsj zd$q11x=nc^@L>}?EO0WSqk%bJRqB-#%&lrv2+C47DEaX;@^!!U7(WE4x5!#+5{4ck z3wh9hrJFb3Cd^L_z8jjwjcM=r-rZ|&y8NPiN?K3lp zkRjE+Cq-s6GJys4>FMOj)MrzWMotW+V=<$+II4_6#!mB^s2f1jv8|QSWsUT!=iFT= za=DNbr!U*N48cj@>hOQDAj~9LQB3Q7Q6unj2|!m$+|Dk_O~g1P zb>iqlilB=~O-)UqSs%YUl*eSBzF$E$PN+o^=zZ$MA-v4+MDJ}I?sLL&gQCUyTdx{&} zQ-H%Hme$h%xvJckke2a_^2HHvB}MtBpE0a?+Il=|OyY5Iqhx@++;^#riA{JJqmxib zn4?i2(O=r%8p|B6s;-ZrjH~SGPO9UfS#ijv_KL^m+8@%`wpVZaubp{$KGxUALBPC^ zn4TULRtQ$!&mlKG4;Yx72z&KvG>nKgww>!d>HT~E?ruvIp~-Xm2UC*vJk7->Q?5?^ zuTP9uBJH;5&(AiHY1!FWJ_sP{xk7WZ2n2F>c;w^Qq+h5pdLK?>?i@EYVHgAT4G_|n zt($FIpwyk9^ZIlt0@=7OT#draZs5>_PF_qOz=qPW(I*`u;=Srx#5=q zeaIEm(l&QLWx(Ve8sd9rZSV|}5|6&-{d`e~-WNryqR_|j0lE2UKcuG*^ve+q;Ol|H zg@KnJ>S0UCVNe%ZG2wlEhMF=E95l#*`aN9gcJtSV2gYT}Cci?P?p^DG;T)sU`ts?M zje1PO+(_L*L$veLIMKw4jm@a0coI=uV4@C}nBdm^J`SsV@#^i{o1m8%E{m&(0@S<@ zw=gY7%R6hrzJ2@V>NJ-F4LmVG=!%OKTz1NZ)SWke`=J9tA24M^WXv8Jc&S9tNzzBY zdv_UO`?!i0bXRKX6G-C@D(cU$0U(CPfyNc6cF>Hw2Q zLZ$m-tGau*6M*(G>@}tv0461{0re8iN3UU6{f{r^?Wy4+$?@Vk*du13;uu%|_BR3R$A=UV|Kpj6 zX0>R&{Tyo;$ssmzm#UyJQe!)v7^5|0DX*)bClfX|V@e9CG+&vta=WvnrJ2FwJy<|o z0UB)sG=w0!n(sI~ ztQ95CYt1gh^l8NkOjoC4*LgKuf1YkEj?I*%Is+pK9EgwU*N()?=nRzNrw zVMx7`_ChNmd1JJK1e~IC8fKloopyy&myWIJDW$D311$MnEWMo7-B+X z0;sL(J22@&wsCfLfhWX#84m4_|AIk-NeU8641q)<+4M_EE3mAmo0XYp@enXcECAv4 z4T_Ehj3#3Bx?%!OQ0i~l4-9zyDZ2`bh-glIP9tYvehCB#d@3g0DRk;4Ucn#(Eex>G z)LftuvwM^8?U}oJxJ`ed6b7n@kFS7p0(!H4rDR{F1u@+@{WzgM)*%55G%_%ywje75EGc zz`?+*85T6+>gLY^17Da+KyqB*z77bO)@VoiCoGe%PLy0XD!QCAq2~|qyXW>&o2`RW zTkjWniVY#FqjR8lFYXEKtbF@M2V5yo-A6a{5u<$#FgQ$#5Q`i$e^yfB_dbnp*A8C(X|c1^Nc$E6ZT%h*se zuxq1N_}zD}0)wA6M&Q}ESAja7;qOI6q4gLBl9G*W87Si7tIwZRH@CLLVeoc)$L10O zfKPk^f;T|v+f6;QNs5R_8MSVCE&J%v)ju-}Mj*0&zhH9TX|>$7tbnTiRqGJ;`~px5 z+}tW*XTP@qL$O;8=rbRmR(&koybrTV=y`*#=LA6adG^eYjyMEGhSaT$Mr+_F{xe*3 z6UKmXVeZ3r-x3RYky5>~-ddWFU zbwp?etX4Ew^bjBYxT!*MS7K?(bL-QFk55~F`X8`U=XByDAS;~OOl82C6ixq$+egYE zf0Ll23$C`=YAowC*^WhQ7gdpWUp!5^b%BuZF&Z8OEeyyGRa8}tWA5RoTVL$6#!Ev?@u%(U+Gk9>1mn9?MXia(8e0_;xqujW zIiW4DkU1lwqUEb#-o~VVgh&8rdRzW3zQSic)&P6=8<JZ z`v!E>!WZo?Z%{5qfFwit@cGxTznSmc`F6Z#0qlb-%3a>`p1Na{p!hfgiyUaE0>o^G zR}g4mEAUuNEi6J*-w)6OxPX{G&_)+RROv3%$=ipo?7P^$G@_Kgm*7KJW4Oyy8z$jEE-a(^}B8?E*CRIvN z`X+jD^uXLa8+1k#5SJd^GP;ZzNDHJOkV|d`>1I59VE`3Q{A_`3?jC{Fh=eZ7srQzZC>?g z5yt0PHS!J5j>}-Mt9f^+2*smoju*XnM#*1@yE5p76DAV^T279C4h@r!JOnx8SOI)~ zLnY|lfGcX*1{e#35;{S_>$0*Lko%)gA}^>A#(ZkOe#zzPosdDc{To*8CzTCSAI=!Fac9j-Sa2Ehg82oFxU)u=#KF(<HBl1J!J4+*KO`fx(;JT++KZ>Y3h<} z1Qo91+xV1}p?xMwIx-I`ii(moIEK zgr!5yUaZ=;9||$?RsTL2t(*}7HfvPWV_RqEa(A!A?rBt7vp#kQ7S#h#QV0QiTOD@E zTLeZ>GJg+zqG01_h5n~m^cq$Q}oe+MAx$fzg`e+e91T-+cjiL3sX5Ez7n zv(N=4@FMR!@_%*}N>^ddwB>)tI|*TB zV3a~dvWW@H|CNCKY-B8l-buj*<@Hr)Y1G45dFGe7H=lZf!l^vE&M{XtJvnxox?E39L+9Tn zBqjnQXJEu#I*!wz7i0j4LZpd;UlWGO42+I~Im7lGtK;lfSkz z;)*a;n9NfHB>kRN=E0=`dw0ttR6iT~tUF7Z0t`ua59_y?O&CaRl z;5qS2@D3ZCNQ^eS{iK$!WTwH>zD{EHn2n>322{@Z7NJNV07_H#$;L$msQj3l9%>G* zh#2^aMSvz%*2Dz$zyQ?{Py^=dAIu$`%!uWpGZH)S)qN6&}UUng^$k$0C;C}DY z_4hWJR-C%qyqQ^fif75fm*1;7(3RYl-7exiTP$ZFFT-+m7ov6(VpN~$C;S~otKJ#r z6J2}hZkYGQ+XV@JOKe=cuoet9KJt(|lsK%E;ill+)+9uNHQ8Eq>|VRGE?9LkIhM4n zr>dix14eVEdkNL{9Gt?Z15+zYt2OD5ZhiXslLdI}^3nQUdup{{6E{-)B4l0HDZ_p; zCa#j^Y-iu2$@@%BuI9l`^ezeVJdWkgot}qGqEGlKL3@*wE9{n@mCX>`bD*e{o}9dD zv@5G$pb=$z%VNUz)~7djR2|m+-m456%kHa)9<582lDEjoZSU>=n5f?^6b}Fz%ezOn ziqBu$SXm7yr<`ToXaZ5Vw+p9ar)M=_vnpJ=N4Mr`9yl^8_@uAZ$Zl<-gsJRC-#e5u zRDt(ij@w`q>;5QBU&qf3YMhmOZ7R12dbVaZEIJb=dtk_2wF|5QR#tzv_7{(geM?PTG6YQ8Y?4W)J*RuS=iWUn3=u*+)mcUaKaxOr>v@@qqBUZ!klZ!6~F8j zFLIDetwlt{hplW~P<2YW<@6e#&cr>3Xhwi>prr^LyCLCtI^)a37OD@`Ji zcabUJIINzlnF^N$)SC3Z+KR-i)Q1&mDu|?r8hfu;|2f*R`Qc6l=c&o|GuG~<7L(6I z*uOXSI=TW33x}v*+D;uvLuP;9YQzY4iwSO={mvUQ^)D`~PNp7-wAoud+_vK(S2HmQ z1P4~eCa(U$LGvMuJIO0&J@;Oa1}OAJs%0}AJxKD*&4uqpN?vWTvQ_M|L9x7O8h7i+ z(;Icv;MB_w@km!SBi0P`(~h^}D&XwhkYr@kFDorwJUx=hGeFkET7Xn8=Pi?He}C4C zyEi1kOIfjV#=dfH?>J^70S8t^{G+s7G$TUA4n6eG-eZGtxpTBywSod^RDKX&GUjXt z@Ab}n5T5*%gk-$)fJbd#bf$It>t_#FkWm!Q0Rp)d(zDupb%Jj2zNRo?`DmGVbVQrc z*$-{jALKMYJ}v%8rcK%(pZxKxIQLm}>&x07bAb%0ANnA!U2(Ph1uJ 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 RuXGzowWq6}%Q~loCIHIGA8%%%I; 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

OQ}?7Kuj*6Xub2MY@Lr`F(; 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 M;-?AhcikN|{78QxOs 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 SQ&jx8-N@ZnlFE@V@%uk4!~Y`y literal 0 HcmV?d00001 diff --git a/tests/e2e/tests/snapshots/Intensity.test/Reset Intensity.png b/tests/e2e/tests/snapshots/Intensity.test/Reset Intensity.png new file mode 100644 index 0000000000000000000000000000000000000000..ec288864f6bdf0b91e35d7b3ad5a957b49cc2e98 GIT binary patch literal 87255 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 literal 0 HcmV?d00001 diff --git a/tests/e2e/tests/snapshots/SocialContextMap.test/Atlas Map.png b/tests/e2e/tests/snapshots/SocialContextMap.test/Atlas Map.png new file mode 100644 index 0000000000000000000000000000000000000000..9165fc4a64e3888df7f787a3cdf7369675deae47 GIT binary patch literal 80387 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 literal 0 HcmV?d00001 diff --git a/tests/e2e/tests/snapshots/SocialContextMap.test/Updated Atlas Map.png b/tests/e2e/tests/snapshots/SocialContextMap.test/Updated Atlas Map.png new file mode 100644 index 0000000000000000000000000000000000000000..e6573f545e66b3c9017f59d263175681330da1ee GIT binary patch literal 199588 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�X?K+!}RIRRyLPxzJQ_ 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 z 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 literal 0 HcmV?d00001 diff --git a/tests/e2e/tests/snapshots/Viewer.test/Atlas Map Map Centered.png b/tests/e2e/tests/snapshots/Viewer.test/Atlas Map Map Centered.png new file mode 100644 index 0000000000000000000000000000000000000000..022e08c966297f0d8b9b947a595257be8e1b3981 GIT binary patch literal 84028 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֏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 literal 0 HcmV?d00001 diff --git a/tests/e2e/tests/snapshots/Viewer.test/Atlas Map.png b/tests/e2e/tests/snapshots/Viewer.test/Atlas Map.png new file mode 100644 index 0000000000000000000000000000000000000000..9165fc4a64e3888df7f787a3cdf7369675deae47 GIT binary patch literal 80387 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

i{EOxnVfuHN9dwGi{Vo>k$zQ3o~|Q) zxqtuuM=!Sx4ux^m$)})L0nGJH_PYq+UAi6hi2^*EGO->68aS`OrF-Q{IclB!3HOgX z)NRMkfW@XZ`D_U60FJXab-wq%L5Hp@e_S>C3`VifNl7$0Xl1cwvCw{~Nh)z|19(!Z z#%;$j{xnQ3nV!#@Il({${=ZFHp-r>TfSh~jm@xf?4#JkBrIcAvpfjqWKQfh0#DokD z*RBcRsm;W`(rBo_avhl(tep|au%BLQ&w{?oK}aM;Tr~2L^LYJgv!cR@#pw=K_mgagArACA7| z!7mz_6HLD64!Pk#Pe>A46I7FcFYqS! zr73%SjDaWDA2T;7pbV@OmNtX|m9MWsnb+o#*RM>rz$jm%V3;q#=2+>8^DUaqJ)YfX z54{$M)R906YifC-#jX$+3ibORFgqrym-w^eTFzhxvC~n+!KBI=Rk)n62fTAVb4~8( zQQId%2?UURbt-u|A%Vu{gt5(7Q@#DLb$|mj0x$hTpydRxFgu`;U+TN>N3yVUw~pC0JwM9Y^|#1jAq{uf3ZAXndY>c| zkWsd_&Wj+c8FA`8dL-r^h1mOch#@E!*IL^khTs4n$+f+Ee|V3F_9($rv3vI z&Nyx0C=aeN6_b>_`|X>X$J`+3pVVRWIIASQd22c1rT}1*lhQ1s{W2Yg`i;y!GC{nd zo61Q)P#MNS_1-{b&pNGy=N1>9qxyEf{tqSM+}>LPVrD2t^^PV?J-<>M? zMp8Qxk78tJXGZ|vL-ilp>&Ns}6XM#Zbkff5IJ8tte*5~eKtx^1_J^U=hT`|($B*Q@!C?#{OdEh=jd>L2 zI^uX4n&H*e2SLukH4pIb`L_7?Kv3qHH;^5gJ(qJ0FA2TO2u!bE)Jl5j_^9r!^Q#6 zfXV_kNw7se1eV#3{{DM49hbDVLzoR5yF@RUu`WWs_Yo;1lzZ=qYlu_NGh9M;^IeQ^Qk=>c0i5|=`$ktA?ojcs#YxNxC_%Q+bDx+*7nsSr^uphIA| zFJj3sYsgVbSW-}Kgri}3^D=Q6c18gBWR7KFZZ(1xWm|Y!=;mFLY-%vUM8w3@=2{kl ze(;XCq1$oTQGd4)*u6Uqux~S%L7CXX0flOO3i=8)dNY zow7QyCXt~77K3|Hg^+O%DnAS6{`2maPXJR3T<%YRJyF4g8(DzcDv=@a>61#SL{E3O zmTO)hMB(@Mt0}z{G%di)WkvSck8NbGVX1{l3<1P(p<9};+JGBl;EpdOn;sJLT$9zf zS_=DlkWm6dK8HI#28|FW;kS9?v%^O2lS@L2saI%K6_gUqPhC56aY)PBrp|+0$j0U!u>jf8(V-L<7Z|1*mryI(;DN(1qYn! z04-pUKJ(|5P6*;31w8ey1ynrinl@k#>~h!W`L z^7QG`yHzHTNmNZ4f3_7pbh=I%2OXLPgV@Go(7+(!NqpUg%?MPO}*gNKkxM_H}_t#>(u%##kiF3 z)5|wqnllEy8wAx>zi+vCQM+^nN_u$(56&a@OfxCuRxq=1bS|4=SaIVN!lvf18u(+P#lR2=4@>|G) znSh7Ks2a>8e-L4XdwH zYDP_#e?+63Lkc>ZNf9-3G*zp&uSWialC}n5+9gBg=clJx3uH>i=hvr$56n7ZzK?i8 z0tN_%>Fvep08g{b@&I6X6*A@vi1eG2cckVUHVJV9W0?c4*z5tM--@)BIUb)-L8~C>De&!5{ zAEEn*fyOed!Iy?T*D_i{k+#DqnZ z1Z@j!MfwW;^i>5X1-UlL$jDUiABc#HJN>8GpM`V~=$SxUHpt{kc$4N!k>FQ!5C=Od zGpLHP`q6+UB$t_}*%l*%FjBGH;_XfKn;+dMvMTJAIA;!`Kj`Lyc)}mq3ZYL_3%Zy{ z(?*I^HXV9Au*??p0#yXJR?1W8JrgkLDYa3}ekk_^3=)^l%Uh-6E`h@46=GYeKv%RFp33~ZO0WyS5g z%mEFRS$=G5N)dD8B>H=l4#DE{2rkVa?#IG-gCFXvH>!PY%`XgC)~ne3uCsUUgkp-* z-W}O``hgcyR9;clNhzKol`kH3WU6IB5*M9>OoSu+IygH4>a;Uwy|cj4bQId}ZY=Y4 z8}u4K1rG~@uVrS4i=g&1-% zQPI=}(j;DYo-SxdrVHk+UkPfVeD64wo2wNWtNao~R`8VKW-6;5d(goY{lIAjBF;MR z(C^w~v$7hfwk0b%X^~LA140Qrm=h3Wd!#BL1j^C0>A5y!c5fYd{b@-F%%S22i@T>< zOEz2k4nX_E$Cv#aQ>@ukXk{O zY>uVRQLy8q!9rv0?Ha+*Yv^^(Q*NYJ668G#&SyjVLfK;B4Y*~D=F&6I*cfyqBLTd( z+v#bMb3SODc(p1x2`VyNT?_oN!Wp!OkPj!;LcX`G%OqH@eGf*OL0?tAP>9P@ZW(8; zDw(`WEqDpp8+g{@4bfN#%eR)Z{rMpsDS0KWj`dw~(5MwUH79YE@D?}>)FYWB?jy%k znsC>dp(y5$9;mN(2naOOh*^{Oc~MJ+6b6kbH~s8F+1l6Ruw%;cCZ)YuwGIj*9oF`w zT(K5hWvDuhAa1PZEP?qy^2LkR!iwchP^Ux6-+cGYEYJ7M(O@FTZM2JlzI*rX2!+VD zjzeQ*L>+qB2i1&L-pPXT z^>#w!o{q84^ac<-6oHuCNogO;Ign#c`rOh|OK?ajD2Rf6>;ZN4ZE>yjc3Iw}tV|7U zKfeP2^EIq4CuPIc0#BJc06C8yKb{)$#HrzFrz_U(E^Jm3@~1aTC4u1o25ioXmb)!0 zD5vnNf+fkx_oh3utfs$aEkZUB$i%Nhg1{cgxC!pFPX(8QN9n;cLdHYAy}blnP8%Ia zxhWRx?JyL)Pt}7nt#foBu(q#x@kZeIGE~KZ3P>ikojRq6ogUy7hmIA75Ie^oCM3bx zTVwC^2_v!wX=blOP}i@YGB9|LA`X>?0M>7k*Y_?fi?YqwH`*6EWc54>*L_u7%%7HL zuG|CALblIxGt`hPQR=f^bLvheQm`9LE`H^VK=A8bIHP&Bdh+)432X)Fx9qIaMCPVi zIq%GV^A%~pIG2~*m)7Q$vvbg?=V;M03GSE#klt(;<_&M%6F5Lvbd32v6!3L+z%E(D zCIjzeuC*%NbX+ItN;y!uUOyU9i{-mnL+jJ#g{yVs;arrCDt& z4L%D(2!|q51(?_&#Y{KHFog>JE$%f>LSzSz!**ZlTvs>{@@0n@NE0iD-)#_!a+6Xmn7JB0?UC86?oaE-MiiC2@iX%DHik>%%q z8GmXr_HlOqRmAnV$0sb zfi7DE>~NNOkAJ_9MA|zq5pyGZaYU#ogVx#80k)R6Z@ZY5Zc5A5-c0u}h~`Rx)dNO= z5Km9JE2m%LyjSJ8Z4JTUpomB!ba0k&7*rC~iD&I-lmX#zEMMNUyu2;uk{0KK%E>IX zp*iJmI1trgE}cIQoqu8%uc#A8pUL>~0RpQYwc}^K6c`S>Xyc@16_z(gU64DD;OCv+ zXi>dakboNRo^9^TFeZc33UNp`SC?+Ql|r)_^GqpEhnbjPAtvMc!)$MM#ypkrqzcan+q~}Szphi%5hZ1%Kj6xw|2Y=xvQr1#`7M>q^CRDTAnZ*P&v$G ztAL+Nx6xpHJK}thZ-ATscTRUB29;Vqy)_{Tq-6XP)W&EjtQgjO-rQ*l1hZ>SfNz0V zHe?X#WP*FumZgd_kzTdB%_qH=twg}@RkY@#tvwZMjNgLOP4&ILPycYEY~TB%XpKbj z?c`NK0?YCrB31S00-RKIv0vcb0Dj&FugVomqU2VZ_)k9xHViSMtHefDOj>l|BLx4Y`aU#&`n4PG|3U~1GVlLyG|uZ<@Te2>qgUW+ zd)G~Cz6f8coPqfh{s2NsP%lU80UfsO!~fQ3|D#cdKm8+9-$VgH_^*rm%Us10ErX@u z21S~~mc zw`}IWI}liQI$wCE|JP>{b$?%E6V@&LcG||P!z3UkMoC<6Ps`MiOR1ac&3@|D;XiA) zMnO64k`IC37tOD*KlQ6v()t(6Q-~T4>b{=-qBiKvELqghFrin_Lrq9Md&{r))JAUz ztYX0&HuBFBqcqWI!7yO5L4Q$p^tT|MU4#7>+w}f@#-k(7zy4X!b_^EEe=uYr0H>?1 zt6jIkp$QYf&yjIP2d1h|4fEX=`GzTv!oncOaC%Mm`0oQAOHSz+4(i$)*mZkyjk5mN z`jH&CiQ}XiTTU8k#BCPpkcglm2PE^#?}H2~va!uod=?XN-Z4q)#P4qjIt{w|YENa&uaADZ6Ykp|*xKn25_)_3)$ZUiDu0~=ulk)i1#vyS z_-6d&*57X*>NqEN(gzjUWv?*qQhc!S+RszkBvN}eteH@4AGY{@o)Z5{UY;xmbKV=u z34_a`yM)61UmW~>2nXba!Z$`Xe#_is-G1Tk&y_Lp{WY7jK5!IJkzd!>g0oj>|F01S zPQeu$?(IL1ZU_GkmLFsEW8<;EPfUBoSLZgz!=IDi_b`^Bqrs`$;kUIrLks$L-%o z62EnHPWip?&}P>AA7exyP!VCI5A~A2(Xa(^rg+ z)z&qbE5tdg#7$F2<&^5{>PBrm;$827`iDOWU68<1?D;HhLYUW2u+%$!dDft1ha=ra z!sA#C(QR+vegjRhv{g53xDtb8YJt#ulh?bCAJ(S zBZ0Q0oV9WD8dVXJP7lMR|kXFVEj3YSuAs||uRh^AK=rh95?d=r=fOW6>b7QVq=dxgDmFE>$0qFxWf z3dUTDZR~Aka|lH%Uhz8CnABgpkySQGFq+9Twq{6@5l1B@MM0D?T64~A0b)%qUA(wO zs(k5yuwV8Az#iOVC3f!KeO9YpnpH&(d*kn<>XbkJ{@n(#Ws78;Ro=p&E5?lFztli; zfJy=4#RouK3?TrRl*~-7yuLGjerkyPe0NRST}VSnTwLtDl&BUP6Qd7Fat7U*x47s@!0yk33*m~sm%K$=LpU!Ky9$p(wt9ndi!Iym zj(&y$+~cGwAc3#qh*xr&jrSu!3kDz%FX#m0HP9@a>vMB6_c0dd3d|<( z?jR=}hf>VKDr}v}V39K@M7BjYpS7IihsX{o7{9>T-nk>h!sP7iw%*PvDuPY?J_KkS zw61mW1EcKiJ>HjNE&z&dFce<_7y+`P*LR(W3kBSc2?Bml^KM0W_(l@_LctCjp$rV{ z%eXl3cD;SyI6UbC-cislf~%HJqkt1~*e+o%QxlBg5Ma=$*jZNx9t#-KZhTo$utz@y zD;XF)wx@Mo0HOudfcsRhw|ssYizqKZfBzx^M}zXq2?npz*G@U<*cJeEI62s%614&W zu<69_$$y3R&s_T*UGpensQ`Zt&&Ln%t95YvAzK6(TV-F~3;$aN-Vb&hENSC`Y~-CO z=d2^a=K@0sJoyM98=#h_#=F2%51EQnCh~isdAB&we27Db4rQBEoni(&0^8EHYnFcu zfq&g~b?GR?z%wuT9aJHL$|Vgr7TngWO~ym!(%+JGd0c3 zc19b?#zMZ^F2OrhHuB3p{<@Xg1Sh5W_4}Xz@3k*59^m@OK1{y>8e&M+Ru?z&lEbY{ z6&{h4Gy{+Zvf>I@K6q@oqlY=Y<0`IPGeJ2b|Xh7z&yY z6acPi_A=B87HrS*3gj{_z(j>}z>V`{?~6K^;uavyHK$oTGSOuYP#l-*nSN10L1$oU zYMf|{p6|0xTGki)b^=6BdmldzgK#2In1q_6&=Mc_RgW6=hdp}q7V6rmDJ!4?@57@n zS^Opd0xA;~hrKe|U3UI@3^*0qCSB8hR~~D(X4$^#z%T*Xg@vWNc=T0JhyZwuh`D41 z@D~I{?Y!y;3^*jq&{6YZhuvp)xQx|qhVFmMp;`x_BCoNZLmPbuh*+}NLKZM|>|JA9 z+eb*=0K3fMZshpu1ZbrVU?{kxVH7^;oUXO_p^}%J7VkUuRa=V1rLhn)$h_#YpU&5L zXD4lOUN%iPDHYIeSSd{tkVZbY2W;eJ-E6juBpd~~OLeT=3o!Jb1FtE<)0JIwflc0Ls6*^m=jo2A+0cyi0* zh+NG+6W`rz!InnPFtv7bUz+oCOMYR$`O=k%NTi@r zSg9v-mm`)=D)J`PCz?}zVW#Z@bHDJ}^2BVCh zI~Ls5P0}e@b)f=14MHTq*~Xya$tk9$ugvCQXK9RF@v;7VTs@iW@$Gj0${Go)b><1Z zm^@bY9~8IeWqGs4bH2HlG?gld3v9`7(r9UpDT(x4vl zHl=}FvtIbBjSG)c%sPj~g%b#bBA3bAZYl}qJ6AoAJ3><5HTmY{)ZP1`1MGA8AEB{r zJW^$TGTl8r=8$62o*pTx{-J0-Fl2$ithlujaL(Z7%@8%I zQ{eE})xMnQK6O3diEJx|9PZn$7Redn*YhT{(VCiRiJr@Dzk1F6P^56DALSkPDXYb& zmykZ&Iz**e+c%;8YQmWi{e3|g+EY4>&Hj9OPYlAFtP^*EKb15Y%~Y8_4H1SqgW^4L znW}6EC7TP!PihT4GT#X;2Lrq>`?TbW!ADB>KZ64(+11c^1l~=0`3WB!H-|v*wF<$t zM8uyWv)T;Fu>Ok};mO^&34sVPaN6+MDSj&UBfLR6!+;$B3A%0u1nx0nlieqVjLbjs z`20?>xA4O!QHL(TaLXeoPp7IP5L_w+>L(Y~!sRpCnXd5Tk7YiF;hGAYd;=gN@SXVp z`=MqIy>yBBUq3T646&E~{j=Vi|CF zBd=KRnv4BN@K80jxg+jW#QKU4*X<4psr&Hc%_-Y%fP)WKhGRJJ?E7+Q2VvPPWx09{ zxfOw^Z0ds@m2s8;T@yJ~JPc=JEs=ekTBPc%6+UDv_Tk;w8l~-A+Q6gSBL}4x-yQRu zh0j)#dUog$oBDSrB`t)gI|s`;HPpumtHjHuCVl zagql7+`pk@<3A~u;=-39Xp#;$o#mI;}P%*HdgFpQ|^;oadV1AUcc?%37?i!i^aM8A6}LQ zTF(yc!fixUPV1!~){Cl}O^RD)KdW~p5x=lxA!kN;L(10skMALp)WVZv{Pc`?&c3l# zSwO=u6UsMK=_($++upi*S53;p|6RYg<+sN7KQkYHN0T;m5{Ex38Ykkf!*Ge0x$tM) z4Je2NR}W`1~h=z^IvU+tm5s{Jopr)nu|2qz!; zxEUEf3ptEK=H)M{32kkHay5}{4~HUk|4J{lG|;GsKct&=C9R9#kvuV$wyK? zG+7GEA`n+TbUl05_4WKSLpXZZq?v84>TEl6N_W2L&=2uZ4^?Zw43`DrWYLt{+c#ep zbGtpYT|uWpeL-0B;EY#sB~S literal 0 HcmV?d00001 diff --git a/tests/e2e/tests/snapshots/Viewer.test/Atlas Map: Next Slices.png b/tests/e2e/tests/snapshots/Viewer.test/Atlas Map: Next Slices.png new file mode 100644 index 0000000000000000000000000000000000000000..bf4711fe0ad05fcdfd9a5210727d3e452c4fa524 GIT binary patch literal 86647 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 E3rvO$SpWb4 literal 0 HcmV?d00001 diff --git a/tests/e2e/tests/snapshots/Viewer.test/Atlas Map: Wireframe.png b/tests/e2e/tests/snapshots/Viewer.test/Atlas Map: Wireframe.png new file mode 100644 index 0000000000000000000000000000000000000000..3a275c17ca75f7417932105c7a25a3ee5c280325 GIT binary patch literal 82078 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

p4;=2vd86vTVd1K03^lZ>Pv__#);X-w^3-9h_7 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 literal 0 HcmV?d00001 diff --git a/tests/e2e/tsconfig.json b/tests/e2e/tsconfig.json new file mode 100644 index 0000000..e69de29