{"data":{"id":"10.5061/dryad.6djh9w1j4","type":"dois","attributes":{"doi":"10.5061/dryad.6djh9w1j4","prefix":"10.5061","suffix":"dryad.6djh9w1j4","identifiers":[],"alternateIdentifiers":[],"creators":[{"name":"Velazquez-Albino, Ambar C.","nameType":"Personal","affiliation":["University of Florida"],"nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0009-0000-5901-4288","nameIdentifierScheme":"ORCID"}]},{"name":"Elsea, Bianca","nameType":"Personal","affiliation":["University of Florida"],"nameIdentifiers":[]},{"name":"Melnyk, Andrii","nameType":"Personal","affiliation":["University of Florida"],"nameIdentifiers":[]},{"name":"Eswaran, Neel","nameType":"Personal","affiliation":["University of Florida"],"nameIdentifiers":[]},{"name":"Imhoff, Eric Daniel","nameType":"Personal","affiliation":["University of Florida"],"nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0000-0001-6018-6589","nameIdentifierScheme":"ORCID"}]},{"name":"Williams, Aleia G.","nameType":"Personal","affiliation":["University of Tennessee Space Institute"],"nameIdentifiers":[]},{"name":"Graham, Willem","nameType":"Personal","affiliation":["University of Tennessee Space Institute"],"nameIdentifiers":[]},{"name":"Johnson, Jacqueline Anne","nameType":"Personal","affiliation":["University of Tennessee Space Institute"],"nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0000-0003-0830-9275","nameIdentifierScheme":"ORCID"}]},{"name":"Johnson, Charles E.","nameType":"Personal","affiliation":["University of Tennessee Space Institute"],"nameIdentifiers":[]},{"name":"Butala, Megan M.","nameType":"Personal","affiliation":["University of Florida"],"nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0000-0002-7759-5300","nameIdentifierScheme":"ORCID"}]},{"name":"Rinaldi-Ramos, Carlos M.","nameType":"Personal","affiliation":["University of Florida"],"nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0000-0001-8886-5612","nameIdentifierScheme":"ORCID"}]}],"titles":[{"title":"Data from: Esterification synthesis of iron oxide nanoparticle tracers for magnetic particle imaging (MPI)"}],"publisher":"Dryad","container":{},"publicationYear":2026,"subjects":[{"subject":"FOS: Chemical engineering","schemeUri":"https://web-archive.oecd.org/2012-06-15/138575-38235147.pdf","subjectScheme":"fos"},{"subject":"FOS: Nano-technology","schemeUri":"https://web-archive.oecd.org/2012-06-15/138575-38235147.pdf","subjectScheme":"fos"},{"subject":"FOS: Medical engineering","schemeUri":"https://web-archive.oecd.org/2012-06-15/138575-38235147.pdf","subjectScheme":"fos"},{"subject":"magnetic particle imaging"},{"subject":"magnetic nanoparticles"},{"subject":"synthesis"}],"contributors":[],"dates":[{"date":"2026-08-05T15:32:33Z","dateType":"Created"},{"date":"2026-08-05T15:32:36Z","dateType":"Submitted"},{"date":"2026-08-06T00:00:00Z","dateType":"Issued"},{"date":"2026-08-06T00:00:00Z","dateType":"Available"}],"language":"en","types":{"ris":"DATA","bibtex":"misc","citeproc":"dataset","schemaOrg":"Dataset","resourceType":"dataset","resourceTypeGeneral":"Dataset"},"relatedIdentifiers":[{"relationType":"IsCitedBy","relatedIdentifier":"10.1039/d5nr03157e","relatedIdentifierType":"DOI"}],"relatedItems":[],"sizes":["76110362 bytes"],"formats":[],"version":"2","rightsList":[{"rights":"Creative Commons Zero v1.0 Universal","rightsUri":"https://creativecommons.org/publicdomain/zero/1.0/legalcode","schemeUri":"https://spdx.org/licenses/","rightsIdentifier":"cc0-1.0","rightsIdentifierScheme":"SPDX"}],"descriptions":[{"description":"This repository contains the experimental data for a study of iron oxide\n nanoparticle synthesis via esterification to develop tracers for magnetic\n particle imaging (MPI). The dataset includes: (1) Fourier-transform\n infrared (FTIR) spectra and tracked functional-group peak positions used\n to monitor reaction progress; and (2) transmission electron microscopy\n (TEM) for particle size measurements characterizing nanoparticle diameter\n and morphology across a range of synthesis conditions. The variables\n tested include temperatures (290–350 °C), precursor addition rates\n (0.025–2.5 mmol Fe min -1), and three iron oleate precursor compositions\n (Fe(II), Fe(III), and a 1:2 Fe(II):Fe(III) mixture). For larger\n nanoparticles from the iron oleate precursor study, additional\n nanoparticle characterization included (3) X-ray diffraction (XRD)\n patterns and ⁵⁷Fe Mössbauer spectra to identify iron oxide crystal phase\n and composition. Finally, (4) SQUID magnetometry data characterizing\n nanoparticle magnetic properties; and (5) magnetic particle imaging\n relaxometry and 2D scan data characterizing tracer sensitivity and\n resolution demonstrates the potential of the esterification synthesis\n route to develop size- and composition-controlled high-quality MPI tracers\n as an alternative to thermal decomposition synthesis. Researchers\n developing or characterizing magnetic nanoparticle tracers, evaluating\n nanoparticle synthesis routes, or benchmarking MPI tracer performance may\n find this dataset useful for comparison, reanalysis, or method\n development.","descriptionType":"Abstract"},{"description":"Iron oxide nanoparticles were synthesized by esterification of an\n iron-oleate precursor added continuously into a Schlenk-line reactor with\n oleyl alcohol under argon, with controlled flow rates and reaction\n temperatures. Three iron-oleate precursors were used: prepared from\n iron(II) acetate, iron(III) acetylacetonate, and a 1:2 molar\n Fe(II):Fe(III) mixture of the two. Reaction progress was monitored by\n drawing aliquots and recording Fourier-transform infrared (FTIR) spectra\n in a PerkinElmer Frontier model spectrometer, averaging 4 scans per\n measurements of absorbance; peak positions for ester, alcohol, and\n iron-oleate carboxylate bands were tracked across aliquots to follow\n conversion over reaction time. Nanoparticle size and morphology were\n characterized by transmission electron microscopy (TEM) on an FEI Talos\n F200i S/TEM, imaging particles cast onto carbon-coated copper grids.\n Per-particle area, diameter, circularity, aspect ratio, solidity, and\n elliptic Fourier coefficient (EFC) ratio were extracted from micrographs\n using a custom MATLAB image-analysis routine (minimum 1000 particles per\n reported condition); size distributions were fit to a log-normal model to\n obtain median physical diameter and geometric deviation. Crystal phase was\n assessed by X-ray diffraction (XRD) on a Rigaku MiniFlex600 diffractometer\n (Cu Kα radiation, 40 kV/15 mA) scanned over 10–70° 2θ, with peak fitting\n and Scherrer-equation crystallite-size estimation performed in SmartLab\n Studio II. Iron oxidation state and phase composition were further\n resolved by ⁵⁷Fe Mössbauer spectroscopy (⁵⁷Co source, closed-cycle\n cryostat) at 293 K and 6 K, with hyperfine parameters obtained by\n least-squares fitting (Mössbauer GenFit software). Magnetic properties of\n nitroDOPA-PEG (nD-PEG)-coated nanoparticles suspended in water were\n measured by SQUID magnetometry (Quantum Design MPMS-3) as magnetization\n vs. applied field at 300 K, and fit to a log-normal-weighted Langevin\n model to obtain magnetic diameter, its geometric deviation, and saturation\n magnetization. Iron concentrations used to normalize magnetic and MPI\n measurements were determined by a 1,10-phenanthroline colorimetric assay\n following acid digestion, read at 508 nm against a calibration curve. MPI\n performance was characterized on a MOMENTUM™ scanner (Magnetic Insight).\n Single-channel relaxometry (RELAX™) scans provided point spread function\n (PSF) signal intensity (sensitivity, normalized per mg Fe) and resolution\n (full width at half maximum). Two-dimensional images (DICOM format,\n x-space direct reconstruction) were acquired for serial iron-mass\n dilutions (25–1000 ng Fe) to characterize signal vs.mass response, and for\n paired-capillary phantoms at controlled separations to assess spatial\n resolution.","descriptionType":"Methods"},{"description":"# Esterification synthesis of iron oxide nanoparticle tracers for magnetic\n particle imaging (MPI) [Access this dataset on\n Dryad](https://doi.org/10.5061/dryad.6djh9w1j4) --- ## Principal\n Investigator Contact Information Carlos M. Rinaldi-Ramos Institution:\n University of Florida Email:\n [[carlos.rinaldi@ufl.edu](mailto:carlos.rinaldi@ufl.edu)] ## Alternate\n Contact Information Ambar C. Velazquez-Albino Email:\n [[ambar.acva@gmail.com](mailto:ambar.acva@gmail.com)] ## Dates of Data\n Collection Data were collected throughout 2024–2025. ## Funding This work\n was supported by the National Institutes of Health (NIH) through the\n National Institute for Biomedical Imaging and Bioengineering under award\n number R01EB031224, the National Cancer Institute (NCI) under award\n R21CA263653, and the National Institute of Neurological Disorders and\n Stroke (NINDS) under award R21NS125089. ## Related Publication Ambar C.\n Velazquez-Albino, Bianca Elsea, Andrii Melnyk, Neel Eswaran, Eric D.\n Imhoff, Aleia G. Williams, Willem Graham, Jacqueline Anne Johnson, Charles\n E. Johnson, Megan M. Butala, Carlos M. Rinaldi-Ramos; Esterification\n synthesis of iron oxide nanoparticle tracers for magnetic particle imaging\n (MPI). *Nanoscale* 2026; 18 (5): 2625–2640.\n [https://doi.org/10.1039/d5nr03157e](https://doi.org/10.1039/d5nr03157e)\n ## Recommended Citation for the Data Set Ambar C. Velazquez-Albino, Bianca\n Elsea, Andrii Melnyk, Neel Eswaran, Eric D. Imhoff, Aleia G. Williams,\n Willem Graham, Jacqueline Anne Johnson, Charles E. Johnson, Megan M.\n Butala, Carlos M. Rinaldi-Ramos; Data for: Esterification synthesis of\n iron oxide nanoparticle tracers for magnetic particle imaging (MPI)\n [Dataset]. Dryad. doi: --- ## Dataset Overview This repository contains\n the experimental data supporting the manuscript above, which describes an\n esterification route for synthesizing iron oxide nanoparticle tracers for\n magnetic particle imaging (MPI). The deposited files fall into three\n groups, matching the three main experimental studies in the paper: |\n Folder | Study | | ---------------------------------- |\n ------------------------------------------------------------------------------------------------ | | `(A) Fig1. Fe(II) at 290C` | Low-temperature esterification (LTE) of Fe(II) at 290 °C | | `(B) Fig2. Fe (II) T and FR study` | Effect of reaction temperature and precursor flow rate on Fe(II) LTE | | `(C) Fig3-5. Iron oleate study` | Fe(II), Fe(III), and mixed Fe(II)/Fe(III) (\"Fe2\u0026amp;3\") iron-oleate study for iron oxide MPI tracers | **Per the lab's data-sharing policy**, this repository includes the data used to generate the paper's figures, tables, and conclusions (raw exports and analysis-ready/derived data), plus the metadata needed to interpret them. Proprietary instrument-native files not used directly in the analysis (e.g., full native TEM acquisition folders, native FTIR instrument project files) are retained internally by the Rinaldi-Ramos Lab and are available on request; this README notes where that applies. --- ## Synthesis Conditions Summary Iron oxide nanoparticles were synthesized by esterification of an iron-oleate precursor with oleyl alcohol in a Schlenk-line reactor under argon, with the oleate precursor added continuously via syringe pump. Reaction conditions relevant to each folder, cross-referenced from the manuscript's figures and results text: | Folder | Oleate | Temperature | Precursor flow rate | Total Fe added | | -------------------------- | -------------------------- | --------------------------------- | ------------------------------------ | -------------- | | `(A) Fig1. Fe(II) at 290C` | Fe(II) | 290 °C | 0.1 mmolFe min⁻¹ | 12 mmolFe | | `(B).../Temperature study` | Fe(II) | 290 / 320 / 350 °C (one per file) | 0.175 mmolFe min⁻¹ | 1 mmolFe | | `(B).../FlowRate study` | Fe(II) | 320 °C | 0.025–2.5 mmolFe min⁻¹ (see below\\*) | 1 mmolFe | | `(C).../IronOleate study` | Fe(II) / Fe(III) / 1:2 Mix | 320 °C | 0.1 mmolFe min⁻¹ | 4–5 mmolFe | ``` *Flow rate unit conversion:* file/folder names in `(B).../FlowRate study` use volumetric pump rate (mL min⁻¹), while the manuscript reports precursor addition rate in mmolFe min⁻¹. These convert via the Fe(II) oleate concentration (0.5 M): e.g. `0.2mLperMin` = 0.1 mmolFe min⁻¹ (the condition identified in the manuscript as optimal). The full mapping: `0.05→0.025`, `0.2→0.1`, `0.5→0.25`, `1→0.5`, `5→2.5 mmolFe min⁻¹` — this matches the manuscript's stated tested range (0.025–2.5 mmolFe min⁻¹) exactly. ``` --- ## Repository Organization and Structure ``` (A) Fig1. Fe(II) at 290C/ ├── FTIR/ │ ├── (Dat) LTE_FTIR_Aliquots.csv # raw spectra, all aliquots │ └── (Ana) LTE_FTIR_Aliquots_PeakSummary.csv # tracked peak positions, all aliquots └── TEM/ └── LTE_A{2,5,8}_{5,60,120}min_TEM.csv # per-particle size measurements, one file per aliquot (B) Fig2. Fe (II) T and FR study/ ├── FlowRate study/ │ └── {0.05,0.2,0.5,1,5}mLperMin_TEM.csv # per-particle size measurements, one file per flow rate └── Temperature study/ └── {290,320,350}C_TEM.csv # per-particle size measurements, one file per reaction temperature (C) Fig3-5. Iron oleate study/ ├── FTIR/ │ ├── (Dat) OleateStudy_FTIR_Aliquots.csv │ └── (Ana) OleateStudy_FTIR_Aliquots_PeakSummary.csv ├── Mossbauer/ │ ├── Raw Data.csv # spectra + fits, all samples/temperatures │ └── Fe{2,3,2_3} {293K,6K}.fit # per-sample fit-parameter reports (7 files) ├── TEM/ │ └── Fe{2,3,2\u0026amp;3}_{5,15,30,45}min_TEM.csv, Fe{2,3,2\u0026amp;3}_final_TEM.csv # per-particle size measurements (13 files) ├── XRD/ │ └── Fe{2,3,2\u0026amp;3}_XRD.csv # diffraction pattern + identified peaks, per sample └── nD-PEG Coating/ ├── MPI/ │ ├── Analysis/ │ │ ├── RELAX_Fe{2,3,2\u0026amp;3}_Summary.csv # relaxometry summary, per tracer │ │ ├── MPI Serial Dilution_Data Summary.csv # signal vs. Fe mass, all tracers │ │ └── MPI Line Scans_Data Summary.csv # spatial resolution line-scan summary, all tracers │ └── Raw Data/ │ ├── RELAX scans/Fe{2,3,2\u0026amp;3}_relax_{1,2,3}.csv # raw relaxometer scans, triplicate per tracer │ └── 2D/ │ ├── Fe{2,3,2\u0026amp;3}_2DSt_1mgFe_{1,2,3}.dcm # standard 2D MPI images, triplicate per tracer │ ├── Serial Dilutions/Fe{2,3}(\u0026amp;3)/Fe*_2DSt_*ngFe.dcm # 2D MPI images across Fe mass dilution series │ └── Line Scans - Resolution Phantom/Fe*_2DSt_*mm.dcm # 2D MPI images at increasing capillary separation └── SQUID/ ├── Fe{2,3,2\u0026amp;3}_MH.dat # raw magnetometer output, per tracer └── Results Summary_MH.csv # M vs. H summary, all tracers ``` --- ## List of Abbreviations | Abbreviation | Meaning | | ----------------- | ------------------------------------------------------------------------------------------------------------ | | LTE | Low-temperature esterification | | FTIR | Fourier-transform infrared spectroscopy | | TEM | Transmission electron microscopy | | AX\\_Ymin | Aliquot #X taken after Y minutes of esterification reaction | | XRD | X-ray diffraction | | FWHM | Full width at half maximum | | MPI | Magnetic particle imaging | | RELAX | MPI relaxometer measurement | | FOV | Field of view | | PSF | Point spread function | | ROI | Region of interest | | nD-PEG | nitroDOPA–polyethylene glycol (nanoparticle surface coating) | | SQUID | Superconducting quantum interference device | | MPMS-3 | Magnetic Property Measurement System (Quantum Design), the SQUID magnetometer platform used | | MH | Magnetization vs. magnetic field measurement | | Dp | Physical diameter | | ln σp | Geometric standard deviation of the physical diameter distribution | | Dm | Magnetic diameter | | ln σm | Geometric standard deviation of the magnetic diameter distribution | | Δν | Separation between FTIR bands | | Fe2 / Fe3 / Fe2\u0026amp;3 | Tracer synthesized from Fe(II) oleate / Fe(III) oleate / mixed Fe(II)+Fe(III) oleate precursor, respectively | --- ## Per-Technique Documentation ### FTIR (`(A).../FTIR`, `(C).../FTIR`) * **`(Dat) *_FTIR_Aliquots`** — raw exported spectra for every aliquot in the study: wavenumber (**cm⁻¹**) vs. absorbance (**A**, unitless), one aliquot per column pair. This is the exported spectrum, not the spectrometer's native project file. Aliquots were drawn directly from the reaction and scanned to track reaction progress in real time. * **`(Ana) *_FTIR_PeakSummary`** — tracked peak position (**Wave Number, cm⁻¹**) for each assigned functional group, by aliquot, used to track esterification progress over reaction time. Peak assignments (from the manuscript): | Group | Wavenumber | | --------------------------------------------- | ----------------- | | R-OH | \\~3227 cm⁻¹ | | Ester C=O stretch | \\~1741 cm⁻¹ | | Carboxylic acid C=O stretch (free oleic acid) | \\~1712 cm⁻¹ | | Asymmetric COO⁻ stretch (Fe-oleate) | \\~1570 cm⁻¹ | | Ester C-O stretch | \\~1241, 1175 cm⁻¹ | | Alcohol C-O stretch | \\~1064 cm⁻¹ | ### TEM particle sizing (`(A).../TEM`, `(B).../*/TEM`, `(C).../TEM`) Each file is a per-particle table from automated image analysis of TEM micrographs, with columns: | Column | Definition | Unit | | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | | `Image` | source micrograph filename | — | | `No` | particle index within that image | — | | `Area` | projected particle area | nm² | | `Circularity` | shape descriptor, 4π·Area/Perimeter² | unitless (0–1) | | `Aspect Ratio` | major/minor axis ratio of fitted ellipse | unitless | | `Solidity` | Area / convex-hull area | unitless (0–1) | | `Diameter` | equivalent circular diameter | nm | | `EFC Ratio` | Elliptic Fourier Coefficient ratio — a shape descriptor derived from elliptic Fourier analysis of the particle outline, capturing deviation from a perfect ellipse/circle | unitless | ### XRD (`(C).../XRD`) Each `Fe{2,3,2\u0026amp;3}_XRD.csv` contains, per sample, three paired series generated by SmartLab Studio II: `Calc. data` (measured diffraction pattern: 2θ in **degrees** vs. intensity in **counts**), `Individual peaks` (same axes, peak-fitted/smoothed pattern), and `Peak bar` (2θ positions of software-identified peaks, plotted as a stick pattern; `Y` is a constant 0 baseline for plotting). ### Mössbauer spectroscopy (`(C).../Mossbauer`) * **`Raw Data.csv`** — combined spectra and fits for all samples/temperatures. Columns: `Xdata` (velocity, **mm/s**), `Ydata` (measured transmission/counts), `Yfit` (overall fitted curve), `Ysite#1`–`Ysite#4` (fitted sub-spectra for up to 4 magnetically distinct Fe sites), organized by sample (`Fe 2`, `Fe 3`, `Mix`) and measurement temperature (`293K`, `6K`). * **`*.fit`** **files (7)** — one per sample/temperature combination, plain-text fit reports from the CALFUN/Lorentz.f90 fitting routine. Each reports: source (Fe-57 in Rhodium), drive polarity, velocity waveform, calibration material (α-Fe foil) and calibration file, number of fitted points/parameters, and per-site fitted parameters (relative area, amplitudes, linewidths, isomer shift relative to the α-Fe calibrant, internal hyperfine field, and quadrupole shift `e²qQ/2`), each with fitted value, a vary/fixed flag, and a standard error. ### SQUID magnetometry (`(C).../nD-PEG Coating/SQUID`) * **`Fe{2,3,2\u0026amp;3}_MH.dat`** — raw MPMS-3 (Quantum Design) output for each tracer's magnetization-vs-field sweep, including full instrument header (hardware/firmware versions, sample mass, sample holder) and per-point columns for temperature (**K**), magnetic field (**Oe**), moment (**emu**) and associated diagnostics/status fields (see in-file `[Data]` header row for the complete column list). * **`Results Summary_MH.csv`** — processed M–H summary per tracer: `Magnetic Field (mT)` vs. `Magnetization` normalized two ways — per mg Fe₃O₄ (`Am²/kg Fe3O4`) and per mg Fe (`Am²/kgFe`) — plus `Fe mass (mg)` used for normalization. * Data were fit to the Langevin function for superparamagnetism weighted by a log-normal magnetic-diameter distribution (Chantrell et al. model) to obtain the magnetic diameter (Dm) and its geometric deviation (ln σm). Saturation magnetization (Ms) is the maximum of the M–H curve, normalized by Fe mass. * **Fe mass/concentration for normalization** (applies here and to the RELAX/MPI summaries below) was determined with a **1,10-phenanthroline colorimetric assay**. The raw UV-Vis absorbance data behind this assay are not part of this deposit — only the resulting Fe mass/concentration values, as used to normalize the SQUID and RELAX results, are included. ### MPI (`(C).../nD-PEG Coating/MPI`) * **`Raw Data/RELAX scans/Fe{2,3,2\u0026amp;3}_relax_{1,2,3}.csv`** — raw point-spread-function (PSF) scans from the RELAX™ module (single-channel, non-imaging), triplicate per tracer, with an instrument-generated header (operator, project/exam name, series number). Acquired at **45 kHz, 16 mT field amplitude (x-axis)**; 5–15 µL of sample (1–2 mgFe mL⁻¹) in a 200 µL microcentrifuge tube, centered in a custom 3D-printed holder in the scanner's field of view (FOV), scanned for 3–5 min. * **`Analysis/RELAX_Fe{2,3,2\u0026amp;3}_Summary.csv`** — per-tracer summary: sample volume (**µL**), Fe concentration (**mg/mL**, from the phenanthroline assay above), Fe mass (**mg**), and the two headline PSF metrics from the manuscript — **signal intensity** (peak specific intensity, normalized by Fe mass, units **mgFe⁻¹**) and **resolution** (system-reported FWHM of the PSF peak, units **mT**). * **`Raw Data/2D/*.dcm`** — 2D MPI images in DICOM format, acquired in **standard multichannel mode (45 kHz for x/z axes, 5.7 T m⁻¹ gradient)**, reconstructed via **x-space direct reconstruction with an equalization filter** — i.e., these are the **reconstructed/sharpened images used directly in the analysis** (confirmed by the manuscript's methods), not unprocessed scanner raw output; the full native scanner output is retained internally. Organized into three experiment types: * `Fe{2,3,2\u0026amp;3}_2DSt_1mgFe_{1,2,3}.dcm` — standard single-concentration images, triplicate per tracer, used as the reference/baseline scan (visual comparison in the paper). * `Serial Dilutions/Fe{2,3}(\u0026amp;3)/Fe*_2DSt_*ngFe.dcm` — serial dilution series (25–1000 ngFe in 5 µL, triplicate capillaries, 0.8 mm ID, placed perpendicular to the FOV) used to establish the linear signal-vs.-Fe-mass response and limit of detection (LOD determined by comparison to the background signal of a water sample). * `Line Scans - Resolution Phantom/Fe*_2DSt_*mm.dcm` — two 0.8 mm-ID capillaries (5 µL / 5–10 µg each) placed parallel to the FOV at increasing separation (3.25–5 mm), used to assess spatial resolution: images analyzed as line-scan profiles (in-house MATLAB), with two signals considered \"separated\" once the trough between them drops below half the maximum peak signal. * **`Analysis/MPI Serial Dilution_Data Summary.csv`** and **`Analysis/MPI Line Scans_Data Summary.csv`** — exports summarizing signal vs. Fe mass and vs. capillary separation, respectively, per tracer, corresponding to the maximum-signal ROI values extracted from the DICOM images above.","descriptionType":"TechnicalInfo"}],"geoLocations":[],"fundingReferences":[{"awardUri":"https://reporter.nih.gov/project-details/11035057","awardTitle":"Nanoparticles to Track T Cell Immunotherapy Using Magnetic Particle Imaging","funderName":"National Institute of Biomedical Imaging and Bioengineering","awardNumber":"5R01EB031224-04","funderIdentifier":"https://ror.org/00372qc85","funderIdentifierType":"ROR"},{"awardUri":"https://reporter.nih.gov/project-details/10634620","awardTitle":"Nanoparticles for In Vivo Labeling of T Cells During Cancer Immunotherapy","funderName":"National Cancer Institute","awardNumber":"5R21CA263653-02","funderIdentifier":"https://ror.org/040gcmg81","funderIdentifierType":"ROR"},{"awardUri":"https://reporter.nih.gov/project-details/10527640","awardTitle":"Innovative Non-Invasive Imaging of Traumatic Brain Injury","funderName":"National Institute of Neurological Disorders and Stroke","awardNumber":"1R21NS125089-01A1","funderIdentifier":"https://ror.org/01s5ya894","funderIdentifierType":"ROR"},{"awardUri":"https://reporter.nih.gov/project-details/10527640","awardTitle":"Innovative Non-Invasive Imaging of Traumatic Brain Injury","funderName":"National Institute of Neurological Disorders and Stroke","awardNumber":"1R21NS125089-01A1","funderIdentifier":"https://ror.org/01s5ya894","funderIdentifierType":"ROR"}],"xml":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHJlc291cmNlIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCBodHRwOi8vc2NoZW1hLmRhdGFjaXRlLm9yZy9tZXRhL2tlcm5lbC00L21ldGFkYXRhLnhzZCI+CiAgPGlkZW50aWZpZXIgaWRlbnRpZmllclR5cGU9IkRPSSI+MTAuNTA2MS9EUllBRC42REpIOVcxSjQ8L2lkZW50aWZpZXI+CiAgPGNyZWF0b3JzPgogICAgPGNyZWF0b3I+CiAgICAgIDxjcmVhdG9yTmFtZSBuYW1lVHlwZT0iUGVyc29uYWwiPlZlbGF6cXVlei1BbGJpbm8sIEFtYmFyIEMuPC9jcmVhdG9yTmFtZT4KICAgICAgPG5hbWVJZGVudGlmaWVyIG5hbWVJZGVudGlmaWVyU2NoZW1lPSJPUkNJRCIgc2NoZW1lVVJJPSJodHRwOi8vb3JjaWQub3JnLyI+MDAwOS0wMDAwLTU5MDEtNDI4ODwvbmFtZUlkZW50aWZpZXI+CiAgICAgIDxhZmZpbGlhdGlvbiBhZmZpbGlhdGlvbklkZW50aWZpZXI9Imh0dHBzOi8vcm9yLm9yZy8wMnkzYWQ2NDciIGFmZmlsaWF0aW9uSWRlbnRpZmllclNjaGVtZT0iUk9SIiBzY2hlbWVVUkk9Imh0dHBzOi8vcm9yLm9yZyI+VW5pdmVyc2l0eSBvZiBGbG9yaWRhPC9hZmZpbGlhdGlvbj4KICAgIDwvY3JlYXRvcj4KICAgIDxjcmVhdG9yPgogICAgICA8Y3JlYXRvck5hbWUgbmFtZVR5cGU9IlBlcnNvbmFsIj5FbHNlYSwgQmlhbmNhPC9jcmVhdG9yTmFtZT4KICAgICAgPGFmZmlsaWF0aW9uIGFmZmlsaWF0aW9uSWRlbnRpZmllcj0iaHR0cHM6Ly9yb3Iub3JnLzAyeTNhZDY0NyIgYWZmaWxpYXRpb25JZGVudGlmaWVyU2NoZW1lPSJST1IiIHNjaGVtZVVSST0iaHR0cHM6Ly9yb3Iub3JnIj5Vbml2ZXJzaXR5IG9mIEZsb3JpZGE8L2FmZmlsaWF0aW9uPgogICAgPC9jcmVhdG9yPgogICAgPGNyZWF0b3I+CiAgICAgIDxjcmVhdG9yTmFtZSBuYW1lVHlwZT0iUGVyc29uYWwiPk1lbG55aywgQW5kcmlpPC9jcmVhdG9yTmFtZT4KICAgICAgPGFmZmlsaWF0aW9uIGFmZmlsaWF0aW9uSWRlbnRpZmllcj0iaHR0cHM6Ly9yb3Iub3JnLzAyeTNhZDY0NyIgYWZmaWxpYXRpb25JZGVudGlmaWVyU2NoZW1lPSJST1IiIHNjaGVtZVVSST0iaHR0cHM6Ly9yb3Iub3JnIj5Vbml2ZXJzaXR5IG9mIEZsb3JpZGE8L2FmZmlsaWF0aW9uPgogICAgPC9jcmVhdG9yPgogICAgPGNyZWF0b3I+CiAgICAgIDxjcmVhdG9yTmFtZSBuYW1lVHlwZT0iUGVyc29uYWwiPkVzd2FyYW4sIE5lZWw8L2NyZWF0b3JOYW1lPgogICAgICA8YWZmaWxpYXRpb24gYWZmaWxpYXRpb25JZGVudGlmaWVyPSJodHRwczovL3Jvci5vcmcvMDJ5M2FkNjQ3IiBhZmZpbGlhdGlvbklkZW50aWZpZXJTY2hlbWU9IlJPUiIgc2NoZW1lVVJJPSJodHRwczovL3Jvci5vcmciPlVuaXZlcnNpdHkgb2YgRmxvcmlkYTwvYWZmaWxpYXRpb24+CiAgICA8L2NyZWF0b3I+CiAgICA8Y3JlYXRvcj4KICAgICAgPGNyZWF0b3JOYW1lIG5hbWVUeXBlPSJQZXJzb25hbCI+SW1ob2ZmLCBFcmljIERhbmllbDwvY3JlYXRvck5hbWU+CiAgICAgIDxuYW1lSWRlbnRpZmllciBuYW1lSWRlbnRpZmllclNjaGVtZT0iT1JDSUQiIHNjaGVtZVVSST0iaHR0cDovL29yY2lkLm9yZy8iPjAwMDAtMDAwMS02MDE4LTY1ODk8L25hbWVJZGVudGlmaWVyPgogICAgICA8YWZmaWxpYXRpb24gYWZmaWxpYXRpb25JZGVudGlmaWVyPSJodHRwczovL3Jvci5vcmcvMDJ5M2FkNjQ3IiBhZmZpbGlhdGlvbklkZW50aWZpZXJTY2hlbWU9IlJPUiIgc2NoZW1lVVJJPSJodHRwczovL3Jvci5vcmciPlVuaXZlcnNpdHkgb2YgRmxvcmlkYTwvYWZmaWxpYXRpb24+CiAgICA8L2NyZWF0b3I+CiAgICA8Y3JlYXRvcj4KICAgICAgPGNyZWF0b3JOYW1lIG5hbWVUeXBlPSJQZXJzb25hbCI+V2lsbGlhbXMsIEFsZWlhIEcuPC9jcmVhdG9yTmFtZT4KICAgICAgPGFmZmlsaWF0aW9uPlVuaXZlcnNpdHkgb2YgVGVubmVzc2VlIFNwYWNlIEluc3RpdHV0ZTwvYWZmaWxpYXRpb24+CiAgICA8L2NyZWF0b3I+CiAgICA8Y3JlYXRvcj4KICAgICAgPGNyZWF0b3JOYW1lIG5hbWVUeXBlPSJQZXJzb25hbCI+R3JhaGFtLCBXaWxsZW08L2NyZWF0b3JOYW1lPgogICAgICA8YWZmaWxpYXRpb24+VW5pdmVyc2l0eSBvZiBUZW5uZXNzZWUgU3BhY2UgSW5zdGl0dXRlPC9hZmZpbGlhdGlvbj4KICAgIDwvY3JlYXRvcj4KICAgIDxjcmVhdG9yPgogICAgICA8Y3JlYXRvck5hbWUgbmFtZVR5cGU9IlBlcnNvbmFsIj5Kb2huc29uLCBKYWNxdWVsaW5lIEFubmU8L2NyZWF0b3JOYW1lPgogICAgICA8bmFtZUlkZW50aWZpZXIgbmFtZUlkZW50aWZpZXJTY2hlbWU9Ik9SQ0lEIiBzY2hlbWVVUkk9Imh0dHA6Ly9vcmNpZC5vcmcvIj4wMDAwLTAwMDMtMDgzMC05Mjc1PC9uYW1lSWRlbnRpZmllcj4KICAgICAgPGFmZmlsaWF0aW9uPlVuaXZlcnNpdHkgb2YgVGVubmVzc2VlIFNwYWNlIEluc3RpdHV0ZTwvYWZmaWxpYXRpb24+CiAgICA8L2NyZWF0b3I+CiAgICA8Y3JlYXRvcj4KICAgICAgPGNyZWF0b3JOYW1lIG5hbWVUeXBlPSJQZXJzb25hbCI+Sm9obnNvbiwgQ2hhcmxlcyBFLjwvY3JlYXRvck5hbWU+CiAgICAgIDxhZmZpbGlhdGlvbj5Vbml2ZXJzaXR5IG9mIFRlbm5lc3NlZSBTcGFjZSBJbnN0aXR1dGU8L2FmZmlsaWF0aW9uPgogICAgPC9jcmVhdG9yPgogICAgPGNyZWF0b3I+CiAgICAgIDxjcmVhdG9yTmFtZSBuYW1lVHlwZT0iUGVyc29uYWwiPkJ1dGFsYSwgTWVnYW4gTS48L2NyZWF0b3JOYW1lPgogICAgICA8bmFtZUlkZW50aWZpZXIgbmFtZUlkZW50aWZpZXJTY2hlbWU9Ik9SQ0lEIiBzY2hlbWVVUkk9Imh0dHA6Ly9vcmNpZC5vcmcvIj4wMDAwLTAwMDItNzc1OS01MzAwPC9uYW1lSWRlbnRpZmllcj4KICAgICAgPGFmZmlsaWF0aW9uIGFmZmlsaWF0aW9uSWRlbnRpZmllcj0iaHR0cHM6Ly9yb3Iub3JnLzAyeTNhZDY0NyIgYWZmaWxpYXRpb25JZGVudGlmaWVyU2NoZW1lPSJST1IiIHNjaGVtZVVSST0iaHR0cHM6Ly9yb3Iub3JnIj5Vbml2ZXJzaXR5IG9mIEZsb3JpZGE8L2FmZmlsaWF0aW9uPgogICAgPC9jcmVhdG9yPgogICAgPGNyZWF0b3I+CiAgICAgIDxjcmVhdG9yTmFtZSBuYW1lVHlwZT0iUGVyc29uYWwiPlJpbmFsZGktUmFtb3MsIENhcmxvcyBNLjwvY3JlYXRvck5hbWU+CiAgICAgIDxuYW1lSWRlbnRpZmllciBuYW1lSWRlbnRpZmllclNjaGVtZT0iT1JDSUQiIHNjaGVtZVVSST0iaHR0cDovL29yY2lkLm9yZy8iPjAwMDAtMDAwMS04ODg2LTU2MTI8L25hbWVJZGVudGlmaWVyPgogICAgICA8YWZmaWxpYXRpb24gYWZmaWxpYXRpb25JZGVudGlmaWVyPSJodHRwczovL3Jvci5vcmcvMDJ5M2FkNjQ3IiBhZmZpbGlhdGlvbklkZW50aWZpZXJTY2hlbWU9IlJPUiIgc2NoZW1lVVJJPSJodHRwczovL3Jvci5vcmciPlVuaXZlcnNpdHkgb2YgRmxvcmlkYTwvYWZmaWxpYXRpb24+CiAgICA8L2NyZWF0b3I+CiAgPC9jcmVhdG9ycz4KICA8dGl0bGVzPgogICAgPHRpdGxlPgogICAgICBEYXRhIGZyb206IEVzdGVyaWZpY2F0aW9uIHN5bnRoZXNpcyBvZiBpcm9uIG94aWRlIG5hbm9wYXJ0aWNsZSB0cmFjZXJzIGZvcgogICAgICBtYWduZXRpYyBwYXJ0aWNsZSBpbWFnaW5nIChNUEkpCiAgICA8L3RpdGxlPgogIDwvdGl0bGVzPgogIDxwdWJsaXNoZXIgcHVibGlzaGVySWRlbnRpZmllcj0iaHR0cHM6Ly9yb3Iub3JnLzAweDZoNW45NSIgcHVibGlzaGVySWRlbnRpZmllclNjaGVtZT0iUk9SIiBzY2hlbWVVUkk9Imh0dHBzOi8vcm9yLm9yZy8iPkRyeWFkPC9wdWJsaXNoZXI+CiAgPHJlc291cmNlVHlwZSByZXNvdXJjZVR5cGVHZW5lcmFsPSJEYXRhc2V0Ij5kYXRhc2V0PC9yZXNvdXJjZVR5cGU+CiAgPHB1YmxpY2F0aW9uWWVhcj4yMDI2PC9wdWJsaWNhdGlvblllYXI+CiAgPHN1YmplY3RzPgogICAgPHN1YmplY3Qgc3ViamVjdFNjaGVtZT0iZm9zIiBzY2hlbWVVUkk9Imh0dHBzOi8vd2ViLWFyY2hpdmUub2VjZC5vcmcvMjAxMi0wNi0xNS8xMzg1NzUtMzgyMzUxNDcucGRmIj5GT1M6IENoZW1pY2FsIGVuZ2luZWVyaW5nPC9zdWJqZWN0PgogICAgPHN1YmplY3Qgc3ViamVjdFNjaGVtZT0iZm9zIiBzY2hlbWVVUkk9Imh0dHBzOi8vd2ViLWFyY2hpdmUub2VjZC5vcmcvMjAxMi0wNi0xNS8xMzg1NzUtMzgyMzUxNDcucGRmIj5GT1M6IE5hbm8tdGVjaG5vbG9neTwvc3ViamVjdD4KICAgIDxzdWJqZWN0IHN1YmplY3RTY2hlbWU9ImZvcyIgc2NoZW1lVVJJPSJodHRwczovL3dlYi1hcmNoaXZlLm9lY2Qub3JnLzIwMTItMDYtMTUvMTM4NTc1LTM4MjM1MTQ3LnBkZiI+Rk9TOiBNZWRpY2FsIGVuZ2luZWVyaW5nPC9zdWJqZWN0PgogICAgPHN1YmplY3Q+bWFnbmV0aWMgcGFydGljbGUgaW1hZ2luZzwvc3ViamVjdD4KICAgIDxzdWJqZWN0Pm1hZ25ldGljIG5hbm9wYXJ0aWNsZXM8L3N1YmplY3Q+CiAgICA8c3ViamVjdD5zeW50aGVzaXM8L3N1YmplY3Q+CiAgPC9zdWJqZWN0cz4KICA8ZnVuZGluZ1JlZmVyZW5jZXM+CiAgICA8ZnVuZGluZ1JlZmVyZW5jZT4KICAgICAgPGZ1bmRlck5hbWU+TmF0aW9uYWwgSW5zdGl0dXRlIG9mIEJpb21lZGljYWwgSW1hZ2luZyBhbmQgQmlvZW5naW5lZXJpbmc8L2Z1bmRlck5hbWU+CiAgICAgIDxmdW5kZXJJZGVudGlmaWVyIGZ1bmRlcklkZW50aWZpZXJUeXBlPSJST1IiPmh0dHBzOi8vcm9yLm9yZy8wMDM3MnFjODU8L2Z1bmRlcklkZW50aWZpZXI+CiAgICAgIDxhd2FyZE51bWJlciBhd2FyZFVSST0iaHR0cHM6Ly9yZXBvcnRlci5uaWguZ292L3Byb2plY3QtZGV0YWlscy8xMTAzNTA1NyI+NVIwMUVCMDMxMjI0LTA0PC9hd2FyZE51bWJlcj4KICAgICAgPGF3YXJkVGl0bGU+TmFub3BhcnRpY2xlcyB0byBUcmFjayBUIENlbGwgSW1tdW5vdGhlcmFweSBVc2luZyBNYWduZXRpYyBQYXJ0aWNsZSBJbWFnaW5nPC9hd2FyZFRpdGxlPgogICAgPC9mdW5kaW5nUmVmZXJlbmNlPgogICAgPGZ1bmRpbmdSZWZlcmVuY2U+CiAgICAgIDxmdW5kZXJOYW1lPk5hdGlvbmFsIENhbmNlciBJbnN0aXR1dGU8L2Z1bmRlck5hbWU+CiAgICAgIDxmdW5kZXJJZGVudGlmaWVyIGZ1bmRlcklkZW50aWZpZXJUeXBlPSJST1IiPmh0dHBzOi8vcm9yLm9yZy8wNDBnY21nODE8L2Z1bmRlcklkZW50aWZpZXI+CiAgICAgIDxhd2FyZE51bWJlciBhd2FyZFVSST0iaHR0cHM6Ly9yZXBvcnRlci5uaWguZ292L3Byb2plY3QtZGV0YWlscy8xMDYzNDYyMCI+NVIyMUNBMjYzNjUzLTAyPC9hd2FyZE51bWJlcj4KICAgICAgPGF3YXJkVGl0bGU+TmFub3BhcnRpY2xlcyBmb3IgSW4gVml2byBMYWJlbGluZyBvZiBUIENlbGxzIER1cmluZyBDYW5jZXIgSW1tdW5vdGhlcmFweTwvYXdhcmRUaXRsZT4KICAgIDwvZnVuZGluZ1JlZmVyZW5jZT4KICAgIDxmdW5kaW5nUmVmZXJlbmNlPgogICAgICA8ZnVuZGVyTmFtZT5OYXRpb25hbCBJbnN0aXR1dGUgb2YgTmV1cm9sb2dpY2FsIERpc29yZGVycyBhbmQgU3Ryb2tlPC9mdW5kZXJOYW1lPgogICAgICA8ZnVuZGVySWRlbnRpZmllciBmdW5kZXJJZGVudGlmaWVyVHlwZT0iUk9SIj5odHRwczovL3Jvci5vcmcvMDFzNXlhODk0PC9mdW5kZXJJZGVudGlmaWVyPgogICAgICA8YXdhcmROdW1iZXIgYXdhcmRVUkk9Imh0dHBzOi8vcmVwb3J0ZXIubmloLmdvdi9wcm9qZWN0LWRldGFpbHMvMTA1Mjc2NDAiPjFSMjFOUzEyNTA4OS0wMUExPC9hd2FyZE51bWJlcj4KICAgICAgPGF3YXJkVGl0bGU+SW5ub3ZhdGl2ZSBOb24tSW52YXNpdmUgSW1hZ2luZyBvZiBUcmF1bWF0aWMgQnJhaW4gSW5qdXJ5PC9hd2FyZFRpdGxlPgogICAgPC9mdW5kaW5nUmVmZXJlbmNlPgogICAgPGZ1bmRpbmdSZWZlcmVuY2U+CiAgICAgIDxmdW5kZXJOYW1lPk5hdGlvbmFsIEluc3RpdHV0ZSBvZiBOZXVyb2xvZ2ljYWwgRGlzb3JkZXJzIGFuZCBTdHJva2U8L2Z1bmRlck5hbWU+CiAgICAgIDxmdW5kZXJJZGVudGlmaWVyIGZ1bmRlcklkZW50aWZpZXJUeXBlPSJST1IiPmh0dHBzOi8vcm9yLm9yZy8wMXM1eWE4OTQ8L2Z1bmRlcklkZW50aWZpZXI+CiAgICAgIDxhd2FyZE51bWJlciBhd2FyZFVSST0iaHR0cHM6Ly9yZXBvcnRlci5uaWguZ292L3Byb2plY3QtZGV0YWlscy8xMDUyNzY0MCI+MVIyMU5TMTI1MDg5LTAxQTE8L2F3YXJkTnVtYmVyPgogICAgICA8YXdhcmRUaXRsZT5Jbm5vdmF0aXZlIE5vbi1JbnZhc2l2ZSBJbWFnaW5nIG9mIFRyYXVtYXRpYyBCcmFpbiBJbmp1cnk8L2F3YXJkVGl0bGU+CiAgICA8L2Z1bmRpbmdSZWZlcmVuY2U+CiAgPC9mdW5kaW5nUmVmZXJlbmNlcz4KICA8ZGF0ZXM+CiAgICA8ZGF0ZSBkYXRlVHlwZT0iQ3JlYXRlZCI+MjAyNi0wOC0wNVQxNTozMjozM1o8L2RhdGU+CiAgICA8ZGF0ZSBkYXRlVHlwZT0iU3VibWl0dGVkIj4yMDI2LTA4LTA1VDE1OjMyOjM2WjwvZGF0ZT4KICAgIDxkYXRlIGRhdGVUeXBlPSJJc3N1ZWQiPjIwMjYtMDgtMDZUMDA6MDA6MDBaPC9kYXRlPgogICAgPGRhdGUgZGF0ZVR5cGU9IkF2YWlsYWJsZSI+MjAyNi0wOC0wNlQwMDowMDowMFo8L2RhdGU+CiAgPC9kYXRlcz4KICA8bGFuZ3VhZ2U+ZW48L2xhbmd1YWdlPgogIDxyZWxhdGVkSWRlbnRpZmllcnM+CiAgICA8cmVsYXRlZElkZW50aWZpZXIgcmVsYXRpb25UeXBlPSJJc0NpdGVkQnkiIHJlbGF0ZWRJZGVudGlmaWVyVHlwZT0iRE9JIj5odHRwczovL2RvaS5vcmcvMTAuMTAzOS9kNW5yMDMxNTdlPC9yZWxhdGVkSWRlbnRpZmllcj4KICA8L3JlbGF0ZWRJZGVudGlmaWVycz4KICA8c2l6ZXM+CiAgICA8c2l6ZT43NjExMDM2MiBieXRlczwvc2l6ZT4KICA8L3NpemVzPgogIDx2ZXJzaW9uPjI8L3ZlcnNpb24+CiAgPHJpZ2h0c0xpc3Q+CiAgICA8cmlnaHRzIHJpZ2h0c1VSST0iaHR0cHM6Ly9zcGR4Lm9yZy9saWNlbnNlcy9DQzAtMS4wLmh0bWwiPkNyZWF0aXZlIENvbW1vbnMgWmVybyB2MS4wIFVuaXZlcnNhbDwvcmlnaHRzPgogIDwvcmlnaHRzTGlzdD4KICA8ZGVzY3JpcHRpb25zPgogICAgPGRlc2NyaXB0aW9uIGRlc2NyaXB0aW9uVHlwZT0iQWJzdHJhY3QiPgogICAgICBUaGlzIHJlcG9zaXRvcnkgY29udGFpbnMgdGhlIGV4cGVyaW1lbnRhbCBkYXRhIGZvciBhIHN0dWR5IG9mIGlyb24gb3hpZGUKICAgICAgbmFub3BhcnRpY2xlIHN5bnRoZXNpcyB2aWEgZXN0ZXJpZmljYXRpb24gdG8gZGV2ZWxvcCB0cmFjZXJzIGZvciBtYWduZXRpYwogICAgICBwYXJ0aWNsZSBpbWFnaW5nIChNUEkpLiBUaGUgZGF0YXNldCBpbmNsdWRlczogKDEpIEZvdXJpZXItdHJhbnNmb3JtCiAgICAgIGluZnJhcmVkIChGVElSKSBzcGVjdHJhIGFuZCB0cmFja2VkIGZ1bmN0aW9uYWwtZ3JvdXAgcGVhayBwb3NpdGlvbnMgdXNlZAogICAgICB0byBtb25pdG9yIHJlYWN0aW9uIHByb2dyZXNzOyBhbmQgKDIpIHRyYW5zbWlzc2lvbiBlbGVjdHJvbiBtaWNyb3Njb3B5CiAgICAgIChURU0pIGZvciBwYXJ0aWNsZSBzaXplIG1lYXN1cmVtZW50cyBjaGFyYWN0ZXJpemluZyBuYW5vcGFydGljbGUgZGlhbWV0ZXIKICAgICAgYW5kIG1vcnBob2xvZ3kgYWNyb3NzIGEgcmFuZ2Ugb2Ygc3ludGhlc2lzIGNvbmRpdGlvbnMuIFRoZSB2YXJpYWJsZXMKICAgICAgdGVzdGVkIGluY2x1ZGUgdGVtcGVyYXR1cmVzICgyOTDigJMzNTAgwrBDKSwgcHJlY3Vyc29yIGFkZGl0aW9uIHJhdGVzCiAgICAgICgwLjAyNeKAkzIuNSBtbW9sIEZlIG1pbiAtMSksIGFuZCB0aHJlZSBpcm9uIG9sZWF0ZSBwcmVjdXJzb3IgY29tcG9zaXRpb25zCiAgICAgIChGZShJSSksIEZlKElJSSksIGFuZCBhIDE6MiBGZShJSSk6RmUoSUlJKSBtaXh0dXJlKS4gRm9yIGxhcmdlcgogICAgICBuYW5vcGFydGljbGVzIGZyb20gdGhlIGlyb24gb2xlYXRlIHByZWN1cnNvciBzdHVkeSwgYWRkaXRpb25hbAogICAgICBuYW5vcGFydGljbGUgY2hhcmFjdGVyaXphdGlvbiBpbmNsdWRlZCAoMykgWC1yYXkgZGlmZnJhY3Rpb24gKFhSRCkKICAgICAgcGF0dGVybnMgYW5kIOKBteKBt0ZlIE3DtnNzYmF1ZXIgc3BlY3RyYSB0byBpZGVudGlmeSBpcm9uIG94aWRlIGNyeXN0YWwgcGhhc2UKICAgICAgYW5kIGNvbXBvc2l0aW9uLiBGaW5hbGx5LCAoNCkgU1FVSUQgbWFnbmV0b21ldHJ5IGRhdGEgY2hhcmFjdGVyaXppbmcKICAgICAgbmFub3BhcnRpY2xlIG1hZ25ldGljIHByb3BlcnRpZXM7IGFuZCAoNSkgbWFnbmV0aWMgcGFydGljbGUgaW1hZ2luZwogICAgICByZWxheG9tZXRyeSBhbmQgMkQgc2NhbiBkYXRhIGNoYXJhY3Rlcml6aW5nIHRyYWNlciBzZW5zaXRpdml0eSBhbmQKICAgICAgcmVzb2x1dGlvbiBkZW1vbnN0cmF0ZXMgdGhlIHBvdGVudGlhbCBvZiB0aGUgZXN0ZXJpZmljYXRpb24gc3ludGhlc2lzCiAgICAgIHJvdXRlIHRvIGRldmVsb3Agc2l6ZS0gYW5kIGNvbXBvc2l0aW9uLWNvbnRyb2xsZWQgaGlnaC1xdWFsaXR5IE1QSSB0cmFjZXJzCiAgICAgIGFzIGFuIGFsdGVybmF0aXZlIHRvIHRoZXJtYWwgZGVjb21wb3NpdGlvbiBzeW50aGVzaXMuIFJlc2VhcmNoZXJzCiAgICAgIGRldmVsb3Bpbmcgb3IgY2hhcmFjdGVyaXppbmcgbWFnbmV0aWMgbmFub3BhcnRpY2xlIHRyYWNlcnMsIGV2YWx1YXRpbmcKICAgICAgbmFub3BhcnRpY2xlIHN5bnRoZXNpcyByb3V0ZXMsIG9yIGJlbmNobWFya2luZyBNUEkgdHJhY2VyIHBlcmZvcm1hbmNlIG1heQogICAgICBmaW5kIHRoaXMgZGF0YXNldCB1c2VmdWwgZm9yIGNvbXBhcmlzb24sIHJlYW5hbHlzaXMsIG9yIG1ldGhvZAogICAgICBkZXZlbG9wbWVudC4KICAgIDwvZGVzY3JpcHRpb24+CiAgICA8ZGVzY3JpcHRpb24gZGVzY3JpcHRpb25UeXBlPSJNZXRob2RzIj4KICAgICAgJmx0O3AmZ3Q7SXJvbiBveGlkZSBuYW5vcGFydGljbGVzIHdlcmUgc3ludGhlc2l6ZWQgYnkgZXN0ZXJpZmljYXRpb24gb2YgYW4KICAgICAgaXJvbi1vbGVhdGUgcHJlY3Vyc29yIGFkZGVkIGNvbnRpbnVvdXNseSBpbnRvIGEgU2NobGVuay1saW5lIHJlYWN0b3Igd2l0aAogICAgICBvbGV5bCBhbGNvaG9sIHVuZGVyIGFyZ29uLCB3aXRoIGNvbnRyb2xsZWQgZmxvdyByYXRlcyBhbmQgcmVhY3Rpb24KICAgICAgdGVtcGVyYXR1cmVzLiBUaHJlZSBpcm9uLW9sZWF0ZSBwcmVjdXJzb3JzIHdlcmUgdXNlZDogcHJlcGFyZWQgZnJvbQogICAgICBpcm9uKElJKSBhY2V0YXRlLCBpcm9uKElJSSkgYWNldHlsYWNldG9uYXRlLCBhbmQgYSAxOjIgbW9sYXIKICAgICAgRmUoSUkpOkZlKElJSSkgbWl4dHVyZSBvZiB0aGUgdHdvLiBSZWFjdGlvbiBwcm9ncmVzcyB3YXMgbW9uaXRvcmVkIGJ5CiAgICAgIGRyYXdpbmcgYWxpcXVvdHMgYW5kIHJlY29yZGluZyBGb3VyaWVyLXRyYW5zZm9ybSBpbmZyYXJlZCAoRlRJUikgc3BlY3RyYQogICAgICBpbiBhIFBlcmtpbkVsbWVyIEZyb250aWVyIG1vZGVsIHNwZWN0cm9tZXRlciwgYXZlcmFnaW5nIDQgc2NhbnMgcGVyCiAgICAgIG1lYXN1cmVtZW50cyBvZiBhYnNvcmJhbmNlOyBwZWFrIHBvc2l0aW9ucyBmb3IgZXN0ZXIsIGFsY29ob2wsIGFuZAogICAgICBpcm9uLW9sZWF0ZSBjYXJib3h5bGF0ZSBiYW5kcyB3ZXJlIHRyYWNrZWQgYWNyb3NzIGFsaXF1b3RzIHRvIGZvbGxvdwogICAgICBjb252ZXJzaW9uIG92ZXIgcmVhY3Rpb24gdGltZS4gTmFub3BhcnRpY2xlIHNpemUgYW5kIG1vcnBob2xvZ3kgd2VyZQogICAgICBjaGFyYWN0ZXJpemVkIGJ5IHRyYW5zbWlzc2lvbiBlbGVjdHJvbiBtaWNyb3Njb3B5IChURU0pIG9uIGFuIEZFSSBUYWxvcwogICAgICBGMjAwaSBTL1RFTSwgaW1hZ2luZyBwYXJ0aWNsZXMgY2FzdCBvbnRvIGNhcmJvbi1jb2F0ZWQgY29wcGVyIGdyaWRzLgogICAgICBQZXItcGFydGljbGUgYXJlYSwgZGlhbWV0ZXIsIGNpcmN1bGFyaXR5LCBhc3BlY3QgcmF0aW8sIHNvbGlkaXR5LCBhbmQKICAgICAgZWxsaXB0aWMgRm91cmllciBjb2VmZmljaWVudCAoRUZDKSByYXRpbyB3ZXJlIGV4dHJhY3RlZCBmcm9tIG1pY3JvZ3JhcGhzCiAgICAgIHVzaW5nIGEgY3VzdG9tIE1BVExBQiBpbWFnZS1hbmFseXNpcyByb3V0aW5lIChtaW5pbXVtIDEwMDAgcGFydGljbGVzIHBlcgogICAgICByZXBvcnRlZCBjb25kaXRpb24pOyBzaXplIGRpc3RyaWJ1dGlvbnMgd2VyZSBmaXQgdG8gYSBsb2ctbm9ybWFsIG1vZGVsIHRvCiAgICAgIG9idGFpbiBtZWRpYW4gcGh5c2ljYWwgZGlhbWV0ZXIgYW5kIGdlb21ldHJpYyBkZXZpYXRpb24uIENyeXN0YWwgcGhhc2Ugd2FzCiAgICAgIGFzc2Vzc2VkIGJ5IFgtcmF5IGRpZmZyYWN0aW9uIChYUkQpIG9uIGEgUmlnYWt1IE1pbmlGbGV4NjAwIGRpZmZyYWN0b21ldGVyCiAgICAgIChDdSBLzrEgcmFkaWF0aW9uLCA0MCBrVi8xNSBtQSkgc2Nhbm5lZCBvdmVyIDEw4oCTNzDCsCAyzrgsIHdpdGggcGVhayBmaXR0aW5nCiAgICAgIGFuZCBTY2hlcnJlci1lcXVhdGlvbiBjcnlzdGFsbGl0ZS1zaXplIGVzdGltYXRpb24gcGVyZm9ybWVkIGluIFNtYXJ0TGFiCiAgICAgIFN0dWRpbyBJSS4gSXJvbiBveGlkYXRpb24gc3RhdGUgYW5kIHBoYXNlIGNvbXBvc2l0aW9uIHdlcmUgZnVydGhlcgogICAgICByZXNvbHZlZCBieSDigbXigbdGZSBNw7Zzc2JhdWVyIHNwZWN0cm9zY29weSAo4oG14oG3Q28gc291cmNlLCBjbG9zZWQtY3ljbGUKICAgICAgY3J5b3N0YXQpIGF0IDI5MyBLIGFuZCA2IEssIHdpdGggaHlwZXJmaW5lIHBhcmFtZXRlcnMgb2J0YWluZWQgYnkKICAgICAgbGVhc3Qtc3F1YXJlcyBmaXR0aW5nIChNw7Zzc2JhdWVyIEdlbkZpdCBzb2Z0d2FyZSkuIE1hZ25ldGljIHByb3BlcnRpZXMgb2YKICAgICAgbml0cm9ET1BBLVBFRyAobkQtUEVHKS1jb2F0ZWQgbmFub3BhcnRpY2xlcyBzdXNwZW5kZWQgaW4gd2F0ZXIgd2VyZQogICAgICBtZWFzdXJlZCBieSBTUVVJRCBtYWduZXRvbWV0cnkgKFF1YW50dW0gRGVzaWduIE1QTVMtMykgYXMgbWFnbmV0aXphdGlvbgogICAgICB2cy4gYXBwbGllZCBmaWVsZCBhdCAzMDAgSywgYW5kIGZpdCB0byBhIGxvZy1ub3JtYWwtd2VpZ2h0ZWQgTGFuZ2V2aW4KICAgICAgbW9kZWwgdG8gb2J0YWluIG1hZ25ldGljIGRpYW1ldGVyLCBpdHMgZ2VvbWV0cmljIGRldmlhdGlvbiwgYW5kIHNhdHVyYXRpb24KICAgICAgbWFnbmV0aXphdGlvbi4gSXJvbiBjb25jZW50cmF0aW9ucyB1c2VkIHRvIG5vcm1hbGl6ZSBtYWduZXRpYyBhbmQgTVBJCiAgICAgIG1lYXN1cmVtZW50cyB3ZXJlIGRldGVybWluZWQgYnkgYSAxLDEwLXBoZW5hbnRocm9saW5lIGNvbG9yaW1ldHJpYyBhc3NheQogICAgICBmb2xsb3dpbmcgYWNpZCBkaWdlc3Rpb24sIHJlYWQgYXQgNTA4IG5tIGFnYWluc3QgYSBjYWxpYnJhdGlvbiBjdXJ2ZS4gTVBJCiAgICAgIHBlcmZvcm1hbmNlIHdhcyBjaGFyYWN0ZXJpemVkIG9uIGEgTU9NRU5UVU3ihKIgc2Nhbm5lciAoTWFnbmV0aWMgSW5zaWdodCkuCiAgICAgIFNpbmdsZS1jaGFubmVsIHJlbGF4b21ldHJ5IChSRUxBWOKEoikgc2NhbnMgcHJvdmlkZWQgcG9pbnQgc3ByZWFkIGZ1bmN0aW9uCiAgICAgIChQU0YpIHNpZ25hbCBpbnRlbnNpdHkgKHNlbnNpdGl2aXR5LCBub3JtYWxpemVkIHBlciBtZyBGZSkgYW5kIHJlc29sdXRpb24KICAgICAgKGZ1bGwgd2lkdGggYXQgaGFsZiBtYXhpbXVtKS4gVHdvLWRpbWVuc2lvbmFsIGltYWdlcyAoRElDT00gZm9ybWF0LAogICAgICB4LXNwYWNlIGRpcmVjdCByZWNvbnN0cnVjdGlvbikgd2VyZSBhY3F1aXJlZCBmb3Igc2VyaWFsIGlyb24tbWFzcwogICAgICBkaWx1dGlvbnMgKDI14oCTMTAwMCBuZyBGZSkgdG8gY2hhcmFjdGVyaXplIHNpZ25hbCB2cy5tYXNzIHJlc3BvbnNlLCBhbmQgZm9yCiAgICAgIHBhaXJlZC1jYXBpbGxhcnkgcGhhbnRvbXMgYXQgY29udHJvbGxlZCBzZXBhcmF0aW9ucyB0byBhc3Nlc3Mgc3BhdGlhbAogICAgICByZXNvbHV0aW9uLiZsdDsvcCZndDsKICAgIDwvZGVzY3JpcHRpb24+CiAgICA8ZGVzY3JpcHRpb24gZGVzY3JpcHRpb25UeXBlPSJUZWNobmljYWxJbmZvIj4KICAgICAgIyBFc3RlcmlmaWNhdGlvbiBzeW50aGVzaXMgb2YgaXJvbiBveGlkZSBuYW5vcGFydGljbGUgdHJhY2VycyBmb3IgbWFnbmV0aWMKICAgICAgcGFydGljbGUgaW1hZ2luZyAoTVBJKSBbQWNjZXNzIHRoaXMgZGF0YXNldCBvbgogICAgICBEcnlhZF0oaHR0cHM6Ly9kb2kub3JnLzEwLjUwNjEvZHJ5YWQuNmRqaDl3MWo0KSAtLS0gIyMgUHJpbmNpcGFsCiAgICAgIEludmVzdGlnYXRvciBDb250YWN0IEluZm9ybWF0aW9uIENhcmxvcyBNLiBSaW5hbGRpLVJhbW9zIEluc3RpdHV0aW9uOgogICAgICBVbml2ZXJzaXR5IG9mIEZsb3JpZGEgRW1haWw6CiAgICAgIFtbY2FybG9zLnJpbmFsZGlAdWZsLmVkdV0obWFpbHRvOmNhcmxvcy5yaW5hbGRpQHVmbC5lZHUpXSAjIyBBbHRlcm5hdGUKICAgICAgQ29udGFjdCBJbmZvcm1hdGlvbiBBbWJhciBDLiBWZWxhenF1ZXotQWxiaW5vIEVtYWlsOgogICAgICBbW2FtYmFyLmFjdmFAZ21haWwuY29tXShtYWlsdG86YW1iYXIuYWN2YUBnbWFpbC5jb20pXSAjIyBEYXRlcyBvZiBEYXRhCiAgICAgIENvbGxlY3Rpb24gRGF0YSB3ZXJlIGNvbGxlY3RlZCB0aHJvdWdob3V0IDIwMjTigJMyMDI1LiAjIyBGdW5kaW5nIFRoaXMgd29yawogICAgICB3YXMgc3VwcG9ydGVkIGJ5IHRoZSBOYXRpb25hbCBJbnN0aXR1dGVzIG9mIEhlYWx0aCAoTklIKSB0aHJvdWdoIHRoZQogICAgICBOYXRpb25hbCBJbnN0aXR1dGUgZm9yIEJpb21lZGljYWwgSW1hZ2luZyBhbmQgQmlvZW5naW5lZXJpbmcgdW5kZXIgYXdhcmQKICAgICAgbnVtYmVyIFIwMUVCMDMxMjI0LCB0aGUgTmF0aW9uYWwgQ2FuY2VyIEluc3RpdHV0ZSAoTkNJKSB1bmRlciBhd2FyZAogICAgICBSMjFDQTI2MzY1MywgYW5kIHRoZSBOYXRpb25hbCBJbnN0aXR1dGUgb2YgTmV1cm9sb2dpY2FsIERpc29yZGVycyBhbmQKICAgICAgU3Ryb2tlIChOSU5EUykgdW5kZXIgYXdhcmQgUjIxTlMxMjUwODkuICMjIFJlbGF0ZWQgUHVibGljYXRpb24gQW1iYXIgQy4KICAgICAgVmVsYXpxdWV6LUFsYmlubywgQmlhbmNhIEVsc2VhLCBBbmRyaWkgTWVsbnlrLCBOZWVsIEVzd2FyYW4sIEVyaWMgRC4KICAgICAgSW1ob2ZmLCBBbGVpYSBHLiBXaWxsaWFtcywgV2lsbGVtIEdyYWhhbSwgSmFjcXVlbGluZSBBbm5lIEpvaG5zb24sIENoYXJsZXMKICAgICAgRS4gSm9obnNvbiwgTWVnYW4gTS4gQnV0YWxhLCBDYXJsb3MgTS4gUmluYWxkaS1SYW1vczsgRXN0ZXJpZmljYXRpb24KICAgICAgc3ludGhlc2lzIG9mIGlyb24gb3hpZGUgbmFub3BhcnRpY2xlIHRyYWNlcnMgZm9yIG1hZ25ldGljIHBhcnRpY2xlIGltYWdpbmcKICAgICAgKE1QSSkuICpOYW5vc2NhbGUqIDIwMjY7IDE4ICg1KTogMjYyNeKAkzI2NDAuCiAgICAgIFtodHRwczovL2RvaS5vcmcvMTAuMTAzOS9kNW5yMDMxNTdlXShodHRwczovL2RvaS5vcmcvMTAuMTAzOS9kNW5yMDMxNTdlKQogICAgICAjIyBSZWNvbW1lbmRlZCBDaXRhdGlvbiBmb3IgdGhlIERhdGEgU2V0IEFtYmFyIEMuIFZlbGF6cXVlei1BbGJpbm8sIEJpYW5jYQogICAgICBFbHNlYSwgQW5kcmlpIE1lbG55aywgTmVlbCBFc3dhcmFuLCBFcmljIEQuIEltaG9mZiwgQWxlaWEgRy4gV2lsbGlhbXMsCiAgICAgIFdpbGxlbSBHcmFoYW0sIEphY3F1ZWxpbmUgQW5uZSBKb2huc29uLCBDaGFybGVzIEUuIEpvaG5zb24sIE1lZ2FuIE0uCiAgICAgIEJ1dGFsYSwgQ2FybG9zIE0uIFJpbmFsZGktUmFtb3M7IERhdGEgZm9yOiBFc3RlcmlmaWNhdGlvbiBzeW50aGVzaXMgb2YKICAgICAgaXJvbiBveGlkZSBuYW5vcGFydGljbGUgdHJhY2VycyBmb3IgbWFnbmV0aWMgcGFydGljbGUgaW1hZ2luZyAoTVBJKQogICAgICBbRGF0YXNldF0uIERyeWFkLiBkb2k6IC0tLSAjIyBEYXRhc2V0IE92ZXJ2aWV3IFRoaXMgcmVwb3NpdG9yeSBjb250YWlucwogICAgICB0aGUgZXhwZXJpbWVudGFsIGRhdGEgc3VwcG9ydGluZyB0aGUgbWFudXNjcmlwdCBhYm92ZSwgd2hpY2ggZGVzY3JpYmVzIGFuCiAgICAgIGVzdGVyaWZpY2F0aW9uIHJvdXRlIGZvciBzeW50aGVzaXppbmcgaXJvbiBveGlkZSBuYW5vcGFydGljbGUgdHJhY2VycyBmb3IKICAgICAgbWFnbmV0aWMgcGFydGljbGUgaW1hZ2luZyAoTVBJKS4gVGhlIGRlcG9zaXRlZCBmaWxlcyBmYWxsIGludG8gdGhyZWUKICAgICAgZ3JvdXBzLCBtYXRjaGluZyB0aGUgdGhyZWUgbWFpbiBleHBlcmltZW50YWwgc3R1ZGllcyBpbiB0aGUgcGFwZXI6IHwKICAgICAgRm9sZGVyIHwgU3R1ZHkgfCB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfAogICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfCB8IGAoQSkgRmlnMS4gRmUoSUkpIGF0IDI5MENgIHwgTG93LXRlbXBlcmF0dXJlIGVzdGVyaWZpY2F0aW9uIChMVEUpIG9mIEZlKElJKSBhdCAyOTAgwrBDIHwgfCBgKEIpIEZpZzIuIEZlIChJSSkgVCBhbmQgRlIgc3R1ZHlgIHwgRWZmZWN0IG9mIHJlYWN0aW9uIHRlbXBlcmF0dXJlIGFuZCBwcmVjdXJzb3IgZmxvdyByYXRlIG9uIEZlKElJKSBMVEUgfCB8IGAoQykgRmlnMy01LiBJcm9uIG9sZWF0ZSBzdHVkeWAgfCBGZShJSSksIEZlKElJSSksIGFuZCBtaXhlZCBGZShJSSkvRmUoSUlJKSAoIkZlMiZhbXA7MyIpIGlyb24tb2xlYXRlIHN0dWR5IGZvciBpcm9uIG94aWRlIE1QSSB0cmFjZXJzIHwgKipQZXIgdGhlIGxhYidzIGRhdGEtc2hhcmluZyBwb2xpY3kqKiwgdGhpcyByZXBvc2l0b3J5IGluY2x1ZGVzIHRoZSBkYXRhIHVzZWQgdG8gZ2VuZXJhdGUgdGhlIHBhcGVyJ3MgZmlndXJlcywgdGFibGVzLCBhbmQgY29uY2x1c2lvbnMgKHJhdyBleHBvcnRzIGFuZCBhbmFseXNpcy1yZWFkeS9kZXJpdmVkIGRhdGEpLCBwbHVzIHRoZSBtZXRhZGF0YSBuZWVkZWQgdG8gaW50ZXJwcmV0IHRoZW0uIFByb3ByaWV0YXJ5IGluc3RydW1lbnQtbmF0aXZlIGZpbGVzIG5vdCB1c2VkIGRpcmVjdGx5IGluIHRoZSBhbmFseXNpcyAoZS5nLiwgZnVsbCBuYXRpdmUgVEVNIGFjcXVpc2l0aW9uIGZvbGRlcnMsIG5hdGl2ZSBGVElSIGluc3RydW1lbnQgcHJvamVjdCBmaWxlcykgYXJlIHJldGFpbmVkIGludGVybmFsbHkgYnkgdGhlIFJpbmFsZGktUmFtb3MgTGFiIGFuZCBhcmUgYXZhaWxhYmxlIG9uIHJlcXVlc3Q7IHRoaXMgUkVBRE1FIG5vdGVzIHdoZXJlIHRoYXQgYXBwbGllcy4gLS0tICMjIFN5bnRoZXNpcyBDb25kaXRpb25zIFN1bW1hcnkgSXJvbiBveGlkZSBuYW5vcGFydGljbGVzIHdlcmUgc3ludGhlc2l6ZWQgYnkgZXN0ZXJpZmljYXRpb24gb2YgYW4gaXJvbi1vbGVhdGUgcHJlY3Vyc29yIHdpdGggb2xleWwgYWxjb2hvbCBpbiBhIFNjaGxlbmstbGluZSByZWFjdG9yIHVuZGVyIGFyZ29uLCB3aXRoIHRoZSBvbGVhdGUgcHJlY3Vyc29yIGFkZGVkIGNvbnRpbnVvdXNseSB2aWEgc3lyaW5nZSBwdW1wLiBSZWFjdGlvbiBjb25kaXRpb25zIHJlbGV2YW50IHRvIGVhY2ggZm9sZGVyLCBjcm9zcy1yZWZlcmVuY2VkIGZyb20gdGhlIG1hbnVzY3JpcHQncyBmaWd1cmVzIGFuZCByZXN1bHRzIHRleHQ6IHwgRm9sZGVyIHwgT2xlYXRlIHwgVGVtcGVyYXR1cmUgfCBQcmVjdXJzb3IgZmxvdyByYXRlIHwgVG90YWwgRmUgYWRkZWQgfCB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLSB8IHwgYChBKSBGaWcxLiBGZShJSSkgYXQgMjkwQ2AgfCBGZShJSSkgfCAyOTAgwrBDIHwgMC4xIG1tb2xGZSBtaW7igbvCuSB8IDEyIG1tb2xGZSB8IHwgYChCKS4uLi9UZW1wZXJhdHVyZSBzdHVkeWAgfCBGZShJSSkgfCAyOTAgLyAzMjAgLyAzNTAgwrBDIChvbmUgcGVyIGZpbGUpIHwgMC4xNzUgbW1vbEZlIG1pbuKBu8K5IHwgMSBtbW9sRmUgfCB8IGAoQikuLi4vRmxvd1JhdGUgc3R1ZHlgIHwgRmUoSUkpIHwgMzIwIMKwQyB8IDAuMDI14oCTMi41IG1tb2xGZSBtaW7igbvCuSAoc2VlIGJlbG93XCopIHwgMSBtbW9sRmUgfCB8IGAoQykuLi4vSXJvbk9sZWF0ZSBzdHVkeWAgfCBGZShJSSkgLyBGZShJSUkpIC8gMToyIE1peCB8IDMyMCDCsEMgfCAwLjEgbW1vbEZlIG1pbuKBu8K5IHwgNOKAkzUgbW1vbEZlIHwgYGBgICpGbG93IHJhdGUgdW5pdCBjb252ZXJzaW9uOiogZmlsZS9mb2xkZXIgbmFtZXMgaW4gYChCKS4uLi9GbG93UmF0ZSBzdHVkeWAgdXNlIHZvbHVtZXRyaWMgcHVtcCByYXRlIChtTCBtaW7igbvCuSksIHdoaWxlIHRoZSBtYW51c2NyaXB0IHJlcG9ydHMgcHJlY3Vyc29yIGFkZGl0aW9uIHJhdGUgaW4gbW1vbEZlIG1pbuKBu8K5LiBUaGVzZSBjb252ZXJ0IHZpYSB0aGUgRmUoSUkpIG9sZWF0ZSBjb25jZW50cmF0aW9uICgwLjUgTSk6IGUuZy4gYDAuMm1McGVyTWluYCA9IDAuMSBtbW9sRmUgbWlu4oG7wrkgKHRoZSBjb25kaXRpb24gaWRlbnRpZmllZCBpbiB0aGUgbWFudXNjcmlwdCBhcyBvcHRpbWFsKS4gVGhlIGZ1bGwgbWFwcGluZzogYDAuMDXihpIwLjAyNWAsIGAwLjLihpIwLjFgLCBgMC414oaSMC4yNWAsIGAx4oaSMC41YCwgYDXihpIyLjUgbW1vbEZlIG1pbuKBu8K5YCDigJQgdGhpcyBtYXRjaGVzIHRoZSBtYW51c2NyaXB0J3Mgc3RhdGVkIHRlc3RlZCByYW5nZSAoMC4wMjXigJMyLjUgbW1vbEZlIG1pbuKBu8K5KSBleGFjdGx5LiBgYGAgLS0tICMjIFJlcG9zaXRvcnkgT3JnYW5pemF0aW9uIGFuZCBTdHJ1Y3R1cmUgYGBgIChBKSBGaWcxLiBGZShJSSkgYXQgMjkwQy8g4pSc4pSA4pSAIEZUSVIvIOKUgiDilJzilIDilIAgKERhdCkgTFRFX0ZUSVJfQWxpcXVvdHMuY3N2ICMgcmF3IHNwZWN0cmEsIGFsbCBhbGlxdW90cyDilIIg4pSU4pSA4pSAIChBbmEpIExURV9GVElSX0FsaXF1b3RzX1BlYWtTdW1tYXJ5LmNzdiAjIHRyYWNrZWQgcGVhayBwb3NpdGlvbnMsIGFsbCBhbGlxdW90cyDilJTilIDilIAgVEVNLyDilJTilIDilIAgTFRFX0F7Miw1LDh9X3s1LDYwLDEyMH1taW5fVEVNLmNzdiAjIHBlci1wYXJ0aWNsZSBzaXplIG1lYXN1cmVtZW50cywgb25lIGZpbGUgcGVyIGFsaXF1b3QgKEIpIEZpZzIuIEZlIChJSSkgVCBhbmQgRlIgc3R1ZHkvIOKUnOKUgOKUgCBGbG93UmF0ZSBzdHVkeS8g4pSCIOKUlOKUgOKUgCB7MC4wNSwwLjIsMC41LDEsNX1tTHBlck1pbl9URU0uY3N2ICMgcGVyLXBhcnRpY2xlIHNpemUgbWVhc3VyZW1lbnRzLCBvbmUgZmlsZSBwZXIgZmxvdyByYXRlIOKUlOKUgOKUgCBUZW1wZXJhdHVyZSBzdHVkeS8g4pSU4pSA4pSAIHsyOTAsMzIwLDM1MH1DX1RFTS5jc3YgIyBwZXItcGFydGljbGUgc2l6ZSBtZWFzdXJlbWVudHMsIG9uZSBmaWxlIHBlciByZWFjdGlvbiB0ZW1wZXJhdHVyZSAoQykgRmlnMy01LiBJcm9uIG9sZWF0ZSBzdHVkeS8g4pSc4pSA4pSAIEZUSVIvIOKUgiDilJzilIDilIAgKERhdCkgT2xlYXRlU3R1ZHlfRlRJUl9BbGlxdW90cy5jc3Yg4pSCIOKUlOKUgOKUgCAoQW5hKSBPbGVhdGVTdHVkeV9GVElSX0FsaXF1b3RzX1BlYWtTdW1tYXJ5LmNzdiDilJzilIDilIAgTW9zc2JhdWVyLyDilIIg4pSc4pSA4pSAIFJhdyBEYXRhLmNzdiAjIHNwZWN0cmEgKyBmaXRzLCBhbGwgc2FtcGxlcy90ZW1wZXJhdHVyZXMg4pSCIOKUlOKUgOKUgCBGZXsyLDMsMl8zfSB7MjkzSyw2S30uZml0ICMgcGVyLXNhbXBsZSBmaXQtcGFyYW1ldGVyIHJlcG9ydHMgKDcgZmlsZXMpIOKUnOKUgOKUgCBURU0vIOKUgiDilJTilIDilIAgRmV7MiwzLDImYW1wOzN9X3s1LDE1LDMwLDQ1fW1pbl9URU0uY3N2LCBGZXsyLDMsMiZhbXA7M31fZmluYWxfVEVNLmNzdiAjIHBlci1wYXJ0aWNsZSBzaXplIG1lYXN1cmVtZW50cyAoMTMgZmlsZXMpIOKUnOKUgOKUgCBYUkQvIOKUgiDilJTilIDilIAgRmV7MiwzLDImYW1wOzN9X1hSRC5jc3YgIyBkaWZmcmFjdGlvbiBwYXR0ZXJuICsgaWRlbnRpZmllZCBwZWFrcywgcGVyIHNhbXBsZSDilJTilIDilIAgbkQtUEVHIENvYXRpbmcvIOKUnOKUgOKUgCBNUEkvIOKUgiDilJzilIDilIAgQW5hbHlzaXMvIOKUgiDilIIg4pSc4pSA4pSAIFJFTEFYX0ZlezIsMywyJmFtcDszfV9TdW1tYXJ5LmNzdiAjIHJlbGF4b21ldHJ5IHN1bW1hcnksIHBlciB0cmFjZXIg4pSCIOKUgiDilJzilIDilIAgTVBJIFNlcmlhbCBEaWx1dGlvbl9EYXRhIFN1bW1hcnkuY3N2ICMgc2lnbmFsIHZzLiBGZSBtYXNzLCBhbGwgdHJhY2VycyDilIIg4pSCIOKUlOKUgOKUgCBNUEkgTGluZSBTY2Fuc19EYXRhIFN1bW1hcnkuY3N2ICMgc3BhdGlhbCByZXNvbHV0aW9uIGxpbmUtc2NhbiBzdW1tYXJ5LCBhbGwgdHJhY2VycyDilIIg4pSU4pSA4pSAIFJhdyBEYXRhLyDilIIg4pSc4pSA4pSAIFJFTEFYIHNjYW5zL0ZlezIsMywyJmFtcDszfV9yZWxheF97MSwyLDN9LmNzdiAjIHJhdyByZWxheG9tZXRlciBzY2FucywgdHJpcGxpY2F0ZSBwZXIgdHJhY2VyIOKUgiDilJTilIDilIAgMkQvIOKUgiDilJzilIDilIAgRmV7MiwzLDImYW1wOzN9XzJEU3RfMW1nRmVfezEsMiwzfS5kY20gIyBzdGFuZGFyZCAyRCBNUEkgaW1hZ2VzLCB0cmlwbGljYXRlIHBlciB0cmFjZXIg4pSCIOKUnOKUgOKUgCBTZXJpYWwgRGlsdXRpb25zL0ZlezIsM30oJmFtcDszKS9GZSpfMkRTdF8qbmdGZS5kY20gIyAyRCBNUEkgaW1hZ2VzIGFjcm9zcyBGZSBtYXNzIGRpbHV0aW9uIHNlcmllcyDilIIg4pSU4pSA4pSAIExpbmUgU2NhbnMgLSBSZXNvbHV0aW9uIFBoYW50b20vRmUqXzJEU3RfKm1tLmRjbSAjIDJEIE1QSSBpbWFnZXMgYXQgaW5jcmVhc2luZyBjYXBpbGxhcnkgc2VwYXJhdGlvbiDilJTilIDilIAgU1FVSUQvIOKUnOKUgOKUgCBGZXsyLDMsMiZhbXA7M31fTUguZGF0ICMgcmF3IG1hZ25ldG9tZXRlciBvdXRwdXQsIHBlciB0cmFjZXIg4pSU4pSA4pSAIFJlc3VsdHMgU3VtbWFyeV9NSC5jc3YgIyBNIHZzLiBIIHN1bW1hcnksIGFsbCB0cmFjZXJzIGBgYCAtLS0gIyMgTGlzdCBvZiBBYmJyZXZpYXRpb25zIHwgQWJicmV2aWF0aW9uIHwgTWVhbmluZyB8IHwgLS0tLS0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfCB8IExURSB8IExvdy10ZW1wZXJhdHVyZSBlc3RlcmlmaWNhdGlvbiB8IHwgRlRJUiB8IEZvdXJpZXItdHJhbnNmb3JtIGluZnJhcmVkIHNwZWN0cm9zY29weSB8IHwgVEVNIHwgVHJhbnNtaXNzaW9uIGVsZWN0cm9uIG1pY3Jvc2NvcHkgfCB8IEFYXF9ZbWluIHwgQWxpcXVvdCAjWCB0YWtlbiBhZnRlciBZIG1pbnV0ZXMgb2YgZXN0ZXJpZmljYXRpb24gcmVhY3Rpb24gfCB8IFhSRCB8IFgtcmF5IGRpZmZyYWN0aW9uIHwgfCBGV0hNIHwgRnVsbCB3aWR0aCBhdCBoYWxmIG1heGltdW0gfCB8IE1QSSB8IE1hZ25ldGljIHBhcnRpY2xlIGltYWdpbmcgfCB8IFJFTEFYIHwgTVBJIHJlbGF4b21ldGVyIG1lYXN1cmVtZW50IHwgfCBGT1YgfCBGaWVsZCBvZiB2aWV3IHwgfCBQU0YgfCBQb2ludCBzcHJlYWQgZnVuY3Rpb24gfCB8IFJPSSB8IFJlZ2lvbiBvZiBpbnRlcmVzdCB8IHwgbkQtUEVHIHwgbml0cm9ET1BB4oCTcG9seWV0aHlsZW5lIGdseWNvbCAobmFub3BhcnRpY2xlIHN1cmZhY2UgY29hdGluZykgfCB8IFNRVUlEIHwgU3VwZXJjb25kdWN0aW5nIHF1YW50dW0gaW50ZXJmZXJlbmNlIGRldmljZSB8IHwgTVBNUy0zIHwgTWFnbmV0aWMgUHJvcGVydHkgTWVhc3VyZW1lbnQgU3lzdGVtIChRdWFudHVtIERlc2lnbiksIHRoZSBTUVVJRCBtYWduZXRvbWV0ZXIgcGxhdGZvcm0gdXNlZCB8IHwgTUggfCBNYWduZXRpemF0aW9uIHZzLiBtYWduZXRpYyBmaWVsZCBtZWFzdXJlbWVudCB8IHwgRHAgfCBQaHlzaWNhbCBkaWFtZXRlciB8IHwgbG4gz4NwIHwgR2VvbWV0cmljIHN0YW5kYXJkIGRldmlhdGlvbiBvZiB0aGUgcGh5c2ljYWwgZGlhbWV0ZXIgZGlzdHJpYnV0aW9uIHwgfCBEbSB8IE1hZ25ldGljIGRpYW1ldGVyIHwgfCBsbiDPg20gfCBHZW9tZXRyaWMgc3RhbmRhcmQgZGV2aWF0aW9uIG9mIHRoZSBtYWduZXRpYyBkaWFtZXRlciBkaXN0cmlidXRpb24gfCB8IM6Uzr0gfCBTZXBhcmF0aW9uIGJldHdlZW4gRlRJUiBiYW5kcyB8IHwgRmUyIC8gRmUzIC8gRmUyJmFtcDszIHwgVHJhY2VyIHN5bnRoZXNpemVkIGZyb20gRmUoSUkpIG9sZWF0ZSAvIEZlKElJSSkgb2xlYXRlIC8gbWl4ZWQgRmUoSUkpK0ZlKElJSSkgb2xlYXRlIHByZWN1cnNvciwgcmVzcGVjdGl2ZWx5IHwgLS0tICMjIFBlci1UZWNobmlxdWUgRG9jdW1lbnRhdGlvbiAjIyMgRlRJUiAoYChBKS4uLi9GVElSYCwgYChDKS4uLi9GVElSYCkgKiAqKmAoRGF0KSAqX0ZUSVJfQWxpcXVvdHNgKiog4oCUIHJhdyBleHBvcnRlZCBzcGVjdHJhIGZvciBldmVyeSBhbGlxdW90IGluIHRoZSBzdHVkeTogd2F2ZW51bWJlciAoKipjbeKBu8K5KiopIHZzLiBhYnNvcmJhbmNlICgqKkEqKiwgdW5pdGxlc3MpLCBvbmUgYWxpcXVvdCBwZXIgY29sdW1uIHBhaXIuIFRoaXMgaXMgdGhlIGV4cG9ydGVkIHNwZWN0cnVtLCBub3QgdGhlIHNwZWN0cm9tZXRlcidzIG5hdGl2ZSBwcm9qZWN0IGZpbGUuIEFsaXF1b3RzIHdlcmUgZHJhd24gZGlyZWN0bHkgZnJvbSB0aGUgcmVhY3Rpb24gYW5kIHNjYW5uZWQgdG8gdHJhY2sgcmVhY3Rpb24gcHJvZ3Jlc3MgaW4gcmVhbCB0aW1lLiAqICoqYChBbmEpICpfRlRJUl9QZWFrU3VtbWFyeWAqKiDigJQgdHJhY2tlZCBwZWFrIHBvc2l0aW9uICgqKldhdmUgTnVtYmVyLCBjbeKBu8K5KiopIGZvciBlYWNoIGFzc2lnbmVkIGZ1bmN0aW9uYWwgZ3JvdXAsIGJ5IGFsaXF1b3QsIHVzZWQgdG8gdHJhY2sgZXN0ZXJpZmljYXRpb24gcHJvZ3Jlc3Mgb3ZlciByZWFjdGlvbiB0aW1lLiBQZWFrIGFzc2lnbm1lbnRzIChmcm9tIHRoZSBtYW51c2NyaXB0KTogfCBHcm91cCB8IFdhdmVudW1iZXIgfCB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLS0tIHwgfCBSLU9IIHwgXH4zMjI3IGNt4oG7wrkgfCB8IEVzdGVyIEM9TyBzdHJldGNoIHwgXH4xNzQxIGNt4oG7wrkgfCB8IENhcmJveHlsaWMgYWNpZCBDPU8gc3RyZXRjaCAoZnJlZSBvbGVpYyBhY2lkKSB8IFx+MTcxMiBjbeKBu8K5IHwgfCBBc3ltbWV0cmljIENPT+KBuyBzdHJldGNoIChGZS1vbGVhdGUpIHwgXH4xNTcwIGNt4oG7wrkgfCB8IEVzdGVyIEMtTyBzdHJldGNoIHwgXH4xMjQxLCAxMTc1IGNt4oG7wrkgfCB8IEFsY29ob2wgQy1PIHN0cmV0Y2ggfCBcfjEwNjQgY23igbvCuSB8ICMjIyBURU0gcGFydGljbGUgc2l6aW5nIChgKEEpLi4uL1RFTWAsIGAoQikuLi4vKi9URU1gLCBgKEMpLi4uL1RFTWApIEVhY2ggZmlsZSBpcyBhIHBlci1wYXJ0aWNsZSB0YWJsZSBmcm9tIGF1dG9tYXRlZCBpbWFnZSBhbmFseXNpcyBvZiBURU0gbWljcm9ncmFwaHMsIHdpdGggY29sdW1uczogfCBDb2x1bW4gfCBEZWZpbml0aW9uIHwgVW5pdCB8IHwgLS0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0gfCB8IGBJbWFnZWAgfCBzb3VyY2UgbWljcm9ncmFwaCBmaWxlbmFtZSB8IOKAlCB8IHwgYE5vYCB8IHBhcnRpY2xlIGluZGV4IHdpdGhpbiB0aGF0IGltYWdlIHwg4oCUIHwgfCBgQXJlYWAgfCBwcm9qZWN0ZWQgcGFydGljbGUgYXJlYSB8IG5twrIgfCB8IGBDaXJjdWxhcml0eWAgfCBzaGFwZSBkZXNjcmlwdG9yLCA0z4DCt0FyZWEvUGVyaW1ldGVywrIgfCB1bml0bGVzcyAoMOKAkzEpIHwgfCBgQXNwZWN0IFJhdGlvYCB8IG1ham9yL21pbm9yIGF4aXMgcmF0aW8gb2YgZml0dGVkIGVsbGlwc2UgfCB1bml0bGVzcyB8IHwgYFNvbGlkaXR5YCB8IEFyZWEgLyBjb252ZXgtaHVsbCBhcmVhIHwgdW5pdGxlc3MgKDDigJMxKSB8IHwgYERpYW1ldGVyYCB8IGVxdWl2YWxlbnQgY2lyY3VsYXIgZGlhbWV0ZXIgfCBubSB8IHwgYEVGQyBSYXRpb2AgfCBFbGxpcHRpYyBGb3VyaWVyIENvZWZmaWNpZW50IHJhdGlvIOKAlCBhIHNoYXBlIGRlc2NyaXB0b3IgZGVyaXZlZCBmcm9tIGVsbGlwdGljIEZvdXJpZXIgYW5hbHlzaXMgb2YgdGhlIHBhcnRpY2xlIG91dGxpbmUsIGNhcHR1cmluZyBkZXZpYXRpb24gZnJvbSBhIHBlcmZlY3QgZWxsaXBzZS9jaXJjbGUgfCB1bml0bGVzcyB8ICMjIyBYUkQgKGAoQykuLi4vWFJEYCkgRWFjaCBgRmV7MiwzLDImYW1wOzN9X1hSRC5jc3ZgIGNvbnRhaW5zLCBwZXIgc2FtcGxlLCB0aHJlZSBwYWlyZWQgc2VyaWVzIGdlbmVyYXRlZCBieSBTbWFydExhYiBTdHVkaW8gSUk6IGBDYWxjLiBkYXRhYCAobWVhc3VyZWQgZGlmZnJhY3Rpb24gcGF0dGVybjogMs64IGluICoqZGVncmVlcyoqIHZzLiBpbnRlbnNpdHkgaW4gKipjb3VudHMqKiksIGBJbmRpdmlkdWFsIHBlYWtzYCAoc2FtZSBheGVzLCBwZWFrLWZpdHRlZC9zbW9vdGhlZCBwYXR0ZXJuKSwgYW5kIGBQZWFrIGJhcmAgKDLOuCBwb3NpdGlvbnMgb2Ygc29mdHdhcmUtaWRlbnRpZmllZCBwZWFrcywgcGxvdHRlZCBhcyBhIHN0aWNrIHBhdHRlcm47IGBZYCBpcyBhIGNvbnN0YW50IDAgYmFzZWxpbmUgZm9yIHBsb3R0aW5nKS4gIyMjIE3DtnNzYmF1ZXIgc3BlY3Ryb3Njb3B5IChgKEMpLi4uL01vc3NiYXVlcmApICogKipgUmF3IERhdGEuY3N2YCoqIOKAlCBjb21iaW5lZCBzcGVjdHJhIGFuZCBmaXRzIGZvciBhbGwgc2FtcGxlcy90ZW1wZXJhdHVyZXMuIENvbHVtbnM6IGBYZGF0YWAgKHZlbG9jaXR5LCAqKm1tL3MqKiksIGBZZGF0YWAgKG1lYXN1cmVkIHRyYW5zbWlzc2lvbi9jb3VudHMpLCBgWWZpdGAgKG92ZXJhbGwgZml0dGVkIGN1cnZlKSwgYFlzaXRlIzFg4oCTYFlzaXRlIzRgIChmaXR0ZWQgc3ViLXNwZWN0cmEgZm9yIHVwIHRvIDQgbWFnbmV0aWNhbGx5IGRpc3RpbmN0IEZlIHNpdGVzKSwgb3JnYW5pemVkIGJ5IHNhbXBsZSAoYEZlIDJgLCBgRmUgM2AsIGBNaXhgKSBhbmQgbWVhc3VyZW1lbnQgdGVtcGVyYXR1cmUgKGAyOTNLYCwgYDZLYCkuICogKipgKi5maXRgKiogKipmaWxlcyAoNykqKiDigJQgb25lIHBlciBzYW1wbGUvdGVtcGVyYXR1cmUgY29tYmluYXRpb24sIHBsYWluLXRleHQgZml0IHJlcG9ydHMgZnJvbSB0aGUgQ0FMRlVOL0xvcmVudHouZjkwIGZpdHRpbmcgcm91dGluZS4gRWFjaCByZXBvcnRzOiBzb3VyY2UgKEZlLTU3IGluIFJob2RpdW0pLCBkcml2ZSBwb2xhcml0eSwgdmVsb2NpdHkgd2F2ZWZvcm0sIGNhbGlicmF0aW9uIG1hdGVyaWFsICjOsS1GZSBmb2lsKSBhbmQgY2FsaWJyYXRpb24gZmlsZSwgbnVtYmVyIG9mIGZpdHRlZCBwb2ludHMvcGFyYW1ldGVycywgYW5kIHBlci1zaXRlIGZpdHRlZCBwYXJhbWV0ZXJzIChyZWxhdGl2ZSBhcmVhLCBhbXBsaXR1ZGVzLCBsaW5ld2lkdGhzLCBpc29tZXIgc2hpZnQgcmVsYXRpdmUgdG8gdGhlIM6xLUZlIGNhbGlicmFudCwgaW50ZXJuYWwgaHlwZXJmaW5lIGZpZWxkLCBhbmQgcXVhZHJ1cG9sZSBzaGlmdCBgZcKycVEvMmApLCBlYWNoIHdpdGggZml0dGVkIHZhbHVlLCBhIHZhcnkvZml4ZWQgZmxhZywgYW5kIGEgc3RhbmRhcmQgZXJyb3IuICMjIyBTUVVJRCBtYWduZXRvbWV0cnkgKGAoQykuLi4vbkQtUEVHIENvYXRpbmcvU1FVSURgKSAqICoqYEZlezIsMywyJmFtcDszfV9NSC5kYXRgKiog4oCUIHJhdyBNUE1TLTMgKFF1YW50dW0gRGVzaWduKSBvdXRwdXQgZm9yIGVhY2ggdHJhY2VyJ3MgbWFnbmV0aXphdGlvbi12cy1maWVsZCBzd2VlcCwgaW5jbHVkaW5nIGZ1bGwgaW5zdHJ1bWVudCBoZWFkZXIgKGhhcmR3YXJlL2Zpcm13YXJlIHZlcnNpb25zLCBzYW1wbGUgbWFzcywgc2FtcGxlIGhvbGRlcikgYW5kIHBlci1wb2ludCBjb2x1bW5zIGZvciB0ZW1wZXJhdHVyZSAoKipLKiopLCBtYWduZXRpYyBmaWVsZCAoKipPZSoqKSwgbW9tZW50ICgqKmVtdSoqKSBhbmQgYXNzb2NpYXRlZCBkaWFnbm9zdGljcy9zdGF0dXMgZmllbGRzIChzZWUgaW4tZmlsZSBgW0RhdGFdYCBoZWFkZXIgcm93IGZvciB0aGUgY29tcGxldGUgY29sdW1uIGxpc3QpLiAqICoqYFJlc3VsdHMgU3VtbWFyeV9NSC5jc3ZgKiog4oCUIHByb2Nlc3NlZCBN4oCTSCBzdW1tYXJ5IHBlciB0cmFjZXI6IGBNYWduZXRpYyBGaWVsZCAobVQpYCB2cy4gYE1hZ25ldGl6YXRpb25gIG5vcm1hbGl6ZWQgdHdvIHdheXMg4oCUIHBlciBtZyBGZeKCg0/igoQgKGBBbcKyL2tnIEZlM080YCkgYW5kIHBlciBtZyBGZSAoYEFtwrIva2dGZWApIOKAlCBwbHVzIGBGZSBtYXNzIChtZylgIHVzZWQgZm9yIG5vcm1hbGl6YXRpb24uICogRGF0YSB3ZXJlIGZpdCB0byB0aGUgTGFuZ2V2aW4gZnVuY3Rpb24gZm9yIHN1cGVycGFyYW1hZ25ldGlzbSB3ZWlnaHRlZCBieSBhIGxvZy1ub3JtYWwgbWFnbmV0aWMtZGlhbWV0ZXIgZGlzdHJpYnV0aW9uIChDaGFudHJlbGwgZXQgYWwuIG1vZGVsKSB0byBvYnRhaW4gdGhlIG1hZ25ldGljIGRpYW1ldGVyIChEbSkgYW5kIGl0cyBnZW9tZXRyaWMgZGV2aWF0aW9uIChsbiDPg20pLiBTYXR1cmF0aW9uIG1hZ25ldGl6YXRpb24gKE1zKSBpcyB0aGUgbWF4aW11bSBvZiB0aGUgTeKAk0ggY3VydmUsIG5vcm1hbGl6ZWQgYnkgRmUgbWFzcy4gKiAqKkZlIG1hc3MvY29uY2VudHJhdGlvbiBmb3Igbm9ybWFsaXphdGlvbioqIChhcHBsaWVzIGhlcmUgYW5kIHRvIHRoZSBSRUxBWC9NUEkgc3VtbWFyaWVzIGJlbG93KSB3YXMgZGV0ZXJtaW5lZCB3aXRoIGEgKioxLDEwLXBoZW5hbnRocm9saW5lIGNvbG9yaW1ldHJpYyBhc3NheSoqLiBUaGUgcmF3IFVWLVZpcyBhYnNvcmJhbmNlIGRhdGEgYmVoaW5kIHRoaXMgYXNzYXkgYXJlIG5vdCBwYXJ0IG9mIHRoaXMgZGVwb3NpdCDigJQgb25seSB0aGUgcmVzdWx0aW5nIEZlIG1hc3MvY29uY2VudHJhdGlvbiB2YWx1ZXMsIGFzIHVzZWQgdG8gbm9ybWFsaXplIHRoZSBTUVVJRCBhbmQgUkVMQVggcmVzdWx0cywgYXJlIGluY2x1ZGVkLiAjIyMgTVBJIChgKEMpLi4uL25ELVBFRyBDb2F0aW5nL01QSWApICogKipgUmF3IERhdGEvUkVMQVggc2NhbnMvRmV7MiwzLDImYW1wOzN9X3JlbGF4X3sxLDIsM30uY3N2YCoqIOKAlCByYXcgcG9pbnQtc3ByZWFkLWZ1bmN0aW9uIChQU0YpIHNjYW5zIGZyb20gdGhlIFJFTEFY4oSiIG1vZHVsZSAoc2luZ2xlLWNoYW5uZWwsIG5vbi1pbWFnaW5nKSwgdHJpcGxpY2F0ZSBwZXIgdHJhY2VyLCB3aXRoIGFuIGluc3RydW1lbnQtZ2VuZXJhdGVkIGhlYWRlciAob3BlcmF0b3IsIHByb2plY3QvZXhhbSBuYW1lLCBzZXJpZXMgbnVtYmVyKS4gQWNxdWlyZWQgYXQgKio0NSBrSHosIDE2IG1UIGZpZWxkIGFtcGxpdHVkZSAoeC1heGlzKSoqOyA14oCTMTUgwrVMIG9mIHNhbXBsZSAoMeKAkzIgbWdGZSBtTOKBu8K5KSBpbiBhIDIwMCDCtUwgbWljcm9jZW50cmlmdWdlIHR1YmUsIGNlbnRlcmVkIGluIGEgY3VzdG9tIDNELXByaW50ZWQgaG9sZGVyIGluIHRoZSBzY2FubmVyJ3MgZmllbGQgb2YgdmlldyAoRk9WKSwgc2Nhbm5lZCBmb3IgM+KAkzUgbWluLiAqICoqYEFuYWx5c2lzL1JFTEFYX0ZlezIsMywyJmFtcDszfV9TdW1tYXJ5LmNzdmAqKiDigJQgcGVyLXRyYWNlciBzdW1tYXJ5OiBzYW1wbGUgdm9sdW1lICgqKsK1TCoqKSwgRmUgY29uY2VudHJhdGlvbiAoKiptZy9tTCoqLCBmcm9tIHRoZSBwaGVuYW50aHJvbGluZSBhc3NheSBhYm92ZSksIEZlIG1hc3MgKCoqbWcqKiksIGFuZCB0aGUgdHdvIGhlYWRsaW5lIFBTRiBtZXRyaWNzIGZyb20gdGhlIG1hbnVzY3JpcHQg4oCUICoqc2lnbmFsIGludGVuc2l0eSoqIChwZWFrIHNwZWNpZmljIGludGVuc2l0eSwgbm9ybWFsaXplZCBieSBGZSBtYXNzLCB1bml0cyAqKm1nRmXigbvCuSoqKSBhbmQgKipyZXNvbHV0aW9uKiogKHN5c3RlbS1yZXBvcnRlZCBGV0hNIG9mIHRoZSBQU0YgcGVhaywgdW5pdHMgKiptVCoqKS4gKiAqKmBSYXcgRGF0YS8yRC8qLmRjbWAqKiDigJQgMkQgTVBJIGltYWdlcyBpbiBESUNPTSBmb3JtYXQsIGFjcXVpcmVkIGluICoqc3RhbmRhcmQgbXVsdGljaGFubmVsIG1vZGUgKDQ1IGtIeiBmb3IgeC96IGF4ZXMsIDUuNyBUIG3igbvCuSBncmFkaWVudCkqKiwgcmVjb25zdHJ1Y3RlZCB2aWEgKip4LXNwYWNlIGRpcmVjdCByZWNvbnN0cnVjdGlvbiB3aXRoIGFuIGVxdWFsaXphdGlvbiBmaWx0ZXIqKiDigJQgaS5lLiwgdGhlc2UgYXJlIHRoZSAqKnJlY29uc3RydWN0ZWQvc2hhcnBlbmVkIGltYWdlcyB1c2VkIGRpcmVjdGx5IGluIHRoZSBhbmFseXNpcyoqIChjb25maXJtZWQgYnkgdGhlIG1hbnVzY3JpcHQncyBtZXRob2RzKSwgbm90IHVucHJvY2Vzc2VkIHNjYW5uZXIgcmF3IG91dHB1dDsgdGhlIGZ1bGwgbmF0aXZlIHNjYW5uZXIgb3V0cHV0IGlzIHJldGFpbmVkIGludGVybmFsbHkuIE9yZ2FuaXplZCBpbnRvIHRocmVlIGV4cGVyaW1lbnQgdHlwZXM6ICogYEZlezIsMywyJmFtcDszfV8yRFN0XzFtZ0ZlX3sxLDIsM30uZGNtYCDigJQgc3RhbmRhcmQgc2luZ2xlLWNvbmNlbnRyYXRpb24gaW1hZ2VzLCB0cmlwbGljYXRlIHBlciB0cmFjZXIsIHVzZWQgYXMgdGhlIHJlZmVyZW5jZS9iYXNlbGluZSBzY2FuICh2aXN1YWwgY29tcGFyaXNvbiBpbiB0aGUgcGFwZXIpLiAqIGBTZXJpYWwgRGlsdXRpb25zL0ZlezIsM30oJmFtcDszKS9GZSpfMkRTdF8qbmdGZS5kY21gIOKAlCBzZXJpYWwgZGlsdXRpb24gc2VyaWVzICgyNeKAkzEwMDAgbmdGZSBpbiA1IMK1TCwgdHJpcGxpY2F0ZSBjYXBpbGxhcmllcywgMC44IG1tIElELCBwbGFjZWQgcGVycGVuZGljdWxhciB0byB0aGUgRk9WKSB1c2VkIHRvIGVzdGFibGlzaCB0aGUgbGluZWFyIHNpZ25hbC12cy4tRmUtbWFzcyByZXNwb25zZSBhbmQgbGltaXQgb2YgZGV0ZWN0aW9uIChMT0QgZGV0ZXJtaW5lZCBieSBjb21wYXJpc29uIHRvIHRoZSBiYWNrZ3JvdW5kIHNpZ25hbCBvZiBhIHdhdGVyIHNhbXBsZSkuICogYExpbmUgU2NhbnMgLSBSZXNvbHV0aW9uIFBoYW50b20vRmUqXzJEU3RfKm1tLmRjbWAg4oCUIHR3byAwLjggbW0tSUQgY2FwaWxsYXJpZXMgKDUgwrVMIC8gNeKAkzEwIMK1ZyBlYWNoKSBwbGFjZWQgcGFyYWxsZWwgdG8gdGhlIEZPViBhdCBpbmNyZWFzaW5nIHNlcGFyYXRpb24gKDMuMjXigJM1IG1tKSwgdXNlZCB0byBhc3Nlc3Mgc3BhdGlhbCByZXNvbHV0aW9uOiBpbWFnZXMgYW5hbHl6ZWQgYXMgbGluZS1zY2FuIHByb2ZpbGVzIChpbi1ob3VzZSBNQVRMQUIpLCB3aXRoIHR3byBzaWduYWxzIGNvbnNpZGVyZWQgInNlcGFyYXRlZCIgb25jZSB0aGUgdHJvdWdoIGJldHdlZW4gdGhlbSBkcm9wcyBiZWxvdyBoYWxmIHRoZSBtYXhpbXVtIHBlYWsgc2lnbmFsLiAqICoqYEFuYWx5c2lzL01QSSBTZXJpYWwgRGlsdXRpb25fRGF0YSBTdW1tYXJ5LmNzdmAqKiBhbmQgKipgQW5hbHlzaXMvTVBJIExpbmUgU2NhbnNfRGF0YSBTdW1tYXJ5LmNzdmAqKiDigJQgZXhwb3J0cyBzdW1tYXJpemluZyBzaWduYWwgdnMuIEZlIG1hc3MgYW5kIHZzLiBjYXBpbGxhcnkgc2VwYXJhdGlvbiwgcmVzcGVjdGl2ZWx5LCBwZXIgdHJhY2VyLCBjb3JyZXNwb25kaW5nIHRvIHRoZSBtYXhpbXVtLXNpZ25hbCBST0kgdmFsdWVzIGV4dHJhY3RlZCBmcm9tIHRoZSBESUNPTSBpbWFnZXMgYWJvdmUuCiAgICA8L2Rlc2NyaXB0aW9uPgogIDwvZGVzY3JpcHRpb25zPgo8L3Jlc291cmNlPg==","url":"https://datadryad.org/dataset/doi:10.5061/dryad.6djh9w1j4","contentUrl":null,"metadataVersion":0,"schemaVersion":"http://datacite.org/schema/kernel-4","source":"mds","isActive":true,"state":"findable","reason":null,"viewCount":19,"viewsOverTime":[{"yearMonth":"2026-08","total":12},{"yearMonth":"2026-09","total":7}],"downloadCount":1,"downloadsOverTime":[{"yearMonth":"2026-08","total":1},{"yearMonth":"2026-09","total":0}],"referenceCount":0,"citationCount":1,"citationsOverTime":[{"year":"2026","total":1}],"partCount":0,"partOfCount":0,"versionCount":0,"versionOfCount":0,"created":"2026-08-06T20:06:40.000Z","registered":"2026-08-06T20:06:41.000Z","published":"2026","updated":"2026-08-06T20:06:41.000Z"},"relationships":{"client":{"data":{"id":"dryad.dryad","type":"clients"}},"provider":{"data":{"id":"dryad","type":"providers"}},"media":{"data":{"id":"10.5061/dryad.6djh9w1j4","type":"media"}},"references":{"data":[]},"citations":{"data":[{"id":"10.1039/d5nr03157e","type":"dois"}]},"parts":{"data":[]},"partOf":{"data":[]},"versions":{"data":[]},"versionOf":{"data":[]}}}}