{"data":{"id":"10.5061/dryad.fxpnvx16v","type":"dois","attributes":{"doi":"10.5061/dryad.fxpnvx16v","prefix":"10.5061","suffix":"dryad.fxpnvx16v","identifiers":[],"alternateIdentifiers":[],"creators":[{"name":"Choi, Daegwang","nameType":"Personal","affiliation":["Korea University","Gachon University"],"nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0000-0003-3102-2918","nameIdentifierScheme":"ORCID"}]},{"name":"Lee, Soon-Jae","nameType":"Personal","affiliation":["Korea University"],"nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0009-0007-8012-3543","nameIdentifierScheme":"ORCID"}]},{"name":"Cho, Seung-Woon","nameType":"Personal","affiliation":["Korea University"],"nameIdentifiers":[]},{"name":"Bark, Chan Bin","nameType":"Personal","affiliation":["Hanyang University"],"nameIdentifiers":[]},{"name":"Pak, Seik","nameType":"Personal","affiliation":["Hanyang University"],"nameIdentifiers":[]},{"name":"Shin, Dong-Jin","nameType":"Personal","affiliation":["Korea University"],"nameIdentifiers":[]},{"name":"Park, Moon Jip","nameType":"Personal","affiliation":["Hanyang University"],"nameIdentifiers":[]},{"name":"Gong, Su-Hyun","nameType":"Personal","affiliation":["Korea University"],"nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0000-0002-8652-714X","nameIdentifierScheme":"ORCID"}]}],"titles":[{"title":"Data from: Strong interlayer coupling and chiral flat-band cascades in twisted bilayer gratings"}],"publisher":"Dryad","container":{},"publicationYear":2026,"subjects":[{"subject":"FOS: Natural sciences","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":"Nanofabrication","schemeUri":"https://github.com/PLOS/plos-thesaurus","subjectScheme":"PLOS Subject Area Thesaurus"},{"subject":"Nanoscale photonics","schemeUri":"https://github.com/PLOS/plos-thesaurus","subjectScheme":"PLOS Subject Area Thesaurus"},{"subject":"Semiconductors","schemeUri":"https://github.com/PLOS/plos-thesaurus","subjectScheme":"PLOS Subject Area Thesaurus"}],"contributors":[{"name":"Choi, Daegwang","nameType":"Personal","affiliation":["Korea University","Gachon University"],"contributorType":"ContactPerson","nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0000-0003-3102-2918","nameIdentifierScheme":"ORCID"}]},{"name":"Lee, Soon-Jae","nameType":"Personal","affiliation":["Korea University"],"contributorType":"ContactPerson","nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0009-0007-8012-3543","nameIdentifierScheme":"ORCID"}]},{"name":"Cho, Seung-Woon","nameType":"Personal","affiliation":["Korea University"],"contributorType":"ContactPerson","nameIdentifiers":[]},{"name":"Bark, Chan Bin","nameType":"Personal","affiliation":["Hanyang University"],"contributorType":"ContactPerson","nameIdentifiers":[]},{"name":"Pak, Seik","nameType":"Personal","affiliation":["Hanyang University"],"contributorType":"ContactPerson","nameIdentifiers":[]},{"name":"Shin, Dong-Jin","nameType":"Personal","affiliation":["Korea University"],"contributorType":"ContactPerson","nameIdentifiers":[]},{"name":"Park, Moon Jip","nameType":"Personal","affiliation":["Hanyang University"],"contributorType":"ContactPerson","nameIdentifiers":[]},{"name":"Gong, Su-Hyun","nameType":"Personal","affiliation":["Korea University"],"contributorType":"ContactPerson","nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0000-0002-8652-714X","nameIdentifierScheme":"ORCID"}]}],"dates":[{"date":"2025-11-20T07:21:29Z","dateType":"Created"},{"date":"2026-07-16T12:46:14Z","dateType":"Submitted"},{"date":"2026-07-28T00:00:00Z","dateType":"Issued"},{"date":"2026-07-28T00:00:00Z","dateType":"Available"}],"language":"en","types":{"ris":"DATA","bibtex":"misc","citeproc":"dataset","schemaOrg":"Dataset","resourceType":"dataset","resourceTypeGeneral":"Dataset"},"relatedIdentifiers":[{"relationType":"IsCitedBy","relatedIdentifier":"10.48550/arxiv.2510.07381","relatedIdentifierType":"DOI"},{"relationType":"IsCitedBy","relatedIdentifier":"10.1126/sciadv.aed8846","relatedIdentifierType":"DOI"}],"relatedItems":[],"sizes":["312021505 bytes"],"formats":[],"version":"4","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":"From atomic crystals to macroscopic material structures, twisted bilayer\n systems have emerged as a promising route to control wave phenomena. In\n few-layer van der Waals (vdW) materials, however, the intrinsically weak\n interlayer coupling typically demands fine control of small twist angles\n to reach magic-angle conditions. Here, we show that one-dimensional\n photonic crystal bilayers can overcome this limitation by accessing a\n regime of strong interlayer coupling—comparable to intralayer coupling.\n This strong coupling enables flat-band formation over a broad angular\n range even at large twist angles. We experimentally realize this regime by\n stacking WS₂ gratings via a two-step lithography method, yielding\n ultra-wide chiral flat-band cascades in magic-angle twisted bilayer\n gratings. Our work not only provides a platform for designing photonic\n applications with a tunable localization but also explores a new regime of\n physics that is unattainable in conventional solid-state-based moiré\n systems.","descriptionType":"Abstract"},{"description":"# Data from: Strong interlayer coupling and chiral flat-band cascades in\n twisted bilayer gratings Dataset DOI:\n [10.5061/dryad.fxpnvx16v](https://doi.org/10.5061/dryad.fxpnvx16v) ##\n Description of the data and file structure This dataset: TBG_data_set.zip\n contains simulated angle-resolved transmittance and circular-dichroism\n spectra, photonic band-structure calculations, near-field electric\n displacement field profiles, and magic-angle/flat-band-width parameter\n sweeps for twisted bilayer photonic gratings, together with supplementary\n substrate-material comparisons and complex refractive index data. All data\n were generated by rigorous coupled-wave analysis (RCWA) and\n finite-difference time-domain (FDTD) simulation and are stored in Excel\n format, with one file per main-text or supplementary figure and one sheet\n per panel or parameter value. ### Files and variables #### File:\n Fig1_Data.xlsx **Description:** This file provides angle-resolved\n transmittance spectra and near-field electric displacement field profiles\n for the twisted bilayer grating. \"Fig1_c_10degree\",\n \"Fig1_c_35degree\", \"Fig1_c_44degree\", and\n \"Fig1_c_64degree\" provide transmittance as a function of\n incidence angle and photon energy at twist angles of 10°, 35°, 44°, and\n 64°. Sheets \"Fig1_d_44degree_xy_bottom\",\n \"Fig1_d_44degree_xy_top\", and \"Fig_1d_44degree_xz\"\n provide the electric displacement field distribution in the xy (bottom and\n top layer) and xz cross-sections at a 44° twist angle. Sheets\n \"Fig1_e_64degree_xy_bottom\", \"Fig1_e_64degree_xy_top\",\n and \"Fig_1e_64degree_xz\" provide the corresponding field\n distributions at a 64° twist angle. **Variables** * Angle (degree) –\n incidence angle * Energy (eV) – photon energy * Transmittance * X, Y, Z\n (nm) – spatial coordinates * Electric displacement field (a.u.) #### File:\n Fig2_Data.xlsx **Description:** This file provides simulated photonic band\n structures of the twisted bilayer grating. Sheets\n \"Fig2_c_Uncoupled\" and \"Fig2_c_Coupled\" provide the\n k_x–energy dispersion of the uncoupled and coupled bands at one twist\n angle. Sheets \"Fig2_d_Uncoupled\" and \"Fig2_d_Coupled\"\n provide the corresponding uncoupled and coupled bands at a second twist\n angle. Sheet \"Fig_2_e\" provides the twist-angle dependence of\n the band separation parameter (s) for the 1st and 2nd bands. Sheet\n \"Fig_2_f\" provides the twist-angle dependence of the flat-band\n width for the 1st and 2nd bands. **Variables** * k_x – in-plane wavevector\n component * Energy (eV) * s – Dimensionless scaling factor for effective\n coupling strength * Twist angle (degree) * Flat band width #### File:\n Fig3_Data.xlsx **Description:** This file provides angle-resolved\n transmittance spectra of the twisted bilayer grating at different twist\n angles. Sheets \"Fig3_d_38degree\" through\n \"Fig3_d_44degree\" provide transmittance maps at twist angles of\n 38°, 40°, 42°, and 44°. Sheets \"Fig3_e_57degree\" through\n \"Fig3_e_66degree\" provide transmittance maps at twist angles of\n 57°, 60°, 63°, and 66°. **Variables** * Angle (degree) – incidence angle *\n Energy (eV) – photon energy * Transmittance #### File: Fig4_Data.xlsx\n **Description:** This file provides circularly polarized transmittance and\n circular dichroism (CD) data. Sheet \"Fig4_a\" provides the CD map\n as a function of incidence angle and energy. Sheets\n \"Fig4_b_left\" and \"Fig4_b_right\" provide the\n corresponding left- and right-handed circularly polarized transmittance\n maps. Sheet \"Fig4_c\" provides the four\n circular-polarization-resolved transmittance spectra (T_LL, T_LR, T_RR,\n T_RL) at a fixed incidence angle. Sheet \"Fig4_d\" provides the\n same four transmittance spectra under a different condition. **Variables**\n * Angle (degree) – incidence angle * Energy (eV) – photon energy * CD –\n Circular dichroism * Transmittance * T_LL, T_LR, T_RR, T_RL –\n circular-polarization-resolved transmittance #### File: Fig4_E_LCP.txt\n **Description:** This file provides the electric field energy density\n distribution in the xy plane for the left circular polarization\n excitation.  **Variables** * X, Y, Z (nm) – spatial coordinates * Electric\n displacement field (a.u.) #### File: Fig4_E_RCP.txt **Description:** This\n file provides the electric field energy density distribution in the xy\n plane for the right circular polarization excitation.  **Variables** * X,\n Y, Z (nm) – spatial coordinates * Electric displacement field (a.u.) ####\n File: FigS3_Data.xlsx **Description:** This file provides calculated\n angle-resolved transmittance spectra at twist angles of 44°, 45°, 46°,\n 47°, 48°, 61°, 62°, 63°, 64°, and 65°, one sheet per angle. **Variables**\n * Angle (degree) – incidence angle * Energy (eV) – photon energy *\n Transmittance #### File: FigS4_Data.xlsx **Description:** This file\n provides the magic angle and flat-band width as a function of grating\n layer thickness. **Variables** * Thickness (nm) * Magic angle (Degree) *\n Flat-band width (Degree) #### File: FigS5_Data.xlsx **Description:** This\n file provides the magic angle and flat-band width as a function of grating\n period. **Variables** * Period (nm) * Magic angle (Degree) * Flat-band\n width (Degree) #### File: FigS6_Data.xlsx **Description:** This file\n provides angle-resolved transmittance spectra at twist angles of 15°, 20°,\n 30°, 45°, 60°, and 70°, one sheet per angle. **Variables** * Angle\n (degree) – incidence angle * Energy (eV) – photon energy * Transmittance\n #### File: FigS7_Data.xlsx **Description:** This file provides uncoupled\n and coupled photonic band structures at twist angles of 40°, 45°, 50°,\n 55°, 60°, and 65°, with separate \"_Uncoupled\" and\n \"_Coupled\" sheets for each angle. **Variables** * Band index *\n k_x in-plane wavevector component * Energy (eV) #### File: FigS8_Data.xlsx\n **Description:** This file provides uncoupled and coupled photonic band\n structures at twist angles of 43°, 44.3°, 47.3°, 49°, 51°, and 53°, with\n separate \"_uncoupled\" and \"_coupled\" sheets for each\n angle. **Variables** * Band index * k_x – in-plane wavevector component *\n Energy (eV) #### File: FigS9_Data.xlsx **Description:** This file provides\n uncoupled and coupled photonic band structures at twist angles of 60.5°,\n 61°, 61.5°, 62°, 63.3°, and 64°, with separate\n \"_Uncoupled/_uncoupled\" and \"_coupled\" sheets for each\n angle. **Variables** * Band index * k_x – in-plane wavevector component *\n Energy (eV) #### File: FigS10_Data.xlsx **Description:** This file\n provides angle-resolved transmittance spectra for two grating\n configurations (\"M1\", \"M2\") at spacer thicknesses of 0\n nm, 40 nm, and 80 nm. **Variables** * Angle (degree) – incidence angle *\n Energy (eV) – photon energy * Transmittance #### File: FigS11_Data.xlsx\n **Description:** This file provides the magic angle and flat-band width as\n a function of interlayer distance. Sheets \"FigS11_a\" and\n \"FigS11_b\" correspond to two different grating configurations.\n **Variables** * Interlayer distance (nm) * Magic angle (Degree) *\n Flat-band width (Degree) #### File: FigS12_Data.xlsx **Description:** This\n file provides circularly polarized transmittance and CD data. Sheet\n \"FigS12_A\" provides the CD map as a function of incidence angle\n and energy. Sheets \"FigS12_B_TRR\", \"FigS12_B_TRL\",\n \"FigS12_B_TLR\", and \"FigS12_B_TLL\" provide the\n corresponding circular-polarization-resolved transmittance maps. Sheets\n \"FigS12_C\" and \"FigS12_D\" provide the four\n circular-polarization-resolved transmittance spectra (T_RR, T_LL, T_LR,\n T_RL) at two fixed incidence angles. **Variables** * Angle (degree) –\n incidence angle * Energy (eV) – photon energy * CD – Circular dichroism *\n Transmittance * T_LL, T_LR, T_RR, T_RL – circular-polarization-resolved\n transmittance #### File: FigS15_Data.xlsx **Description:** This file\n provides angle-resolved transmittance spectra for gratings on three\n different substrate materials: GaP, hBN, and WS2. **Variables** * Angle\n (degree) – incidence angle * Energy (eV) – photon energy * Transmittance\n #### File: FigS16_Data.xlsx **Description:** This file provides the\n complex refractive index of the grating material WS2 as a function of\n wavelength. **Variables** * Wavelength (nm) * Real index * Imaginary index\n #### File: FigS18_Data.xlsx **Description:** This file provides\n angle-resolved transmittance spectra for the y-direction at twist angles\n from 10° to 70° (10°, 20°, 25°, 30°, 35°, 40°, 45°, 50°, 55°, 60°, 65°,\n 70°), one sheet per angle. **Variables** * Angle (degree) – incidence\n angle * Energy (eV) – photon energy * Transmittance ## Code/Software Any\n program that will open a spreadsheet, such as Microsoft Excel is\n recommended.","descriptionType":"TechnicalInfo"}],"geoLocations":[],"fundingReferences":[{"funderName":"National Research Foundation of Korea","awardNumber":"RS-2024-00335222","funderIdentifier":"https://ror.org/013aysd81","funderIdentifierType":"ROR"},{"funderName":"National Research Foundation of Korea","awardNumber":"RS-2025-16070482","funderIdentifier":"https://ror.org/013aysd81","funderIdentifierType":"ROR"},{"funderName":"National Research Foundation of Korea","awardNumber":"RS-2023-00218998","funderIdentifier":"https://ror.org/013aysd81","funderIdentifierType":"ROR"},{"funderName":"National Research Foundation of Korea","awardNumber":"RS-2025-25446099","funderIdentifier":"https://ror.org/013aysd81","funderIdentifierType":"ROR"},{"funderName":"National Research Foundation of Korea","awardNumber":"RS-2025-03392969","funderIdentifier":"https://ror.org/013aysd81","funderIdentifierType":"ROR"},{"funderName":"Samsung Science and Technology Foundation (South Korea)","awardNumber":"SSTF-BA1902-03","funderIdentifier":"https://ror.org/00gjmje40","funderIdentifierType":"ROR"}],"xml":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHJlc291cmNlIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCBodHRwOi8vc2NoZW1hLmRhdGFjaXRlLm9yZy9tZXRhL2tlcm5lbC00L21ldGFkYXRhLnhzZCI+CiAgPGlkZW50aWZpZXIgaWRlbnRpZmllclR5cGU9IkRPSSI+MTAuNTA2MS9EUllBRC5GWFBOVlgxNlY8L2lkZW50aWZpZXI+CiAgPGNyZWF0b3JzPgogICAgPGNyZWF0b3I+CiAgICAgIDxjcmVhdG9yTmFtZSBuYW1lVHlwZT0iUGVyc29uYWwiPkNob2ksIERhZWd3YW5nPC9jcmVhdG9yTmFtZT4KICAgICAgPG5hbWVJZGVudGlmaWVyIG5hbWVJZGVudGlmaWVyU2NoZW1lPSJPUkNJRCIgc2NoZW1lVVJJPSJodHRwOi8vb3JjaWQub3JnLyI+MDAwMC0wMDAzLTMxMDItMjkxODwvbmFtZUlkZW50aWZpZXI+CiAgICAgIDxhZmZpbGlhdGlvbiBhZmZpbGlhdGlvbklkZW50aWZpZXI9Imh0dHBzOi8vcm9yLm9yZy8wNDdkcWNnNDAiIGFmZmlsaWF0aW9uSWRlbnRpZmllclNjaGVtZT0iUk9SIiBzY2hlbWVVUkk9Imh0dHBzOi8vcm9yLm9yZyI+S29yZWEgVW5pdmVyc2l0eTwvYWZmaWxpYXRpb24+CiAgICAgIDxhZmZpbGlhdGlvbiBhZmZpbGlhdGlvbklkZW50aWZpZXI9Imh0dHBzOi8vcm9yLm9yZy8wM3J5eXd0ODAiIGFmZmlsaWF0aW9uSWRlbnRpZmllclNjaGVtZT0iUk9SIiBzY2hlbWVVUkk9Imh0dHBzOi8vcm9yLm9yZyI+R2FjaG9uIFVuaXZlcnNpdHk8L2FmZmlsaWF0aW9uPgogICAgPC9jcmVhdG9yPgogICAgPGNyZWF0b3I+CiAgICAgIDxjcmVhdG9yTmFtZSBuYW1lVHlwZT0iUGVyc29uYWwiPkxlZSwgU29vbi1KYWU8L2NyZWF0b3JOYW1lPgogICAgICA8bmFtZUlkZW50aWZpZXIgbmFtZUlkZW50aWZpZXJTY2hlbWU9Ik9SQ0lEIiBzY2hlbWVVUkk9Imh0dHA6Ly9vcmNpZC5vcmcvIj4wMDA5LTAwMDctODAxMi0zNTQzPC9uYW1lSWRlbnRpZmllcj4KICAgICAgPGFmZmlsaWF0aW9uIGFmZmlsaWF0aW9uSWRlbnRpZmllcj0iaHR0cHM6Ly9yb3Iub3JnLzA0N2RxY2c0MCIgYWZmaWxpYXRpb25JZGVudGlmaWVyU2NoZW1lPSJST1IiIHNjaGVtZVVSST0iaHR0cHM6Ly9yb3Iub3JnIj5Lb3JlYSBVbml2ZXJzaXR5PC9hZmZpbGlhdGlvbj4KICAgIDwvY3JlYXRvcj4KICAgIDxjcmVhdG9yPgogICAgICA8Y3JlYXRvck5hbWUgbmFtZVR5cGU9IlBlcnNvbmFsIj5DaG8sIFNldW5nLVdvb248L2NyZWF0b3JOYW1lPgogICAgICA8YWZmaWxpYXRpb24gYWZmaWxpYXRpb25JZGVudGlmaWVyPSJodHRwczovL3Jvci5vcmcvMDQ3ZHFjZzQwIiBhZmZpbGlhdGlvbklkZW50aWZpZXJTY2hlbWU9IlJPUiIgc2NoZW1lVVJJPSJodHRwczovL3Jvci5vcmciPktvcmVhIFVuaXZlcnNpdHk8L2FmZmlsaWF0aW9uPgogICAgPC9jcmVhdG9yPgogICAgPGNyZWF0b3I+CiAgICAgIDxjcmVhdG9yTmFtZSBuYW1lVHlwZT0iUGVyc29uYWwiPkJhcmssIENoYW4gQmluPC9jcmVhdG9yTmFtZT4KICAgICAgPGFmZmlsaWF0aW9uIGFmZmlsaWF0aW9uSWRlbnRpZmllcj0iaHR0cHM6Ly9yb3Iub3JnLzA0Njg2NXk2OCIgYWZmaWxpYXRpb25JZGVudGlmaWVyU2NoZW1lPSJST1IiIHNjaGVtZVVSST0iaHR0cHM6Ly9yb3Iub3JnIj5IYW55YW5nIFVuaXZlcnNpdHk8L2FmZmlsaWF0aW9uPgogICAgPC9jcmVhdG9yPgogICAgPGNyZWF0b3I+CiAgICAgIDxjcmVhdG9yTmFtZSBuYW1lVHlwZT0iUGVyc29uYWwiPlBhaywgU2VpazwvY3JlYXRvck5hbWU+CiAgICAgIDxhZmZpbGlhdGlvbiBhZmZpbGlhdGlvbklkZW50aWZpZXI9Imh0dHBzOi8vcm9yLm9yZy8wNDY4NjV5NjgiIGFmZmlsaWF0aW9uSWRlbnRpZmllclNjaGVtZT0iUk9SIiBzY2hlbWVVUkk9Imh0dHBzOi8vcm9yLm9yZyI+SGFueWFuZyBVbml2ZXJzaXR5PC9hZmZpbGlhdGlvbj4KICAgIDwvY3JlYXRvcj4KICAgIDxjcmVhdG9yPgogICAgICA8Y3JlYXRvck5hbWUgbmFtZVR5cGU9IlBlcnNvbmFsIj5TaGluLCBEb25nLUppbjwvY3JlYXRvck5hbWU+CiAgICAgIDxhZmZpbGlhdGlvbiBhZmZpbGlhdGlvbklkZW50aWZpZXI9Imh0dHBzOi8vcm9yLm9yZy8wNDdkcWNnNDAiIGFmZmlsaWF0aW9uSWRlbnRpZmllclNjaGVtZT0iUk9SIiBzY2hlbWVVUkk9Imh0dHBzOi8vcm9yLm9yZyI+S29yZWEgVW5pdmVyc2l0eTwvYWZmaWxpYXRpb24+CiAgICA8L2NyZWF0b3I+CiAgICA8Y3JlYXRvcj4KICAgICAgPGNyZWF0b3JOYW1lIG5hbWVUeXBlPSJQZXJzb25hbCI+UGFyaywgTW9vbiBKaXA8L2NyZWF0b3JOYW1lPgogICAgICA8YWZmaWxpYXRpb24gYWZmaWxpYXRpb25JZGVudGlmaWVyPSJodHRwczovL3Jvci5vcmcvMDQ2ODY1eTY4IiBhZmZpbGlhdGlvbklkZW50aWZpZXJTY2hlbWU9IlJPUiIgc2NoZW1lVVJJPSJodHRwczovL3Jvci5vcmciPkhhbnlhbmcgVW5pdmVyc2l0eTwvYWZmaWxpYXRpb24+CiAgICA8L2NyZWF0b3I+CiAgICA8Y3JlYXRvcj4KICAgICAgPGNyZWF0b3JOYW1lIG5hbWVUeXBlPSJQZXJzb25hbCI+R29uZywgU3UtSHl1bjwvY3JlYXRvck5hbWU+CiAgICAgIDxuYW1lSWRlbnRpZmllciBuYW1lSWRlbnRpZmllclNjaGVtZT0iT1JDSUQiIHNjaGVtZVVSST0iaHR0cDovL29yY2lkLm9yZy8iPjAwMDAtMDAwMi04NjUyLTcxNFg8L25hbWVJZGVudGlmaWVyPgogICAgICA8YWZmaWxpYXRpb24gYWZmaWxpYXRpb25JZGVudGlmaWVyPSJodHRwczovL3Jvci5vcmcvMDQ3ZHFjZzQwIiBhZmZpbGlhdGlvbklkZW50aWZpZXJTY2hlbWU9IlJPUiIgc2NoZW1lVVJJPSJodHRwczovL3Jvci5vcmciPktvcmVhIFVuaXZlcnNpdHk8L2FmZmlsaWF0aW9uPgogICAgPC9jcmVhdG9yPgogIDwvY3JlYXRvcnM+CiAgPHRpdGxlcz4KICAgIDx0aXRsZT4KICAgICAgRGF0YSBmcm9tOiBTdHJvbmcgaW50ZXJsYXllciBjb3VwbGluZyBhbmQgY2hpcmFsIGZsYXQtYmFuZCBjYXNjYWRlcyBpbgogICAgICB0d2lzdGVkIGJpbGF5ZXIgZ3JhdGluZ3MKICAgIDwvdGl0bGU+CiAgPC90aXRsZXM+CiAgPHB1Ymxpc2hlciBwdWJsaXNoZXJJZGVudGlmaWVyPSJodHRwczovL3Jvci5vcmcvMDB4Nmg1bjk1IiBwdWJsaXNoZXJJZGVudGlmaWVyU2NoZW1lPSJST1IiIHNjaGVtZVVSST0iaHR0cHM6Ly9yb3Iub3JnLyI+RHJ5YWQ8L3B1Ymxpc2hlcj4KICA8cmVzb3VyY2VUeXBlIHJlc291cmNlVHlwZUdlbmVyYWw9IkRhdGFzZXQiPmRhdGFzZXQ8L3Jlc291cmNlVHlwZT4KICA8cHVibGljYXRpb25ZZWFyPjIwMjY8L3B1YmxpY2F0aW9uWWVhcj4KICA8c3ViamVjdHM+CiAgICA8c3ViamVjdCBzdWJqZWN0U2NoZW1lPSJmb3MiIHNjaGVtZVVSST0iaHR0cHM6Ly93ZWItYXJjaGl2ZS5vZWNkLm9yZy8yMDEyLTA2LTE1LzEzODU3NS0zODIzNTE0Ny5wZGYiPkZPUzogTmF0dXJhbCBzY2llbmNlczwvc3ViamVjdD4KICAgIDxzdWJqZWN0IHN1YmplY3RTY2hlbWU9ImZvcyIgc2NoZW1lVVJJPSJodHRwczovL3dlYi1hcmNoaXZlLm9lY2Qub3JnLzIwMTItMDYtMTUvMTM4NTc1LTM4MjM1MTQ3LnBkZiI+Rk9TOiBOYW5vLXRlY2hub2xvZ3k8L3N1YmplY3Q+CiAgICA8c3ViamVjdCBzdWJqZWN0U2NoZW1lPSJQTE9TIFN1YmplY3QgQXJlYSBUaGVzYXVydXMiIHNjaGVtZVVSST0iaHR0cHM6Ly9naXRodWIuY29tL1BMT1MvcGxvcy10aGVzYXVydXMiPk5hbm9mYWJyaWNhdGlvbjwvc3ViamVjdD4KICAgIDxzdWJqZWN0IHN1YmplY3RTY2hlbWU9IlBMT1MgU3ViamVjdCBBcmVhIFRoZXNhdXJ1cyIgc2NoZW1lVVJJPSJodHRwczovL2dpdGh1Yi5jb20vUExPUy9wbG9zLXRoZXNhdXJ1cyI+TmFub3NjYWxlIHBob3Rvbmljczwvc3ViamVjdD4KICAgIDxzdWJqZWN0IHN1YmplY3RTY2hlbWU9IlBMT1MgU3ViamVjdCBBcmVhIFRoZXNhdXJ1cyIgc2NoZW1lVVJJPSJodHRwczovL2dpdGh1Yi5jb20vUExPUy9wbG9zLXRoZXNhdXJ1cyI+U2VtaWNvbmR1Y3RvcnM8L3N1YmplY3Q+CiAgPC9zdWJqZWN0cz4KICA8ZnVuZGluZ1JlZmVyZW5jZXM+CiAgICA8ZnVuZGluZ1JlZmVyZW5jZT4KICAgICAgPGZ1bmRlck5hbWU+TmF0aW9uYWwgUmVzZWFyY2ggRm91bmRhdGlvbiBvZiBLb3JlYTwvZnVuZGVyTmFtZT4KICAgICAgPGZ1bmRlcklkZW50aWZpZXIgZnVuZGVySWRlbnRpZmllclR5cGU9IlJPUiI+aHR0cHM6Ly9yb3Iub3JnLzAxM2F5c2Q4MTwvZnVuZGVySWRlbnRpZmllcj4KICAgICAgPGF3YXJkTnVtYmVyPlJTLTIwMjQtMDAzMzUyMjI8L2F3YXJkTnVtYmVyPgogICAgPC9mdW5kaW5nUmVmZXJlbmNlPgogICAgPGZ1bmRpbmdSZWZlcmVuY2U+CiAgICAgIDxmdW5kZXJOYW1lPk5hdGlvbmFsIFJlc2VhcmNoIEZvdW5kYXRpb24gb2YgS29yZWE8L2Z1bmRlck5hbWU+CiAgICAgIDxmdW5kZXJJZGVudGlmaWVyIGZ1bmRlcklkZW50aWZpZXJUeXBlPSJST1IiPmh0dHBzOi8vcm9yLm9yZy8wMTNheXNkODE8L2Z1bmRlcklkZW50aWZpZXI+CiAgICAgIDxhd2FyZE51bWJlcj5SUy0yMDI1LTE2MDcwNDgyPC9hd2FyZE51bWJlcj4KICAgIDwvZnVuZGluZ1JlZmVyZW5jZT4KICAgIDxmdW5kaW5nUmVmZXJlbmNlPgogICAgICA8ZnVuZGVyTmFtZT5OYXRpb25hbCBSZXNlYXJjaCBGb3VuZGF0aW9uIG9mIEtvcmVhPC9mdW5kZXJOYW1lPgogICAgICA8ZnVuZGVySWRlbnRpZmllciBmdW5kZXJJZGVudGlmaWVyVHlwZT0iUk9SIj5odHRwczovL3Jvci5vcmcvMDEzYXlzZDgxPC9mdW5kZXJJZGVudGlmaWVyPgogICAgICA8YXdhcmROdW1iZXI+UlMtMjAyMy0wMDIxODk5ODwvYXdhcmROdW1iZXI+CiAgICA8L2Z1bmRpbmdSZWZlcmVuY2U+CiAgICA8ZnVuZGluZ1JlZmVyZW5jZT4KICAgICAgPGZ1bmRlck5hbWU+TmF0aW9uYWwgUmVzZWFyY2ggRm91bmRhdGlvbiBvZiBLb3JlYTwvZnVuZGVyTmFtZT4KICAgICAgPGZ1bmRlcklkZW50aWZpZXIgZnVuZGVySWRlbnRpZmllclR5cGU9IlJPUiI+aHR0cHM6Ly9yb3Iub3JnLzAxM2F5c2Q4MTwvZnVuZGVySWRlbnRpZmllcj4KICAgICAgPGF3YXJkTnVtYmVyPlJTLTIwMjUtMjU0NDYwOTk8L2F3YXJkTnVtYmVyPgogICAgPC9mdW5kaW5nUmVmZXJlbmNlPgogICAgPGZ1bmRpbmdSZWZlcmVuY2U+CiAgICAgIDxmdW5kZXJOYW1lPk5hdGlvbmFsIFJlc2VhcmNoIEZvdW5kYXRpb24gb2YgS29yZWE8L2Z1bmRlck5hbWU+CiAgICAgIDxmdW5kZXJJZGVudGlmaWVyIGZ1bmRlcklkZW50aWZpZXJUeXBlPSJST1IiPmh0dHBzOi8vcm9yLm9yZy8wMTNheXNkODE8L2Z1bmRlcklkZW50aWZpZXI+CiAgICAgIDxhd2FyZE51bWJlcj5SUy0yMDI1LTAzMzkyOTY5PC9hd2FyZE51bWJlcj4KICAgIDwvZnVuZGluZ1JlZmVyZW5jZT4KICAgIDxmdW5kaW5nUmVmZXJlbmNlPgogICAgICA8ZnVuZGVyTmFtZT5TYW1zdW5nIFNjaWVuY2UgYW5kIFRlY2hub2xvZ3kgRm91bmRhdGlvbiAoU291dGggS29yZWEpPC9mdW5kZXJOYW1lPgogICAgICA8ZnVuZGVySWRlbnRpZmllciBmdW5kZXJJZGVudGlmaWVyVHlwZT0iUk9SIj5odHRwczovL3Jvci5vcmcvMDBnam1qZTQwPC9mdW5kZXJJZGVudGlmaWVyPgogICAgICA8YXdhcmROdW1iZXI+U1NURi1CQTE5MDItMDM8L2F3YXJkTnVtYmVyPgogICAgPC9mdW5kaW5nUmVmZXJlbmNlPgogIDwvZnVuZGluZ1JlZmVyZW5jZXM+CiAgPGNvbnRyaWJ1dG9ycz4KICAgIDxjb250cmlidXRvciBjb250cmlidXRvclR5cGU9IkNvbnRhY3RQZXJzb24iPgogICAgICA8Y29udHJpYnV0b3JOYW1lIG5hbWVUeXBlPSJQZXJzb25hbCI+Q2hvaSwgRGFlZ3dhbmc8L2NvbnRyaWJ1dG9yTmFtZT4KICAgICAgPG5hbWVJZGVudGlmaWVyIG5hbWVJZGVudGlmaWVyU2NoZW1lPSJPUkNJRCIgc2NoZW1lVVJJPSJodHRwOi8vb3JjaWQub3JnLyI+MDAwMC0wMDAzLTMxMDItMjkxODwvbmFtZUlkZW50aWZpZXI+CiAgICAgIDxhZmZpbGlhdGlvbiBhZmZpbGlhdGlvbklkZW50aWZpZXI9Imh0dHBzOi8vcm9yLm9yZy8wNDdkcWNnNDAiIGFmZmlsaWF0aW9uSWRlbnRpZmllclNjaGVtZT0iUk9SIiBzY2hlbWVVUkk9Imh0dHBzOi8vcm9yLm9yZyI+S29yZWEgVW5pdmVyc2l0eTwvYWZmaWxpYXRpb24+CiAgICAgIDxhZmZpbGlhdGlvbiBhZmZpbGlhdGlvbklkZW50aWZpZXI9Imh0dHBzOi8vcm9yLm9yZy8wM3J5eXd0ODAiIGFmZmlsaWF0aW9uSWRlbnRpZmllclNjaGVtZT0iUk9SIiBzY2hlbWVVUkk9Imh0dHBzOi8vcm9yLm9yZyI+R2FjaG9uIFVuaXZlcnNpdHk8L2FmZmlsaWF0aW9uPgogICAgPC9jb250cmlidXRvcj4KICAgIDxjb250cmlidXRvciBjb250cmlidXRvclR5cGU9IkNvbnRhY3RQZXJzb24iPgogICAgICA8Y29udHJpYnV0b3JOYW1lIG5hbWVUeXBlPSJQZXJzb25hbCI+TGVlLCBTb29uLUphZTwvY29udHJpYnV0b3JOYW1lPgogICAgICA8bmFtZUlkZW50aWZpZXIgbmFtZUlkZW50aWZpZXJTY2hlbWU9Ik9SQ0lEIiBzY2hlbWVVUkk9Imh0dHA6Ly9vcmNpZC5vcmcvIj4wMDA5LTAwMDctODAxMi0zNTQzPC9uYW1lSWRlbnRpZmllcj4KICAgICAgPGFmZmlsaWF0aW9uIGFmZmlsaWF0aW9uSWRlbnRpZmllcj0iaHR0cHM6Ly9yb3Iub3JnLzA0N2RxY2c0MCIgYWZmaWxpYXRpb25JZGVudGlmaWVyU2NoZW1lPSJST1IiIHNjaGVtZVVSST0iaHR0cHM6Ly9yb3Iub3JnIj5Lb3JlYSBVbml2ZXJzaXR5PC9hZmZpbGlhdGlvbj4KICAgIDwvY29udHJpYnV0b3I+CiAgICA8Y29udHJpYnV0b3IgY29udHJpYnV0b3JUeXBlPSJDb250YWN0UGVyc29uIj4KICAgICAgPGNvbnRyaWJ1dG9yTmFtZSBuYW1lVHlwZT0iUGVyc29uYWwiPkNobywgU2V1bmctV29vbjwvY29udHJpYnV0b3JOYW1lPgogICAgICA8YWZmaWxpYXRpb24gYWZmaWxpYXRpb25JZGVudGlmaWVyPSJodHRwczovL3Jvci5vcmcvMDQ3ZHFjZzQwIiBhZmZpbGlhdGlvbklkZW50aWZpZXJTY2hlbWU9IlJPUiIgc2NoZW1lVVJJPSJodHRwczovL3Jvci5vcmciPktvcmVhIFVuaXZlcnNpdHk8L2FmZmlsaWF0aW9uPgogICAgPC9jb250cmlidXRvcj4KICAgIDxjb250cmlidXRvciBjb250cmlidXRvclR5cGU9IkNvbnRhY3RQZXJzb24iPgogICAgICA8Y29udHJpYnV0b3JOYW1lIG5hbWVUeXBlPSJQZXJzb25hbCI+QmFyaywgQ2hhbiBCaW48L2NvbnRyaWJ1dG9yTmFtZT4KICAgICAgPGFmZmlsaWF0aW9uIGFmZmlsaWF0aW9uSWRlbnRpZmllcj0iaHR0cHM6Ly9yb3Iub3JnLzA0Njg2NXk2OCIgYWZmaWxpYXRpb25JZGVudGlmaWVyU2NoZW1lPSJST1IiIHNjaGVtZVVSST0iaHR0cHM6Ly9yb3Iub3JnIj5IYW55YW5nIFVuaXZlcnNpdHk8L2FmZmlsaWF0aW9uPgogICAgPC9jb250cmlidXRvcj4KICAgIDxjb250cmlidXRvciBjb250cmlidXRvclR5cGU9IkNvbnRhY3RQZXJzb24iPgogICAgICA8Y29udHJpYnV0b3JOYW1lIG5hbWVUeXBlPSJQZXJzb25hbCI+UGFrLCBTZWlrPC9jb250cmlidXRvck5hbWU+CiAgICAgIDxhZmZpbGlhdGlvbiBhZmZpbGlhdGlvbklkZW50aWZpZXI9Imh0dHBzOi8vcm9yLm9yZy8wNDY4NjV5NjgiIGFmZmlsaWF0aW9uSWRlbnRpZmllclNjaGVtZT0iUk9SIiBzY2hlbWVVUkk9Imh0dHBzOi8vcm9yLm9yZyI+SGFueWFuZyBVbml2ZXJzaXR5PC9hZmZpbGlhdGlvbj4KICAgIDwvY29udHJpYnV0b3I+CiAgICA8Y29udHJpYnV0b3IgY29udHJpYnV0b3JUeXBlPSJDb250YWN0UGVyc29uIj4KICAgICAgPGNvbnRyaWJ1dG9yTmFtZSBuYW1lVHlwZT0iUGVyc29uYWwiPlNoaW4sIERvbmctSmluPC9jb250cmlidXRvck5hbWU+CiAgICAgIDxhZmZpbGlhdGlvbiBhZmZpbGlhdGlvbklkZW50aWZpZXI9Imh0dHBzOi8vcm9yLm9yZy8wNDdkcWNnNDAiIGFmZmlsaWF0aW9uSWRlbnRpZmllclNjaGVtZT0iUk9SIiBzY2hlbWVVUkk9Imh0dHBzOi8vcm9yLm9yZyI+S29yZWEgVW5pdmVyc2l0eTwvYWZmaWxpYXRpb24+CiAgICA8L2NvbnRyaWJ1dG9yPgogICAgPGNvbnRyaWJ1dG9yIGNvbnRyaWJ1dG9yVHlwZT0iQ29udGFjdFBlcnNvbiI+CiAgICAgIDxjb250cmlidXRvck5hbWUgbmFtZVR5cGU9IlBlcnNvbmFsIj5QYXJrLCBNb29uIEppcDwvY29udHJpYnV0b3JOYW1lPgogICAgICA8YWZmaWxpYXRpb24gYWZmaWxpYXRpb25JZGVudGlmaWVyPSJodHRwczovL3Jvci5vcmcvMDQ2ODY1eTY4IiBhZmZpbGlhdGlvbklkZW50aWZpZXJTY2hlbWU9IlJPUiIgc2NoZW1lVVJJPSJodHRwczovL3Jvci5vcmciPkhhbnlhbmcgVW5pdmVyc2l0eTwvYWZmaWxpYXRpb24+CiAgICA8L2NvbnRyaWJ1dG9yPgogICAgPGNvbnRyaWJ1dG9yIGNvbnRyaWJ1dG9yVHlwZT0iQ29udGFjdFBlcnNvbiI+CiAgICAgIDxjb250cmlidXRvck5hbWUgbmFtZVR5cGU9IlBlcnNvbmFsIj5Hb25nLCBTdS1IeXVuPC9jb250cmlidXRvck5hbWU+CiAgICAgIDxuYW1lSWRlbnRpZmllciBuYW1lSWRlbnRpZmllclNjaGVtZT0iT1JDSUQiIHNjaGVtZVVSST0iaHR0cDovL29yY2lkLm9yZy8iPjAwMDAtMDAwMi04NjUyLTcxNFg8L25hbWVJZGVudGlmaWVyPgogICAgICA8YWZmaWxpYXRpb24gYWZmaWxpYXRpb25JZGVudGlmaWVyPSJodHRwczovL3Jvci5vcmcvMDQ3ZHFjZzQwIiBhZmZpbGlhdGlvbklkZW50aWZpZXJTY2hlbWU9IlJPUiIgc2NoZW1lVVJJPSJodHRwczovL3Jvci5vcmciPktvcmVhIFVuaXZlcnNpdHk8L2FmZmlsaWF0aW9uPgogICAgPC9jb250cmlidXRvcj4KICA8L2NvbnRyaWJ1dG9ycz4KICA8ZGF0ZXM+CiAgICA8ZGF0ZSBkYXRlVHlwZT0iQ3JlYXRlZCI+MjAyNS0xMS0yMFQwNzoyMToyOVo8L2RhdGU+CiAgICA8ZGF0ZSBkYXRlVHlwZT0iU3VibWl0dGVkIj4yMDI2LTA3LTE2VDEyOjQ2OjE0WjwvZGF0ZT4KICAgIDxkYXRlIGRhdGVUeXBlPSJJc3N1ZWQiPjIwMjYtMDctMjhUMDA6MDA6MDBaPC9kYXRlPgogICAgPGRhdGUgZGF0ZVR5cGU9IkF2YWlsYWJsZSI+MjAyNi0wNy0yOFQwMDowMDowMFo8L2RhdGU+CiAgPC9kYXRlcz4KICA8bGFuZ3VhZ2U+ZW48L2xhbmd1YWdlPgogIDxyZWxhdGVkSWRlbnRpZmllcnM+CiAgICA8cmVsYXRlZElkZW50aWZpZXIgcmVsYXRpb25UeXBlPSJJc0NpdGVkQnkiIHJlbGF0ZWRJZGVudGlmaWVyVHlwZT0iRE9JIj5odHRwczovL2RvaS5vcmcvMTAuNDg1NTAvYXJYaXYuMjUxMC4wNzM4MTwvcmVsYXRlZElkZW50aWZpZXI+CiAgICA8cmVsYXRlZElkZW50aWZpZXIgcmVsYXRpb25UeXBlPSJJc0NpdGVkQnkiIHJlbGF0ZWRJZGVudGlmaWVyVHlwZT0iRE9JIj5odHRwczovL2RvaS5vcmcvMTAuMTEyNi9zY2lhZHYuYWVkODg0NjwvcmVsYXRlZElkZW50aWZpZXI+CiAgPC9yZWxhdGVkSWRlbnRpZmllcnM+CiAgPHNpemVzPgogICAgPHNpemU+MzEyMDIxNTA1IGJ5dGVzPC9zaXplPgogIDwvc2l6ZXM+CiAgPHZlcnNpb24+NDwvdmVyc2lvbj4KICA8cmlnaHRzTGlzdD4KICAgIDxyaWdodHMgcmlnaHRzVVJJPSJodHRwczovL3NwZHgub3JnL2xpY2Vuc2VzL0NDMC0xLjAuaHRtbCI+Q3JlYXRpdmUgQ29tbW9ucyBaZXJvIHYxLjAgVW5pdmVyc2FsPC9yaWdodHM+CiAgPC9yaWdodHNMaXN0PgogIDxkZXNjcmlwdGlvbnM+CiAgICA8ZGVzY3JpcHRpb24gZGVzY3JpcHRpb25UeXBlPSJBYnN0cmFjdCI+CiAgICAgIEZyb20gYXRvbWljIGNyeXN0YWxzIHRvIG1hY3Jvc2NvcGljIG1hdGVyaWFsIHN0cnVjdHVyZXMsIHR3aXN0ZWQgYmlsYXllcgogICAgICBzeXN0ZW1zIGhhdmUgZW1lcmdlZCBhcyBhIHByb21pc2luZyByb3V0ZSB0byBjb250cm9sIHdhdmUgcGhlbm9tZW5hLiBJbgogICAgICBmZXctbGF5ZXIgdmFuIGRlciBXYWFscyAodmRXKSBtYXRlcmlhbHMsIGhvd2V2ZXIsIHRoZSBpbnRyaW5zaWNhbGx5IHdlYWsKICAgICAgaW50ZXJsYXllciBjb3VwbGluZyB0eXBpY2FsbHkgZGVtYW5kcyBmaW5lIGNvbnRyb2wgb2Ygc21hbGwgdHdpc3QgYW5nbGVzCiAgICAgIHRvIHJlYWNoIG1hZ2ljLWFuZ2xlIGNvbmRpdGlvbnMuIEhlcmUsIHdlIHNob3cgdGhhdCBvbmUtZGltZW5zaW9uYWwKICAgICAgcGhvdG9uaWMgY3J5c3RhbCBiaWxheWVycyBjYW4gb3ZlcmNvbWUgdGhpcyBsaW1pdGF0aW9uIGJ5IGFjY2Vzc2luZyBhCiAgICAgIHJlZ2ltZSBvZiBzdHJvbmcgaW50ZXJsYXllciBjb3VwbGluZ+KAlGNvbXBhcmFibGUgdG8gaW50cmFsYXllciBjb3VwbGluZy4KICAgICAgVGhpcyBzdHJvbmcgY291cGxpbmcgZW5hYmxlcyBmbGF0LWJhbmQgZm9ybWF0aW9uIG92ZXIgYSBicm9hZCBhbmd1bGFyCiAgICAgIHJhbmdlIGV2ZW4gYXQgbGFyZ2UgdHdpc3QgYW5nbGVzLiBXZSBleHBlcmltZW50YWxseSByZWFsaXplIHRoaXMgcmVnaW1lIGJ5CiAgICAgIHN0YWNraW5nIFdT4oKCIGdyYXRpbmdzIHZpYSBhIHR3by1zdGVwIGxpdGhvZ3JhcGh5IG1ldGhvZCwgeWllbGRpbmcKICAgICAgdWx0cmEtd2lkZSBjaGlyYWwgZmxhdC1iYW5kIGNhc2NhZGVzIGluIG1hZ2ljLWFuZ2xlIHR3aXN0ZWQgYmlsYXllcgogICAgICBncmF0aW5ncy4gT3VyIHdvcmsgbm90IG9ubHkgcHJvdmlkZXMgYSBwbGF0Zm9ybSBmb3IgZGVzaWduaW5nIHBob3RvbmljCiAgICAgIGFwcGxpY2F0aW9ucyB3aXRoIGEgdHVuYWJsZSBsb2NhbGl6YXRpb24gYnV0IGFsc28gZXhwbG9yZXMgYSBuZXcgcmVnaW1lIG9mCiAgICAgIHBoeXNpY3MgdGhhdCBpcyB1bmF0dGFpbmFibGUgaW4gY29udmVudGlvbmFsIHNvbGlkLXN0YXRlLWJhc2VkIG1vaXLDqQogICAgICBzeXN0ZW1zLgogICAgPC9kZXNjcmlwdGlvbj4KICAgIDxkZXNjcmlwdGlvbiBkZXNjcmlwdGlvblR5cGU9IlRlY2huaWNhbEluZm8iPgogICAgICAjIERhdGEgZnJvbTogU3Ryb25nIGludGVybGF5ZXIgY291cGxpbmcgYW5kIGNoaXJhbCBmbGF0LWJhbmQgY2FzY2FkZXMgaW4KICAgICAgdHdpc3RlZCBiaWxheWVyIGdyYXRpbmdzIERhdGFzZXQgRE9JOgogICAgICBbMTAuNTA2MS9kcnlhZC5meHBudngxNnZdKGh0dHBzOi8vZG9pLm9yZy8xMC41MDYxL2RyeWFkLmZ4cG52eDE2dikgIyMKICAgICAgRGVzY3JpcHRpb24gb2YgdGhlIGRhdGEgYW5kIGZpbGUgc3RydWN0dXJlIFRoaXMgZGF0YXNldDrCoFRCR19kYXRhX3NldC56aXAKICAgICAgY29udGFpbnMgc2ltdWxhdGVkIGFuZ2xlLXJlc29sdmVkIHRyYW5zbWl0dGFuY2UgYW5kIGNpcmN1bGFyLWRpY2hyb2lzbQogICAgICBzcGVjdHJhLCBwaG90b25pYyBiYW5kLXN0cnVjdHVyZSBjYWxjdWxhdGlvbnMsIG5lYXItZmllbGQgZWxlY3RyaWMKICAgICAgZGlzcGxhY2VtZW50IGZpZWxkIHByb2ZpbGVzLCBhbmQgbWFnaWMtYW5nbGUvZmxhdC1iYW5kLXdpZHRoIHBhcmFtZXRlcgogICAgICBzd2VlcHMgZm9yIHR3aXN0ZWQgYmlsYXllciBwaG90b25pYyBncmF0aW5ncywgdG9nZXRoZXIgd2l0aCBzdXBwbGVtZW50YXJ5CiAgICAgIHN1YnN0cmF0ZS1tYXRlcmlhbCBjb21wYXJpc29ucyBhbmQgY29tcGxleCByZWZyYWN0aXZlIGluZGV4IGRhdGEuIEFsbCBkYXRhCiAgICAgIHdlcmUgZ2VuZXJhdGVkIGJ5IHJpZ29yb3VzIGNvdXBsZWQtd2F2ZSBhbmFseXNpcyAoUkNXQSkgYW5kCiAgICAgIGZpbml0ZS1kaWZmZXJlbmNlIHRpbWUtZG9tYWluIChGRFREKSBzaW11bGF0aW9uIGFuZCBhcmUgc3RvcmVkIGluIEV4Y2VsCiAgICAgIGZvcm1hdCwgd2l0aCBvbmUgZmlsZSBwZXIgbWFpbi10ZXh0IG9yIHN1cHBsZW1lbnRhcnkgZmlndXJlIGFuZCBvbmUgc2hlZXQKICAgICAgcGVyIHBhbmVsIG9yIHBhcmFtZXRlciB2YWx1ZS4gIyMjIEZpbGVzIGFuZCB2YXJpYWJsZXMgIyMjIyBGaWxlOgogICAgICBGaWcxX0RhdGEueGxzeCAqKkRlc2NyaXB0aW9uOioqwqBUaGlzIGZpbGUgcHJvdmlkZXMgYW5nbGUtcmVzb2x2ZWQKICAgICAgdHJhbnNtaXR0YW5jZSBzcGVjdHJhIGFuZCBuZWFyLWZpZWxkIGVsZWN0cmljIGRpc3BsYWNlbWVudCBmaWVsZCBwcm9maWxlcwogICAgICBmb3IgdGhlIHR3aXN0ZWQgYmlsYXllciBncmF0aW5nLsKgIkZpZzFfY18xMGRlZ3JlZSIsCiAgICAgICJGaWcxX2NfMzVkZWdyZWUiLCAiRmlnMV9jXzQ0ZGVncmVlIiwgYW5kCiAgICAgICJGaWcxX2NfNjRkZWdyZWUiIHByb3ZpZGUgdHJhbnNtaXR0YW5jZSBhcyBhIGZ1bmN0aW9uIG9mCiAgICAgIGluY2lkZW5jZSBhbmdsZSBhbmQgcGhvdG9uIGVuZXJneSBhdCB0d2lzdCBhbmdsZXMgb2YgMTDCsCwgMzXCsCwgNDTCsCwgYW5kCiAgICAgIDY0wrAuwqBTaGVldHMgIkZpZzFfZF80NGRlZ3JlZV94eV9ib3R0b20iLAogICAgICAiRmlnMV9kXzQ0ZGVncmVlX3h5X3RvcCIsIGFuZCAiRmlnXzFkXzQ0ZGVncmVlX3h6IgogICAgICBwcm92aWRlIHRoZSBlbGVjdHJpYyBkaXNwbGFjZW1lbnQgZmllbGQgZGlzdHJpYnV0aW9uIGluIHRoZSB4eSAoYm90dG9tIGFuZAogICAgICB0b3AgbGF5ZXIpIGFuZCB4eiBjcm9zcy1zZWN0aW9ucyBhdCBhIDQ0wrAgdHdpc3QgYW5nbGUuIFNoZWV0cwogICAgICAiRmlnMV9lXzY0ZGVncmVlX3h5X2JvdHRvbSIsICJGaWcxX2VfNjRkZWdyZWVfeHlfdG9wIiwKICAgICAgYW5kICJGaWdfMWVfNjRkZWdyZWVfeHoiIHByb3ZpZGUgdGhlIGNvcnJlc3BvbmRpbmcgZmllbGQKICAgICAgZGlzdHJpYnV0aW9ucyBhdCBhIDY0wrAgdHdpc3QgYW5nbGUuICoqVmFyaWFibGVzKiogKiBBbmdsZSAoZGVncmVlKSDigJMKICAgICAgaW5jaWRlbmNlIGFuZ2xlICogRW5lcmd5IChlVikg4oCTIHBob3RvbiBlbmVyZ3kgKiBUcmFuc21pdHRhbmNlICogWCwgWSwgWgogICAgICAobm0pIOKAkyBzcGF0aWFsIGNvb3JkaW5hdGVzICogRWxlY3RyaWMgZGlzcGxhY2VtZW50IGZpZWxkIChhLnUuKSAjIyMjIEZpbGU6CiAgICAgIEZpZzJfRGF0YS54bHN4ICoqRGVzY3JpcHRpb246KirCoFRoaXMgZmlsZSBwcm92aWRlcyBzaW11bGF0ZWQgcGhvdG9uaWMgYmFuZAogICAgICBzdHJ1Y3R1cmVzIG9mIHRoZSB0d2lzdGVkIGJpbGF5ZXIgZ3JhdGluZy4gU2hlZXRzCiAgICAgICJGaWcyX2NfVW5jb3VwbGVkIiBhbmQgIkZpZzJfY19Db3VwbGVkIiBwcm92aWRlIHRoZQogICAgICBrX3jigJNlbmVyZ3kgZGlzcGVyc2lvbiBvZiB0aGUgdW5jb3VwbGVkIGFuZCBjb3VwbGVkIGJhbmRzIGF0IG9uZSB0d2lzdAogICAgICBhbmdsZS4gU2hlZXRzICJGaWcyX2RfVW5jb3VwbGVkIiBhbmQgIkZpZzJfZF9Db3VwbGVkIgogICAgICBwcm92aWRlIHRoZSBjb3JyZXNwb25kaW5nIHVuY291cGxlZCBhbmQgY291cGxlZCBiYW5kcyBhdCBhIHNlY29uZCB0d2lzdAogICAgICBhbmdsZS4gU2hlZXQgIkZpZ18yX2UiIHByb3ZpZGVzIHRoZSB0d2lzdC1hbmdsZSBkZXBlbmRlbmNlIG9mCiAgICAgIHRoZSBiYW5kIHNlcGFyYXRpb24gcGFyYW1ldGVyIChzKSBmb3IgdGhlIDFzdCBhbmQgMm5kIGJhbmRzLiBTaGVldAogICAgICAiRmlnXzJfZiIgcHJvdmlkZXMgdGhlIHR3aXN0LWFuZ2xlIGRlcGVuZGVuY2Ugb2YgdGhlIGZsYXQtYmFuZAogICAgICB3aWR0aCBmb3IgdGhlIDFzdCBhbmQgMm5kIGJhbmRzLiAqKlZhcmlhYmxlcyoqICoga194wqDigJMgaW4tcGxhbmUgd2F2ZXZlY3RvcgogICAgICBjb21wb25lbnQgKiBFbmVyZ3kgKGVWKSAqIHPCoOKAkyBEaW1lbnNpb25sZXNzIHNjYWxpbmcgZmFjdG9yIGZvciBlZmZlY3RpdmUKICAgICAgY291cGxpbmcgc3RyZW5ndGggKiBUd2lzdCBhbmdsZSAoZGVncmVlKSAqIEZsYXQgYmFuZCB3aWR0aCAjIyMjIEZpbGU6CiAgICAgIEZpZzNfRGF0YS54bHN4ICoqRGVzY3JpcHRpb246KirCoFRoaXMgZmlsZSBwcm92aWRlcyBhbmdsZS1yZXNvbHZlZAogICAgICB0cmFuc21pdHRhbmNlIHNwZWN0cmEgb2YgdGhlIHR3aXN0ZWQgYmlsYXllciBncmF0aW5nIGF0IGRpZmZlcmVudCB0d2lzdAogICAgICBhbmdsZXMuIFNoZWV0cyAiRmlnM19kXzM4ZGVncmVlIiB0aHJvdWdoCiAgICAgICJGaWczX2RfNDRkZWdyZWUiIHByb3ZpZGUgdHJhbnNtaXR0YW5jZSBtYXBzIGF0IHR3aXN0IGFuZ2xlcyBvZgogICAgICAzOMKwLCA0MMKwLCA0MsKwLCBhbmQgNDTCsC4gU2hlZXRzICJGaWczX2VfNTdkZWdyZWUiIHRocm91Z2gKICAgICAgIkZpZzNfZV82NmRlZ3JlZSIgcHJvdmlkZSB0cmFuc21pdHRhbmNlIG1hcHMgYXQgdHdpc3QgYW5nbGVzIG9mCiAgICAgIDU3wrAsIDYwwrAsIDYzwrAsIGFuZCA2NsKwLiAqKlZhcmlhYmxlcyoqICogQW5nbGUgKGRlZ3JlZSkg4oCTIGluY2lkZW5jZSBhbmdsZSAqCiAgICAgIEVuZXJneSAoZVYpIOKAkyBwaG90b24gZW5lcmd5ICogVHJhbnNtaXR0YW5jZSAjIyMjIEZpbGU6IEZpZzRfRGF0YS54bHN4CiAgICAgICoqRGVzY3JpcHRpb246KirCoFRoaXMgZmlsZSBwcm92aWRlcyBjaXJjdWxhcmx5IHBvbGFyaXplZCB0cmFuc21pdHRhbmNlIGFuZAogICAgICBjaXJjdWxhciBkaWNocm9pc20gKENEKSBkYXRhLiBTaGVldCAiRmlnNF9hIiBwcm92aWRlcyB0aGUgQ0QgbWFwCiAgICAgIGFzIGEgZnVuY3Rpb24gb2YgaW5jaWRlbmNlIGFuZ2xlIGFuZCBlbmVyZ3kuIFNoZWV0cwogICAgICAiRmlnNF9iX2xlZnQiIGFuZCAiRmlnNF9iX3JpZ2h0IiBwcm92aWRlIHRoZQogICAgICBjb3JyZXNwb25kaW5nIGxlZnQtIGFuZCByaWdodC1oYW5kZWQgY2lyY3VsYXJseSBwb2xhcml6ZWQgdHJhbnNtaXR0YW5jZQogICAgICBtYXBzLiBTaGVldCAiRmlnNF9jIiBwcm92aWRlcyB0aGUgZm91cgogICAgICBjaXJjdWxhci1wb2xhcml6YXRpb24tcmVzb2x2ZWQgdHJhbnNtaXR0YW5jZSBzcGVjdHJhIChUX0xMLCBUX0xSLCBUX1JSLAogICAgICBUX1JMKSBhdCBhIGZpeGVkIGluY2lkZW5jZSBhbmdsZS4gU2hlZXQgIkZpZzRfZCIgcHJvdmlkZXMgdGhlCiAgICAgIHNhbWUgZm91ciB0cmFuc21pdHRhbmNlIHNwZWN0cmEgdW5kZXIgYSBkaWZmZXJlbnQgY29uZGl0aW9uLiAqKlZhcmlhYmxlcyoqCiAgICAgICogQW5nbGUgKGRlZ3JlZSkg4oCTIGluY2lkZW5jZSBhbmdsZSAqIEVuZXJneSAoZVYpIOKAkyBwaG90b24gZW5lcmd5ICogQ0TCoOKAkwogICAgICBDaXJjdWxhciBkaWNocm9pc20gKiBUcmFuc21pdHRhbmNlICogVF9MTCwgVF9MUiwgVF9SUiwgVF9STCDigJMKICAgICAgY2lyY3VsYXItcG9sYXJpemF0aW9uLXJlc29sdmVkIHRyYW5zbWl0dGFuY2UgIyMjIyBGaWxlOiBGaWc0X0VfTENQLnR4dAogICAgICAqKkRlc2NyaXB0aW9uOioqwqBUaGlzIGZpbGUgcHJvdmlkZXMgdGhlIGVsZWN0cmljIGZpZWxkIGVuZXJneSBkZW5zaXR5CiAgICAgIGRpc3RyaWJ1dGlvbiBpbiB0aGUgeHkgcGxhbmUgZm9yIHRoZSBsZWZ0IGNpcmN1bGFyIHBvbGFyaXphdGlvbgogICAgICBleGNpdGF0aW9uLsKgICoqVmFyaWFibGVzKiogKiBYLCBZLCBaIChubSkg4oCTIHNwYXRpYWwgY29vcmRpbmF0ZXMgKiBFbGVjdHJpYwogICAgICBkaXNwbGFjZW1lbnQgZmllbGQgKGEudS4pICMjIyMgRmlsZTogRmlnNF9FX1JDUC50eHQgKipEZXNjcmlwdGlvbjoqKsKgVGhpcwogICAgICBmaWxlIHByb3ZpZGVzIHRoZSBlbGVjdHJpYyBmaWVsZCBlbmVyZ3kgZGVuc2l0eSBkaXN0cmlidXRpb24gaW4gdGhlIHh5CiAgICAgIHBsYW5lIGZvciB0aGUgcmlnaHQgY2lyY3VsYXIgcG9sYXJpemF0aW9uIGV4Y2l0YXRpb24uwqAgKipWYXJpYWJsZXMqKiAqIFgsCiAgICAgIFksIFogKG5tKSDigJMgc3BhdGlhbCBjb29yZGluYXRlcyAqIEVsZWN0cmljIGRpc3BsYWNlbWVudCBmaWVsZCAoYS51LikgIyMjIwogICAgICBGaWxlOiBGaWdTM19EYXRhLnhsc3ggKipEZXNjcmlwdGlvbjoqKsKgVGhpcyBmaWxlIHByb3ZpZGVzIGNhbGN1bGF0ZWQKICAgICAgYW5nbGUtcmVzb2x2ZWQgdHJhbnNtaXR0YW5jZSBzcGVjdHJhIGF0IHR3aXN0IGFuZ2xlcyBvZiA0NMKwLCA0NcKwLCA0NsKwLAogICAgICA0N8KwLCA0OMKwLCA2McKwLCA2MsKwLCA2M8KwLCA2NMKwLCBhbmQgNjXCsCwgb25lIHNoZWV0IHBlciBhbmdsZS4gKipWYXJpYWJsZXMqKgogICAgICAqIEFuZ2xlIChkZWdyZWUpIOKAkyBpbmNpZGVuY2UgYW5nbGUgKiBFbmVyZ3kgKGVWKSDigJMgcGhvdG9uIGVuZXJneSAqCiAgICAgIFRyYW5zbWl0dGFuY2UgIyMjIyBGaWxlOiBGaWdTNF9EYXRhLnhsc3ggKipEZXNjcmlwdGlvbjoqKsKgVGhpcyBmaWxlCiAgICAgIHByb3ZpZGVzIHRoZSBtYWdpYyBhbmdsZSBhbmQgZmxhdC1iYW5kIHdpZHRoIGFzIGEgZnVuY3Rpb24gb2YgZ3JhdGluZwogICAgICBsYXllciB0aGlja25lc3MuICoqVmFyaWFibGVzKiogKiBUaGlja25lc3MgKG5tKSAqIE1hZ2ljIGFuZ2xlIChEZWdyZWUpICoKICAgICAgRmxhdC1iYW5kIHdpZHRoIChEZWdyZWUpICMjIyMgRmlsZTogRmlnUzVfRGF0YS54bHN4ICoqRGVzY3JpcHRpb246KirCoFRoaXMKICAgICAgZmlsZSBwcm92aWRlcyB0aGUgbWFnaWMgYW5nbGUgYW5kIGZsYXQtYmFuZCB3aWR0aCBhcyBhIGZ1bmN0aW9uIG9mIGdyYXRpbmcKICAgICAgcGVyaW9kLiAqKlZhcmlhYmxlcyoqICogUGVyaW9kIChubSkgKiBNYWdpYyBhbmdsZSAoRGVncmVlKSAqIEZsYXQtYmFuZAogICAgICB3aWR0aCAoRGVncmVlKSAjIyMjIEZpbGU6IEZpZ1M2X0RhdGEueGxzeCAqKkRlc2NyaXB0aW9uOioqwqBUaGlzIGZpbGUKICAgICAgcHJvdmlkZXMgYW5nbGUtcmVzb2x2ZWQgdHJhbnNtaXR0YW5jZSBzcGVjdHJhIGF0IHR3aXN0IGFuZ2xlcyBvZiAxNcKwLCAyMMKwLAogICAgICAzMMKwLCA0NcKwLCA2MMKwLCBhbmQgNzDCsCwgb25lIHNoZWV0IHBlciBhbmdsZS4gKipWYXJpYWJsZXMqKiAqIEFuZ2xlCiAgICAgIChkZWdyZWUpIOKAkyBpbmNpZGVuY2UgYW5nbGUgKiBFbmVyZ3kgKGVWKSDigJMgcGhvdG9uIGVuZXJneSAqIFRyYW5zbWl0dGFuY2UKICAgICAgIyMjIyBGaWxlOiBGaWdTN19EYXRhLnhsc3ggKipEZXNjcmlwdGlvbjoqKsKgVGhpcyBmaWxlIHByb3ZpZGVzIHVuY291cGxlZAogICAgICBhbmQgY291cGxlZCBwaG90b25pYyBiYW5kIHN0cnVjdHVyZXMgYXQgdHdpc3QgYW5nbGVzIG9mIDQwwrAsIDQ1wrAsIDUwwrAsCiAgICAgIDU1wrAsIDYwwrAsIGFuZCA2NcKwLCB3aXRoIHNlcGFyYXRlICJfVW5jb3VwbGVkIiBhbmQKICAgICAgIl9Db3VwbGVkIiBzaGVldHMgZm9yIGVhY2ggYW5nbGUuICoqVmFyaWFibGVzKiogKiBCYW5kIGluZGV4ICoKICAgICAga194wqBpbi1wbGFuZSB3YXZldmVjdG9yIGNvbXBvbmVudCAqIEVuZXJneSAoZVYpICMjIyMgRmlsZTogRmlnUzhfRGF0YS54bHN4CiAgICAgICoqRGVzY3JpcHRpb246KirCoFRoaXMgZmlsZSBwcm92aWRlcyB1bmNvdXBsZWQgYW5kIGNvdXBsZWQgcGhvdG9uaWMgYmFuZAogICAgICBzdHJ1Y3R1cmVzIGF0IHR3aXN0IGFuZ2xlcyBvZiA0M8KwLCA0NC4zwrAsIDQ3LjPCsCwgNDnCsCwgNTHCsCwgYW5kIDUzwrAsIHdpdGgKICAgICAgc2VwYXJhdGUgIl91bmNvdXBsZWQiIGFuZCAiX2NvdXBsZWQiIHNoZWV0cyBmb3IgZWFjaAogICAgICBhbmdsZS4gKipWYXJpYWJsZXMqKiAqIEJhbmQgaW5kZXggKiBrX3jCoOKAkyBpbi1wbGFuZSB3YXZldmVjdG9yIGNvbXBvbmVudCAqCiAgICAgIEVuZXJneSAoZVYpICMjIyMgRmlsZTogRmlnUzlfRGF0YS54bHN4ICoqRGVzY3JpcHRpb246KirCoFRoaXMgZmlsZSBwcm92aWRlcwogICAgICB1bmNvdXBsZWQgYW5kIGNvdXBsZWQgcGhvdG9uaWMgYmFuZCBzdHJ1Y3R1cmVzIGF0IHR3aXN0IGFuZ2xlcyBvZiA2MC41wrAsCiAgICAgIDYxwrAsIDYxLjXCsCwgNjLCsCwgNjMuM8KwLCBhbmQgNjTCsCwgd2l0aCBzZXBhcmF0ZQogICAgICAiX1VuY291cGxlZC9fdW5jb3VwbGVkIiBhbmQgIl9jb3VwbGVkIiBzaGVldHMgZm9yIGVhY2gKICAgICAgYW5nbGUuICoqVmFyaWFibGVzKiogKiBCYW5kIGluZGV4ICoga194wqDigJMgaW4tcGxhbmUgd2F2ZXZlY3RvciBjb21wb25lbnQgKgogICAgICBFbmVyZ3kgKGVWKSAjIyMjIEZpbGU6IEZpZ1MxMF9EYXRhLnhsc3ggKipEZXNjcmlwdGlvbjoqKsKgVGhpcyBmaWxlCiAgICAgIHByb3ZpZGVzIGFuZ2xlLXJlc29sdmVkIHRyYW5zbWl0dGFuY2Ugc3BlY3RyYSBmb3IgdHdvIGdyYXRpbmcKICAgICAgY29uZmlndXJhdGlvbnMgKCJNMSIsICJNMiIpIGF0IHNwYWNlciB0aGlja25lc3NlcyBvZiAwCiAgICAgIG5tLCA0MCBubSwgYW5kIDgwIG5tLiAqKlZhcmlhYmxlcyoqICogQW5nbGUgKGRlZ3JlZSkg4oCTIGluY2lkZW5jZSBhbmdsZSAqCiAgICAgIEVuZXJneSAoZVYpIOKAkyBwaG90b24gZW5lcmd5ICogVHJhbnNtaXR0YW5jZSAjIyMjIEZpbGU6IEZpZ1MxMV9EYXRhLnhsc3gKICAgICAgKipEZXNjcmlwdGlvbjoqKsKgVGhpcyBmaWxlIHByb3ZpZGVzIHRoZSBtYWdpYyBhbmdsZSBhbmQgZmxhdC1iYW5kIHdpZHRoIGFzCiAgICAgIGEgZnVuY3Rpb24gb2YgaW50ZXJsYXllciBkaXN0YW5jZS4gU2hlZXRzICJGaWdTMTFfYSIgYW5kCiAgICAgICJGaWdTMTFfYiIgY29ycmVzcG9uZCB0byB0d28gZGlmZmVyZW50IGdyYXRpbmcgY29uZmlndXJhdGlvbnMuCiAgICAgICoqVmFyaWFibGVzKiogKiBJbnRlcmxheWVyIGRpc3RhbmNlIChubSkgKiBNYWdpYyBhbmdsZSAoRGVncmVlKSAqCiAgICAgIEZsYXQtYmFuZCB3aWR0aCAoRGVncmVlKSAjIyMjIEZpbGU6IEZpZ1MxMl9EYXRhLnhsc3ggKipEZXNjcmlwdGlvbjoqKsKgVGhpcwogICAgICBmaWxlIHByb3ZpZGVzIGNpcmN1bGFybHkgcG9sYXJpemVkIHRyYW5zbWl0dGFuY2UgYW5kIENEIGRhdGEuIFNoZWV0CiAgICAgICJGaWdTMTJfQSIgcHJvdmlkZXMgdGhlIENEIG1hcCBhcyBhIGZ1bmN0aW9uIG9mIGluY2lkZW5jZSBhbmdsZQogICAgICBhbmQgZW5lcmd5LiBTaGVldHMgIkZpZ1MxMl9CX1RSUiIsICJGaWdTMTJfQl9UUkwiLAogICAgICAiRmlnUzEyX0JfVExSIiwgYW5kICJGaWdTMTJfQl9UTEwiIHByb3ZpZGUgdGhlCiAgICAgIGNvcnJlc3BvbmRpbmcgY2lyY3VsYXItcG9sYXJpemF0aW9uLXJlc29sdmVkIHRyYW5zbWl0dGFuY2UgbWFwcy4gU2hlZXRzCiAgICAgICJGaWdTMTJfQyIgYW5kICJGaWdTMTJfRCIgcHJvdmlkZSB0aGUgZm91cgogICAgICBjaXJjdWxhci1wb2xhcml6YXRpb24tcmVzb2x2ZWQgdHJhbnNtaXR0YW5jZSBzcGVjdHJhIChUX1JSLCBUX0xMLCBUX0xSLAogICAgICBUX1JMKSBhdCB0d28gZml4ZWQgaW5jaWRlbmNlIGFuZ2xlcy4gKipWYXJpYWJsZXMqKiAqIEFuZ2xlIChkZWdyZWUpIOKAkwogICAgICBpbmNpZGVuY2UgYW5nbGUgKiBFbmVyZ3kgKGVWKSDigJMgcGhvdG9uIGVuZXJneSAqIENEwqDigJMgQ2lyY3VsYXIgZGljaHJvaXNtICoKICAgICAgVHJhbnNtaXR0YW5jZSAqIFRfTEwsIFRfTFIsIFRfUlIsIFRfUkwg4oCTIGNpcmN1bGFyLXBvbGFyaXphdGlvbi1yZXNvbHZlZAogICAgICB0cmFuc21pdHRhbmNlICMjIyMgRmlsZTogRmlnUzE1X0RhdGEueGxzeCAqKkRlc2NyaXB0aW9uOioqwqBUaGlzIGZpbGUKICAgICAgcHJvdmlkZXMgYW5nbGUtcmVzb2x2ZWQgdHJhbnNtaXR0YW5jZSBzcGVjdHJhIGZvciBncmF0aW5ncyBvbiB0aHJlZQogICAgICBkaWZmZXJlbnQgc3Vic3RyYXRlIG1hdGVyaWFsczogR2FQLCBoQk4sIGFuZCBXUzIuICoqVmFyaWFibGVzKiogKiBBbmdsZQogICAgICAoZGVncmVlKSDigJMgaW5jaWRlbmNlIGFuZ2xlICogRW5lcmd5IChlVikg4oCTIHBob3RvbiBlbmVyZ3kgKiBUcmFuc21pdHRhbmNlCiAgICAgICMjIyMgRmlsZTogRmlnUzE2X0RhdGEueGxzeCAqKkRlc2NyaXB0aW9uOioqwqBUaGlzIGZpbGUgcHJvdmlkZXMgdGhlCiAgICAgIGNvbXBsZXggcmVmcmFjdGl2ZSBpbmRleCBvZiB0aGUgZ3JhdGluZyBtYXRlcmlhbCBXUzIgYXMgYSBmdW5jdGlvbiBvZgogICAgICB3YXZlbGVuZ3RoLiAqKlZhcmlhYmxlcyoqICogV2F2ZWxlbmd0aCAobm0pICogUmVhbCBpbmRleCAqIEltYWdpbmFyeSBpbmRleAogICAgICAjIyMjIEZpbGU6IEZpZ1MxOF9EYXRhLnhsc3ggKipEZXNjcmlwdGlvbjoqKsKgVGhpcyBmaWxlIHByb3ZpZGVzCiAgICAgIGFuZ2xlLXJlc29sdmVkIHRyYW5zbWl0dGFuY2Ugc3BlY3RyYSBmb3IgdGhlIHktZGlyZWN0aW9uIGF0IHR3aXN0IGFuZ2xlcwogICAgICBmcm9tIDEwwrAgdG8gNzDCsCAoMTDCsCwgMjDCsCwgMjXCsCwgMzDCsCwgMzXCsCwgNDDCsCwgNDXCsCwgNTDCsCwgNTXCsCwgNjDCsCwgNjXCsCwKICAgICAgNzDCsCksIG9uZSBzaGVldCBwZXIgYW5nbGUuICoqVmFyaWFibGVzKiogKiBBbmdsZSAoZGVncmVlKSDigJMgaW5jaWRlbmNlCiAgICAgIGFuZ2xlICogRW5lcmd5IChlVikg4oCTIHBob3RvbiBlbmVyZ3kgKiBUcmFuc21pdHRhbmNlICMjIENvZGUvU29mdHdhcmUgQW55CiAgICAgIHByb2dyYW0gdGhhdCB3aWxsIG9wZW4gYSBzcHJlYWRzaGVldCwgc3VjaCBhcyBNaWNyb3NvZnQgRXhjZWwgaXMKICAgICAgcmVjb21tZW5kZWQuCiAgICA8L2Rlc2NyaXB0aW9uPgogIDwvZGVzY3JpcHRpb25zPgo8L3Jlc291cmNlPg==","url":"https://datadryad.org/dataset/doi:10.5061/dryad.fxpnvx16v","contentUrl":null,"metadataVersion":1,"schemaVersion":"http://datacite.org/schema/kernel-4","source":"mds","isActive":true,"state":"findable","reason":null,"viewCount":13,"viewsOverTime":[{"yearMonth":"2026-08","total":9},{"yearMonth":"2026-09","total":4}],"downloadCount":1,"downloadsOverTime":[{"yearMonth":"2026-08","total":0},{"yearMonth":"2026-09","total":1}],"referenceCount":0,"citationCount":2,"citationsOverTime":[{"year":"2026","total":2}],"partCount":0,"partOfCount":0,"versionCount":0,"versionOfCount":0,"created":"2026-07-28T06:16:52.000Z","registered":"2026-07-28T06:16:53.000Z","published":"2026","updated":"2026-09-10T12:28:39.000Z"},"relationships":{"client":{"data":{"id":"dryad.dryad","type":"clients"}},"provider":{"data":{"id":"dryad","type":"providers"}},"media":{"data":{"id":"10.5061/dryad.fxpnvx16v","type":"media"}},"references":{"data":[]},"citations":{"data":[{"id":"10.1126/sciadv.aed8846","type":"dois"},{"id":"10.48550/arxiv.2510.07381","type":"dois"}]},"parts":{"data":[]},"partOf":{"data":[]},"versions":{"data":[]},"versionOf":{"data":[]}}}}