mirror of
https://github.com/DOI-DO/j40-cejst-2.git
synced 2025-02-23 10:04:18 -08:00
1 line
No EOL
50 KiB
JavaScript
1 line
No EOL
50 KiB
JavaScript
(self.webpackChunkjustice40_tool=self.webpackChunkjustice40_tool||[]).push([[647],{1095:function(__unused_webpack_module,__webpack_exports__,__webpack_require__){"use strict";eval('// ESM COMPAT FLAG\n__webpack_require__.r(__webpack_exports__);\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n "default": function() { return /* binding */ methodology; }\n});\n\n// EXTERNAL MODULE: ./node_modules/react/index.js\nvar react = __webpack_require__(7294);\n// EXTERNAL MODULE: ./node_modules/@trussworks/react-uswds/lib/index.js\nvar lib = __webpack_require__(2593);\n// EXTERNAL MODULE: ./node_modules/gatsby-plugin-intl/index.js\nvar gatsby_plugin_intl = __webpack_require__(9703);\n// EXTERNAL MODULE: ./node_modules/react-intl/lib/index.js + 8 modules\nvar react_intl_lib = __webpack_require__(4424);\n// EXTERNAL MODULE: ./src/components/AlertWrapper/index.tsx + 1 modules\nvar AlertWrapper = __webpack_require__(6780);\n;// CONCATENATED MODULE: ./src/components/DatasetCard/datasetCard.module.scss\n// extracted by mini-css-extract-plugin\nvar datasetCard = "datasetCard-module--datasetCard--26okZ";\nvar datasetCardIndicator = "datasetCard-module--datasetCardIndicator--14lIn";\nvar datasetCardWhatIsIt = "datasetCard-module--datasetCardWhatIsIt--2J87w";\nvar datasetCardList = "datasetCard-module--datasetCardList--Ok3_o";\nvar datasetCardListItem = "datasetCard-module--datasetCardListItem--rMDxc";\nvar datasetCardDescription = "datasetCard-module--datasetCardDescription--2agib";\nvar datasetCardLabels = "datasetCard-module--datasetCardLabels--3jLC0";\n;// CONCATENATED MODULE: ./src/components/DatasetCard/index.tsx\nvar DatasetCard=function DatasetCard(_ref){var datasetCardProps=_ref.datasetCardProps;var intl=(0,gatsby_plugin_intl.useIntl)();var messages=(0,react_intl_lib/* defineMessages */.vU)({whatIsIt:{id:\'datasetCard.whatIsIt\',defaultMessage:\'What is it?\',description:\'label associated with explaining the card\'},dataResolution:{id:\'datasetCard.dataResolution\',defaultMessage:\'Data resolution: \',description:\'label associated with explaining the card\'},dataSource:{id:\'datasetCard.dataSource\',defaultMessage:\'Data source: \',description:\'label associated with explaining the card\'},dataDateRange:{id:\'datasetCard.dataDateRange\',defaultMessage:\'Data date range: \',description:\'label associated with explaining the card\'}});return/*#__PURE__*/react.createElement("div",{className:datasetCard},/*#__PURE__*/react.createElement("h3",{className:datasetCardIndicator},datasetCardProps.indicator),/*#__PURE__*/react.createElement("div",{className:datasetCardWhatIsIt},intl.formatMessage(messages.whatIsIt)),/*#__PURE__*/react.createElement("div",{className:datasetCardDescription},datasetCardProps.description),/*#__PURE__*/react.createElement("ul",{className:datasetCardList},/*#__PURE__*/react.createElement("li",{className:datasetCardListItem},/*#__PURE__*/react.createElement("span",{className:datasetCardLabels},intl.formatMessage(messages.dataResolution)),datasetCardProps.dataResolution),/*#__PURE__*/react.createElement("li",{className:datasetCardListItem},/*#__PURE__*/react.createElement("span",{className:datasetCardLabels},intl.formatMessage(messages.dataSource)),/*#__PURE__*/react.createElement("a",{href:datasetCardProps.dataSourceURL,target:\'_blank\',rel:"noreferrer"},datasetCardProps.dataSourceLabel)),/*#__PURE__*/react.createElement("li",{className:datasetCardListItem},/*#__PURE__*/react.createElement("span",{className:datasetCardLabels},intl.formatMessage(messages.dataDateRange)),datasetCardProps.dataDateRange)));};/* harmony default export */ var components_DatasetCard = (DatasetCard);\n;// CONCATENATED MODULE: ./src/components/DatasetContainer/dsContainer.module.scss\n// extracted by mini-css-extract-plugin\nvar datasetContainer = "dsContainer-module--datasetContainer--2_KuU";\nvar datasetContainerHeader = "dsContainer-module--datasetContainerHeader--2HV3A";\nvar datasetContainerSubTitle = "dsContainer-module--datasetContainerSubTitle--3fi8f";\nvar datasetCardsContainer = "dsContainer-module--datasetCardsContainer--129oj";\nvar j40AlertContainer = "dsContainer-module--j40AlertContainer--tiBoq";\n;// CONCATENATED MODULE: ./src/components/DatasetContainer/index.tsx\nvar cards=[{indicator:\'Poverty\',description:"Percent of a block group\'s population in households where the household \\n income is less than or equal to twice the federal \\"poverty level\\"",dataResolution:"Census block group",dataSourceLabel:"U.S. Census Bureau",dataSourceURL:"https://www.census.gov/",dataDateRange:"5-year estimates, 2015-2019"},{indicator:\'Education (less than high school)\',description:"Percent of people age 25 or older in a block group whose education is short of a high school diploma",dataResolution:"Census block group",dataSourceLabel:"U.S. Census Bureau",dataSourceURL:"https://www.census.gov/",dataDateRange:"5-year estimates, 2015-2019"},{indicator:\'Linguistic isolation\',description:"Percent of people in a block group living in linguistically \\n isolated households \\u2014 a linguistically isolated household is a household in \\n which all members aged 14 years and over speak a non-English language and also speak \\n English less than \\"very well\\" (i.e., have difficulty with English)",dataResolution:"Census block group",dataSourceLabel:"U.S. Census Bureau",dataSourceURL:"https://www.census.gov/",dataDateRange:"5-year estimates, 2015-2019"},{indicator:\'Unemployment rate\',description:"Unemployment rate (people who are unemployed divided by the total population of \\n people in the labor force over 16 years old)",dataResolution:"Census block group",dataSourceLabel:"U.S. Census Bureau",dataSourceURL:"https://www.census.gov/",dataDateRange:"5-year estimates, 2015-2019"},{indicator:\'Housing burden\',description:"Percent of households in a census tract that are both low income (making less\\n than 80% of the HUD Area Median Family Income) and severely burdened by housing costs \\n (paying greater than 30% of their income to housing costs)",dataResolution:"Census block group",dataSourceLabel:"U.S. Census Bureau",dataSourceURL:"https://www.census.gov/",dataDateRange:"5-year estimates, 2015-2019"}];var DatasetContainer=function DatasetContainer(){var intl=(0,gatsby_plugin_intl.useIntl)();var messages=(0,react_intl_lib/* defineMessages */.vU)({cumulativeScore:{id:\'datasetContainer.header.cumulativeScore\',defaultMessage:\'Datasets used in cumulative score\',description:\'section label of which datasets are used in cumulative score\'},subTitle:{id:\'datasetContainer.subTitle\',defaultMessage:\'The datasets come from a variety of sources and \'+\'were selected after considering relevance, availability, recency and quality.\',description:\'description of the dataset section\'}});return/*#__PURE__*/react.createElement("div",{className:datasetContainer+" desktop:grid-col"},/*#__PURE__*/react.createElement("div",{className:\'grid-container-desktop-lg\'},/*#__PURE__*/react.createElement("h1",{className:datasetContainerHeader},intl.formatMessage(messages.cumulativeScore)),/*#__PURE__*/react.createElement(AlertWrapper/* default */.Z,{showBetaAlert:false,showLimitedDataAlert:true}),/*#__PURE__*/react.createElement("p",{className:datasetContainerSubTitle},intl.formatMessage(messages.subTitle)),/*#__PURE__*/react.createElement("div",{className:datasetCardsContainer},cards.map(function(card){return/*#__PURE__*/react.createElement(components_DatasetCard,{key:card.indicator,datasetCardProps:card});}))));};/* harmony default export */ var components_DatasetContainer = (DatasetContainer);\n;// CONCATENATED MODULE: ./src/components/DownloadPacket/downloadPacket.module.scss\n// extracted by mini-css-extract-plugin\nvar downloadBoxContainer = "downloadPacket-module--downloadBoxContainer--UoPKM";\nvar downloadBox = "downloadPacket-module--downloadBox--2-B6M";\nvar downloadBoxTextBox = "downloadPacket-module--downloadBoxTextBox--Z0Akn";\nvar downloadBoxTitle = "downloadPacket-module--downloadBoxTitle--337bU";\nvar downloadBoxText = "downloadPacket-module--downloadBoxText--5qHMU";\nvar downloadBoxButtonContainer = "downloadPacket-module--downloadBoxButtonContainer--38z4b";\nvar downloadBoxButton = "downloadPacket-module--downloadBoxButton--dtKkR";\nvar downloadPacketText = "downloadPacket-module--downloadPacketText--2LLgi";\n// EXTERNAL MODULE: ./src/data/constants.tsx\nvar constants = __webpack_require__(2494);\n;// CONCATENATED MODULE: ./node_modules/uswds/dist/img/usa-icons/file_download.svg\n/* harmony default export */ var file_download = ("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjI0Ij48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PHBhdGggZD0iTTE5IDloLTRWM0g5djZINWw3IDcgNy03ek01IDE4djJoMTR2LTJINXoiLz48L3N2Zz4=");\n;// CONCATENATED MODULE: ./src/components/DownloadPacket/index.tsx\n// @ts-ignore\nvar DownloadPacket=function DownloadPacket(){var intl=(0,gatsby_plugin_intl.useIntl)();var messages=(0,react_intl_lib/* defineMessages */.vU)({downloadPacketHeader:{id:\'downloadPacket.header.text\',defaultMessage:\'Draft communities list (pre-decisional, 137MB)\',description:\'download packet header text\'},downloadPacketInfo:{id:\'downloadPacket.info.text\',defaultMessage:\'The package includes the draft list of prioritized communities (.csv and .xlsx) and\'+\' information about how to use the list (.pdf). This information should not be used\'+\' to make program resource allocation decisions.\',description:\'download packet info text\'},downloadPacketButtonText:{id:\'downloadPacket.button.text\',defaultMessage:\'Download packet\',description:\'download packet button text\'}});return/*#__PURE__*/react.createElement(lib.Grid,null,/*#__PURE__*/react.createElement("div",{className:downloadBoxContainer},/*#__PURE__*/react.createElement("div",{className:downloadBox},/*#__PURE__*/react.createElement("div",{className:downloadBoxTextBox},/*#__PURE__*/react.createElement("div",{className:downloadBoxTitle},intl.formatMessage(messages.downloadPacketHeader)),/*#__PURE__*/react.createElement("div",{className:downloadBoxText},intl.formatMessage(messages.downloadPacketInfo)),/*#__PURE__*/react.createElement("div",{className:downloadBoxButtonContainer},/*#__PURE__*/react.createElement("a",{"data-cy":\'download-link\',href:constants/* DOWNLOAD_ZIP_URL */.iV},/*#__PURE__*/react.createElement(lib.Button,{className:downloadBoxButton,type:"button"},/*#__PURE__*/react.createElement("div",null,/*#__PURE__*/react.createElement("img",{src:file_download})," "),/*#__PURE__*/react.createElement("div",{className:downloadPacketText},intl.formatMessage(messages.downloadPacketButtonText)))))))));};/* harmony default export */ var components_DownloadPacket = (DownloadPacket);\n// EXTERNAL MODULE: ./src/components/J40MainGridContainer.tsx\nvar J40MainGridContainer = __webpack_require__(6445);\n// EXTERNAL MODULE: ./src/components/layout.tsx + 4 modules\nvar layout = __webpack_require__(828);\n;// CONCATENATED MODULE: ./src/components/scoreStepsList.tsx\nvar ScoreStepsList=function ScoreStepsList(){return/*#__PURE__*/react.createElement(react.Fragment,null,/*#__PURE__*/react.createElement("div",{className:\'j40-process-list-wrapper\'},/*#__PURE__*/react.createElement("ul",null,/*#__PURE__*/react.createElement("li",null,/*#__PURE__*/react.createElement("section",null,/*#__PURE__*/react.createElement("h3",{className:\'j40-item-list-title\'},"Gather datasets"),/*#__PURE__*/react.createElement("h4",{className:\'j40-item-list-subtitle\'},"Data inputs"),/*#__PURE__*/react.createElement("p",null,"The cumulative index score includes the following equally weighted inputs."),/*#__PURE__*/react.createElement("ul",{className:\'j40-process-nested-list\'},/*#__PURE__*/react.createElement("li",null,"Poverty"),/*#__PURE__*/react.createElement("li",null,"Less than high school education"),/*#__PURE__*/react.createElement("li",null,"Linguistic isolation"),/*#__PURE__*/react.createElement("li",null,"Unemployment rate"),/*#__PURE__*/react.createElement("li",null,"Housing burden")),/*#__PURE__*/react.createElement("h4",{className:\'j40-item-list-subtitle\'},"Combining data from different geographic units"),/*#__PURE__*/react.createElement("p",null,"Some data is not available at the census block group level and is instead only available for larger units such as census tracts or counties. In these cases, all census block groups will get an even contribution from the larger unit. For example, if a census tract scores 90th percentile on an indicator, then all census block groups within that tract will receive a value of 90th percentile."),/*#__PURE__*/react.createElement("h4",{className:\'j40-item-list-subtitle\'},"Normalizing data"),/*#__PURE__*/react.createElement("p",null,"The range of the data that makes up the score varies, so the data must be normalized so that each data indicator can be more equally weighted. Min-max normalization is utilized, where the minimum value in the range of values for each dataset is set at 0, the maximum value is set at 1, and every other value is transformed into a decimal between 0 and 1. For example, if the minimum value for unemployment was 10 and the maximum value was 30, a value of 20 would be transformed to 0.5 since it is halfway between 10 and 30."))),/*#__PURE__*/react.createElement("li",null,/*#__PURE__*/react.createElement("section",null,/*#__PURE__*/react.createElement("h3",null,"Calculate cumulative index score"),/*#__PURE__*/react.createElement("p",null,"To combine all variables into a single cumulative index score, we average the normalized values across indicators."),/*#__PURE__*/react.createElement(lib.GridContainer,{className:\'\'},/*#__PURE__*/react.createElement(lib.Grid,{row:true,className:\'j40-math-division-container\'},/*#__PURE__*/react.createElement(lib.Grid,{col:true,className:\'j40-math-eq-left-side grid-col-fill\'},/*#__PURE__*/react.createElement("div",{className:\'j40-math-eq-numerator\'},"Dataset 1 + Dataset 2 + ... + Dataset N"),/*#__PURE__*/react.createElement("div",{className:\'j40-math-eq-denominator\'},"# of datasets")),/*#__PURE__*/react.createElement(lib.Grid,{col:true,className:\'j40-math-eq-middle grid-col-auto\'},"="),/*#__PURE__*/react.createElement(lib.Grid,{col:true,className:\'j40-math-eq-right-side grid-col-fill\'},"Cumulative index score"))))),/*#__PURE__*/react.createElement("li",null,/*#__PURE__*/react.createElement("section",null,/*#__PURE__*/react.createElement("h3",{className:\'j40-item-list-title\'},"Assign priority"),/*#__PURE__*/react.createElement("p",null,"Census block groups are sorted by their cumulative index score from highest to lowest. Census block groups that are in the top 25 percentile (i.e. have a cumulative index score in the 75 - 100th percentile) will be considered the prioritized communities."))))));};/* harmony default export */ var scoreStepsList = (ScoreStepsList);\n;// CONCATENATED MODULE: ./src/pages/methodology.tsx\n// markup\nvar IndexPage=function IndexPage(_ref){var location=_ref.location;var intl=(0,gatsby_plugin_intl.useIntl)();var messages=(0,react_intl_lib/* defineMessages */.vU)({methodologyPageHeader:{id:\'methodology.page.header.text\',defaultMessage:\'Methodology\',description:\'methodology page header text\'},methodologyPagep1:{id:\'methodology.page.paragraph.first\',defaultMessage:\'The cumulative index score is a metric that is intended to assist Federal agencies\'+\' in identifying disadvantaged communities for the purposes of the Justice 40\'+\' Initiative. The score methodology and included data sets are currently in beta and\'+\' may change over time.\',description:\'methodology page paragraph 1\'},methodologyPagep2:{id:\'methodology.page.paragraph.second\',defaultMessage:\'Learn about the datasets used in the cumulative score and read about\'+\' how the score is calculated. Download the list of prioritized communities along with the datasets\'+\' used in the score.\',description:\'methodology page paragraph 2\'}});return/*#__PURE__*/react.createElement(layout/* default */.Z,{location:location},/*#__PURE__*/react.createElement(J40MainGridContainer/* default */.Z,null,/*#__PURE__*/react.createElement(AlertWrapper/* default */.Z,{showBetaAlert:true,showLimitedDataAlert:false})),/*#__PURE__*/react.createElement(J40MainGridContainer/* default */.Z,{className:\'j40-main-content\'},/*#__PURE__*/react.createElement("h1",null,intl.formatMessage(messages.methodologyPageHeader)),/*#__PURE__*/react.createElement(lib.Grid,{row:true,gap:true},/*#__PURE__*/react.createElement(lib.Grid,{col:12,tablet:{col:6}},/*#__PURE__*/react.createElement("section",null,/*#__PURE__*/react.createElement("p",null,intl.formatMessage(messages.methodologyPagep1)),/*#__PURE__*/react.createElement("p",null,intl.formatMessage(messages.methodologyPagep2)))),/*#__PURE__*/react.createElement(lib.Grid,{col:12,tablet:{col:6}},/*#__PURE__*/react.createElement(components_DownloadPacket,null)))),/*#__PURE__*/react.createElement(J40MainGridContainer/* default */.Z,{fullWidth:true},/*#__PURE__*/react.createElement(lib.Grid,{row:true},/*#__PURE__*/react.createElement(lib.Grid,{col:true},/*#__PURE__*/react.createElement(components_DatasetContainer,null)))),/*#__PURE__*/react.createElement(J40MainGridContainer/* default */.Z,null,/*#__PURE__*/react.createElement(lib.Grid,{row:true},/*#__PURE__*/react.createElement(lib.Grid,{col:true},/*#__PURE__*/react.createElement(scoreStepsList,null)))));};/* harmony default export */ var methodology = (IndexPage);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9qdXN0aWNlNDAtdG9vbC8uL3NyYy9jb21wb25lbnRzL0RhdGFzZXRDYXJkL2RhdGFzZXRDYXJkLm1vZHVsZS5zY3NzPzFkYjUiLCJ3ZWJwYWNrOi8vanVzdGljZTQwLXRvb2wvLi9zcmMvY29tcG9uZW50cy9EYXRhc2V0Q2FyZC9pbmRleC50c3g/NTBlYyIsIndlYnBhY2s6Ly9qdXN0aWNlNDAtdG9vbC8uL3NyYy9jb21wb25lbnRzL0RhdGFzZXRDb250YWluZXIvZHNDb250YWluZXIubW9kdWxlLnNjc3M/YzMzOCIsIndlYnBhY2s6Ly9qdXN0aWNlNDAtdG9vbC8uL3NyYy9jb21wb25lbnRzL0RhdGFzZXRDb250YWluZXIvaW5kZXgudHN4PzBjN2QiLCJ3ZWJwYWNrOi8vanVzdGljZTQwLXRvb2wvLi9zcmMvY29tcG9uZW50cy9Eb3dubG9hZFBhY2tldC9kb3dubG9hZFBhY2tldC5tb2R1bGUuc2Nzcz85ZTUwIiwid2VicGFjazovL2p1c3RpY2U0MC10b29sLy4vbm9kZV9tb2R1bGVzL3Vzd2RzL2Rpc3QvaW1nL3VzYS1pY29ucy9maWxlX2Rvd25sb2FkLnN2Zz8yMjc5Iiwid2VicGFjazovL2p1c3RpY2U0MC10b29sLy4vc3JjL2NvbXBvbmVudHMvRG93bmxvYWRQYWNrZXQvaW5kZXgudHN4Pzc2MGQiLCJ3ZWJwYWNrOi8vanVzdGljZTQwLXRvb2wvLi9zcmMvY29tcG9uZW50cy9zY29yZVN0ZXBzTGlzdC50c3g/ODQ1NiIsIndlYnBhY2s6Ly9qdXN0aWNlNDAtdG9vbC8uL3NyYy9wYWdlcy9tZXRob2RvbG9neS50c3g/OTQ3MCJdLCJuYW1lcyI6WyJEYXRhc2V0Q2FyZCIsImRhdGFzZXRDYXJkUHJvcHMiLCJpbnRsIiwidXNlSW50bCIsIm1lc3NhZ2VzIiwiZGVmaW5lTWVzc2FnZXMiLCJ3aGF0SXNJdCIsImlkIiwiZGVmYXVsdE1lc3NhZ2UiLCJkZXNjcmlwdGlvbiIsImRhdGFSZXNvbHV0aW9uIiwiZGF0YVNvdXJjZSIsImRhdGFEYXRlUmFuZ2UiLCJzdHlsZXMiLCJpbmRpY2F0b3IiLCJmb3JtYXRNZXNzYWdlIiwiZGF0YVNvdXJjZVVSTCIsImRhdGFTb3VyY2VMYWJlbCIsImNhcmRzIiwiRGF0YXNldENvbnRhaW5lciIsImN1bXVsYXRpdmVTY29yZSIsInN1YlRpdGxlIiwibWFwIiwiY2FyZCIsIkRvd25sb2FkUGFja2V0IiwiZG93bmxvYWRQYWNrZXRIZWFkZXIiLCJkb3dubG9hZFBhY2tldEluZm8iLCJkb3dubG9hZFBhY2tldEJ1dHRvblRleHQiLCJjb25zdGFudHMiLCJkb3dubG9hZEljb24iLCJTY29yZVN0ZXBzTGlzdCIsIkluZGV4UGFnZSIsImxvY2F0aW9uIiwibWV0aG9kb2xvZ3lQYWdlSGVhZGVyIiwibWV0aG9kb2xvZ3lQYWdlcDEiLCJtZXRob2RvbG9neVBhZ2VwMiIsImNvbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ087QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUU7O0FDRVAsR0FBTUEsWUFBVyxDQUFHLFFBQWRBLFlBQWMsTUFBMEMsSUFBeENDLGlCQUF3QyxNQUF4Q0EsZ0JBQXdDLENBQzVELEdBQU1DLEtBQUksQ0FBR0MsOEJBQU8sRUFBcEIsQ0FDQSxHQUFNQyxTQUFRLENBQUdDLHlDQUFjLENBQUMsQ0FDOUJDLFFBQVEsQ0FBRSxDQUNSQyxFQUFFLENBQUUsc0JBREksQ0FFUkMsY0FBYyxDQUFFLGFBRlIsQ0FHUkMsV0FBVyxDQUFFLDJDQUhMLENBRG9CLENBTTlCQyxjQUFjLENBQUUsQ0FDZEgsRUFBRSxDQUFFLDRCQURVLENBRWRDLGNBQWMsQ0FBRSxtQkFGRixDQUdkQyxXQUFXLENBQUUsMkNBSEMsQ0FOYyxDQVc5QkUsVUFBVSxDQUFFLENBQ1ZKLEVBQUUsQ0FBRSx3QkFETSxDQUVWQyxjQUFjLENBQUUsZUFGTixDQUdWQyxXQUFXLENBQUUsMkNBSEgsQ0FYa0IsQ0FnQjlCRyxhQUFhLENBQUUsQ0FDYkwsRUFBRSxDQUFFLDJCQURTLENBRWJDLGNBQWMs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QUFHLENBQUUsRUFBWCxDQUFlLE1BQU0sQ0FBRSxDQUFDQyxHQUFHLENBQUUsQ0FBTixDQUF2QixlQUNFLG9CQUFDLHlCQUFELE1BREYsQ0FYRixDQUZGLENBTkYsY0F5QkUsb0JBQUMsbUNBQUQsRUFBc0IsU0FBUyxDQUFFLElBQWpDLGVBQ0Usb0JBQUMsUUFBRCxFQUFNLEdBQUcsS0FBVCxlQUNFLG9CQUFDLFFBQUQsRUFBTSxHQUFHLEtBQVQsZUFDRSxvQkFBQywyQkFBRCxNQURGLENBREYsQ0FERixDQXpCRixjQWlDRSxvQkFBQyxtQ0FBRCxtQkFDRSxvQkFBQyxRQUFELEVBQU0sR0FBRyxLQUFULGVBQVUsb0JBQUMsUUFBRCxFQUFNLEdBQUcsS0FBVCxlQUNSLG9CQUFDLGNBQUQsTUFEUSxDQUFWLENBREYsQ0FqQ0YsQ0FERixDQXlDRCxDQWxFRCxDQW9FQSxnREFBZUwsU0FBZiIsImZpbGUiOiIxMDk1LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gZXh0cmFjdGVkIGJ5IG1pbmktY3NzLWV4dHJhY3QtcGx1Z2luXG5leHBvcnQgdmFyIGRhdGFzZXRDYXJkID0gXCJkYXRhc2V0Q2FyZC1tb2R1bGUtLWRhdGFzZXRDYXJkLS0yNm9rWlwiO1xuZXhwb3J0IHZhciBkYXRhc2V0Q2FyZEluZGljYXRvciA9IFwiZGF0YXNldENhcmQtbW9kdWxlLS1kYXRhc2V0Q2FyZEluZGljYXRvci0tMTRsSW5cIjtcbmV4cG9ydCB2YXIgZGF0YXNldENhcmRXaGF0SXNJdCA9IFwiZGF0YXNldENhcmQtbW9kdWxlLS1kYXRhc2V0Q2FyZFdoYXRJc0l0LS0ySjg3d1wiO1xuZXhwb3J0IHZhciBkYXRhc2V0Q2FyZExpc3QgPSBcImRhdGFzZXRDYXJkLW1vZHVsZS0tZGF0YXNldENhcmRMaXN0LS1PazNfb1wiO1xuZXhwb3J0IHZhciBkYXRhc2V0Q2FyZExpc3RJdGVtID0gXCJkYXRhc2V0Q2FyZC1tb2R1bGUtLWRhdGFzZXRDYXJkTGlzdEl0ZW0tLXJNRHhjXCI7XG5leHBvcnQgdmFyIGRhdGFzZXRDYXJkRGVzY3JpcHRpb24gPSBcImRhdGFzZXRDYXJkLW1vZHVsZS0tZGF0YXNldENhcmREZXNjcmlwdGlvbi0tMmFnaWJcIjtcbmV4cG9ydCB2YXIgZGF0YXNldENhcmRMYWJlbHMgPSBcImRhdGFzZXRDYXJkLW1vZHVsZS0tZGF0YXNldENhcmRMYWJlbHMtLTNqTEMwXCI7IiwiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7dXNlSW50bH0gZnJvbSAnZ2F0c2J5LXBsdWdpbi1pbnRsJztcbmltcG9ydCB7ZGVmaW5lTWVzc2FnZXN9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0ICogYXMgc3R5bGVzIGZyb20gJy4vZGF0YXNldENhcmQubW9kdWxlLnNjc3MnO1xuXG5pbnRlcmZhY2UgSURhdGFzZXRDYXJkUHJvcHMge1xuICBkYXRhc2V0Q2FyZFByb3BzOiB7IFtrZXk6c3RyaW5nXTogc3RyaW5nIH1cbn1cblxuY29uc3QgRGF0YXNldENhcmQgPSAoe2RhdGFzZXRDYXJkUHJvcHN9OklEYXRhc2V0Q2FyZFByb3BzKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG4gIGNvbnN0IG1lc3NhZ2VzID0gZGVmaW5lTWVzc2FnZXMoe1xuICAgIHdoYXRJc0l0OiB7XG4gICAgICBpZDogJ2RhdGFzZXRDYXJkLndoYXRJc0l0JyxcbiAgICAgIGRlZmF1bHRNZXNzYWdlOiAnV2hhdCBpcyBpdD8nLFxuICAgICAgZGVzY3JpcHRpb246ICdsYWJlbCBhc3NvY2lhdGVkIHdpdGggZXhwbGFpbmluZyB0aGUgY2FyZCcsXG4gICAgfSxcbiAgICBkYXRhUmVzb2x1dGlvbjoge1xuICAgICAgaWQ6ICdkYXRhc2V0Q2FyZC5kYXRhUmVzb2x1dGlvbicsXG4gICAgICBkZWZhdWx0TWVzc2FnZTogJ0RhdGEgcmVzb2x1dGlvbjogJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnbGFiZWwgYXNzb2NpYXRlZCB3aXRoIGV4cGxhaW5pbmcgdGhlIGNhcmQnLFxuICAgIH0sXG4gICAgZGF0YVNvdXJjZToge1xuICAgICAgaWQ6ICdkYXRhc2V0Q2FyZC5kYXRhU291cmNlJyxcbiAgICAgIGRlZmF1bHRNZXNzYWdlOiAnRGF0YSBzb3VyY2U6ICcsXG4gICAgICBkZXNjcmlwdGlvbjogJ2xhYmVsIGFzc29jaWF0ZWQgd2l0aCBleHBsYWluaW5nIHRoZSBjYXJkJyxcbiAgICB9LFxuICAgIGRhdGFEYXRlUmFuZ2U6IHtcbiAgICAgIGlkOiAnZGF0YXNldENhcmQuZGF0YURhdGVSYW5nZScsXG4gICAgICBkZWZhdWx0TWVzc2FnZTogJ0RhdGEgZGF0ZSByYW5nZTogJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnbGFiZWwgYXNzb2NpYXRlZCB3aXRoIGV4cGxhaW5pbmcgdGhlIGNhcmQnLFxuICAgIH0sXG4gIH0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5kYXRhc2V0Q2FyZH0+XG4gICAgICA8aDMgY2xhc3NOYW1lPXtzdHlsZXMuZGF0YXNldENhcmRJbmRpY2F0b3J9PntkYXRhc2V0Q2FyZFByb3BzLmluZGljYXRvcn08L2gzPlxuICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5kYXRhc2V0Q2FyZFdoYXRJc0l0fT57aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLndoYXRJc0l0KX08L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMuZGF0YXNldENhcmREZXNjcmlwdGlvbn0+XG4gICAgICAgIHtkYXRhc2V0Q2FyZFByb3BzLmRlc2NyaXB0aW9ufVxuICAgICAgPC9kaXY+XG5cbiAgICAgIDx1bCBjbGFzc05hbWU9e3N0eWxlcy5kYXRhc2V0Q2FyZExpc3R9PlxuICAgICAgICA8bGkgY2xhc3NOYW1lPXtzdHlsZXMuZGF0YXNldENhcmRMaXN0SXRlbX0+XG4gICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtzdHlsZXMuZGF0YXNldENhcmRMYWJlbHN9PlxuICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZShtZXNzYWdlcy5kYXRhUmVzb2x1dGlvbil9XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIHtkYXRhc2V0Q2FyZFByb3BzLmRhdGFSZXNvbHV0aW9ufVxuICAgICAgICA8L2xpPlxuICAgICAgICA8bGkgY2xhc3NOYW1lPXtzdHlsZXMuZGF0YXNldENhcmRMaXN0SXRlbX0+XG4gICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtzdHlsZXMuZGF0YXNldENhcmRMYWJlbHN9PlxuICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZShtZXNzYWdlcy5kYXRhU291cmNlKX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPGEgaHJlZj17ZGF0YXNldENhcmRQcm9wcy5kYXRhU291cmNlVVJMfSB0YXJnZXQ9eydfYmxhbmsnfSByZWw9XCJub3JlZmVycmVyXCI+XG4gICAgICAgICAgICB7ZGF0YXNldENhcmRQcm9wcy5kYXRhU291cmNlTGFiZWx9XG4gICAgICAgICAgPC9hPlxuICAgICAgICA8L2xpPlxuICAgICAgICA8bGkgY2xhc3NOYW1lPXtzdHlsZXMuZGF0YXNldENhcmRMaXN0SXRlbX0+XG4gICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtzdHlsZXMuZGF0YXNldENhcmRMYWJlbHN9PlxuICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZShtZXNzYWdlcy5kYXRhRGF0ZVJhbmdlKX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAge2RhdGFzZXRDYXJkUHJvcHMuZGF0YURhdGVSYW5nZX1cbiAgICAgICAgPC9saT5cbiAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBEYXRhc2V0Q2FyZDtcbiIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxuZXhwb3J0IHZhciBkYXRhc2V0Q29udGFpbmVyID0gXCJkc0NvbnRhaW5lci1tb2R1bGUtLWRhdGFzZXRDb250YWluZXItLTJfS3VVXCI7XG5leHBvcnQgdmFyIGRhdGFzZXRDb250YWluZXJIZWFkZXIgPSBcImRzQ29udGFpbmVyLW1vZHVsZS0tZGF0YXNldENvbnRhaW5lckhlYWRlci0tMkhWM0FcIjtcbmV4cG9ydCB2YXIgZGF0YXNldENvbnRhaW5lclN1YlRpdGxlID0gXCJkc0NvbnRhaW5lci1tb2R1bGUtLWRhdGFzZXRDb250YWluZXJTdWJUaXRsZS0tM2ZpOGZcIjtcbmV4cG9ydCB2YXIgZGF0YXNldENhcmRzQ29udGFpbmVyID0gXCJkc0NvbnRhaW5lci1tb2R1bGUtLWRhdGFzZXRDYXJkc0NvbnRhaW5lci0tMTI5b2pcIjtcbmV4cG9ydCB2YXIgajQwQWxlcnRDb250YWluZXIgPSBcImRzQ29udGFpbmVyLW1vZHVsZS0tajQwQWxlcnRDb250YWluZXItLXRpQm9xXCI7IiwiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7dXNlSW50bH0gZnJvbSAnZ2F0c2J5LXBsdWdpbi1pbnRsJztcbmltcG9ydCB7ZGVmaW5lTWVzc2FnZXN9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IERhdGFzZXRDYXJkIGZyb20gJy4uL0RhdGFzZXRDYXJkJztcbmltcG9ydCAqIGFzIHN0eWxlcyBmcm9tICcuL2RzQ29udGFpbmVyLm1vZHVsZS5zY3NzJztcbmltcG9ydCBBbGVydFdyYXBwZXIgZnJvbSAnLi4vQWxlcnRXcmFwcGVyJztcblxuZXhwb3J0IGNvbnN0IGNhcmRzID0gW1xuICB7XG4gICAgaW5kaWNhdG9yOiAnUG92ZXJ0eScsXG4gICAgZGVzY3JpcHRpb246IGBQZXJjZW50IG9mIGEgYmxvY2sgZ3JvdXAncyBwb3B1bGF0aW9uIGluIGhvdXNlaG9sZHMgd2hlcmUgdGhlIGhvdXNlaG9sZCBcbiAgICBpbmNvbWUgaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHR3aWNlIHRoZSBmZWRlcmFsIFwicG92ZXJ0eSBsZXZlbFwiYCxcbiAgICBkYXRhUmVzb2x1dGlvbjogYENlbnN1cyBibG9jayBncm91cGAsXG4gICAgZGF0YVNvdXJjZUxhYmVsOiBgVS5TLiBDZW5zdXMgQnVyZWF1YCxcbiAgICBkYXRhU291cmNlVVJMOiBgaHR0cHM6Ly93d3cuY2Vuc3VzLmdvdi9gLFxuICAgIGRhdGFEYXRlUmFuZ2U6IGA1LXllYXIgZXN0aW1hdGVzLCAyMDE1LTIwMTlgLFxuICB9LFxuICB7XG4gICAgaW5kaWNhdG9yOiAnRWR1Y2F0aW9uIChsZXNzIHRoYW4gaGlnaCBzY2hvb2wpJyxcbiAgICBkZXNjcmlwdGlvbjogYFBlcmNlbnQgb2YgcGVvcGxlIGFnZSAyNSBvciBvbGRlciBpbiBhIGJsb2NrIGdyb3VwIHdob3NlIGVkdWNhdGlvbiBpcyBzaG9ydCBvZiBhIGhpZ2ggc2Nob29sIGRpcGxvbWFgLFxuICAgIGRhdGFSZXNvbHV0aW9uOiBgQ2Vuc3VzIGJsb2NrIGdyb3VwYCxcbiAgICBkYXRhU291cmNlTGFiZWw6IGBVLlMuIENlbnN1cyBCdXJlYXVgLFxuICAgIGRhdGFTb3VyY2VVUkw6IGBodHRwczovL3d3dy5jZW5zdXMuZ292L2AsXG4gICAgZGF0YURhdGVSYW5nZTogYDUteWVhciBlc3RpbWF0ZXMsIDIwMTUtMjAxOWAsXG4gIH0sXG4gIHtcbiAgICBpbmRpY2F0b3I6ICdMaW5ndWlzdGljIGlzb2xhdGlvbicsXG4gICAgZGVzY3JpcHRpb246IGBQZXJjZW50IG9mIHBlb3BsZSBpbiBhIGJsb2NrIGdyb3VwIGxpdmluZyBpbiBsaW5ndWlzdGljYWxseSBcbiAgICBpc29sYXRlZCBob3VzZWhvbGRzIOKAlCBhIGxpbmd1aXN0aWNhbGx5IGlzb2xhdGVkIGhvdXNlaG9sZCBpcyBhIGhvdXNlaG9sZCBpbiBcbiAgICB3aGljaCBhbGwgbWVtYmVycyBhZ2VkIDE0IHllYXJzIGFuZCBvdmVyIHNwZWFrIGEgbm9uLUVuZ2xpc2ggbGFuZ3VhZ2UgYW5kIGFsc28gc3BlYWsgXG4gICAgRW5nbGlzaCBsZXNzIHRoYW4gXCJ2ZXJ5IHdlbGxcIiAoaS5lLiwgaGF2ZSBkaWZmaWN1bHR5IHdpdGggRW5nbGlzaClgLFxuICAgIGRhdGFSZXNvbHV0aW9uOiBgQ2Vuc3VzIGJsb2NrIGdyb3VwYCxcbiAgICBkYXRhU291cmNlTGFiZWw6IGBVLlMuIENlbnN1cyBCdXJlYXVgLFxuICAgIGRhdGFTb3VyY2VVUkw6IGBodHRwczovL3d3dy5jZW5zdXMuZ292L2AsXG4gICAgZGF0YURhdGVSYW5nZTogYDUteWVhciBlc3RpbWF0ZXMsIDIwMTUtMjAxOWAsXG4gIH0sXG4gIHtcbiAgICBpbmRpY2F0b3I6ICdVbmVtcGxveW1lbnQgcmF0ZScsXG4gICAgZGVzY3JpcHRpb246IGBVbmVtcGxveW1lbnQgcmF0ZSAocGVvcGxlIHdobyBhcmUgdW5lbXBsb3llZCBkaXZpZGVkIGJ5IHRoZSB0b3RhbCBwb3B1bGF0aW9uIG9mIFxuICAgICAgcGVvcGxlIGluIHRoZSBsYWJvciBmb3JjZSBvdmVyIDE2IHllYXJzIG9sZClgLFxuICAgIGRhdGFSZXNvbHV0aW9uOiBgQ2Vuc3VzIGJsb2NrIGdyb3VwYCxcbiAgICBkYXRhU291cmNlTGFiZWw6IGBVLlMuIENlbnN1cyBCdXJlYXVgLFxuICAgIGRhdGFTb3VyY2VVUkw6IGBodHRwczovL3d3dy5jZW5zdXMuZ292L2AsXG4gICAgZGF0YURhdGVSYW5nZTogYDUteWVhciBlc3RpbWF0ZXMsIDIwMTUtMjAxOWAsXG4gIH0sXG4gIHtcbiAgICBpbmRpY2F0b3I6ICdIb3VzaW5nIGJ1cmRlbicsXG4gICAgZGVzY3JpcHRpb246IGBQZXJjZW50IG9mIGhvdXNlaG9sZHMgaW4gYSBjZW5zdXMgdHJhY3QgdGhhdCBhcmUgYm90aCBsb3cgaW5jb21lIChtYWtpbmcgbGVzc1xuICAgICAgIHRoYW4gODAlIG9mIHRoZSBIVUQgQXJlYSBNZWRpYW4gRmFtaWx5IEluY29tZSkgYW5kIHNldmVyZWx5IGJ1cmRlbmVkIGJ5IGhvdXNpbmcgY29zdHMgXG4gICAgICAgKHBheWluZyBncmVhdGVyIHRoYW4gMzAlIG9mIHRoZWlyIGluY29tZSB0byBob3VzaW5nIGNvc3RzKWAsXG4gICAgZGF0YVJlc29sdXRpb246IGBDZW5zdXMgYmxvY2sgZ3JvdXBgLFxuICAgIGRhdGFTb3VyY2VMYWJlbDogYFUuUy4gQ2Vuc3VzIEJ1cmVhdWAsXG4gICAgZGF0YVNvdXJjZVVSTDogYGh0dHBzOi8vd3d3LmNlbnN1cy5nb3YvYCxcbiAgICBkYXRhRGF0ZVJhbmdlOiBgNS15ZWFyIGVzdGltYXRlcywgMjAxNS0yMDE5YCxcbiAgfSxcblxuXTtcblxuY29uc3QgRGF0YXNldENvbnRhaW5lciA9ICgpID0+IHtcbiAgY29uc3QgaW50bCA9IHVzZUludGwoKTtcbiAgY29uc3QgbWVzc2FnZXMgPSBkZWZpbmVNZXNzYWdlcyh7XG4gICAgY3VtdWxhdGl2ZVNjb3JlOiB7XG4gICAgICBpZDogJ2RhdGFzZXRDb250YWluZXIuaGVhZGVyLmN1bXVsYXRpdmVTY29yZScsXG4gICAgICBkZWZhdWx0TWVzc2FnZTogJ0RhdGFzZXRzIHVzZWQgaW4gY3VtdWxhdGl2ZSBzY29yZScsXG4gICAgICBkZXNjcmlwdGlvbjogJ3NlY3Rpb24gbGFiZWwgb2Ygd2hpY2ggZGF0YXNldHMgYXJlIHVzZWQgaW4gY3VtdWxhdGl2ZSBzY29yZScsXG4gICAgfSxcbiAgICBzdWJUaXRsZToge1xuICAgICAgaWQ6ICdkYXRhc2V0Q29udGFpbmVyLnN1YlRpdGxlJyxcbiAgICAgIGRlZmF1bHRNZXNzYWdlOiAnVGhlIGRhdGFzZXRzIGNvbWUgZnJvbSBhIHZhcmlldHkgb2Ygc291cmNlcyBhbmQgJyArXG4gICAgICAgICd3ZXJlIHNlbGVjdGVkIGFmdGVyIGNvbnNpZGVyaW5nIHJlbGV2YW5jZSwgYXZhaWxhYmlsaXR5LCByZWNlbmN5IGFuZCBxdWFsaXR5LicsXG4gICAgICBkZXNjcmlwdGlvbjogJ2Rlc2NyaXB0aW9uIG9mIHRoZSBkYXRhc2V0IHNlY3Rpb24nLFxuICAgIH0sXG4gIH0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2Ake3N0eWxlcy5kYXRhc2V0Q29udGFpbmVyfSBkZXNrdG9wOmdyaWQtY29sYH0+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT17J2dyaWQtY29udGFpbmVyLWRlc2t0b3AtbGcnfT5cbiAgICAgICAgPGgxIGNsYXNzTmFtZT17c3R5bGVzLmRhdGFzZXRDb250YWluZXJIZWFkZXJ9PntpbnRsLmZvcm1hdE1lc3NhZ2UobWVzc2FnZXMuY3VtdWxhdGl2ZVNjb3JlKX08L2gxPlxuICAgICAgICA8QWxlcnRXcmFwcGVyIHNob3dCZXRhQWxlcnQ9e2ZhbHNlfSBzaG93TGltaXRlZERhdGFBbGVydD17dHJ1ZX0vPlxuICAgICAgICA8cCBjbGFzc05hbWU9e3N0eWxlcy5kYXRhc2V0Q29udGFpbmVyU3ViVGl0bGV9PntpbnRsLmZvcm1hdE1lc3NhZ2UobWVzc2FnZXMuc3ViVGl0bGUpfTwvcD5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5kYXRhc2V0Q2FyZHNDb250YWluZXJ9PlxuICAgICAgICAgIHtjYXJkcy5tYXAoKGNhcmQpID0+IDxEYXRhc2V0Q2FyZFxuICAgICAgICAgICAga2V5PXtjYXJkLmluZGljYXRvcn1cbiAgICAgICAgICAgIGRhdGFzZXRDYXJkUHJvcHM9e2NhcmR9Lz4pfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgRGF0YXNldENvbnRhaW5lcjtcbiIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxuZXhwb3J0IHZhciBkb3dubG9hZEJveENvbnRhaW5lciA9IFwiZG93bmxvYWRQYWNrZXQtbW9kdWxlLS1kb3dubG9hZEJveENvbnRhaW5lci0tVW9QS01cIjtcbmV4cG9ydCB2YXIgZG93bmxvYWRCb3ggPSBcImRvd25sb2FkUGFja2V0LW1vZHVsZS0tZG93bmxvYWRCb3gtLTItQjZNXCI7XG5leHBvcnQgdmFyIGRvd25sb2FkQm94VGV4dEJveCA9IFwiZG93bmxvYWRQYWNrZXQtbW9kdWxlLS1kb3dubG9hZEJveFRleHRCb3gtLVowQWtuXCI7XG5leHBvcnQgdmFyIGRvd25sb2FkQm94VGl0bGUgPSBcImRvd25sb2FkUGFja2V0LW1vZHVsZS0tZG93bmxvYWRCb3hUaXRsZS0tMzM3YlVcIjtcbmV4cG9ydCB2YXIgZG93bmxvYWRCb3hUZXh0ID0gXCJkb3dubG9hZFBhY2tldC1tb2R1bGUtLWRvd25sb2FkQm94VGV4dC0tNXFITVVcIjtcbmV4cG9ydCB2YXIgZG93bmxvYWRCb3hCdXR0b25Db250YWluZXIgPSBcImRvd25sb2FkUGFja2V0LW1vZHVsZS0tZG93bmxvYWRCb3hCdXR0b25Db250YWluZXItLTM4ejRiXCI7XG5leHBvcnQgdmFyIGRvd25sb2FkQm94QnV0dG9uID0gXCJkb3dubG9hZFBhY2tldC1tb2R1bGUtLWRvd25sb2FkQm94QnV0dG9uLS1kdEtrUlwiO1xuZXhwb3J0IHZhciBkb3dubG9hZFBhY2tldFRleHQgPSBcImRvd25sb2FkUGFja2V0LW1vZHVsZS0tZG93bmxvYWRQYWNrZXRUZXh0LS0yTExnaVwiOyIsImV4cG9ydCBkZWZhdWx0IFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUdobGFXZG9kRDBpTWpRaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TkNBeU5DSWdkMmxrZEdnOUlqSTBJajQ4Y0dGMGFDQmtQU0pOTUNBd2FESTBkakkwU0RCNklpQm1hV3hzUFNKdWIyNWxJaTgrUEhCaGRHZ2daRDBpVFRFNUlEbG9MVFJXTTBnNWRqWklOV3czSURjZ055MDNlazAxSURFNGRqSm9NVFIyTFRKSU5Yb2lMejQ4TDNOMlp6ND1cIiIsImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQge0J1dHRvbiwgR3JpZH0gZnJvbSAnQHRydXNzd29ya3MvcmVhY3QtdXN3ZHMnO1xuaW1wb3J0IHt1c2VJbnRsfSBmcm9tICdnYXRzYnktcGx1Z2luLWludGwnO1xuaW1wb3J0IHtkZWZpbmVNZXNzYWdlc30gZnJvbSAncmVhY3QtaW50bCc7XG5cbmltcG9ydCAqIGFzIHN0eWxlcyBmcm9tICcuL2Rvd25sb2FkUGFja2V0Lm1vZHVsZS5zY3NzJztcbmltcG9ydCAqIGFzIGNvbnN0YW50cyBmcm9tICcuLi8uLi9kYXRhL2NvbnN0YW50cyc7XG4vLyBAdHMtaWdub3JlXG5pbXBvcnQgZG93bmxvYWRJY29uIGZyb20gJy9ub2RlX21vZHVsZXMvdXN3ZHMvZGlzdC9pbWcvdXNhLWljb25zL2ZpbGVfZG93bmxvYWQuc3ZnJztcblxuY29uc3QgRG93bmxvYWRQYWNrZXQgPSAoKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG4gIGNvbnN0IG1lc3NhZ2VzID0gZGVmaW5lTWVzc2FnZXMoe1xuICAgIGRvd25sb2FkUGFja2V0SGVhZGVyOiB7XG4gICAgICBpZDogJ2Rvd25sb2FkUGFja2V0LmhlYWRlci50ZXh0JyxcbiAgICAgIGRlZmF1bHRNZXNzYWdlOiAnRHJhZnQgY29tbXVuaXRpZXMgbGlzdCAocHJlLWRlY2lzaW9uYWwsIDEzN01CKScsXG4gICAgICBkZXNjcmlwdGlvbjogJ2Rvd25sb2FkIHBhY2tldCBoZWFkZXIgdGV4dCcsXG4gICAgfSxcbiAgICBkb3dubG9hZFBhY2tldEluZm86IHtcbiAgICAgIGlkOiAnZG93bmxvYWRQYWNrZXQuaW5mby50ZXh0JyxcbiAgICAgIGRlZmF1bHRNZXNzYWdlOiAnVGhlIHBhY2thZ2UgaW5jbHVkZXMgdGhlIGRyYWZ0IGxpc3Qgb2YgcHJpb3JpdGl6ZWQgY29tbXVuaXRpZXMgKC5jc3YgYW5kIC54bHN4KSBhbmQnK1xuICAgICAgJyBpbmZvcm1hdGlvbiBhYm91dCBob3cgdG8gdXNlIHRoZSBsaXN0ICgucGRmKS4gVGhpcyBpbmZvcm1hdGlvbiBzaG91bGQgbm90IGJlIHVzZWQnICtcbiAgICAgICcgdG8gbWFrZSBwcm9ncmFtIHJlc291cmNlIGFsbG9jYXRpb24gZGVjaXNpb25zLicsXG4gICAgICBkZXNjcmlwdGlvbjogJ2Rvd25sb2FkIHBhY2tldCBpbmZvIHRleHQnLFxuICAgIH0sXG4gICAgZG93bmxvYWRQYWNrZXRCdXR0b25UZXh0OiB7XG4gICAgICBpZDogJ2Rvd25sb2FkUGFja2V0LmJ1dHRvbi50ZXh0JyxcbiAgICAgIGRlZmF1bHRNZXNzYWdlOiAnRG93bmxvYWQgcGFja2V0JyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnZG93bmxvYWQgcGFja2V0IGJ1dHRvbiB0ZXh0JyxcbiAgICB9LFxuICB9KTtcblxuICByZXR1cm4gKFxuICAgIDxHcmlkPlxuICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5kb3dubG9hZEJveENvbnRhaW5lcn0+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMuZG93bmxvYWRCb3h9PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMuZG93bmxvYWRCb3hUZXh0Qm94fT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMuZG93bmxvYWRCb3hUaXRsZX0+e2ludGwuZm9ybWF0TWVzc2FnZShtZXNzYWdlcy5kb3dubG9hZFBhY2tldEhlYWRlcil9PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLmRvd25sb2FkQm94VGV4dH0+XG4gICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2UobWVzc2FnZXMuZG93bmxvYWRQYWNrZXRJbmZvKX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5kb3dubG9hZEJveEJ1dHRvbkNvbnRhaW5lcn0+XG4gICAgICAgICAgICAgIDxhIGRhdGEtY3k9eydkb3dubG9hZC1saW5rJ30gaHJlZj17Y29uc3RhbnRzLkRPV05MT0FEX1pJUF9VUkx9PlxuICAgICAgICAgICAgICAgIDxCdXR0b24gY2xhc3NOYW1lPXtzdHlsZXMuZG93bmxvYWRCb3hCdXR0b259IHR5cGU9XCJidXR0b25cIj5cbiAgICAgICAgICAgICAgICAgIDxkaXY+PGltZyBzcmM9e2Rvd25sb2FkSWNvbn0gLz4gPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLmRvd25sb2FkUGFja2V0VGV4dH0+XG4gICAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2UobWVzc2FnZXMuZG93bmxvYWRQYWNrZXRCdXR0b25UZXh0KX1cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L0dyaWQ+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBEb3dubG9hZFBhY2tldDtcbiIsImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQge0dyaWRDb250YWluZXIsIEdyaWR9IGZyb20gJ0B0cnVzc3dvcmtzL3JlYWN0LXVzd2RzJztcblxuY29uc3QgU2NvcmVTdGVwc0xpc3QgPSAoKSA9PiB7XG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPXsnajQwLXByb2Nlc3MtbGlzdC13cmFwcGVyJ30+XG4gICAgICAgIDx1bD5cbiAgICAgICAgICA8bGk+XG4gICAgICAgICAgICA8c2VjdGlvbj5cbiAgICAgICAgICAgICAgPGgzIGNsYXNzTmFtZT17J2o0MC1pdGVtLWxpc3QtdGl0bGUnfT5HYXRoZXIgZGF0YXNldHM8L2gzPlxuICAgICAgICAgICAgICA8aDQgY2xhc3NOYW1lPXsnajQwLWl0ZW0tbGlzdC1zdWJ0aXRsZSd9PkRhdGEgaW5wdXRzPC9oND5cbiAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgVGhlIGN1bXVsYXRpdmUgaW5kZXggc2NvcmUgaW5jbHVkZXMgdGhlIGZvbGxvd2luZyBlcXVhbGx5XG4gICAgICAgICAgICAgICAgd2VpZ2h0ZWQgaW5wdXRzLlxuICAgICAgICAgICAgICA8L3A+XG5cbiAgICAgICAgICAgICAgPHVsIGNsYXNzTmFtZT17J2o0MC1wcm9jZXNzLW5lc3RlZC1saXN0J30+XG4gICAgICAgICAgICAgICAgPGxpPlBvdmVydHk8L2xpPlxuICAgICAgICAgICAgICAgIDxsaT5MZXNzIHRoYW4gaGlnaCBzY2hvb2wgZWR1Y2F0aW9uPC9saT5cbiAgICAgICAgICAgICAgICA8bGk+TGluZ3Vpc3RpYyBpc29sYXRpb248L2xpPlxuICAgICAgICAgICAgICAgIDxsaT5VbmVtcGxveW1lbnQgcmF0ZTwvbGk+XG4gICAgICAgICAgICAgICAgPGxpPkhvdXNpbmcgYnVyZGVuPC9saT5cbiAgICAgICAgICAgICAgPC91bD5cblxuXG4gICAgICAgICAgICAgIDxoNCBjbGFzc05hbWU9eydqNDAtaXRlbS1saXN0LXN1YnRpdGxlJ30+XG4gICAgICAgICAgICAgICAgQ29tYmluaW5nIGRhdGEgZnJvbSBkaWZmZXJlbnQgZ2VvZ3JhcGhpYyB1bml0c1xuICAgICAgICAgICAgICA8L2g0PlxuICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICBTb21lIGRhdGEgaXMgbm90IGF2YWlsYWJsZSBhdCB0aGUgY2Vuc3VzIGJsb2NrIGdyb3VwIGxldmVsIGFuZFxuICAgICAgICAgICAgICAgIGlzIGluc3RlYWQgb25seSBhdmFpbGFibGUgZm9yIGxhcmdlciB1bml0cyBzdWNoIGFzIGNlbnN1cyB0cmFjdHNcbiAgICAgICAgICAgICAgICBvciBjb3VudGllcy4gSW4gdGhlc2UgY2FzZXMsIGFsbCBjZW5zdXMgYmxvY2sgZ3JvdXBzIHdpbGwgZ2V0IGFuXG4gICAgICAgICAgICAgICAgZXZlbiBjb250cmlidXRpb24gZnJvbSB0aGUgbGFyZ2VyIHVuaXQuIEZvciBleGFtcGxlLCBpZiBhIGNlbnN1c1xuICAgICAgICAgICAgICAgIHRyYWN0IHNjb3JlcyA5MHRoIHBlcmNlbnRpbGUgb24gYW4gaW5kaWNhdG9yLCB0aGVuIGFsbCBjZW5zdXNcbiAgICAgICAgICAgICAgICBibG9jayBncm91cHMgd2l0aGluIHRoYXQgdHJhY3Qgd2lsbCByZWNlaXZlIGEgdmFsdWUgb2YgOTB0aFxuICAgICAgICAgICAgICAgIHBlcmNlbnRpbGUuXG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgPGg0IGNsYXNzTmFtZT17J2o0MC1pdGVtLWxpc3Qtc3VidGl0bGUnfT5Ob3JtYWxpemluZyBkYXRhPC9oND5cbiAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgVGhlIHJhbmdlIG9mIHRoZSBkYXRhIHRoYXQgbWFrZXMgdXAgdGhlIHNjb3JlIHZhcmllcywgc28gdGhlXG4gICAgICAgICAgICAgICAgZGF0YSBtdXN0IGJlIG5vcm1hbGl6ZWQgc28gdGhhdCBlYWNoIGRhdGEgaW5kaWNhdG9yIGNhbiBiZSBtb3JlXG4gICAgICAgICAgICAgICAgZXF1YWxseSB3ZWlnaHRlZC4gTWluLW1heCBub3JtYWxpemF0aW9uIGlzIHV0aWxpemVkLCB3aGVyZSB0aGVcbiAgICAgICAgICAgICAgICBtaW5pbXVtIHZhbHVlIGluIHRoZSByYW5nZSBvZiB2YWx1ZXMgZm9yIGVhY2ggZGF0YXNldCBpcyBzZXQgYXRcbiAgICAgICAgICAgICAgICAwLCB0aGUgbWF4aW11bSB2YWx1ZSBpcyBzZXQgYXQgMSwgYW5kIGV2ZXJ5IG90aGVyIHZhbHVlIGlzXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtZWQgaW50byBhIGRlY2ltYWwgYmV0d2VlbiAwIGFuZCAxLiBGb3IgZXhhbXBsZSwgaWYgdGhlXG4gICAgICAgICAgICAgICAgbWluaW11bSB2YWx1ZSBmb3IgdW5lbXBsb3ltZW50IHdhcyAxMCBhbmQgdGhlIG1heGltdW0gdmFsdWUgd2FzXG4gICAgICAgICAgICAgICAgMzAsIGEgdmFsdWUgb2YgMjAgd291bGQgYmUgdHJhbnNmb3JtZWQgdG8gMC41IHNpbmNlIGl0IGlzXG4gICAgICAgICAgICAgICAgaGFsZndheSBiZXR3ZWVuIDEwIGFuZCAzMC5cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgIDwvbGk+XG5cbiAgICAgICAgICA8bGk+XG4gICAgICAgICAgICA8c2VjdGlvbj5cbiAgICAgICAgICAgICAgPGgzPkNhbGN1bGF0ZSBjdW11bGF0aXZlIGluZGV4IHNjb3JlPC9oMz5cbiAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgVG8gY29tYmluZSBhbGwgdmFyaWFibGVzIGludG8gYSBzaW5nbGUgY3VtdWxhdGl2ZSBpbmRleCBzY29yZSxcbiAgICAgICAgICAgICAgICB3ZSBhdmVyYWdlIHRoZSBub3JtYWxpemVkIHZhbHVlcyBhY3Jvc3MgaW5kaWNhdG9ycy5cbiAgICAgICAgICAgICAgPC9wPlxuXG4gICAgICAgICAgICAgIDxHcmlkQ29udGFpbmVyIGNsYXNzTmFtZT17Jyd9PlxuICAgICAgICAgICAgICAgIDxHcmlkIHJvdyBjbGFzc05hbWU9eydqNDAtbWF0aC1kaXZpc2lvbi1jb250YWluZXInfT5cbiAgICAgICAgICAgICAgICAgIDxHcmlkIGNvbCBjbGFzc05hbWU9eydqNDAtbWF0aC1lcS1sZWZ0LXNpZGUgZ3JpZC1jb2wtZmlsbCd9PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2o0MC1tYXRoLWVxLW51bWVyYXRvcid9PlxuICAgICAgICAgICAgICAgICAgICAgIERhdGFzZXQgMSArIERhdGFzZXQgMiArIC4uLiArIERhdGFzZXQgTlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydqNDAtbWF0aC1lcS1kZW5vbWluYXRvcid9PlxuICAgICAgICAgICAgICAgICAgICAgICMgb2YgZGF0YXNldHNcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICA8R3JpZCBjb2wgY2xhc3NOYW1lPXsnajQwLW1hdGgtZXEtbWlkZGxlIGdyaWQtY29sLWF1dG8nfT5cbiAgICAgICAgICAgICAgICAgICAgPVxuICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgPEdyaWQgY29sIGNsYXNzTmFtZT17J2o0MC1tYXRoLWVxLXJpZ2h0LXNpZGUgZ3JpZC1jb2wtZmlsbCd9PlxuICAgICAgICAgICAgICAgICAgICBDdW11bGF0aXZlIGluZGV4IHNjb3JlXG4gICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICA8L0dyaWRDb250YWluZXI+XG4gICAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgICAgPC9saT5cblxuICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgIDxzZWN0aW9uPlxuICAgICAgICAgICAgICA8aDMgY2xhc3NOYW1lPXsnajQwLWl0ZW0tbGlzdC10aXRsZSd9PkFzc2lnbiBwcmlvcml0eTwvaDM+XG4gICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgIENlbnN1cyBibG9jayBncm91cHMgYXJlIHNvcnRlZCBieSB0aGVpciBjdW11bGF0aXZlIGluZGV4IHNjb3JlXG4gICAgICAgICAgICAgICAgZnJvbSBoaWdoZXN0IHRvIGxvd2VzdC4gQ2Vuc3VzIGJsb2NrIGdyb3VwcyB0aGF0IGFyZSBpbiB0aGUgdG9wXG4gICAgICAgICAgICAgICAgMjUgcGVyY2VudGlsZSAoaS5lLiBoYXZlIGEgY3VtdWxhdGl2ZSBpbmRleCBzY29yZSBpbiB0aGUgNzUgLVxuICAgICAgICAgICAgICAgIDEwMHRoIHBlcmNlbnRpbGUpIHdpbGwgYmUgY29uc2lkZXJlZCB0aGUgcHJpb3JpdGl6ZWRcbiAgICAgICAgICAgICAgICBjb21tdW5pdGllcy5cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cbiAgICA8Lz5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFNjb3JlU3RlcHNMaXN0O1xuIiwiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHtHcmlkfSBmcm9tICdAdHJ1c3N3b3Jrcy9yZWFjdC11c3dkcyc7XG5pbXBvcnQge3VzZUludGx9IGZyb20gJ2dhdHNieS1wbHVnaW4taW50bCc7XG5pbXBvcnQge2RlZmluZU1lc3NhZ2VzfSBmcm9tICdyZWFjdC1pbnRsJztcblxuaW1wb3J0IEFsZXJ0V3JhcHBlciBmcm9tICcuLi9jb21wb25lbnRzL0FsZXJ0V3JhcHBlcic7XG5pbXBvcnQgRGF0YXNldENvbnRhaW5lciBmcm9tICcuLi9jb21wb25lbnRzL0RhdGFzZXRDb250YWluZXInO1xuaW1wb3J0IERvd25sb2FkUGFja2V0IGZyb20gJy4uL2NvbXBvbmVudHMvRG93bmxvYWRQYWNrZXQnO1xuaW1wb3J0IEo0ME1haW5HcmlkQ29udGFpbmVyIGZyb20gJy4uL2NvbXBvbmVudHMvSjQwTWFpbkdyaWRDb250YWluZXInO1xuaW1wb3J0IExheW91dCBmcm9tICcuLi9jb21wb25lbnRzL2xheW91dCc7XG5pbXBvcnQgU2NvcmVTdGVwc0xpc3QgZnJvbSAnLi4vY29tcG9uZW50cy9zY29yZVN0ZXBzTGlzdCc7XG5cbmludGVyZmFjZSBNZXRob2RQYWdlUHJvcHMge1xuICBsb2NhdGlvbjogTG9jYXRpb247XG59XG5cbi8vIG1hcmt1cFxuY29uc3QgSW5kZXhQYWdlID0gKHtsb2NhdGlvbn06IE1ldGhvZFBhZ2VQcm9wcykgPT4ge1xuICBjb25zdCBpbnRsID0gdXNlSW50bCgpO1xuICBjb25zdCBtZXNzYWdlcyA9IGRlZmluZU1lc3NhZ2VzKHtcbiAgICBtZXRob2RvbG9neVBhZ2VIZWFkZXI6IHtcbiAgICAgIGlkOiAnbWV0aG9kb2xvZ3kucGFnZS5oZWFkZXIudGV4dCcsXG4gICAgICBkZWZhdWx0TWVzc2FnZTogJ01ldGhvZG9sb2d5JyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnbWV0aG9kb2xvZ3kgcGFnZSBoZWFkZXIgdGV4dCcsXG4gICAgfSxcbiAgICBtZXRob2RvbG9neVBhZ2VwMToge1xuICAgICAgaWQ6ICdtZXRob2RvbG9neS5wYWdlLnBhcmFncmFwaC5maXJzdCcsXG4gICAgICBkZWZhdWx0TWVzc2FnZTogJ1RoZSBjdW11bGF0aXZlIGluZGV4IHNjb3JlIGlzIGEgbWV0cmljIHRoYXQgaXMgaW50ZW5kZWQgdG8gYXNzaXN0IEZlZGVyYWwgYWdlbmNpZXMnK1xuICAgICAgJyBpbiBpZGVudGlmeWluZyBkaXNhZHZhbnRhZ2VkIGNvbW11bml0aWVzIGZvciB0aGUgcHVycG9zZXMgb2YgdGhlIEp1c3RpY2UgNDAnK1xuICAgICAgJyBJbml0aWF0aXZlLiBUaGUgc2NvcmUgbWV0aG9kb2xvZ3kgYW5kIGluY2x1ZGVkIGRhdGEgc2V0cyBhcmUgY3VycmVudGx5IGluIGJldGEgYW5kJytcbiAgICAgICcgbWF5IGNoYW5nZSBvdmVyIHRpbWUuJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnbWV0aG9kb2xvZ3kgcGFnZSBwYXJhZ3JhcGggMScsXG4gICAgfSxcbiAgICBtZXRob2RvbG9neVBhZ2VwMjoge1xuICAgICAgaWQ6ICdtZXRob2RvbG9neS5wYWdlLnBhcmFncmFwaC5zZWNvbmQnLFxuICAgICAgZGVmYXVsdE1lc3NhZ2U6ICdMZWFybiBhYm91dCB0aGUgZGF0YXNldHMgdXNlZCBpbiB0aGUgY3VtdWxhdGl2ZSBzY29yZSBhbmQgcmVhZCBhYm91dCcrXG4gICAgICAgJyBob3cgdGhlIHNjb3JlIGlzIGNhbGN1bGF0ZWQuIERvd25sb2FkIHRoZSBsaXN0IG9mIHByaW9yaXRpemVkIGNvbW11bml0aWVzIGFsb25nIHdpdGggdGhlIGRhdGFzZXRzJytcbiAgICAgICAnIHVzZWQgaW4gdGhlIHNjb3JlLicsXG4gICAgICBkZXNjcmlwdGlvbjogJ21ldGhvZG9sb2d5IHBhZ2UgcGFyYWdyYXBoIDInLFxuICAgIH0sXG4gIH0pO1xuXG4gIHJldHVybiAoXG4gICAgPExheW91dCBsb2NhdGlvbj17bG9jYXRpb259PlxuXG4gICAgICA8SjQwTWFpbkdyaWRDb250YWluZXI+XG4gICAgICAgIDxBbGVydFdyYXBwZXIgc2hvd0JldGFBbGVydD17dHJ1ZX0gc2hvd0xpbWl0ZWREYXRhQWxlcnQ9e2ZhbHNlfS8+XG4gICAgICA8L0o0ME1haW5HcmlkQ29udGFpbmVyPlxuXG4gICAgICA8SjQwTWFpbkdyaWRDb250YWluZXIgY2xhc3NOYW1lPXsnajQwLW1haW4tY29udGVudCd9PlxuICAgICAgICA8aDE+e2ludGwuZm9ybWF0TWVzc2FnZShtZXNzYWdlcy5tZXRob2RvbG9neVBhZ2VIZWFkZXIpfTwvaDE+XG4gICAgICAgIDxHcmlkIHJvdyBnYXA+XG4gICAgICAgICAgPEdyaWQgY29sPXsxMn0gdGFibGV0PXt7Y29sOiA2fX0+XG4gICAgICAgICAgICA8c2VjdGlvbj5cbiAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZShtZXNzYWdlcy5tZXRob2RvbG9neVBhZ2VwMSl9XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZShtZXNzYWdlcy5tZXRob2RvbG9neVBhZ2VwMil9XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgPEdyaWQgY29sPXsxMn0gdGFibGV0PXt7Y29sOiA2fX0+XG4gICAgICAgICAgICA8RG93bmxvYWRQYWNrZXQgLz5cbiAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgIDwvR3JpZD5cbiAgICAgIDwvSjQwTWFpbkdyaWRDb250YWluZXI+XG5cbiAgICAgIDxKNDBNYWluR3JpZENvbnRhaW5lciBmdWxsV2lkdGg9e3RydWV9PlxuICAgICAgICA8R3JpZCByb3c+XG4gICAgICAgICAgPEdyaWQgY29sPlxuICAgICAgICAgICAgPERhdGFzZXRDb250YWluZXIvPlxuICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgPC9HcmlkPlxuICAgICAgPC9KNDBNYWluR3JpZENvbnRhaW5lcj5cblxuICAgICAgPEo0ME1haW5HcmlkQ29udGFpbmVyPlxuICAgICAgICA8R3JpZCByb3c+PEdyaWQgY29sPlxuICAgICAgICAgIDxTY29yZVN0ZXBzTGlzdC8+XG4gICAgICAgIDwvR3JpZD48L0dyaWQ+XG4gICAgICA8L0o0ME1haW5HcmlkQ29udGFpbmVyPlxuICAgIDwvTGF5b3V0PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgSW5kZXhQYWdlO1xuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///1095\n')}}]); |