-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy path4196.bc376f2d.iframe.bundle.js
2 lines (2 loc) · 157 KB
/
4196.bc376f2d.iframe.bundle.js
1
2
"use strict";(self.webpackChunkblockly_mooc=self.webpackChunkblockly_mooc||[]).push([[4196],{"./src/code-studio/utils.js":(__unused_webpack_module,exports,__webpack_require__)=>{Object.defineProperty(exports,"__esModule",{value:!0}),exports.environmentSpecificCookieName=function environmentSpecificCookieName(name){var rack_env=window.dashboard.rack_env;if("production"===rack_env)return name;return"".concat(name,"_").concat(rack_env)},exports.getRootDomainFromHostname=function getRootDomainFromHostname(hostname){return hostname.split(".").slice(-2).join(".")},exports.hasQueryParam=function hasQueryParam(name){var parsedParams=queryParams();return Object.prototype.hasOwnProperty.call(parsedParams,name)},exports.queryParams=queryParams,exports.resetWindowLocation=function resetWindowLocation(){windowLocation=window.location},exports.setWindowLocation=function setWindowLocation(fakeLocation){windowLocation=fakeLocation},exports.updateQueryParam=function updateQueryParam(param,value){var useReplaceState=arguments.length>2&&void 0!==arguments[2]&&arguments[2],newString=_queryString.default.stringify(_objectSpread(_objectSpread({},_queryString.default.parse(windowLocation.search)),{},_defineProperty({},param,value))),newLocation=windowLocation.pathname;newString&&(newLocation+="?"+newString);var method=useReplaceState?"replaceState":"pushState";window.history[method](null,document.title,newLocation)};var _queryString=function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}(__webpack_require__("./node_modules/query-string/index.js"));function _typeof(o){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},_typeof(o)}function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach((function(r){_defineProperty(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}function _defineProperty(e,r,t){return(r=function _toPropertyKey(t){var i=function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}(t,"string");return"symbol"==_typeof(i)?i:i+""}(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}var windowLocation=window.location;function queryParams(name){var parsed=_queryString.default.parse(windowLocation.search);return name?parsed[name]:parsed}},"./src/geographyConstants.js":(__unused_webpack_module,exports,__webpack_require__)=>{Object.defineProperty(exports,"__esModule",{value:!0}),exports.STATE_CODES=exports.STATES=exports.COUNTRIES=void 0;var _sharedConstants=__webpack_require__("./generated-scripts/sharedConstants.ts");exports.STATE_CODES=Object.keys(_sharedConstants.UsStates).sort(),exports.STATES=["","Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Washington DC","Delaware","Florida","Georgia","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","North Carolina","North Dakota","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","West Virginia","Wisconsin","Wyoming"],exports.COUNTRIES=[{label:"AD",value:"Andorra"},{label:"AE",value:"United Arab Emirates"},{label:"AF",value:"Afghanistan"},{label:"AG",value:"Antigua and Barbuda"},{label:"AI",value:"Anguilla"},{label:"AL",value:"Albania"},{label:"AM",value:"Armenia"},{label:"AO",value:"Angola"},{label:"AQ",value:"Antarctica"},{label:"AR",value:"Argentina"},{label:"AS",value:"American Samoa"},{label:"AT",value:"Austria"},{label:"AU",value:"Australia"},{label:"AW",value:"Aruba"},{label:"AX",value:"Åland Islands"},{label:"AZ",value:"Azerbaijan"},{label:"BA",value:"Bosnia and Herzegovina"},{label:"BB",value:"Barbados"},{label:"BD",value:"Bangladesh"},{label:"BE",value:"Belgium"},{label:"BF",value:"Burkina Faso"},{label:"BG",value:"Bulgaria"},{label:"BH",value:"Bahrain"},{label:"BI",value:"Burundi"},{label:"BJ",value:"Benin"},{label:"BL",value:"Saint Barthélemy"},{label:"BM",value:"Bermuda"},{label:"BN",value:"Brunei"},{label:"BO",value:"Plurinational State of Bolivia"},{label:"BQ",value:"Bonaire"},{label:"BR",value:"Brazil"},{label:"BS",value:"Bahamas"},{label:"BT",value:"Bhutan"},{label:"BV",value:"Bouvet Island"},{label:"BW",value:"Botswana"},{label:"BY",value:"Belarus"},{label:"BZ",value:"Belize"},{label:"CA",value:"Canada"},{label:"CC",value:"Cocos (Keeling) Islands"},{label:"CD",value:"Democratic Republic of Congo"},{label:"CF",value:"Central African Republic"},{label:"CG",value:"Congo"},{label:"CH",value:"Switzerland"},{label:"CI",value:"Côte d'Ivoire"},{label:"CK",value:"Cook Islands"},{label:"CL",value:"Chile"},{label:"CM",value:"Cameroon"},{label:"CN",value:"China"},{label:"CO",value:"Colombia"},{label:"CR",value:"Costa Rica"},{label:"CU",value:"Cuba"},{label:"CV",value:"Cape Verde"},{label:"CW",value:"Curaçao"},{label:"CX",value:"Christmas Island"},{label:"CY",value:"Cyprus"},{label:"CZ",value:"Czech Republic"},{label:"DE",value:"Germany"},{label:"DJ",value:"Djibouti"},{label:"DK",value:"Denmark"},{label:"DM",value:"Dominica"},{label:"DO",value:"Dominican Republic"},{label:"DZ",value:"Algeria"},{label:"EC",value:"Ecuador"},{label:"EE",value:"Estonia"},{label:"EG",value:"Egypt"},{label:"EH",value:"Western Sahara"},{label:"ER",value:"Eritrea"},{label:"ES",value:"Spain"},{label:"ET",value:"Ethiopia"},{label:"FI",value:"Finland"},{label:"FJ",value:"Fiji"},{label:"FK",value:"Falkland Islands (Malvinas)"},{label:"FM",value:"Micronesia"},{label:"FO",value:"Faroe Islands"},{label:"FR",value:"France"},{label:"GA",value:"Gabon"},{label:"GB",value:"United Kingdom"},{label:"GD",value:"Grenada"},{label:"GE",value:"Georgia"},{label:"GF",value:"French Guiana"},{label:"GG",value:"Guernsey"},{label:"GH",value:"Ghana"},{label:"GI",value:"Gibraltar"},{label:"GL",value:"Greenland"},{label:"GM",value:"Gambia"},{label:"GN",value:"Guinea"},{label:"GP",value:"Guadeloupe"},{label:"GQ",value:"Equatorial Guinea"},{label:"GR",value:"Greece"},{label:"GS",value:"South Georgia and the South Sandwich Islands"},{label:"GT",value:"Guatemala"},{label:"GU",value:"Guam"},{label:"GW",value:"Guinea-Bissau"},{label:"GY",value:"Guyana"},{label:"HK",value:"Hong Kong"},{label:"HM",value:"Heard Island and McDonald Islands"},{label:"HN",value:"Honduras"},{label:"HR",value:"Croatia"},{label:"HT",value:"Haiti"},{label:"HU",value:"Hungary"},{label:"ID",value:"Indonesia"},{label:"IE",value:"Ireland"},{label:"IL",value:"Israel"},{label:"IM",value:"Isle of Man"},{label:"IN",value:"India"},{label:"IO",value:"British Indian Ocean Territory"},{label:"IQ",value:"Iraq"},{label:"IR",value:"Islamic Republic of Iran"},{label:"IS",value:"Iceland"},{label:"IT",value:"Italy"},{label:"JE",value:"Jersey"},{label:"JM",value:"Jamaica"},{label:"JO",value:"Jordan"},{label:"JP",value:"Japan"},{label:"KE",value:"Kenya"},{label:"KG",value:"Kyrgyzstan"},{label:"KH",value:"Cambodia"},{label:"KI",value:"Kiribati"},{label:"KM",value:"Comoros"},{label:"KN",value:"Saint Kitts and Nevis"},{label:"KP",value:"Democratic People's Republic of Korea"},{label:"KR",value:"Republic of Korea"},{label:"KW",value:"Kuwait"},{label:"KY",value:"Cayman Islands"},{label:"KZ",value:"Kazakhstan"},{label:"LA",value:"Lao People's Democratic Republic"},{label:"LB",value:"Lebanon"},{label:"LC",value:"Saint Lucia"},{label:"LI",value:"Liechtenstein"},{label:"LK",value:"Sri Lanka"},{label:"LR",value:"Liberia"},{label:"LS",value:"Lesotho"},{label:"LT",value:"Lithuania"},{label:"LU",value:"Luxembourg"},{label:"LV",value:"Latvia"},{label:"LY",value:"Libya"},{label:"MA",value:"Morocco"},{label:"MC",value:"Monaco"},{label:"MD",value:"Moldova"},{label:"ME",value:"Montenegro"},{label:"MG",value:"Madagascar"},{label:"MH",value:"Marshall Islands"},{label:"MK",value:"Republic of Macedonia"},{label:"ML",value:"Mali"},{label:"MM",value:"Myanmar"},{label:"MN",value:"Mongolia"},{label:"MO",value:"Macao"},{label:"MP",value:"Northern Mariana Islands"},{label:"MQ",value:"Martinique"},{label:"MR",value:"Mauritania"},{label:"MS",value:"Montserrat"},{label:"MT",value:"Malta"},{label:"MU",value:"Mauritius"},{label:"MV",value:"Maldives"},{label:"MW",value:"Malawi"},{label:"MX",value:"Mexico"},{label:"MY",value:"Malaysia"},{label:"MZ",value:"Mozambique"},{label:"NA",value:"Namibia"},{label:"NC",value:"New Caledonia"},{label:"NE",value:"Niger"},{label:"NF",value:"Norfolk Island"},{label:"NG",value:"Nigeria"},{label:"NI",value:"Nicaragua"},{label:"NL",value:"Netherlands"},{label:"NO",value:"Norway"},{label:"NP",value:"Nepal"},{label:"NR",value:"Nauru"},{label:"NU",value:"Niue"},{label:"NZ",value:"New Zealand"},{label:"OM",value:"Oman"},{label:"PA",value:"Panama"},{label:"PE",value:"Peru"},{label:"PF",value:"French Polynesia"},{label:"PG",value:"Papua New Guinea"},{label:"PH",value:"Philippines"},{label:"PK",value:"Pakistan"},{label:"PL",value:"Poland"},{label:"PM",value:"Saint Pierre and Miquelon"},{label:"PN",value:"Pitcairn"},{label:"PR",value:"Puerto Rico"},{label:"PS",value:"Palestine"},{label:"PT",value:"Portugal"},{label:"PW",value:"Palau"},{label:"PY",value:"Paraguay"},{label:"QA",value:"Qatar"},{label:"RE",value:"Réunion"},{label:"RO",value:"Romania"},{label:"RS",value:"Serbia"},{label:"RU",value:"Russian Federation"},{label:"RW",value:"Rwanda"},{label:"SA",value:"Saudi Arabia"},{label:"SB",value:"Solomon Islands"},{label:"SC",value:"Seychelles"},{label:"SD",value:"Sudan"},{label:"SE",value:"Sweden"},{label:"SG",value:"Singapore"},{label:"SI",value:"Slovenia"},{label:"SJ",value:"Svalbard and Jan Mayen"},{label:"SK",value:"Slovakia"},{label:"SL",value:"Sierra Leone"},{label:"SM",value:"San Marino"},{label:"SN",value:"Senegal"},{label:"SO",value:"Somalia"},{label:"SR",value:"Suriname"},{label:"SS",value:"South Sudan"},{label:"ST",value:"Sao Tome and Principe"},{label:"SV",value:"El Salvador"},{label:"SX",value:"Sint Maarten (Dutch part)"},{label:"SY",value:"Syrian Arab Republic"},{label:"SZ",value:"Swaziland"},{label:"TC",value:"Turks and Caicos Islands"},{label:"TD",value:"Chad"},{label:"TG",value:"Togo"},{label:"TH",value:"Thailand"},{label:"TJ",value:"Tajikistan"},{label:"TK",value:"Tokelau"},{label:"TL",value:"Timor-Leste"},{label:"TM",value:"Turkmenistan"},{label:"TN",value:"Tunisia"},{label:"TO",value:"Tonga"},{label:"TR",value:"Turkey"},{label:"TT",value:"Trinidad and Tobago"},{label:"TV",value:"Tuvalu"},{label:"TW",value:"Taiwan"},{label:"TZ",value:"Tanzania"},{label:"UA",value:"Ukraine"},{label:"UG",value:"Uganda"},{label:"US",value:"United States"},{label:"UY",value:"Uruguay"},{label:"UZ",value:"Uzbekistan"},{label:"VA",value:"Holy See (Vatican City State)"},{label:"VC",value:"Saint Vincent and the Grenadines"},{label:"VE",value:"Bolivarian Republic of Venezuela"},{label:"VG",value:"Virgin Islands, British"},{label:"VI",value:"Virgin Islands, U.S."},{label:"VN",value:"Viet Nam"},{label:"VU",value:"Vanuatu"},{label:"WF",value:"Wallis and Futuna"},{label:"WS",value:"Samoa"},{label:"XK",value:"Kosovo"},{label:"YE",value:"Yemen"},{label:"YT",value:"Mayotte"},{label:"ZA",value:"South Africa"},{label:"ZM",value:"Zambia"},{label:"ZW",value:"Zimbabwe"}].sort((function(a,b){return a.value.localeCompare(b.value)}))},"./src/templates/SchoolDataInputs.jsx":(__unused_webpack_module,exports,__webpack_require__)=>{function _typeof(o){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},_typeof(o)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.SCHOOL_INFO_ID=void 0,exports.default=SchoolDataInputs;var _button=__webpack_require__("../frontend/packages/component-library/dist/cjs/button/index.js"),_dropdown=__webpack_require__("../frontend/packages/component-library/dist/cjs/dropdown/index.js"),_typography=__webpack_require__("../frontend/packages/component-library/dist/cjs/typography/index.js"),_classnames=_interopRequireDefault(__webpack_require__("./node_modules/classnames/index.js")),_propTypes=_interopRequireDefault(__webpack_require__("./node_modules/prop-types/index.js")),_react=function _interopRequireWildcard(e,r){if(!r&&e&&e.__esModule)return e;if(null===e||"object"!=_typeof(e)&&"function"!=typeof e)return{default:e};var t=_getRequireWildcardCache(r);if(t&&t.has(e))return t.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&{}.hasOwnProperty.call(e,u)){var i=a?Object.getOwnPropertyDescriptor(e,u):null;i&&(i.get||i.set)?Object.defineProperty(n,u,i):n[u]=e[u]}return n.default=e,t&&t.set(e,n),n}(__webpack_require__("./node_modules/react/index.js")),_signUpFlowConstants=__webpack_require__("./src/signUpFlow/signUpFlowConstants.tsx"),_SchoolNameInput=_interopRequireDefault(__webpack_require__("./src/templates/SchoolNameInput.jsx")),_SchoolZipSearch=_interopRequireDefault(__webpack_require__("./src/templates/SchoolZipSearch.jsx")),_sharedConstants=__webpack_require__("./generated-scripts/sharedConstants.ts"),_locale=_interopRequireDefault(__webpack_require__("./src/util/locale-do-not-import.js")),_getCountriesUsFirst=__webpack_require__("./src/schoolInfo/utils/getCountriesUsFirst.ts"),_schoolAssociationModule=_interopRequireDefault(__webpack_require__("./src/templates/school-association.module.scss"));function _getRequireWildcardCache(e){if("function"!=typeof WeakMap)return null;var r=new WeakMap,t=new WeakMap;return(_getRequireWildcardCache=function _getRequireWildcardCache(e){return e?t:r})(e)}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _toConsumableArray(r){return function _arrayWithoutHoles(r){if(Array.isArray(r))return _arrayLikeToArray(r)}(r)||function _iterableToArray(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r)}(r)||function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0}}(r)||function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n}var SEARCH_DEFAULTS=[{value:_sharedConstants.NonSchoolOptions.CLICK_TO_ADD,text:_locale.default.schoolClickToAdd()},{value:_sharedConstants.NonSchoolOptions.NO_SCHOOL_SETTING,text:_locale.default.noSchoolSetting()}],COUNTRIES_US_FIRST=(0,_getCountriesUsFirst.getCountriesUsFirst)(),SCHOOL_INFO_ID=exports.SCHOOL_INFO_ID="school_info";function SchoolDataInputs(_ref){var schoolId=_ref.schoolId,country=_ref.country,schoolName=_ref.schoolName,schoolZip=_ref.schoolZip,schoolsList=_ref.schoolsList,setSchoolId=_ref.setSchoolId,setCountry=_ref.setCountry,setSchoolName=_ref.setSchoolName,setSchoolZip=_ref.setSchoolZip,usIp=_ref.usIp,containerClassName=_ref.containerClassName,_ref$includeHeaders=_ref.includeHeaders,includeHeaders=void 0===_ref$includeHeaders||_ref$includeHeaders,_ref$fieldNames=_ref.fieldNames,fieldNames=void 0===_ref$fieldNames?{country:"user[school_info_attributes][country]",ncesSchoolId:"user[school_info_attributes][school_id]",schoolName:"user[school_info_attributes][school_name]",schoolZip:"user[school_info_attributes][school_zip]",schoolType:"user[school_info_attributes][school_type]"}:_ref$fieldNames,countryIsUS=(0,_react.useMemo)((function(){return country===_signUpFlowConstants.US_COUNTRY_CODE}),[country]),countryIsSelectedOrUsIpFalse=(0,_react.useMemo)((function(){return country&&country!==_signUpFlowConstants.SELECT_COUNTRY||!1===usIp}),[country,usIp]),inputManually=(0,_react.useMemo)((function(){return schoolId===_sharedConstants.NonSchoolOptions.CLICK_TO_ADD}),[schoolId]),showNoSchoolSettingButton=(0,_react.useMemo)((function(){return schoolId!==_sharedConstants.NonSchoolOptions.NO_SCHOOL_SETTING}),[schoolId]),schoolZipIsValid=(0,_react.useMemo)((function(){return _signUpFlowConstants.ZIP_REGEX.test(schoolZip)}),[schoolZip]),schoolSelectOptions=(0,_react.useMemo)((function(){return[{value:_sharedConstants.NonSchoolOptions.SELECT_A_SCHOOL,text:_locale.default.selectASchool()}].concat(_toConsumableArray(schoolsList))}),[schoolsList]),handleSchoolChange=function handleSchoolChange(id){setSchoolId(id)},labelClassName=schoolZipIsValid?"":_schoolAssociationModule.default.disabledLabel,computedStyleClass=(0,_classnames.default)(_schoolAssociationModule.default.schoolAssociationWrapper,containerClassName);return _react.default.createElement("div",{id:SCHOOL_INFO_ID,className:computedStyleClass},includeHeaders&&_react.default.createElement("div",{className:_schoolAssociationModule.default.headerContainer},_react.default.createElement(_typography.Heading2,null,_locale.default.censusHeading()),_react.default.createElement(_typography.BodyTwoText,null,_locale.default.schoolInfoInterstitialTitle())),_react.default.createElement("div",{className:_schoolAssociationModule.default.inputContainer},_react.default.createElement(_dropdown.SimpleDropdown,{id:"uitest-country-dropdown",className:_schoolAssociationModule.default.dropdown,name:fieldNames.country,labelText:_locale.default.whatCountry(),items:COUNTRIES_US_FIRST,selectedValue:country,onChange:function onChange(e){return function handleCountryChange(c){setCountry(c)}(e.target.value)},dropdownTextThickness:"thin"}),countryIsUS&&_react.default.createElement("div",null,_react.default.createElement(_SchoolZipSearch.default,{fieldNames:{schoolZip:fieldNames.schoolZip,ncesSchoolId:fieldNames.ncesSchoolId,schoolName:fieldNames.schoolName},schoolId,setSchoolId,schoolZip,setSchoolZip,schoolsList})),!countryIsUS&&countryIsSelectedOrUsIpFalse&&_react.default.createElement(_SchoolNameInput.default,{fieldNames:{schoolName:fieldNames.schoolName},schoolName,setSchoolName}),countryIsUS&&!inputManually&&_react.default.createElement("div",null,_react.default.createElement(_dropdown.SimpleDropdown,{id:"uitest-school-dropdown",disabled:!schoolZipIsValid,name:fieldNames.ncesSchoolId,className:(0,_classnames.default)(labelClassName,_schoolAssociationModule.default.dropdown),labelText:_locale.default.selectYourSchool(),itemGroups:[{label:_locale.default.schools(),groupItems:schoolSelectOptions},{label:_locale.default.additionalOptions(),groupItems:SEARCH_DEFAULTS}],selectedValue:schoolId,onChange:function onChange(e){return handleSchoolChange(e.target.value)},dropdownTextThickness:"thin"}),showNoSchoolSettingButton&&_react.default.createElement(_button.Button,{text:_locale.default.noSchoolSetting(),disabled:!schoolZipIsValid,color:"purple",type:"tertiary",size:"s",onClick:function onClick(e){e.preventDefault(),handleSchoolChange(_sharedConstants.NonSchoolOptions.NO_SCHOOL_SETTING)}})),countryIsUS&&inputManually&&_react.default.createElement("div",null,_react.default.createElement(_SchoolNameInput.default,{fieldNames:{schoolName:fieldNames.schoolName},schoolName,setSchoolName}),_react.default.createElement(_button.Button,{text:_locale.default.returnToResults(),color:"purple",type:"tertiary",size:"s",onClick:function onClick(){handleSchoolChange(_sharedConstants.NonSchoolOptions.SELECT_A_SCHOOL)}}))))}SchoolDataInputs.propTypes={includeHeaders:_propTypes.default.bool,fieldNames:_propTypes.default.object,containerClassName:_propTypes.default.string,schoolId:_propTypes.default.string.isRequired,country:_propTypes.default.string.isRequired,schoolName:_propTypes.default.string.isRequired,schoolZip:_propTypes.default.string.isRequired,schoolsList:_propTypes.default.arrayOf(_propTypes.default.shape({value:_propTypes.default.string,text:_propTypes.default.string})).isRequired,usIp:_propTypes.default.bool,setSchoolId:_propTypes.default.func.isRequired,setCountry:_propTypes.default.func.isRequired,setSchoolName:_propTypes.default.func.isRequired,setSchoolZip:_propTypes.default.func.isRequired}},"./src/templates/SchoolNameInput.jsx":(module,exports,__webpack_require__)=>{Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=SchoolNameInput;var _textField=_interopRequireDefault(__webpack_require__("../frontend/packages/component-library/dist/cjs/textField/index.js")),_propTypes=_interopRequireDefault(__webpack_require__("./node_modules/prop-types/index.js")),_react=_interopRequireDefault(__webpack_require__("./node_modules/react/index.js")),_locale=_interopRequireDefault(__webpack_require__("./src/util/locale-do-not-import.js"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function SchoolNameInput(_ref){var fieldNames=_ref.fieldNames,schoolName=_ref.schoolName,setSchoolName=_ref.setSchoolName;return _react.default.createElement(_textField.default,{id:"uitest-school-name",name:fieldNames.schoolName,label:_locale.default.schoolOrganizationQuestion(),onChange:function onChange(e){return function handleSchoolNameChange(name){setSchoolName(name)}(e.target.value)},value:schoolName})}SchoolNameInput.propTypes={fieldNames:_propTypes.default.object,schoolName:_propTypes.default.string,setSchoolName:_propTypes.default.func},module.exports=exports.default},"./src/templates/SchoolZipSearch.jsx":(module,exports,__webpack_require__)=>{function _typeof(o){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},_typeof(o)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=SchoolZipSearch;var _textField=_interopRequireDefault(__webpack_require__("../frontend/packages/component-library/dist/cjs/textField/index.js")),_typography=__webpack_require__("../frontend/packages/component-library/dist/cjs/typography/index.js"),_propTypes=_interopRequireDefault(__webpack_require__("./node_modules/prop-types/index.js")),_react=function _interopRequireWildcard(e,r){if(!r&&e&&e.__esModule)return e;if(null===e||"object"!=_typeof(e)&&"function"!=typeof e)return{default:e};var t=_getRequireWildcardCache(r);if(t&&t.has(e))return t.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&{}.hasOwnProperty.call(e,u)){var i=a?Object.getOwnPropertyDescriptor(e,u):null;i&&(i.get||i.set)?Object.defineProperty(n,u,i):n[u]=e[u]}return n.default=e,t&&t.set(e,n),n}(__webpack_require__("./node_modules/react/index.js")),_signUpFlowConstants=__webpack_require__("./src/signUpFlow/signUpFlowConstants.tsx"),_locale=_interopRequireDefault(__webpack_require__("./src/util/locale-do-not-import.js")),_schoolAssociationModule=_interopRequireDefault(__webpack_require__("./src/templates/school-association.module.scss"));function _getRequireWildcardCache(e){if("function"!=typeof WeakMap)return null;var r=new WeakMap,t=new WeakMap;return(_getRequireWildcardCache=function _getRequireWildcardCache(e){return e?t:r})(e)}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function SchoolZipSearch(_ref){var fieldNames=_ref.fieldNames,schoolZip=_ref.schoolZip,setSchoolZip=_ref.setSchoolZip,schoolZipIsValid=(0,_react.useMemo)((function(){return _signUpFlowConstants.ZIP_REGEX.test(schoolZip)}),[schoolZip]);return _react.default.createElement("div",{className:_schoolAssociationModule.default.inputContainer},_react.default.createElement("label",null,_react.default.createElement(_textField.default,{id:"uitest-school-zip",name:fieldNames.schoolZip,label:_locale.default.enterYourSchoolZip(),onChange:function onChange(e){return function handleZipChange(zip){setSchoolZip(zip)}(e.target.value)},value:schoolZip}),schoolZip&&!schoolZipIsValid&&_react.default.createElement(_typography.BodyThreeText,{className:_schoolAssociationModule.default.errorMessage},_locale.default.zipInvalidMessage())))}SchoolZipSearch.propTypes={fieldNames:_propTypes.default.object,schoolZip:_propTypes.default.string,setSchoolZip:_propTypes.default.func},module.exports=exports.default},"./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[2]!./src/templates/school-association.module.scss":(module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.d(__webpack_exports__,{A:()=>__WEBPACK_DEFAULT_EXPORT__});var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__("./node_modules/css-loader/dist/runtime/sourceMaps.js"),_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__),_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__("./node_modules/css-loader/dist/runtime/api.js"),___CSS_LOADER_EXPORT___=__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__)()(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default());___CSS_LOADER_EXPORT___.push([module.id,'.UpfbuqzcAhKzLKdYeCSO{text-align:center;display:grid}.UpfbuqzcAhKzLKdYeCSO h2{margin-bottom:.25rem}.UpfbuqzcAhKzLKdYeCSO p{margin-bottom:.375rem}.UpfbuqzcAhKzLKdYeCSO label{width:100%;margin-bottom:0}.UpfbuqzcAhKzLKdYeCSO label span::after{content:"*"}.UpfbuqzcAhKzLKdYeCSO input,.UpfbuqzcAhKzLKdYeCSO .o6rCIWElvQCpGcbhB3_9>div{width:100%}.UpfbuqzcAhKzLKdYeCSO button{border:0;padding-inline:0}.UpfbuqzcAhKzLKdYeCSO button:hover{background:none !important;text-decoration:underline !important}.UpfbuqzcAhKzLKdYeCSO .c22BrwkkCbFdCoxAp02N{margin-block:.4375rem 0;color:#e5311a}.RcZfhaO6rTA_ObbK2i9V{margin-bottom:1.75rem}.dOlWlUnqinAdSAX9Wk_V{justify-self:center;text-align:start;width:400px;display:flex;flex-direction:column;gap:1.125rem}.YbSyUZwSOsJ8zCjIaIc6 span{color:#bec2c7 !important}',"",{version:3,sources:["webpack://./src/templates/school-association.module.scss","webpack://./../shared/css/color.scss"],names:[],mappings:"AAGA,sBACE,iBAAA,CACA,YAAA,CAEA,yBACE,oBAAA,CAGF,wBACE,qBAAA,CAGF,4BACE,UAAA,CACA,eAAA,CAEA,wCACE,WAAA,CAIJ,4EAEE,UAAA,CAGF,6BACE,QAAA,CACA,gBAAA,CAEA,mCACE,0BAAA,CACA,oCAAA,CAIJ,4CACE,uBAAA,CACA,aC+KiB,CD3KrB,sBACE,qBAAA,CAGF,sBACE,mBAAA,CACA,gBAAA,CACA,WAAA,CACA,YAAA,CACA,qBAAA,CACA,YAAA,CAIA,2BACE,wBAAA",sourcesContent:["@import 'color.scss';\n@import 'font.scss';\n\n.schoolAssociationWrapper {\n text-align: center;\n display: grid;\n\n h2 {\n margin-bottom: 0.25rem;\n }\n\n p {\n margin-bottom: 0.375rem;\n }\n\n label {\n width: 100%;\n margin-bottom: 0;\n\n span::after {\n content: '*';\n }\n }\n\n input,\n .dropdown > div {\n width: 100%;\n }\n\n button {\n border: 0;\n padding-inline: 0;\n\n &:hover {\n background: none !important;\n text-decoration: underline !important;\n }\n }\n\n .errorMessage {\n margin-block: 0.4375rem 0;\n color: $light_negative_500;\n }\n}\n\n.headerContainer {\n margin-bottom: 1.75rem;\n}\n\n.inputContainer {\n justify-self: center;\n text-align: start;\n width: 400px;\n display: flex;\n flex-direction: column;\n gap: 1.125rem;\n}\n\n.disabledLabel {\n span {\n color: $light_gray_300 !important;\n }\n}\n","// colors from https://www.dropbox.com/s/ycjiwt8vxlmv2ih/Code.org_stylesheet_v2_09.05.13.pdf\n\n// Please keep this file simple; it should only contain color definitions\n// and aliases. Variables defined in this file are exported to\n// apps/src/util/color.js during the apps build process.\n\n$black: #000;\n$background_black: #121416;\n$dark_gray: #2D3139;\n$darkest_gray: #292F36;\n$dark_slate_gray: #282c34;\n$darkest_slate_gray: #25292d;\n$dark_charcoal: #4d575f;\n$charcoal: #5b6770;\n$light_gray: #949ca2;\n$lighter_gray: #c6cacd;\n$lightest_gray: #e7e8ea;\n$background_gray: #f2f2f2;\n$dimgray: #696969;\n$white: #fff;\n$default_blue: #3670b3;\n\n$dark_teal: #0094a3;\n$teal: #0093a4;\n$applab_button_teal: #1abc9c;\n$light_teal: #59cad3;\n$lightish_teal: #80d6de;\n$lighter_teal: #a6e3e8;\n$lightest_teal: #d9f3f5;\n$ai_rubric_cyan: #3cfff8;\n\n$purple: #8c52ba;\n$light_purple: #a69bc1;\n$lighter_purple: #cfc9de;\n$lightest_purple: #ebe8f1;\n\n$cyan: #0094ca;\n$light_cyan: #59b9dc;\n$lighter_cyan: #a6daed;\n$lightest_cyan: #d9eff7;\n$almost_white_cyan: #f5fcff;\n\n$orange: #ffa400;\n$light_orange: #ffc459;\n$lighter_orange: #ffe0a6;\n$lightest_orange: #fff2d9;\n$dark_orange: #ff8600;\n\n$green: #b9bf15;\n$light_green: #d1d567;\n$lighter_green: #e7e9ad;\n$lightest_green: #f5f5dc;\n$highlight_green: #8afc9b;\n\n$yellow: #ffb81d;\n$light_yellow: #ffdb74;\n$lighter_yellow: #ffebb5;\n$lightest_yellow: #fff7df;\n\n$goldenrod: #daa520;\n\n$header_text: $white;\n$bkgnd_color: $teal;\n$inset_color: $lighter_gray;\n$dark_color: $purple;\n$hdr_color: $purple;\n\n// Some extra colors.\n$red: #c00;\n$lightest_red: #fcc;\n$dark_red: #d62911;\n$realgreen: #008000;\n$realyellow: #ff0;\n$mustardyellow: #efcd1c;\n$twitter_blue: #00aced;\n$facebook_blue: #3b5998;\n$linkedin_blue: #0077B5;\n$dark_blue: #00647f;\n$blockly_flyout_gray: #ddd;\n$default_text: #333;\n$border_gray: #bbb;\n$border_light_gray: #d8d8d8;\n$table_header: #ececec;\n$table_light_row: #fcfcfc;\n$table_dark_row: #f4f4f4;\n\n// Progress colors.\n$level_submitted: $purple;\n$level_perfect: rgb(14, 190, 14);\n$level_passed: rgb(159, 212, 159);\n$level_attempted: $realyellow;\n$level_not_tried: #fefefe;\n$level_current: $orange;\n$level_review_rejected: $red;\n$level_review_accepted: rgb(11, 142, 11); // TODO: $level_passed;\n$assessment: $cyan;\n$workspace_running_background: #e5e5e5;\n\n// Experimental Sprite Lab validation colors.\n$dark_purple: #682A77;\n$bright_green: #0ebe0e;\n$neon_pink: #e9118f;\n\n// Links (used in apps).\n$link_color: #0596ce;\n\n// Shadow.\n$shadow: rgba(0, 0, 0, 0.3);\n\n// Colors that are taken from bootstrap, and not necessarily part of our core theme.\n$bootstrap_button_blue: #337ab7;\n$bootstrap_button_red: #d9534f;\n$bootstrap_error_background: #f2dede;\n$bootstrap_error_text: #b94a48;\n$bootstrap_v3_error_text: #a94442;\n$bootstrap_error_border: #ebccd1;\n$bootstrap_warning_background: #fcf8e3;\n$bootstrap_warning_text: #c09853;\n$bootstrap_warning_border: #faebcc;\n$bootstrap_border_color: #cccccc;\n$bootstrap_success_background: #dff0d8;\n$bootstrap_success_text: #468847;\n$bootstrap_success_border: #d6e9c6;\n\n// Colors taken from droplet, not part of our core theme.\n$droplet_light_green: #d3e965;\n$droplet_blue: #64b5f6;\n$droplet_bright_blue: #19c3e1;\n$droplet_yellow: #fff176;\n$droplet_orange: #ffb74d;\n$droplet_red: #f78183;\n$droplet_cyan: #4dd0e1;\n$droplet_pink: #f57ac6;\n$droplet_purple: #bb77c7;\n$droplet_green: #68d995;\n$droplet_white: $white;\n\n// Oceans: deep blue background.\n$oceans_deep_blue: rgb(2, 0, 28);\n\n// Dark theme background (used by default in Music Lab)\n$dark_black: #121212;\n\n// ===----===----===---- Phase 1 Colors: ----===----===----===\n// Brand\n$brand_primary_light: #E0F8F9;\n$brand_primary_default: #009EB0;\n$brand_primary_dark: #007785;\n\n$brand_secondary_light: #E0D1EC;\n$brand_secondary_default: #8C52BA;\n$brand_secondary_dark: #6C468A;\n\n$brand_accent_default: #ED6060;\n\n$brand_teal_5: #DFF2F4;\n\n//Product\n$product_affirmative_default: #3EA33E;\n\n$product_negative_light: #FDEBE9;\n$product_negative_default: #E5311A;\n$product_negative_dark: #AA2513;\n\n$product_caution_default: #F9CB28;\n\n$product_information_default: #007ACC;\n\n// Neutral\n$neutral_white: #FFFFFF;\n$neutral_light: #F7F8FA;\n$neutral_gray10: #EAEBEB;\n$neutral_dark10: #EAECEF;\n$neutral_dark20: #D1D4D8;\n$neutral_dark30: #BEC2C7;\n$neutral_dark40: #ABB0B6;\n$neutral_dark50: #989EA5;\n$neutral_dark60: #858C94;\n$neutral_dark70: #727A83;\n$neutral_dark80: #5F6872;\n$neutral_dark90: #4C5661;\n$neutral_dark: #292F36;\n\n//Brands\n$google_brand_color: #0F9D58;\n$microsoft_brand_color: #FFB900;\n$facebook_brand_color: #3B5998;\n$clever_brand_color: #1464FF;\n\n// ===----===----===---- Design system colors: ----===----===----===\n\n$light_primary_100: #BFE4E8;\n$light_primary_500: #0093A4;\n$light_primary_700: #007785;\n\n$light_secondary_100: #E2D4EE;\n$light_secondary_500: #8C52BA;\n$light_secondary_700: #6C468A;\n\n$light_gray_50: #F7F8FA;\n$light_gray_100: #EAECEF;\n$light_gray_200: #D1D4D8;\n$light_gray_300: #BEC2C7;\n$light_gray_400: #ABB0B6;\n$light_gray_500: #989EA5;\n$light_gray_600: #858C94;\n$light_gray_700: #727A83;\n$light_gray_800: #5F6872;\n$light_gray_900: #4C5661;\n$light_gray_950: #394450;\n\n$light_affirmative_100: #E2F1E2;\n$light_affirmative_500: #3EA33E;\n$light_affirmative_700: #2D742D;\n\n$light_negative_100: #FBE0DD;\n$light_negative_500: #E5311A;\n$light_negative_700: #B24949;\n\n$light_caution_100: #FEF7DF;\n$light_caution_500: #F9CB28;\n$light_caution_700: #C7A220;\n\n$light_accent_100: #FAD7D7;\n$light_accent_500: #ED6060;\n$light_accent_700: #D84C4C;\n\n$light_aqua_100: #CEFFFD;\n$light_aqua_500: #3CFFF8;\n$light_aqua_700: #30CCC6;\n\n$light_orange_100: #FFEDCC;\n$light_orange_500: #FFA400;\n$light_orange_700: #CC8300;\n\n$light_info_100: #DCEFFB;\n$light_info_500: #1892E3;\n$light_info_700: #1375B6;\n\n$light_white: #FFFFFF;\n\n$light_black: #292F36;\n\n$light_black_opacity_90: rgba(41, 47, 54, 0.90);\n$light_black_opacity-80: rgba(41, 47, 54, 0.80);\n$light_black_opacity-70: rgba(41, 47, 54, 0.70);\n$light_black_opacity-60: rgba(41, 47, 54, 0.60);\n$light_black_opacity-50: rgba(41, 47, 54, 0.50);\n$light_black_opacity-40: rgba(41, 47, 54, 0.40);\n$light_black_opacity-30: rgba(41, 47, 54, 0.30);\n$light_black_opacity-20: rgba(41, 47, 54, 0.20);\n$light_black_opacity-10: rgba(41, 47, 54, 0.10);\n"],sourceRoot:""}]),___CSS_LOADER_EXPORT___.locals={schoolAssociationWrapper:"UpfbuqzcAhKzLKdYeCSO",dropdown:"o6rCIWElvQCpGcbhB3_9",errorMessage:"c22BrwkkCbFdCoxAp02N",headerContainer:"RcZfhaO6rTA_ObbK2i9V",inputContainer:"dOlWlUnqinAdSAX9Wk_V",disabledLabel:"YbSyUZwSOsJ8zCjIaIc6"};const __WEBPACK_DEFAULT_EXPORT__=___CSS_LOADER_EXPORT___},"./src/templates/school-association.module.scss":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{default:()=>__WEBPACK_DEFAULT_EXPORT__});var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__("./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"),_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__),_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__("./node_modules/style-loader/dist/runtime/styleDomAPI.js"),_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__),_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__("./node_modules/style-loader/dist/runtime/insertBySelector.js"),_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default=__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__),_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__("./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"),_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default=__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__),_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__("./node_modules/style-loader/dist/runtime/insertStyleElement.js"),_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default=__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__),_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__("./node_modules/style-loader/dist/runtime/styleTagTransform.js"),_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default=__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__),_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_4_use_1_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_4_use_2_school_association_module_scss__WEBPACK_IMPORTED_MODULE_6__=__webpack_require__("./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[2]!./src/templates/school-association.module.scss"),options={};options.styleTagTransform=_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default(),options.setAttributes=_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default(),options.insert=_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null,"head"),options.domAPI=_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default(),options.insertStyleElement=_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default();_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_4_use_1_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_4_use_2_school_association_module_scss__WEBPACK_IMPORTED_MODULE_6__.A,options);const __WEBPACK_DEFAULT_EXPORT__=_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_4_use_1_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_4_use_2_school_association_module_scss__WEBPACK_IMPORTED_MODULE_6__.A&&_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_4_use_1_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_4_use_2_school_association_module_scss__WEBPACK_IMPORTED_MODULE_6__.A.locals?_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_4_use_1_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_4_use_2_school_association_module_scss__WEBPACK_IMPORTED_MODULE_6__.A.locals:void 0},"./src/schoolInfo/hooks/useSchoolInfo.tsx":function(__unused_webpack_module,exports,__webpack_require__){var __assign=this&&this.__assign||function(){return __assign=Object.assign||function(t){for(var s,i=1,n=arguments.length;i<n;i++)for(var p in s=arguments[i])Object.prototype.hasOwnProperty.call(s,p)&&(t[p]=s[p]);return t},__assign.apply(this,arguments)},__read=this&&this.__read||function(o,n){var m="function"==typeof Symbol&&o[Symbol.iterator];if(!m)return o;var r,e,i=m.call(o),ar=[];try{for(;(void 0===n||n-- >0)&&!(r=i.next()).done;)ar.push(r.value)}catch(error){e={error}}finally{try{r&&!r.done&&(m=i.return)&&m.call(i)}finally{if(e)throw e.error}}return ar},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.useSchoolInfo=useSchoolInfo;var react_1=__webpack_require__("./node_modules/react/index.js"),AnalyticsConstants_1=__webpack_require__("./src/metrics/AnalyticsConstants.js"),AnalyticsReporter_1=__importDefault(__webpack_require__("./src/metrics/AnalyticsReporter.js")),signUpFlowConstants_1=__webpack_require__("./src/signUpFlow/signUpFlowConstants.tsx"),sharedConstants_1=__webpack_require__("./generated-scripts/sharedConstants.ts"),constructSchoolOption_1=__webpack_require__("./src/schoolInfo/utils/constructSchoolOption.ts"),fetchSchools_1=__webpack_require__("./src/schoolInfo/utils/fetchSchools.ts");function useSchoolInfo(initialState){var mounted=(0,react_1.useRef)(!1),detectedCountry=(0,react_1.useMemo)((function(){return initialState.country||sessionStorage.getItem(signUpFlowConstants_1.SCHOOL_COUNTRY_SESSION_KEY)||(initialState.usIp?signUpFlowConstants_1.US_COUNTRY_CODE:signUpFlowConstants_1.SELECT_COUNTRY)}),[initialState.country,initialState.usIp]),detectedSchoolId=(0,react_1.useMemo)((function(){return initialState.schoolType===sharedConstants_1.NonSchoolOptions.NO_SCHOOL_SETTING?sharedConstants_1.NonSchoolOptions.NO_SCHOOL_SETTING:!initialState.schoolId&&initialState.schoolName&&initialState.schoolZip?sharedConstants_1.NonSchoolOptions.CLICK_TO_ADD:initialState.schoolId||sessionStorage.getItem(signUpFlowConstants_1.SCHOOL_ID_SESSION_KEY)||sharedConstants_1.NonSchoolOptions.SELECT_A_SCHOOL}),[initialState.schoolId,initialState.schoolType,initialState.schoolName,initialState.schoolZip]),detectedZip=(0,react_1.useMemo)((function(){return initialState.schoolZip||sessionStorage.getItem(signUpFlowConstants_1.SCHOOL_ZIP_SESSION_KEY)||""}),[initialState.schoolZip]),detectedSchoolName=(0,react_1.useMemo)((function(){return initialState.schoolId?"":initialState.schoolName||sessionStorage.getItem(signUpFlowConstants_1.SCHOOL_NAME_SESSION_KEY)||""}),[initialState.schoolName,initialState.schoolId]),_a=__read((0,react_1.useState)({country:detectedCountry,schoolId:detectedSchoolId,schoolZip:detectedZip,schoolName:detectedSchoolName}),2),state=_a[0],setState=_a[1],_b=__read((0,react_1.useState)([]),2),schoolsList=_b[0],setSchoolsList=_b[1],fetchSchools=(0,react_1.useCallback)((function(zip,callback){(0,fetchSchools_1.fetchSchools)(zip,callback)}),[]),handleSessionStorage=function(key,value){sessionStorage.getItem(key)!==value&&sessionStorage.setItem(key,value)},country=state.country,schoolId=state.schoolId,schoolZip=state.schoolZip,schoolName=state.schoolName;return(0,react_1.useEffect)((function(){handleSessionStorage(signUpFlowConstants_1.SCHOOL_COUNTRY_SESSION_KEY,country)}),[country]),(0,react_1.useEffect)((function(){if(!signUpFlowConstants_1.ZIP_REGEX.test(schoolZip))return handleSessionStorage(signUpFlowConstants_1.SCHOOL_ZIP_SESSION_KEY,""),void setSchoolsList([]);handleSessionStorage(signUpFlowConstants_1.SCHOOL_ZIP_SESSION_KEY,schoolZip),fetchSchools(schoolZip,(function(data){if(mounted.current){var schools=data.map(constructSchoolOption_1.constructSchoolOption).sort((function(a,b){return a.text.localeCompare(b.text)}));setSchoolsList(schools)}}))}),[schoolZip,fetchSchools]),(0,react_1.useEffect)((function(){handleSessionStorage(signUpFlowConstants_1.SCHOOL_ID_SESSION_KEY,schoolId)}),[schoolId]),(0,react_1.useEffect)((function(){handleSessionStorage(signUpFlowConstants_1.SCHOOL_NAME_SESSION_KEY,schoolName)}),[schoolName]),(0,react_1.useEffect)((function(){return mounted.current=!0,function(){mounted.current=!1}}),[]),{schoolId,country,schoolName,schoolZip,schoolsList,usIp:initialState.usIp,setSchoolId:function(value){value===sharedConstants_1.NonSchoolOptions.NO_SCHOOL_SETTING?AnalyticsReporter_1.default.sendEvent(AnalyticsConstants_1.EVENTS.DO_NOT_TEACH_AT_SCHOOL_CLICKED,{country},AnalyticsConstants_1.PLATFORMS.BOTH):value===sharedConstants_1.NonSchoolOptions.CLICK_TO_ADD?AnalyticsReporter_1.default.sendEvent(AnalyticsConstants_1.EVENTS.ADD_MANUALLY_CLICKED,{country},AnalyticsConstants_1.PLATFORMS.BOTH):AnalyticsReporter_1.default.sendEvent(AnalyticsConstants_1.EVENTS.SCHOOL_SELECTED_FROM_LIST,{"nces Id":value,country},AnalyticsConstants_1.PLATFORMS.BOTH),setState((function(prevState){return __assign(__assign({},prevState),{schoolId:value})}))},setCountry:function(value){AnalyticsReporter_1.default.sendEvent(AnalyticsConstants_1.EVENTS.COUNTRY_SELECTED,{country:value},AnalyticsConstants_1.PLATFORMS.BOTH),setState((function(prevState){return __assign(__assign({},prevState),{country:value})}))},setSchoolName:function(value){setState((function(prevState){return __assign(__assign({},prevState),{schoolName:value})}))},setSchoolZip:function(value){signUpFlowConstants_1.ZIP_REGEX.test(value)&&AnalyticsReporter_1.default.sendEvent(AnalyticsConstants_1.EVENTS.ZIP_CODE_ENTERED,{zip:value,country},AnalyticsConstants_1.PLATFORMS.BOTH),setState((function(prevState){return __assign(__assign({},prevState),{schoolZip:value})}))},reset:function(){setState({country:detectedCountry,schoolId:detectedSchoolId,schoolZip:detectedZip,schoolName:detectedSchoolName})}}}try{useSchoolInfo.displayName="useSchoolInfo",useSchoolInfo.__docgenInfo={description:"",displayName:"useSchoolInfo",props:{schoolId:{defaultValue:null,description:"",name:"schoolId",required:!1,type:{name:"string"}},country:{defaultValue:null,description:"",name:"country",required:!1,type:{name:"string"}},schoolName:{defaultValue:null,description:"",name:"schoolName",required:!1,type:{name:"string"}},schoolZip:{defaultValue:null,description:"",name:"schoolZip",required:!1,type:{name:"string"}},schoolType:{defaultValue:null,description:"",name:"schoolType",required:!1,type:{name:"string"}},usIp:{defaultValue:null,description:"",name:"usIp",required:!1,type:{name:"boolean"}}}},"undefined"!=typeof STORYBOOK_REACT_CLASSES&&(STORYBOOK_REACT_CLASSES["src/schoolInfo/hooks/useSchoolInfo.tsx#useSchoolInfo"]={docgenInfo:useSchoolInfo.__docgenInfo,name:"useSchoolInfo",path:"src/schoolInfo/hooks/useSchoolInfo.tsx#useSchoolInfo"})}catch(__react_docgen_typescript_loader_error){}},"./src/schoolInfo/utils/buildSchoolData.ts":(__unused_webpack_module,exports,__webpack_require__)=>{Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildSchoolData=function buildSchoolData(_a){var schoolId=_a.schoolId,country=_a.country,schoolName=_a.schoolName,schoolZip=_a.schoolZip;if(country===signUpFlowConstants_1.US_COUNTRY_CODE&&schoolId&&!Object.values(sharedConstants_1.NonSchoolOptions).some((function(option){return schoolId===option})))return{school_id:schoolId};if(country===signUpFlowConstants_1.US_COUNTRY_CODE&&schoolId===sharedConstants_1.NonSchoolOptions.NO_SCHOOL_SETTING){if(!schoolZip)return;return{country,school_type:sharedConstants_1.NonSchoolOptions.NO_SCHOOL_SETTING,zip:schoolZip}}if(country&&country!==signUpFlowConstants_1.SELECT_COUNTRY&&schoolName)return{country,school_name:schoolName,zip:country===signUpFlowConstants_1.US_COUNTRY_CODE?schoolZip:void 0}};var signUpFlowConstants_1=__webpack_require__("./src/signUpFlow/signUpFlowConstants.tsx"),sharedConstants_1=__webpack_require__("./generated-scripts/sharedConstants.ts")},"./src/schoolInfo/utils/constructSchoolOption.ts":(__unused_webpack_module,exports)=>{Object.defineProperty(exports,"__esModule",{value:!0}),exports.constructSchoolOption=function constructSchoolOption(school){return{value:school.nces_id.toString(),text:school.name}}},"./src/schoolInfo/utils/fetchSchools.ts":function(__unused_webpack_module,exports,__webpack_require__){var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))((function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator.throw(value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):function adopt(value){return value instanceof P?value:new P((function(resolve){resolve(value)}))}(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())}))},__generator=this&&this.__generator||function(thisArg,body){var f,y,t,g,_={label:0,sent:function(){if(1&t[0])throw t[1];return t[1]},trys:[],ops:[]};return g={next:verb(0),throw:verb(1),return:verb(2)},"function"==typeof Symbol&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return function step(op){if(f)throw new TypeError("Generator is already executing.");for(;g&&(g=0,op[0]&&(_=0)),_;)try{if(f=1,y&&(t=2&op[0]?y.return:op[0]?y.throw||((t=y.return)&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;switch(y=0,t&&(op=[2&op[0],t.value]),op[0]){case 0:case 1:t=op;break;case 4:return _.label++,{value:op[1],done:!1};case 5:_.label++,y=op[1],op=[0];continue;case 7:op=_.ops.pop(),_.trys.pop();continue;default:if(!(t=_.trys,(t=t.length>0&&t[t.length-1])||6!==op[0]&&2!==op[0])){_=0;continue}if(3===op[0]&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(6===op[0]&&_.label<t[1]){_.label=t[1],t=op;break}if(t&&_.label<t[2]){_.label=t[2],_.ops.push(op);break}t[2]&&_.ops.pop(),_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e],y=0}finally{f=t=0}if(5&op[0])throw op[1];return{value:op[0]?op[1]:void 0,done:!0}}([n,v])}}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.fetchSchools=function fetchSchools(zip,callback){return __awaiter(this,void 0,void 0,(function(){var searchUrl,response,data;return __generator(this,(function(_a){switch(_a.label){case 0:return searchUrl="".concat(signUpFlowConstants_1.SCHOOL_ZIP_SEARCH_URL).concat(zip),[4,fetch(searchUrl,{headers:{"X-Requested-With":"XMLHttpRequest"}})];case 1:if(!(response=_a.sent()).ok)throw new Error("Zip code search for schools failed");return[4,response.json()];case 2:return data=_a.sent(),callback(data),[2]}}))}))};var signUpFlowConstants_1=__webpack_require__("./src/signUpFlow/signUpFlowConstants.tsx")},"./src/schoolInfo/utils/getCountriesUsFirst.ts":function(__unused_webpack_module,exports,__webpack_require__){var __values=this&&this.__values||function(o){var s="function"==typeof Symbol&&Symbol.iterator,m=s&&o[s],i=0;if(m)return m.call(o);if(o&&"number"==typeof o.length)return{next:function(){return o&&i>=o.length&&(o=void 0),{value:o&&o[i++],done:!o}}};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCountriesUsFirst=function getCountriesUsFirst(){var e_1,_a,countries=[{value:signUpFlowConstants_1.SELECT_COUNTRY,text:locale_1.default.selectCountry()},{value:signUpFlowConstants_1.US_COUNTRY_CODE,text:locale_1.default.unitedStates()}],nonUsCountries=geographyConstants_1.COUNTRIES.filter((function(item){return item.label!==signUpFlowConstants_1.US_COUNTRY_CODE}));try{for(var nonUsCountries_1=__values(nonUsCountries),nonUsCountries_1_1=nonUsCountries_1.next();!nonUsCountries_1_1.done;nonUsCountries_1_1=nonUsCountries_1.next()){var nonUsCountry=nonUsCountries_1_1.value;countries.push({value:nonUsCountry.label,text:nonUsCountry.value})}}catch(e_1_1){e_1={error:e_1_1}}finally{try{nonUsCountries_1_1&&!nonUsCountries_1_1.done&&(_a=nonUsCountries_1.return)&&_a.call(nonUsCountries_1)}finally{if(e_1)throw e_1.error}}return countries};var geographyConstants_1=__webpack_require__("./src/geographyConstants.js"),signUpFlowConstants_1=__webpack_require__("./src/signUpFlow/signUpFlowConstants.tsx"),locale_1=__importDefault(__webpack_require__("./src/util/locale-do-not-import.js"))},"./src/schoolInfo/utils/schoolInfoInvalid.ts":(__unused_webpack_module,exports,__webpack_require__)=>{Object.defineProperty(exports,"__esModule",{value:!0}),exports.schoolInfoInvalid=function schoolInfoInvalid(_a){var country=_a.country,schoolName=_a.schoolName,schoolZip=_a.schoolZip,schoolId=_a.schoolId,schoolsList=_a.schoolsList;if(!country||country===signUpFlowConstants_1.SELECT_COUNTRY)return!0;if(country!==signUpFlowConstants_1.US_COUNTRY_CODE)return!schoolName;if(!Boolean(schoolZip))return!0;if(schoolId===sharedConstants_1.NonSchoolOptions.SELECT_A_SCHOOL)return!0;if(schoolId===sharedConstants_1.NonSchoolOptions.NO_SCHOOL_SETTING)return!1;if(schoolId===sharedConstants_1.NonSchoolOptions.CLICK_TO_ADD)return!schoolName;if(schoolId&&schoolsList.some((function(_a){var value=_a.value;return schoolId===value})))return!1;return!0};var signUpFlowConstants_1=__webpack_require__("./src/signUpFlow/signUpFlowConstants.tsx"),sharedConstants_1=__webpack_require__("./generated-scripts/sharedConstants.ts")},"./src/schoolInfo/utils/updateSchoolInfo.ts":function(__unused_webpack_module,exports,__webpack_require__){var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))((function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator.throw(value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):function adopt(value){return value instanceof P?value:new P((function(resolve){resolve(value)}))}(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())}))},__generator=this&&this.__generator||function(thisArg,body){var f,y,t,g,_={label:0,sent:function(){if(1&t[0])throw t[1];return t[1]},trys:[],ops:[]};return g={next:verb(0),throw:verb(1),return:verb(2)},"function"==typeof Symbol&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return function step(op){if(f)throw new TypeError("Generator is already executing.");for(;g&&(g=0,op[0]&&(_=0)),_;)try{if(f=1,y&&(t=2&op[0]?y.return:op[0]?y.throw||((t=y.return)&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;switch(y=0,t&&(op=[2&op[0],t.value]),op[0]){case 0:case 1:t=op;break;case 4:return _.label++,{value:op[1],done:!1};case 5:_.label++,y=op[1],op=[0];continue;case 7:op=_.ops.pop(),_.trys.pop();continue;default:if(!(t=_.trys,(t=t.length>0&&t[t.length-1])||6!==op[0]&&2!==op[0])){_=0;continue}if(3===op[0]&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(6===op[0]&&_.label<t[1]){_.label=t[1],t=op;break}if(t&&_.label<t[2]){_.label=t[2],_.ops.push(op);break}t[2]&&_.ops.pop(),_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e],y=0}finally{f=t=0}if(5&op[0])throw op[1];return{value:op[0]?op[1]:void 0,done:!0}}([n,v])}}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.updateSchoolInfo=function updateSchoolInfo(_a){return __awaiter(this,arguments,void 0,(function(_b){var schoolData,_c,_d,_e,_f,_g,schoolId=_b.schoolId,country=_b.country,schoolName=_b.schoolName,schoolZip=_b.schoolZip;return __generator(this,(function(_h){switch(_h.label){case 0:return(schoolData=(0,buildSchoolData_1.buildSchoolData)({schoolId,country,schoolName,schoolZip}))?(_c=fetch,_d=["/api/v1/user_school_infos"],_f={method:"PATCH"},_g={"Content-Type":"application/json"},_e="X-CSRF-Token",[4,(0,AuthenticityTokenStore_1.getAuthenticityToken)()]):[2];case 1:return[4,_c.apply(void 0,_d.concat([(_f.headers=(_g[_e]=_h.sent(),_g),_f.body=JSON.stringify({user:{school_info_attributes:schoolData}}),_f)]))];case 2:if(!_h.sent().ok)throw new Error("School info update failed");return[2]}}))}))};var AuthenticityTokenStore_1=__webpack_require__("./src/util/AuthenticityTokenStore.ts"),buildSchoolData_1=__webpack_require__("./src/schoolInfo/utils/buildSchoolData.ts")},"./src/signUpFlow/signUpFlowConstants.tsx":function(__unused_webpack_module,exports,__webpack_require__){var __read=this&&this.__read||function(o,n){var m="function"==typeof Symbol&&o[Symbol.iterator];if(!m)return o;var r,e,i=m.call(o),ar=[];try{for(;(void 0===n||n-- >0)&&!(r=i.next()).done;)ar.push(r.value)}catch(error){e={error}}finally{try{r&&!r.done&&(m=i.return)&&m.call(i)}finally{if(e)throw e.error}}return ar},__spreadArray=this&&this.__spreadArray||function(to,from,pack){if(pack||2===arguments.length)for(var ar,i=0,l=from.length;i<l;i++)!ar&&i in from||(ar||(ar=Array.prototype.slice.call(from,0,i)),ar[i]=from[i]);return to.concat(ar||Array.prototype.slice.call(from))};Object.defineProperty(exports,"__esModule",{value:!0}),exports.MAX_DISPLAY_NAME_LENGTH=exports.SCHOOL_ZIP_SEARCH_URL=exports.SELECT_COUNTRY=exports.ZIP_REGEX=exports.US_COUNTRY_CODE=exports.SIGN_UP_USER_TYPE=exports.clearSignUpSessionStorage=exports.setUserReturnToUrl=exports.USER_RETURN_TO_SESSION_KEY=exports.OAUTH_LOGIN_TYPE_SESSION_KEY=exports.EMAIL_SESSION_KEY=exports.SCHOOL_COUNTRY_SESSION_KEY=exports.SCHOOL_NAME_SESSION_KEY=exports.SCHOOL_ZIP_SESSION_KEY=exports.SCHOOL_ID_SESSION_KEY=exports.ACCOUNT_TYPE_SESSION_KEY=void 0;var utils_1=__webpack_require__("./src/code-studio/utils.js");exports.ACCOUNT_TYPE_SESSION_KEY="accountType",exports.SCHOOL_ID_SESSION_KEY="schoolId",exports.SCHOOL_ZIP_SESSION_KEY="schoolZip",exports.SCHOOL_NAME_SESSION_KEY="schoolName",exports.SCHOOL_COUNTRY_SESSION_KEY="schoolCountry",exports.EMAIL_SESSION_KEY="email",exports.OAUTH_LOGIN_TYPE_SESSION_KEY="oauthType",exports.USER_RETURN_TO_SESSION_KEY="userReturnTo";exports.setUserReturnToUrl=function(){var userReturnTo=(0,utils_1.queryParams)("user_return_to");userReturnTo&&sessionStorage.setItem(exports.USER_RETURN_TO_SESSION_KEY,userReturnTo)};var clearSignUpSessionStorage=function(isTeacher){var fieldsToClear=[exports.ACCOUNT_TYPE_SESSION_KEY,exports.EMAIL_SESSION_KEY,exports.OAUTH_LOGIN_TYPE_SESSION_KEY,exports.USER_RETURN_TO_SESSION_KEY];if(isTeacher){var schoolFields=[exports.SCHOOL_ID_SESSION_KEY,exports.SCHOOL_ZIP_SESSION_KEY,exports.SCHOOL_NAME_SESSION_KEY,exports.SCHOOL_COUNTRY_SESSION_KEY];fieldsToClear.push.apply(fieldsToClear,__spreadArray([],__read(schoolFields),!1))}fieldsToClear.forEach((function(field){sessionStorage.removeItem(field)}))};exports.clearSignUpSessionStorage=clearSignUpSessionStorage,exports.SIGN_UP_USER_TYPE="sign_up_user_type",exports.US_COUNTRY_CODE="US",exports.ZIP_REGEX=new RegExp(/(^(?!00000)\d{5}$)/),exports.SELECT_COUNTRY="selectCountry",exports.SCHOOL_ZIP_SEARCH_URL="/dashboardapi/v1/schoolzipsearch/",exports.MAX_DISPLAY_NAME_LENGTH=70;try{clearSignUpSessionStorage.displayName="clearSignUpSessionStorage",clearSignUpSessionStorage.__docgenInfo={description:"",displayName:"clearSignUpSessionStorage",props:{}},"undefined"!=typeof STORYBOOK_REACT_CLASSES&&(STORYBOOK_REACT_CLASSES["src/signUpFlow/signUpFlowConstants.tsx#clearSignUpSessionStorage"]={docgenInfo:clearSignUpSessionStorage.__docgenInfo,name:"clearSignUpSessionStorage",path:"src/signUpFlow/signUpFlowConstants.tsx#clearSignUpSessionStorage"})}catch(__react_docgen_typescript_loader_error){}}}]);
//# sourceMappingURL=data:application/json;charset=utf-8;base64,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TUFBTyxpQkFDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sVUFDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sYUFDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8scUNBQ3JCLENBQUN3RCxNQUFPLEtBQU14RCxNQUFPLFlBQ3JCLENBQUN3RCxNQUFPLEtBQU14RCxNQUFPLFdBQ3JCLENBQUN3RCxNQUFPLEtBQU14RCxNQUFPLFNBQ3JCLENBQUN3RCxNQUFPLEtBQU14RCxNQUFPLFdBQ3JCLENBQUN3RCxNQUFPLEtBQU14RCxNQUFPLGFBQ3JCLENBQUN3RCxNQUFPLEtBQU14RCxNQUFPLFdBQ3JCLENBQUN3RCxNQUFPLEtBQU14RCxNQUFPLFVBQ3JCLENBQUN3RCxNQUFPLEtBQU14RCxNQUFPLGVBQ3JCLENBQUN3RCxNQUFPLEtBQU14RCxNQUFPLFNBQ3JCLENBQUN3RCxNQUFPLEtBQU14RCxNQUFPLGtDQUNyQixDQUFDd0QsTUFBTyxLQUFNeEQsTUFBTyxRQUNyQixDQUFDd0QsTUFBTyxLQUFNeEQsTUFBTyw0QkFDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sV0FDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sU0FDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sVUFDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sV0FDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sVUFDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sU0FDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sU0FDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sY0FDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sWUFDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sWUFDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8sV0FDckIsQ0FBQ3dELE1BQU8sS0FBTXhELE1BQU8seUJBQ3JCLENBQUN3RCxNQUFPLEtBQU14RCxNQUFPLHlDQUNyQixDQUFDd0QsTUFBTyxLQUFNeEQsTUFBTyxxQkFDckIsQ0FBQ3dELE1BQU8s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LFFBQUFNLFVBQVksSUFBSWdLLE9BQU8sc0JBQ3ZCLFFBQUFwSyxlQUFpQixnQkFDakIsUUFBQWdJLHNCQUF3QixvQ0FFeEIsUUFBQXFDLHdCQUEwQixHIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYmxvY2tseS1tb29jLy4vc3JjL2NvZGUtc3R1ZGlvL3V0aWxzLmpzIiwid2VicGFjazovL2Jsb2NrbHktbW9vYy8uL3NyYy9nZW9ncmFwaHlDb25zdGFudHMuanMiLCJ3ZWJwYWNrOi8vYmxvY2tseS1tb29jLy4vc3JjL3RlbXBsYXRlcy9TY2hvb2xEYXRhSW5wdXRzLmpzeCIsIndlYnBhY2s6Ly9ibG9ja2x5LW1vb2MvLi9zcmMvdGVtcGxhdGVzL1NjaG9vbE5hbWVJbnB1dC5qc3giLCJ3ZWJwYWNrOi8vYmxvY2tseS1tb29jLy4vc3JjL3RlbXBsYXRlcy9TY2hvb2xaaXBTZWFyY2guanN4Iiwid2VicGFjazovL2Jsb2NrbHktbW9vYy8uL3NyYy90ZW1wbGF0ZXMvc2Nob29sLWFzc29jaWF0aW9uLm1vZHVsZS5zY3NzIiwid2VicGFjazovL2Jsb2NrbHktbW9vYy8uL3NyYy90ZW1wbGF0ZXMvc2Nob29sLWFzc29jaWF0aW9uLm1vZHVsZS5zY3NzPzk2ZWIiLCJ3ZWJwYWNrOi8vYmxvY2tseS1tb29jLy4vc3JjL3NjaG9vbEluZm8vaG9va3MvdXNlU2Nob29sSW5mby50c3giLCJ3ZWJwYWNrOi8vYmxvY2tseS1tb29jLy4vc3JjL3NjaG9vbEluZm8vdXRpbHMvYnVpbGRTY2hvb2xEYXRhLnRzIiwid2VicGFjazovL2Jsb2NrbHktbW9vYy8uL3NyYy9zY2hvb2xJbmZvL3V0aWxzL2NvbnN0cnVjdFNjaG9vbE9wdGlvbi50cyIsIndlYnBhY2s6Ly9ibG9ja2x5LW1vb2MvLi9zcmMvc2Nob29sSW5mby91dGlscy9mZXRjaFNjaG9vbHMudHMiLCJ3ZWJwYWNrOi8vYmxvY2tseS1tb29jLy4vc3JjL3NjaG9vbEluZm8vdXRpbHMvZ2V0Q291bnRyaWVzVXNGaXJzdC50cyIsIndlYnBhY2s6Ly9ibG9ja2x5LW1vb2MvLi9zcmMvc2Nob29sSW5mby91dGlscy9zY2hvb2xJbmZvSW52YWxpZC50cyIsIndlYnBhY2s6Ly9ibG9ja2x5LW1vb2MvLi9zcmMvc2Nob29sSW5mby91dGlscy91cGRhdGVTY2hvb2xJbmZvLnRzIiwid2VicGFjazovL2Jsb2NrbHktbW9vYy8uL3NyYy9zaWduVXBGbG93L3NpZ25VcEZsb3dDb25zdGFudHMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBxdWVyeVN0cmluZyBmcm9tICdxdWVyeS1zdHJpbmcnO1xuXG4vLyBQcm92aWRlIG1ldGhvZHMgdGhhdCBhbGxvdyB0ZXN0cyB0byBtb2NrIHdpbmRvdy5sb2NhdGlvblxubGV0IHdpbmRvd0xvY2F0aW9uID0gd2luZG93LmxvY2F0aW9uO1xuZXhwb3J0IGZ1bmN0aW9uIHNldFdpbmRvd0xvY2F0aW9uKGZha2VMb2NhdGlvbikge1xuICB3aW5kb3dMb2NhdGlvbiA9IGZha2VMb2NhdGlvbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlc2V0V2luZG93TG9jYXRpb24oKSB7XG4gIHdpbmRvd0xvY2F0aW9uID0gd2luZG93LmxvY2F0aW9uO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFzUXVlcnlQYXJhbShuYW1lKSB7XG4gIGNvbnN0IHBhcnNlZFBhcmFtcyA9IHF1ZXJ5UGFyYW1zKCk7XG5cbiAgLy8gY2FuJ3QgY2FsbCBoYXNPd25Qcm9wZXJ0eSBkaXJlY3RseSBkdWUgdG8gYnVnIGluIHF1ZXJ5LXN0cmluZzpcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3NpbmRyZXNvcmh1cy9xdWVyeS1zdHJpbmcvaXNzdWVzLzUwXG4gIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocGFyc2VkUGFyYW1zLCBuYW1lKTtcbn1cblxuLyoqXG4gKiBHZXRzIHRoZSBVUkwgcXVlcnlzdHJpbmcgcGFyYW1zLlxuICogQHBhcmFtIG5hbWUge3N0cmluZz19IE9wdGlvbmFsbHkgcHVsbCBhIHNwZWNpZmljIHBhcmFtLlxuICogQHJldHVybiB7b2JqZWN0fHN0cmluZ30gSGFzaCBvZiBwYXJhbXMsIG9yIHBhcmFtIHN0cmluZyBpZiBgbmFtZWAgaXMgc3BlY2lmaWVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcXVlcnlQYXJhbXMobmFtZSkge1xuICBjb25zdCBwYXJzZWQgPSBxdWVyeVN0cmluZy5wYXJzZSh3aW5kb3dMb2NhdGlvbi5zZWFyY2gpO1xuICBpZiAobmFtZSkge1xuICAgIHJldHVybiBwYXJzZWRbbmFtZV07XG4gIH1cbiAgcmV0dXJuIHBhcnNlZDtcbn1cblxuLyoqXG4gKiBVcGRhdGVzIGEgcXVlcnkgcGFyYW1ldGVyIGluIHRoZSBVUkwgdmlhIHB1c2hTdGF0ZSAoaS5lLiBkb2Vzbid0IGZvcmNlIGFcbiAqIHJlbG9hZCkuXG4gKiBAcGFyYW0ge3N0cmluZ30gcGFyYW0gLSBOYW1lIG9mIHRoZSBxdWVyeSBwYXJhbWV0ZXIgdG8gbW9kaWZ5XG4gKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gdmFsdWUgLSBOZXcgdmFsdWUgKG9yIHVuZGVmaW5lZCB0byByZW1vdmUpXG4gKiBAcGFyYW0ge2Jvb2xlYW59IHVzZVJlcGxhY2VTdGF0ZSAtIG9wdGlvbmFsIHBhcmFtIGlmIHlvdSB3aXNoIHRvIHVzZSByZXBsYWNlU3RhdGVcbiAqICAgaW5zdGVhZCBvZiBwdXNoU3RhdGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVwZGF0ZVF1ZXJ5UGFyYW0ocGFyYW0sIHZhbHVlLCB1c2VSZXBsYWNlU3RhdGUgPSBmYWxzZSkge1xuICBjb25zdCBuZXdTdHJpbmcgPSBxdWVyeVN0cmluZy5zdHJpbmdpZnkoe1xuICAgIC4uLnF1ZXJ5U3RyaW5nLnBhcnNlKHdpbmRvd0xvY2F0aW9uLnNlYXJjaCksXG4gICAgW3BhcmFtXTogdmFsdWUsXG4gIH0pO1xuXG4gIGxldCBuZXdMb2NhdGlvbiA9IHdpbmRvd0xvY2F0aW9uLnBhdGhuYW1lO1xuICAvLyBEb24ndCBhcHBlbmQgPyB1bmxlc3Mgd2UgYWN0dWFsbHkgaGF2ZSBhIHZhbHVlXG4gIGlmIChuZXdTdHJpbmcpIHtcbiAgICBuZXdMb2NhdGlvbiArPSAnPycgKyBuZXdTdHJpbmc7XG4gIH1cblxuICBjb25zdCBtZXRob2QgPSB1c2VSZXBsYWNlU3RhdGUgPyAncmVwbGFjZVN0YXRlJyA6ICdwdXNoU3RhdGUnO1xuICB3aW5kb3cuaGlzdG9yeVttZXRob2RdKG51bGwsIGRvY3VtZW50LnRpdGxlLCBuZXdMb2NhdGlvbik7XG59XG5cbi8qKlxuICogV2UgaGF2ZSB2YXJpb3VzIGNvb2tpZXMgdGhhdCB3ZSB3YW50IHRvIGJlIGVudmlyb25tZW50IHNwZWNpZmljLiBXZSBhY2NvbXBsaXNoXG4gKiB0aGlzIGJ5IHRhY2tpbmcgb24gdGhlIHJhY2tfZW52ICh1bmxlc3Mgd2UncmUgaW4gcHJvZCkuIFRoaXMgaGVscGVyIGdldHMgdGhlXG4gKiBhcHByb3ByaWF0ZSBjb29raWUgbmFtZVxuICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBCYXNlIGNvb2tpZSBuYW1lXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBBY3R1YWwgY29va2llIG5hbWUsIHdpdGggdGhlIHJhY2tfZW52IGFwcGVuZGVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlbnZpcm9ubWVudFNwZWNpZmljQ29va2llTmFtZShuYW1lKSB7XG4gIGNvbnN0IHJhY2tfZW52ID0gd2luZG93LmRhc2hib2FyZC5yYWNrX2VudjtcbiAgaWYgKHJhY2tfZW52ID09PSAncHJvZHVjdGlvbicpIHtcbiAgICByZXR1cm4gbmFtZTtcbiAgfVxuXG4gIHJldHVybiBgJHtuYW1lfV8ke3JhY2tfZW52fWA7XG59XG5cbi8qKlxuICogR2l2ZW4gYSBob3N0IG5hbWUgKGUuZy4gc3R1ZGlvLmNvZGUub3JnKSByZXR1cm4gdGhlIHNpdGUncyByb290IGRvbWFpblxuICogKGUuZy4gY29kZS5vcmcpLiAgVXNlZnVsIGZvciBnZXR0aW5nIHRoZSBkb21haW4gb24gd2hpY2ggd2Ugd2lsbCBzZXQgYSBjb29raWUuXG4gKiBAcGFyYW0ge3N0cmluZ30gaG9zdG5hbWUgLSBBIGhvc3QgbmFtZVxuICogQHJldHVybnMge3N0cmluZ30gVGhlIHJvb3QgZG9tYWluIG5hbWUgZm9yIHRoZSBob3N0IG5hbWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFJvb3REb21haW5Gcm9tSG9zdG5hbWUoaG9zdG5hbWUpIHtcbiAgcmV0dXJuIGhvc3RuYW1lLnNwbGl0KCcuJykuc2xpY2UoLTIpLmpvaW4oJy4nKTtcbn1cbiIsImltcG9ydCB7VXNTdGF0ZXN9IGZyb20gJ0BjZG8vZ2VuZXJhdGVkLXNjcmlwdHMvc2hhcmVkQ29uc3RhbnRzJztcblxuZXhwb3J0IGNvbnN0IFNUQVRFX0NPREVTID0gT2JqZWN0LmtleXMoVXNTdGF0ZXMpLnNvcnQoKTtcblxuZXhwb3J0IGNvbnN0IFNUQVRFUyA9IFtcbiAgJycsXG4gICdBbGFiYW1hJyxcbiAgJ0FsYXNrYScsXG4gICdBcml6b25hJyxcbiAgJ0Fya2Fuc2FzJyxcbiAgJ0NhbGlmb3JuaWEnLFxuICAnQ29sb3JhZG8nLFxuICAnQ29ubmVjdGljdXQnLFxuICAnV2FzaGluZ3RvbiBEQycsXG4gICdEZWxhd2FyZScsXG4gICdGbG9yaWRhJyxcbiAgJ0dlb3JnaWEnLFxuICAnSGF3YWlpJyxcbiAgJ0lkYWhvJyxcbiAgJ0lsbGlub2lzJyxcbiAgJ0luZGlhbmEnLFxuICAnSW93YScsXG4gICdLYW5zYXMnLFxuICAnS2VudHVja3knLFxuICAnTG91aXNpYW5hJyxcbiAgJ01haW5lJyxcbiAgJ01hcnlsYW5kJyxcbiAgJ01hc3NhY2h1c2V0dHMnLFxuICAnTWljaGlnYW4nLFxuICAnTWlubmVzb3RhJyxcbiAgJ01pc3Npc3NpcHBpJyxcbiAgJ01pc3NvdXJpJyxcbiAgJ01vbnRhbmEnLFxuICAnTmVicmFza2EnLFxuICAnTmV2YWRhJyxcbiAgJ05ldyBIYW1wc2hpcmUnLFxuICAnTmV3IEplcnNleScsXG4gICdOZXcgTWV4aWNvJyxcbiAgJ05ldyBZb3JrJyxcbiAgJ05vcnRoIENhcm9saW5hJyxcbiAgJ05vcnRoIERha290YScsXG4gICdPaGlvJyxcbiAgJ09rbGFob21hJyxcbiAgJ09yZWdvbicsXG4gICdQZW5uc3lsdmFuaWEnLFxuICAnUmhvZGUgSXNsYW5kJyxcbiAgJ1NvdXRoIENhcm9saW5hJyxcbiAgJ1NvdXRoIERha290YScsXG4gICdUZW5uZXNzZWUnLFxuICAnVGV4YXMnLFxuICAnVXRhaCcsXG4gICdWZXJtb250JyxcbiAgJ1ZpcmdpbmlhJyxcbiAgJ1dhc2hpbmd0b24nLFxuICAnV2VzdCBWaXJnaW5pYScsXG4gICdXaXNjb25zaW4nLFxuICAnV3lvbWluZycsXG5dO1xuXG4vLyBOb3RlIHRoYXQgdGhpcyBhcnJheSBpcyByZXR1cm5lZCBzb3J0ZWQgYnkgY291bnRyeSBuYW1lLCBub3QgYWJicmV2aWF0aW9uLlxuZXhwb3J0IGNvbnN0IENPVU5UUklFUyA9IFtcbiAge2xhYmVsOiAnQUQnLCB2YWx1ZTogJ0FuZG9ycmEnfSxcbiAge2xhYmVsOiAnQUUnLCB2YWx1ZTogJ1VuaXRlZCBBcmFiIEVtaXJhdGVzJ30sXG4gIHtsYWJlbDogJ0FGJywgdmFsdWU6ICdBZmdoYW5pc3Rhbid9LFxuICB7bGFiZWw6ICdBRycsIHZhbHVlOiAnQW50aWd1YSBhbmQgQmFyYnVkYSd9LFxuICB7bGFiZWw6ICdBSScsIHZhbHVlOiAnQW5ndWlsbGEnfSxcbiAge2xhYmVsOiAnQUwnLCB2YWx1ZTogJ0FsYmFuaWEnfSxcbiAge2xhYmVsOiAnQU0nLCB2YWx1ZTogJ0FybWVuaWEnfSxcbiAge2xhYmVsOiAnQU8nLCB2YWx1ZTogJ0FuZ29sYSd9LFxuICB7bGFiZWw6ICdBUScsIHZhbHVlOiAnQW50YXJjdGljYSd9LFxuICB7bGFiZWw6ICdBUicsIHZhbHVlOiAnQXJnZW50aW5hJ30sXG4gIHtsYWJlbDogJ0FTJywgdmFsdWU6ICdBbWVyaWNhbiBTYW1vYSd9LFxuICB7bGFiZWw6ICdBVCcsIHZhbHVlOiAnQXVzdHJpYSd9LFxuICB7bGFiZWw6ICdBVScsIHZhbHVlOiAnQXVzdHJhbGlhJ30sXG4gIHtsYWJlbDogJ0FXJywgdmFsdWU6ICdBcnViYSd9LFxuICB7bGFiZWw6ICdBWCcsIHZhbHVlOiAnw4VsYW5kIElzbGFuZHMnfSxcbiAge2xhYmVsOiAnQVonLCB2YWx1ZTogJ0F6ZXJiYWlqYW4nfSxcbiAge2xhYmVsOiAnQkEnLCB2YWx1ZTogJ0Jvc25pYSBhbmQgSGVyemVnb3ZpbmEnfSxcbiAge2xhYmVsOiAnQkInLCB2YWx1ZTogJ0JhcmJhZG9zJ30sXG4gIHtsYWJlbDogJ0JEJywgdmFsdWU6ICdCYW5nbGFkZXNoJ30sXG4gIHtsYWJlbDogJ0JFJywgdmFsdWU6ICdCZWxnaXVtJ30sXG4gIHtsYWJlbDogJ0JGJywgdmFsdWU6ICdCdXJraW5hIEZhc28nfSxcbiAge2xhYmVsOiAnQkcnLCB2YWx1ZTogJ0J1bGdhcmlhJ30sXG4gIHtsYWJlbDogJ0JIJywgdmFsdWU6ICdCYWhyYWluJ30sXG4gIHtsYWJlbDogJ0JJJywgdmFsdWU6ICdCdXJ1bmRpJ30sXG4gIHtsYWJlbDogJ0JKJywgdmFsdWU6ICdCZW5pbid9LFxuICB7bGFiZWw6ICdCTCcsIHZhbHVlOiAnU2FpbnQgQmFydGjDqWxlbXknfSxcbiAge2xhYmVsOiAnQk0nLCB2YWx1ZTogJ0Jlcm11ZGEnfSxcbiAge2xhYmVsOiAnQk4nLCB2YWx1ZTogJ0JydW5laSd9LFxuICB7bGFiZWw6ICdCTycsIHZhbHVlOiAnUGx1cmluYXRpb25hbCBTdGF0ZSBvZiBCb2xpdmlhJ30sXG4gIHtsYWJlbDogJ0JRJywgdmFsdWU6ICdCb25haXJlJ30sXG4gIHtsYWJlbDogJ0JSJywgdmFsdWU6ICdCcmF6aWwnfSxcbiAge2xhYmVsOiAnQlMnLCB2YWx1ZTogJ0JhaGFtYXMnfSxcbiAge2xhYmVsOiAnQlQnLCB2YWx1ZTogJ0JodXRhbid9LFxuICB7bGFiZWw6ICdCVicsIHZhbHVlOiAnQm91dmV0IElzbGFuZCd9LFxuICB7bGFiZWw6ICdCVycsIHZhbHVlOiAnQm90c3dhbmEnfSxcbiAge2xhYmVsOiAnQlknLCB2YWx1ZTogJ0JlbGFydXMnfSxcbiAge2xhYmVsOiAnQlonLCB2YWx1ZTogJ0JlbGl6ZSd9LFxuICB7bGFiZWw6ICdDQScsIHZhbHVlOiAnQ2FuYWRhJ30sXG4gIHtsYWJlbDogJ0NDJywgdmFsdWU6ICdDb2NvcyAoS2VlbGluZykgSXNsYW5kcyd9LFxuICB7bGFiZWw6ICdDRCcsIHZhbHVlOiAnRGVtb2NyYXRpYyBSZXB1YmxpYyBvZiBDb25nbyd9LFxuICB7bGFiZWw6ICdDRicsIHZhbHVlOiAnQ2VudHJhbCBBZnJpY2FuIFJlcHVibGljJ30sXG4gIHtsYWJlbDogJ0NHJywgdmFsdWU6ICdDb25nbyd9LFxuICB7bGFiZWw6ICdDSCcsIHZhbHVlOiAnU3dpdHplcmxhbmQnfSxcbiAge2xhYmVsOiAnQ0knLCB2YWx1ZTogXCJDw7R0ZSBkJ0l2b2lyZVwifSxcbiAge2xhYmVsOiAnQ0snLCB2YWx1ZTogJ0Nvb2sgSXNsYW5kcyd9LFxuICB7bGFiZWw6ICdDTCcsIHZhbHVlOiAnQ2hpbGUnfSxcbiAge2xhYmVsOiAnQ00nLCB2YWx1ZTogJ0NhbWVyb29uJ30sXG4gIHtsYWJlbDogJ0NOJywgdmFsdWU6ICdDaGluYSd9LFxuICB7bGFiZWw6ICdDTycsIHZhbHVlOiAnQ29sb21iaWEnfSxcbiAge2xhYmVsOiAnQ1InLCB2YWx1ZTogJ0Nvc3RhIFJpY2EnfSxcbiAge2xhYmVsOiAnQ1UnLCB2YWx1ZTogJ0N1YmEnfSxcbiAge2xhYmVsOiAnQ1YnLCB2YWx1ZTogJ0NhcGUgVmVyZGUnfSxcbiAge2xhYmVsOiAnQ1cnLCB2YWx1ZTogJ0N1cmHDp2FvJ30sXG4gIHtsYWJlbDogJ0NYJywgdmFsdWU6ICdDaHJpc3RtYXMgSXNsYW5kJ30sXG4gIHtsYWJlbDogJ0NZJywgdmFsdWU6ICdDeXBydXMnfSxcbiAge2xhYmVsOiAnQ1onLCB2YWx1ZTogJ0N6ZWNoIFJlcHVibGljJ30sXG4gIHtsYWJlbDogJ0RFJywgdmFsdWU6ICdHZXJtYW55J30sXG4gIHtsYWJlbDogJ0RKJywgdmFsdWU6ICdEamlib3V0aSd9LFxuICB7bGFiZWw6ICdESycsIHZhbHVlOiAnRGVubWFyayd9LFxuICB7bGFiZWw6ICdETScsIHZhbHVlOiAnRG9taW5pY2EnfSxcbiAge2xhYmVsOiAnRE8nLCB2YWx1ZTogJ0RvbWluaWNhbiBSZXB1YmxpYyd9LFxuICB7bGFiZWw6ICdEWicsIHZhbHVlOiAnQWxnZXJpYSd9LFxuICB7bGFiZWw6ICdFQycsIHZhbHVlOiAnRWN1YWRvcid9LFxuICB7bGFiZWw6ICdFRScsIHZhbHVlOiAnRXN0b25pYSd9LFxuICB7bGFiZWw6ICdFRycsIHZhbHVlOiAnRWd5cHQnfSxcbiAge2xhYmVsOiAnRUgnLCB2YWx1ZTogJ1dlc3Rlcm4gU2FoYXJhJ30sXG4gIHtsYWJlbDogJ0VSJywgdmFsdWU6ICdFcml0cmVhJ30sXG4gIHtsYWJlbDogJ0VTJywgdmFsdWU6ICdTcGFpbid9LFxuICB7bGFiZWw6ICdFVCcsIHZhbHVlOiAnRXRoaW9waWEnfSxcbiAge2xhYmVsOiAnRkknLCB2YWx1ZTogJ0ZpbmxhbmQnfSxcbiAge2xhYmVsOiAnRkonLCB2YWx1ZTogJ0ZpamknfSxcbiAge2xhYmVsOiAnRksnLCB2YWx1ZTogJ0ZhbGtsYW5kIElzbGFuZHMgKE1hbHZpbmFzKSd9LFxuICB7bGFiZWw6ICdGTScsIHZhbHVlOiAnTWljcm9uZXNpYSd9LFxuICB7bGFiZWw6ICdGTycsIHZhbHVlOiAnRmFyb2UgSXNsYW5kcyd9LFxuICB7bGFiZWw6ICdGUicsIHZhbHVlOiAnRnJhbmNlJ30sXG4gIHtsYWJlbDogJ0dBJywgdmFsdWU6ICdHYWJvbid9LFxuICB7bGFiZWw6ICdHQicsIHZhbHVlOiAnVW5pdGVkIEtpbmdkb20nfSxcbiAge2xhYmVsOiAnR0QnLCB2YWx1ZTogJ0dyZW5hZGEnfSxcbiAge2xhYmVsOiAnR0UnLCB2YWx1ZTogJ0dlb3JnaWEnfSxcbiAge2xhYmVsOiAnR0YnLCB2YWx1ZTogJ0ZyZW5jaCBHdWlhbmEnfSxcbiAge2xhYmVsOiAnR0cnLCB2YWx1ZTogJ0d1ZXJuc2V5J30sXG4gIHtsYWJlbDogJ0dIJywgdmFsdWU6ICdHaGFuYSd9LFxuICB7bGFiZWw6ICdHSScsIHZhbHVlOiAnR2licmFsdGFyJ30sXG4gIHtsYWJlbDogJ0dMJywgdmFsdWU6ICdHcmVlbmxhbmQnfSxcbiAge2xhYmVsOiAnR00nLCB2YWx1ZTogJ0dhbWJpYSd9LFxuICB7bGFiZWw6ICdHTicsIHZhbHVlOiAnR3VpbmVhJ30sXG4gIHtsYWJlbDogJ0dQJywgdmFsdWU6ICdHdWFkZWxvdXBlJ30sXG4gIHtsYWJlbDogJ0dRJywgdmFsdWU6ICdFcXVhdG9yaWFsIEd1aW5lYSd9LFxuICB7bGFiZWw6ICdHUicsIHZhbHVlOiAnR3JlZWNlJ30sXG4gIHtsYWJlbDogJ0dTJywgdmFsdWU6ICdTb3V0aCBHZW9yZ2lhIGFuZCB0aGUgU291dGggU2FuZHdpY2ggSXNsYW5kcyd9LFxuICB7bGFiZWw6ICdHVCcsIHZhbHVlOiAnR3VhdGVtYWxhJ30sXG4gIHtsYWJlbDogJ0dVJywgdmFsdWU6ICdHdWFtJ30sXG4gIHtsYWJlbDogJ0dXJywgdmFsdWU6ICdHdWluZWEtQmlzc2F1J30sXG4gIHtsYWJlbDogJ0dZJywgdmFsdWU6ICdHdXlhbmEnfSxcbiAge2xhYmVsOiAnSEsnLCB2YWx1ZTogJ0hvbmcgS29uZyd9LFxuICB7bGFiZWw6ICdITScsIHZhbHVlOiAnSGVhcmQgSXNsYW5kIGFuZCBNY0RvbmFsZCBJc2xhbmRzJ30sXG4gIHtsYWJlbDogJ0hOJywgdmFsdWU6ICdIb25kdXJhcyd9LFxuICB7bGFiZWw6ICdIUicsIHZhbHVlOiAnQ3JvYXRpYSd9LFxuICB7bGFiZWw6ICdIVCcsIHZhbHVlOiAnSGFpdGknfSxcbiAge2xhYmVsOiAnSFUnLCB2YWx1ZTogJ0h1bmdhcnknfSxcbiAge2xhYmVsOiAnSUQnLCB2YWx1ZTogJ0luZG9uZXNpYSd9LFxuICB7bGFiZWw6ICdJRScsIHZhbHVlOiAnSXJlbGFuZCd9LFxuICB7bGFiZWw6ICdJTCcsIHZhbHVlOiAnSXNyYWVsJ30sXG4gIHtsYWJlbDogJ0lNJywgdmFsdWU6ICdJc2xlIG9mIE1hbid9LFxuICB7bGFiZWw6ICdJTicsIHZhbHVlOiAnSW5kaWEnfSxcbiAge2xhYmVsOiAnSU8nLCB2YWx1ZTogJ0JyaXRpc2ggSW5kaWFuIE9jZWFuIFRlcnJpdG9yeSd9LFxuICB7bGFiZWw6ICdJUScsIHZhbHVlOiAnSXJhcSd9LFxuICB7bGFiZWw6ICdJUicsIHZhbHVlOiAnSXNsYW1pYyBSZXB1YmxpYyBvZiBJcmFuJ30sXG4gIHtsYWJlbDogJ0lTJywgdmFsdWU6ICdJY2VsYW5kJ30sXG4gIHtsYWJlbDogJ0lUJywgdmFsdWU6ICdJdGFseSd9LFxuICB7bGFiZWw6ICdKRScsIHZhbHVlOiAnSmVyc2V5J30sXG4gIHtsYWJlbDogJ0pNJywgdmFsdWU6ICdKYW1haWNhJ30sXG4gIHtsYWJlbDogJ0pPJywgdmFsdWU6ICdKb3JkYW4nfSxcbiAge2xhYmVsOiAnSlAnLCB2YWx1ZTogJ0phcGFuJ30sXG4gIHtsYWJlbDogJ0tFJywgdmFsdWU6ICdLZW55YSd9LFxuICB7bGFiZWw6ICdLRycsIHZhbHVlOiAnS3lyZ3l6c3Rhbid9LFxuICB7bGFiZWw6ICdLSCcsIHZhbHVlOiAnQ2FtYm9kaWEnfSxcbiAge2xhYmVsOiAnS0knLCB2YWx1ZTogJ0tpcmliYXRpJ30sXG4gIHtsYWJlbDogJ0tNJywgdmFsdWU6ICdDb21vcm9zJ30sXG4gIHtsYWJlbDogJ0tOJywgdmFsdWU6ICdTYWludCBLaXR0cyBhbmQgTmV2aXMnfSxcbiAge2xhYmVsOiAnS1AnLCB2YWx1ZTogXCJEZW1vY3JhdGljIFBlb3BsZSdzIFJlcHVibGljIG9mIEtvcmVhXCJ9LFxuICB7bGFiZWw6ICdLUicsIHZhbHVlOiAnUmVwdWJsaWMgb2YgS29yZWEnfSxcbiAge2xhYmVsOiAnS1cnLCB2YWx1ZTogJ0t1d2FpdCd9LFxuICB7bGFiZWw6ICdLWScsIHZhbHVlOiAnQ2F5bWFuIElzbGFuZHMnfSxcbiAge2xhYmVsOiAnS1onLCB2YWx1ZTogJ0themFraHN0YW4nfSxcbiAge2xhYmVsOiAnTEEnLCB2YWx1ZTogXCJMYW8gUGVvcGxlJ3MgRGVtb2NyYXRpYyBSZXB1YmxpY1wifSxcbiAge2xhYmVsOiAnTEInLCB2YWx1ZTogJ0xlYmFub24nfSxcbiAge2xhYmVsOiAnTEMnLCB2YWx1ZTogJ1NhaW50IEx1Y2lhJ30sXG4gIHtsYWJlbDogJ0xJJywgdmFsdWU6ICdMaWVjaHRlbnN0ZWluJ30sXG4gIHtsYWJlbDogJ0xLJywgdmFsdWU6ICdTcmkgTGFua2EnfSxcbiAge2xhYmVsOiAnTFInLCB2YWx1ZTogJ0xpYmVyaWEnfSxcbiAge2xhYmVsOiAnTFMnLCB2YWx1ZTogJ0xlc290aG8nfSxcbiAge2xhYmVsOiAnTFQnLCB2YWx1ZTogJ0xpdGh1YW5pYSd9LFxuICB7bGFiZWw6ICdMVScsIHZhbHVlOiAnTHV4ZW1ib3VyZyd9LFxuICB7bGFiZWw6ICdMVicsIHZhbHVlOiAnTGF0dmlhJ30sXG4gIHtsYWJlbDogJ0xZJywgdmFsdWU6ICdMaWJ5YSd9LFxuICB7bGFiZWw6ICdNQScsIHZhbHVlOiAnTW9yb2Njbyd9LFxuICB7bGFiZWw6ICdNQycsIHZhbHVlOiAnTW9uYWNvJ30sXG4gIHtsYWJlbDogJ01EJywgdmFsdWU6ICdNb2xkb3ZhJ30sXG4gIHtsYWJlbDogJ01FJywgdmFsdWU6ICdNb250ZW5lZ3JvJ30sXG4gIHtsYWJlbDogJ01HJywgdmFsdWU6ICdNYWRhZ2FzY2FyJ30sXG4gIHtsYWJlbDogJ01IJywgdmFsdWU6ICdNYXJzaGFsbCBJc2xhbmRzJ30sXG4gIHtsYWJlbDogJ01LJywgdmFsdWU6ICdSZXB1YmxpYyBvZiBNYWNlZG9uaWEnfSxcbiAge2xhYmVsOiAnTUwnLCB2YWx1ZTogJ01hbGknfSxcbiAge2xhYmVsOiAnTU0nLCB2YWx1ZTogJ015YW5tYXInfSxcbiAge2xhYmVsOiAnTU4nLCB2YWx1ZTogJ01vbmdvbGlhJ30sXG4gIHtsYWJlbDogJ01PJywgdmFsdWU6ICdNYWNhbyd9LFxuICB7bGFiZWw6ICdNUCcsIHZhbHVlOiAnTm9ydGhlcm4gTWFyaWFuYSBJc2xhbmRzJ30sXG4gIHtsYWJlbDogJ01RJywgdmFsdWU6ICdNYXJ0aW5pcXVlJ30sXG4gIHtsYWJlbDogJ01SJywgdmFsdWU6ICdNYXVyaXRhbmlhJ30sXG4gIHtsYWJlbDogJ01TJywgdmFsdWU6ICdNb250c2VycmF0J30sXG4gIHtsYWJlbDogJ01UJywgdmFsdWU6ICdNYWx0YSd9LFxuICB7bGFiZWw6ICdNVScsIHZhbHVlOiAnTWF1cml0aXVzJ30sXG4gIHtsYWJlbDogJ01WJywgdmFsdWU6ICdNYWxkaXZlcyd9LFxuICB7bGFiZWw6ICdNVycsIHZhbHVlOiAnTWFsYXdpJ30sXG4gIHtsYWJlbDogJ01YJywgdmFsdWU6ICdNZXhpY28nfSxcbiAge2xhYmVsOiAnTVknLCB2YWx1ZTogJ01hbGF5c2lhJ30sXG4gIHtsYWJlbDogJ01aJywgdmFsdWU6ICdNb3phbWJpcXVlJ30sXG4gIHtsYWJlbDogJ05BJywgdmFsdWU6ICdOYW1pYmlhJ30sXG4gIHtsYWJlbDogJ05DJywgdmFsdWU6ICdOZXcgQ2FsZWRvbmlhJ30sXG4gIHtsYWJlbDogJ05FJywgdmFsdWU6ICdOaWdlcid9LFxuICB7bGFiZWw6ICdORicsIHZhbHVlOiAnTm9yZm9sayBJc2xhbmQnfSxcbiAge2xhYmVsOiAnTkcnLCB2YWx1ZTogJ05pZ2VyaWEnfSxcbiAge2xhYmVsOiAnTkknLCB2YWx1ZTogJ05pY2FyYWd1YSd9LFxuICB7bGFiZWw6ICdOTCcsIHZhbHVlOiAnTmV0aGVybGFuZHMnfSxcbiAge2xhYmVsOiAnTk8nLCB2YWx1ZTogJ05vcndheSd9LFxuICB7bGFiZWw6ICdOUCcsIHZhbHVlOiAnTmVwYWwnfSxcbiAge2xhYmVsOiAnTlInLCB2YWx1ZTogJ05hdXJ1J30sXG4gIHtsYWJlbDogJ05VJywgdmFsdWU6ICdOaXVlJ30sXG4gIHtsYWJlbDogJ05aJywgdmFsdWU6ICdOZXcgWmVhbGFuZCd9LFxuICB7bGFiZWw6ICdPTScsIHZhbHVlOiAnT21hbid9LFxuICB7bGFiZWw6ICdQQScsIHZhbHVlOiAnUGFuYW1hJ30sXG4gIHtsYWJlbDogJ1BFJywgdmFsdWU6ICdQZXJ1J30sXG4gIHtsYWJlbDogJ1BGJywgdmFsdWU6ICdGcmVuY2ggUG9seW5lc2lhJ30sXG4gIHtsYWJlbDogJ1BHJywgdmFsdWU6ICdQYXB1YSBOZXcgR3VpbmVhJ30sXG4gIHtsYWJlbDogJ1BIJywgdmFsdWU6ICdQaGlsaXBwaW5lcyd9LFxuICB7bGFiZWw6ICdQSycsIHZhbHVlOiAnUGFraXN0YW4nfSxcbiAge2xhYmVsOiAnUEwnLCB2YWx1ZTogJ1BvbGFuZCd9LFxuICB7bGFiZWw6ICdQTScsIHZhbHVlOiAnU2FpbnQgUGllcnJlIGFuZCBNaXF1ZWxvbid9LFxuICB7bGFiZWw6ICdQTicsIHZhbHVlOiAnUGl0Y2Fpcm4nfSxcbiAge2xhYmVsOiAnUFInLCB2YWx1ZTogJ1B1ZXJ0byBSaWNvJ30sXG4gIHtsYWJlbDogJ1BTJywgdmFsdWU6ICdQYWxlc3RpbmUnfSxcbiAge2xhYmVsOiAnUFQnLCB2YWx1ZTogJ1BvcnR1Z2FsJ30sXG4gIHtsYWJlbDogJ1BXJywgdmFsdWU6ICdQYWxhdSd9LFxuICB7bGFiZWw6ICdQWScsIHZhbHVlOiAnUGFyYWd1YXknfSxcbiAge2xhYmVsOiAnUUEnLCB2YWx1ZTogJ1FhdGFyJ30sXG4gIHtsYWJlbDogJ1JFJywgdmFsdWU6ICdSw6l1bmlvbid9LFxuICB7bGFiZWw6ICdSTycsIHZhbHVlOiAnUm9tYW5pYSd9LFxuICB7bGFiZWw6ICdSUycsIHZhbHVlOiAnU2VyYmlhJ30sXG4gIHtsYWJlbDogJ1JVJywgdmFsdWU6ICdSdXNzaWFuIEZlZGVyYXRpb24nfSxcbiAge2xhYmVsOiAnUlcnLCB2YWx1ZTogJ1J3YW5kYSd9LFxuICB7bGFiZWw6ICdTQScsIHZhbHVlOiAnU2F1ZGkgQXJhYmlhJ30sXG4gIHtsYWJlbDogJ1NCJywgdmFsdWU6ICdTb2xvbW9uIElzbGFuZHMnfSxcbiAge2xhYmVsOiAnU0MnLCB2YWx1ZTogJ1NleWNoZWxsZXMnfSxcbiAge2xhYmVsOiAnU0QnLCB2YWx1ZTogJ1N1ZGFuJ30sXG4gIHtsYWJlbDogJ1NFJywgdmFsdWU6ICdTd2VkZW4nfSxcbiAge2xhYmVsOiAnU0cnLCB2YWx1ZTogJ1NpbmdhcG9yZSd9LFxuICB7bGFiZWw6ICdTSScsIHZhbHVlOiAnU2xvdmVuaWEnfSxcbiAge2xhYmVsOiAnU0onLCB2YWx1ZTogJ1N2YWxiYXJkIGFuZCBKYW4gTWF5ZW4nfSxcbiAge2xhYmVsOiAnU0snLCB2YWx1ZTogJ1Nsb3Zha2lhJ30sXG4gIHtsYWJlbDogJ1NMJywgdmFsdWU6ICdTaWVycmEgTGVvbmUnfSxcbiAge2xhYmVsOiAnU00nLCB2YWx1ZTogJ1NhbiBNYXJpbm8nfSxcbiAge2xhYmVsOiAnU04nLCB2YWx1ZTogJ1NlbmVnYWwnfSxcbiAge2xhYmVsOiAnU08nLCB2YWx1ZTogJ1NvbWFsaWEnfSxcbiAge2xhYmVsOiAnU1InLCB2YWx1ZTogJ1N1cmluYW1lJ30sXG4gIHtsYWJlbDogJ1NTJywgdmFsdWU6ICdTb3V0aCBTdWRhbid9LFxuICB7bGFiZWw6ICdTVCcsIHZhbHVlOiAnU2FvIFRvbWUgYW5kIFByaW5jaXBlJ30sXG4gIHtsYWJlbDogJ1NWJywgdmFsdWU6ICdFbCBTYWx2YWRvcid9LFxuICB7bGFiZWw6ICdTWCcsIHZhbHVlOiAnU2ludCBNYWFydGVuIChEdXRjaCBwYXJ0KSd9LFxuICB7bGFiZWw6ICdTWScsIHZhbHVlOiAnU3lyaWFuIEFyYWIgUmVwdWJsaWMnfSxcbiAge2xhYmVsOiAnU1onLCB2YWx1ZTogJ1N3YXppbGFuZCd9LFxuICB7bGFiZWw6ICdUQycsIHZhbHVlOiAnVHVya3MgYW5kIENhaWNvcyBJc2xhbmRzJ30sXG4gIHtsYWJlbDogJ1REJywgdmFsdWU6ICdDaGFkJ30sXG4gIHtsYWJlbDogJ1RHJywgdmFsdWU6ICdUb2dvJ30sXG4gIHtsYWJlbDogJ1RIJywgdmFsdWU6ICdUaGFpbGFuZCd9LFxuICB7bGFiZWw6ICdUSicsIHZhbHVlOiAnVGFqaWtpc3Rhbid9LFxuICB7bGFiZWw6ICdUSycsIHZhbHVlOiAnVG9rZWxhdSd9LFxuICB7bGFiZWw6ICdUTCcsIHZhbHVlOiAnVGltb3ItTGVzdGUnfSxcbiAge2xhYmVsOiAnVE0nLCB2YWx1ZTogJ1R1cmttZW5pc3Rhbid9LFxuICB7bGFiZWw6ICdUTicsIHZhbHVlOiAnVHVuaXNpYSd9LFxuICB7bGFiZWw6ICdUTycsIHZhbHVlOiAnVG9uZ2EnfSxcbiAge2xhYmVsOiAnVFInLCB2YWx1ZTogJ1R1cmtleSd9LFxuICB7bGFiZWw6ICdUVCcsIHZhbHVlOiAnVHJpbmlkYWQgYW5kIFRvYmFnbyd9LFxuICB7bGFiZWw6ICdUVicsIHZhbHVlOiAnVHV2YWx1J30sXG4gIHtsYWJlbDogJ1RXJywgdmFsdWU6ICdUYWl3YW4nfSxcbiAge2xhYmVsOiAnVFonLCB2YWx1ZTogJ1RhbnphbmlhJ30sXG4gIHtsYWJlbDogJ1VBJywgdmFsdWU6ICdVa3JhaW5lJ30sXG4gIHtsYWJlbDogJ1VHJywgdmFsdWU6ICdVZ2FuZGEnfSxcbiAge2xhYmVsOiAnVVMnLCB2YWx1ZTogJ1VuaXRlZCBTdGF0ZXMnfSxcbiAge2xhYmVsOiAnVVknLCB2YWx1ZTogJ1VydWd1YXknfSxcbiAge2xhYmVsOiAnVVonLCB2YWx1ZTogJ1V6YmVraXN0YW4nfSxcbiAge2xhYmVsOiAnVkEnLCB2YWx1ZTogJ0hvbHkgU2VlIChWYXRpY2FuIENpdHkgU3RhdGUpJ30sXG4gIHtsYWJlbDogJ1ZDJywgdmFsdWU6ICdTYWludCBWaW5jZW50IGFuZCB0aGUgR3JlbmFkaW5lcyd9LFxuICB7bGFiZWw6ICdWRScsIHZhbHVlOiAnQm9saXZhcmlhbiBSZXB1YmxpYyBvZiBWZW5lenVlbGEnfSxcbiAge2xhYmVsOiAnVkcnLCB2YWx1ZTogJ1ZpcmdpbiBJc2xhbmRzLCBCcml0aXNoJ30sXG4gIHtsYWJlbDogJ1ZJJywgdmFsdWU6ICdWaXJnaW4gSXNsYW5kcywgVS5TLid9LFxuICB7bGFiZWw6ICdWTicsIHZhbHVlOiAnVmlldCBOYW0nfSxcbiAge2xhYmVsOiAnVlUnLCB2YWx1ZTogJ1ZhbnVhdHUnfSxcbiAge2xhYmVsOiAnV0YnLCB2YWx1ZTogJ1dhbGxpcyBhbmQgRnV0dW5hJ30sXG4gIHtsYWJlbDogJ1dTJywgdmFsdWU6ICdTYW1vYSd9LFxuICB7bGFiZWw6ICdYSycsIHZhbHVlOiAnS29zb3ZvJ30sXG4gIHtsYWJlbDogJ1lFJywgdmFsdWU6ICdZZW1lbid9LFxuICB7bGFiZWw6ICdZVCcsIHZhbHVlOiAnTWF5b3R0ZSd9LFxuICB7bGFiZWw6ICdaQScsIHZhbHVlOiAnU291dGggQWZyaWNhJ30sXG4gIHtsYWJlbDogJ1pNJywgdmFsdWU6ICdaYW1iaWEnfSxcbiAge2xhYmVsOiAnWlcnLCB2YWx1ZTogJ1ppbWJhYndlJ30sXG5dLnNvcnQoKGEsIGIpID0+IGEudmFsdWUubG9jYWxlQ29tcGFyZShiLnZhbHVlKSk7XG4iLCJpbXBvcnQge0J1dHRvbn0gZnJvbSAnQGNvZGUtZG90LW9yZy9jb21wb25lbnQtbGlicmFyeS9idXR0b24nO1xuaW1wb3J0IHtTaW1wbGVEcm9wZG93bn0gZnJvbSAnQGNvZGUtZG90LW9yZy9jb21wb25lbnQtbGlicmFyeS9kcm9wZG93bic7XG5pbXBvcnQge1xuICBCb2R5VHdvVGV4dCxcbiAgSGVhZGluZzIsXG59IGZyb20gJ0Bjb2RlLWRvdC1vcmcvY29tcG9uZW50LWxpYnJhcnkvdHlwb2dyYXBoeSc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgUmVhY3QsIHt1c2VNZW1vfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7XG4gIFNFTEVDVF9DT1VOVFJZLFxuICBVU19DT1VOVFJZX0NPREUsXG4gIFpJUF9SRUdFWCxcbn0gZnJvbSAnQGNkby9hcHBzL3NpZ25VcEZsb3cvc2lnblVwRmxvd0NvbnN0YW50cyc7XG5pbXBvcnQgU2Nob29sTmFtZUlucHV0IGZyb20gJ0BjZG8vYXBwcy90ZW1wbGF0ZXMvU2Nob29sTmFtZUlucHV0JztcbmltcG9ydCBTY2hvb2xaaXBTZWFyY2ggZnJvbSAnQGNkby9hcHBzL3RlbXBsYXRlcy9TY2hvb2xaaXBTZWFyY2gnO1xuaW1wb3J0IHtOb25TY2hvb2xPcHRpb25zfSBmcm9tICdAY2RvL2dlbmVyYXRlZC1zY3JpcHRzL3NoYXJlZENvbnN0YW50cyc7XG5pbXBvcnQgaTE4biBmcm9tICdAY2RvL2xvY2FsZSc7XG5cbmltcG9ydCB7Z2V0Q291bnRyaWVzVXNGaXJzdH0gZnJvbSAnLi4vc2Nob29sSW5mby91dGlscy9nZXRDb3VudHJpZXNVc0ZpcnN0JztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vc2Nob29sLWFzc29jaWF0aW9uLm1vZHVsZS5zY3NzJztcblxuY29uc3QgU0VBUkNIX0RFRkFVTFRTID0gW1xuICB7dmFsdWU6IE5vblNjaG9vbE9wdGlvbnMuQ0xJQ0tfVE9fQURELCB0ZXh0OiBpMThuLnNjaG9vbENsaWNrVG9BZGQoKX0sXG4gIHt2YWx1ZTogTm9uU2Nob29sT3B0aW9ucy5OT19TQ0hPT0xfU0VUVElORywgdGV4dDogaTE4bi5ub1NjaG9vbFNldHRpbmcoKX0sXG5dO1xuXG5jb25zdCBDT1VOVFJJRVNfVVNfRklSU1QgPSBnZXRDb3VudHJpZXNVc0ZpcnN0KCk7XG5cbmV4cG9ydCBjb25zdCBTQ0hPT0xfSU5GT19JRCA9ICdzY2hvb2xfaW5mbyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFNjaG9vbERhdGFJbnB1dHMoe1xuICBzY2hvb2xJZCxcbiAgY291bnRyeSxcbiAgc2Nob29sTmFtZSxcbiAgc2Nob29sWmlwLFxuICBzY2hvb2xzTGlzdCxcbiAgc2V0U2Nob29sSWQsXG4gIHNldENvdW50cnksXG4gIHNldFNjaG9vbE5hbWUsXG4gIHNldFNjaG9vbFppcCxcbiAgdXNJcCxcbiAgY29udGFpbmVyQ2xhc3NOYW1lLFxuICBpbmNsdWRlSGVhZGVycyA9IHRydWUsXG4gIGZpZWxkTmFtZXMgPSB7XG4gICAgY291bnRyeTogJ3VzZXJbc2Nob29sX2luZm9fYXR0cmlidXRlc11bY291bnRyeV0nLFxuICAgIG5jZXNTY2hvb2xJZDogJ3VzZXJbc2Nob29sX2luZm9fYXR0cmlidXRlc11bc2Nob29sX2lkXScsXG4gICAgc2Nob29sTmFtZTogJ3VzZXJbc2Nob29sX2luZm9fYXR0cmlidXRlc11bc2Nob29sX25hbWVdJyxcbiAgICBzY2hvb2xaaXA6ICd1c2VyW3NjaG9vbF9pbmZvX2F0dHJpYnV0ZXNdW3NjaG9vbF96aXBdJyxcbiAgICBzY2hvb2xUeXBlOiAndXNlcltzY2hvb2xfaW5mb19hdHRyaWJ1dGVzXVtzY2hvb2xfdHlwZV0nLFxuICB9LFxufSkge1xuICAvLyBXZSBkb24ndCB3YW50IHRvIGRpc3BsYXkgYW55IGZpZWxkcyB0byBzdGFydCB0aGF0IHdvbid0IGV2ZW50dWFsbHkgYmVcbiAgLy8gbmVjZXNzYXJ5LCBzbyB1cGRhdGluZyBhbnkgdGltZSBjb3VudHJ5IGNoYW5nZXNcbiAgY29uc3QgY291bnRyeUlzVVMgPSB1c2VNZW1vKCgpID0+IGNvdW50cnkgPT09IFVTX0NPVU5UUllfQ09ERSwgW2NvdW50cnldKTtcblxuICBjb25zdCBjb3VudHJ5SXNTZWxlY3RlZE9yVXNJcEZhbHNlID0gdXNlTWVtbyhcbiAgICAoKSA9PiAoY291bnRyeSAmJiBjb3VudHJ5ICE9PSBTRUxFQ1RfQ09VTlRSWSkgfHwgdXNJcCA9PT0gZmFsc2UsXG4gICAgW2NvdW50cnksIHVzSXBdXG4gICk7XG5cbiAgY29uc3QgaW5wdXRNYW51YWxseSA9IHVzZU1lbW8oXG4gICAgKCkgPT4gc2Nob29sSWQgPT09IE5vblNjaG9vbE9wdGlvbnMuQ0xJQ0tfVE9fQURELFxuICAgIFtzY2hvb2xJZF1cbiAgKTtcblxuICBjb25zdCBzaG93Tm9TY2hvb2xTZXR0aW5nQnV0dG9uID0gdXNlTWVtbyhcbiAgICAoKSA9PiBzY2hvb2xJZCAhPT0gTm9uU2Nob29sT3B0aW9ucy5OT19TQ0hPT0xfU0VUVElORyxcbiAgICBbc2Nob29sSWRdXG4gICk7XG5cbiAgY29uc3Qgc2Nob29sWmlwSXNWYWxpZCA9IHVzZU1lbW8oXG4gICAgKCkgPT4gWklQX1JFR0VYLnRlc3Qoc2Nob29sWmlwKSxcbiAgICBbc2Nob29sWmlwXVxuICApO1xuXG4gIGNvbnN0IHNjaG9vbFNlbGVjdE9wdGlvbnMgPSB1c2VNZW1vKFxuICAgICgpID0+IFtcbiAgICAgIHt2YWx1ZTogTm9uU2Nob29sT3B0aW9ucy5TRUxFQ1RfQV9TQ0hPT0wsIHRleHQ6IGkxOG4uc2VsZWN0QVNjaG9vbCgpfSxcbiAgICAgIC4uLnNjaG9vbHNMaXN0LFxuICAgIF0sXG4gICAgW3NjaG9vbHNMaXN0XVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZUNvdW50cnlDaGFuZ2UgPSBjID0+IHtcbiAgICBzZXRDb3VudHJ5KGMpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVNjaG9vbENoYW5nZSA9IGlkID0+IHtcbiAgICBzZXRTY2hvb2xJZChpZCk7XG4gIH07XG5cbiAgY29uc3QgbGFiZWxDbGFzc05hbWUgPSBzY2hvb2xaaXBJc1ZhbGlkID8gJycgOiBzdHlsZS5kaXNhYmxlZExhYmVsO1xuXG4gIGNvbnN0IGNvbXB1dGVkU3R5bGVDbGFzcyA9IGNsYXNzTmFtZXMoXG4gICAgc3R5bGUuc2Nob29sQXNzb2NpYXRpb25XcmFwcGVyLFxuICAgIGNvbnRhaW5lckNsYXNzTmFtZVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBpZD17U0NIT09MX0lORk9fSUR9IGNsYXNzTmFtZT17Y29tcHV0ZWRTdHlsZUNsYXNzfT5cbiAgICAgIHtpbmNsdWRlSGVhZGVycyAmJiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZS5oZWFkZXJDb250YWluZXJ9PlxuICAgICAgICAgIDxIZWFkaW5nMj57aTE4bi5jZW5zdXNIZWFkaW5nKCl9PC9IZWFkaW5nMj5cbiAgICAgICAgICA8Qm9keVR3b1RleHQ+e2kxOG4uc2Nob29sSW5mb0ludGVyc3RpdGlhbFRpdGxlKCl9PC9Cb2R5VHdvVGV4dD5cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlLmlucHV0Q29udGFpbmVyfT5cbiAgICAgICAgPFNpbXBsZURyb3Bkb3duXG4gICAgICAgICAgaWQ9XCJ1aXRlc3QtY291bnRyeS1kcm9wZG93blwiXG4gICAgICAgICAgY2xhc3NOYW1lPXtzdHlsZS5kcm9wZG93bn1cbiAgICAgICAgICBuYW1lPXtmaWVsZE5hbWVzLmNvdW50cnl9XG4gICAgICAgICAgbGFiZWxUZXh0PXtpMThuLndoYXRDb3VudHJ5KCl9XG4gICAgICAgICAgaXRlbXM9e0NPVU5UUklFU19VU19GSVJTVH1cbiAgICAgICAgICBzZWxlY3RlZFZhbHVlPXtjb3VudHJ5fVxuICAgICAgICAgIG9uQ2hhbmdlPXtlID0+IGhhbmRsZUNvdW50cnlDaGFuZ2UoZS50YXJnZXQudmFsdWUpfVxuICAgICAgICAgIGRyb3Bkb3duVGV4dFRoaWNrbmVzcz1cInRoaW5cIlxuICAgICAgICAvPlxuICAgICAgICB7Y291bnRyeUlzVVMgJiYgKFxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8U2Nob29sWmlwU2VhcmNoXG4gICAgICAgICAgICAgIGZpZWxkTmFtZXM9e3tcbiAgICAgICAgICAgICAgICBzY2hvb2xaaXA6IGZpZWxkTmFtZXMuc2Nob29sWmlwLFxuICAgICAgICAgICAgICAgIG5jZXNTY2hvb2xJZDogZmllbGROYW1lcy5uY2VzU2Nob29sSWQsXG4gICAgICAgICAgICAgICAgc2Nob29sTmFtZTogZmllbGROYW1lcy5zY2hvb2xOYW1lLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBzY2hvb2xJZD17c2Nob29sSWR9XG4gICAgICAgICAgICAgIHNldFNjaG9vbElkPXtzZXRTY2hvb2xJZH1cbiAgICAgICAgICAgICAgc2Nob29sWmlwPXtzY2hvb2xaaXB9XG4gICAgICAgICAgICAgIHNldFNjaG9vbFppcD17c2V0U2Nob29sWmlwfVxuICAgICAgICAgICAgICBzY2hvb2xzTGlzdD17c2Nob29sc0xpc3R9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApfVxuICAgICAgICB7IWNvdW50cnlJc1VTICYmIGNvdW50cnlJc1NlbGVjdGVkT3JVc0lwRmFsc2UgJiYgKFxuICAgICAgICAgIDxTY2hvb2xOYW1lSW5wdXRcbiAgICAgICAgICAgIGZpZWxkTmFtZXM9e3tcbiAgICAgICAgICAgICAgc2Nob29sTmFtZTogZmllbGROYW1lcy5zY2hvb2xOYW1lLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIHNjaG9vbE5hbWU9e3NjaG9vbE5hbWV9XG4gICAgICAgICAgICBzZXRTY2hvb2xOYW1lPXtzZXRTY2hvb2xOYW1lfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIHtjb3VudHJ5SXNVUyAmJiAhaW5wdXRNYW51YWxseSAmJiAoXG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxTaW1wbGVEcm9wZG93blxuICAgICAgICAgICAgICBpZD1cInVpdGVzdC1zY2hvb2wtZHJvcGRvd25cIlxuICAgICAgICAgICAgICBkaXNhYmxlZD17IXNjaG9vbFppcElzVmFsaWR9XG4gICAgICAgICAgICAgIG5hbWU9e2ZpZWxkTmFtZXMubmNlc1NjaG9vbElkfVxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMobGFiZWxDbGFzc05hbWUsIHN0eWxlLmRyb3Bkb3duKX1cbiAgICAgICAgICAgICAgbGFiZWxUZXh0PXtpMThuLnNlbGVjdFlvdXJTY2hvb2woKX1cbiAgICAgICAgICAgICAgaXRlbUdyb3Vwcz17W1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIGxhYmVsOiBpMThuLnNjaG9vbHMoKSxcbiAgICAgICAgICAgICAgICAgIGdyb3VwSXRlbXM6IHNjaG9vbFNlbGVjdE9wdGlvbnMsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBsYWJlbDogaTE4bi5hZGRpdGlvbmFsT3B0aW9ucygpLFxuICAgICAgICAgICAgICAgICAgZ3JvdXBJdGVtczogU0VBUkNIX0RFRkFVTFRTLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIF19XG4gICAgICAgICAgICAgIHNlbGVjdGVkVmFsdWU9e3NjaG9vbElkfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17ZSA9PiBoYW5kbGVTY2hvb2xDaGFuZ2UoZS50YXJnZXQudmFsdWUpfVxuICAgICAgICAgICAgICBkcm9wZG93blRleHRUaGlja25lc3M9XCJ0aGluXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB7c2hvd05vU2Nob29sU2V0dGluZ0J1dHRvbiAmJiAoXG4gICAgICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgICAgICB0ZXh0PXtpMThuLm5vU2Nob29sU2V0dGluZygpfVxuICAgICAgICAgICAgICAgIGRpc2FibGVkPXshc2Nob29sWmlwSXNWYWxpZH1cbiAgICAgICAgICAgICAgICBjb2xvcj17J3B1cnBsZSd9XG4gICAgICAgICAgICAgICAgdHlwZT17J3RlcnRpYXJ5J31cbiAgICAgICAgICAgICAgICBzaXplPXsncyd9XG4gICAgICAgICAgICAgICAgb25DbGljaz17ZSA9PiB7XG4gICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICBoYW5kbGVTY2hvb2xDaGFuZ2UoTm9uU2Nob29sT3B0aW9ucy5OT19TQ0hPT0xfU0VUVElORyk7XG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG4gICAgICAgIHtjb3VudHJ5SXNVUyAmJiBpbnB1dE1hbnVhbGx5ICYmIChcbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPFNjaG9vbE5hbWVJbnB1dFxuICAgICAgICAgICAgICBmaWVsZE5hbWVzPXt7c2Nob29sTmFtZTogZmllbGROYW1lcy5zY2hvb2xOYW1lfX1cbiAgICAgICAgICAgICAgc2Nob29sTmFtZT17c2Nob29sTmFtZX1cbiAgICAgICAgICAgICAgc2V0U2Nob29sTmFtZT17c2V0U2Nob29sTmFtZX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgIHRleHQ9e2kxOG4ucmV0dXJuVG9SZXN1bHRzKCl9XG4gICAgICAgICAgICAgIGNvbG9yPXsncHVycGxlJ31cbiAgICAgICAgICAgICAgdHlwZT17J3RlcnRpYXJ5J31cbiAgICAgICAgICAgICAgc2l6ZT17J3MnfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgaGFuZGxlU2Nob29sQ2hhbmdlKE5vblNjaG9vbE9wdGlvbnMuU0VMRUNUX0FfU0NIT09MKTtcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuU2Nob29sRGF0YUlucHV0cy5wcm9wVHlwZXMgPSB7XG4gIGluY2x1ZGVIZWFkZXJzOiBQcm9wVHlwZXMuYm9vbCxcbiAgZmllbGROYW1lczogUHJvcFR5cGVzLm9iamVjdCxcbiAgY29udGFpbmVyQ2xhc3NOYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBzY2hvb2xJZDogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICBjb3VudHJ5OiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gIHNjaG9vbE5hbWU6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgc2Nob29sWmlwOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gIHNjaG9vbHNMaXN0OiBQcm9wVHlwZXMuYXJyYXlPZihcbiAgICBQcm9wVHlwZXMuc2hhcGUoe3ZhbHVlOiBQcm9wVHlwZXMuc3RyaW5nLCB0ZXh0OiBQcm9wVHlwZXMuc3RyaW5nfSlcbiAgKS5pc1JlcXVpcmVkLFxuICB1c0lwOiBQcm9wVHlwZXMuYm9vbCxcbiAgc2V0U2Nob29sSWQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIHNldENvdW50cnk6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIHNldFNjaG9vbE5hbWU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIHNldFNjaG9vbFppcDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbn07XG4iLCJpbXBvcnQgVGV4dEZpZWxkIGZyb20gJ0Bjb2RlLWRvdC1vcmcvY29tcG9uZW50LWxpYnJhcnkvdGV4dEZpZWxkJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgaTE4biBmcm9tICdAY2RvL2xvY2FsZSc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFNjaG9vbE5hbWVJbnB1dCh7XG4gIGZpZWxkTmFtZXMsXG4gIHNjaG9vbE5hbWUsXG4gIHNldFNjaG9vbE5hbWUsXG59KSB7XG4gIGNvbnN0IGhhbmRsZVNjaG9vbE5hbWVDaGFuZ2UgPSBuYW1lID0+IHtcbiAgICBzZXRTY2hvb2xOYW1lKG5hbWUpO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPFRleHRGaWVsZFxuICAgICAgaWQ9XCJ1aXRlc3Qtc2Nob29sLW5hbWVcIlxuICAgICAgbmFtZT17ZmllbGROYW1lcy5zY2hvb2xOYW1lfVxuICAgICAgbGFiZWw9e2kxOG4uc2Nob29sT3JnYW5pemF0aW9uUXVlc3Rpb24oKX1cbiAgICAgIG9uQ2hhbmdlPXtlID0+IGhhbmRsZVNjaG9vbE5hbWVDaGFuZ2UoZS50YXJnZXQudmFsdWUpfVxuICAgICAgdmFsdWU9e3NjaG9vbE5hbWV9XG4gICAgLz5cbiAgKTtcbn1cblxuU2Nob29sTmFtZUlucHV0LnByb3BUeXBlcyA9IHtcbiAgZmllbGROYW1lczogUHJvcFR5cGVzLm9iamVjdCxcbiAgc2Nob29sTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgc2V0U2Nob29sTmFtZTogUHJvcFR5cGVzLmZ1bmMsXG59O1xuIiwiaW1wb3J0IFRleHRGaWVsZCBmcm9tICdAY29kZS1kb3Qtb3JnL2NvbXBvbmVudC1saWJyYXJ5L3RleHRGaWVsZCc7XG5pbXBvcnQge0JvZHlUaHJlZVRleHR9IGZyb20gJ0Bjb2RlLWRvdC1vcmcvY29tcG9uZW50LWxpYnJhcnkvdHlwb2dyYXBoeSc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IFJlYWN0LCB7dXNlTWVtb30gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQge1pJUF9SRUdFWH0gZnJvbSAnQGNkby9hcHBzL3NpZ25VcEZsb3cvc2lnblVwRmxvd0NvbnN0YW50cyc7XG5pbXBvcnQgaTE4biBmcm9tICdAY2RvL2xvY2FsZSc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3NjaG9vbC1hc3NvY2lhdGlvbi5tb2R1bGUuc2Nzcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFNjaG9vbFppcFNlYXJjaCh7ZmllbGROYW1lcywgc2Nob29sWmlwLCBzZXRTY2hvb2xaaXB9KSB7XG4gIGNvbnN0IHNjaG9vbFppcElzVmFsaWQgPSB1c2VNZW1vKFxuICAgICgpID0+IFpJUF9SRUdFWC50ZXN0KHNjaG9vbFppcCksXG4gICAgW3NjaG9vbFppcF1cbiAgKTtcblxuICBjb25zdCBoYW5kbGVaaXBDaGFuZ2UgPSB6aXAgPT4ge1xuICAgIHNldFNjaG9vbFppcCh6aXApO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlLmlucHV0Q29udGFpbmVyfT5cbiAgICAgIDxsYWJlbD5cbiAgICAgICAgPFRleHRGaWVsZFxuICAgICAgICAgIGlkPVwidWl0ZXN0LXNjaG9vbC16aXBcIlxuICAgICAgICAgIG5hbWU9e2ZpZWxkTmFtZXMuc2Nob29sWmlwfVxuICAgICAgICAgIGxhYmVsPXtpMThuLmVudGVyWW91clNjaG9vbFppcCgpfVxuICAgICAgICAgIG9uQ2hhbmdlPXtlID0+IGhhbmRsZVppcENoYW5nZShlLnRhcmdldC52YWx1ZSl9XG4gICAgICAgICAgdmFsdWU9e3NjaG9vbFppcH1cbiAgICAgICAgLz5cbiAgICAgICAge3NjaG9vbFppcCAmJiAhc2Nob29sWmlwSXNWYWxpZCAmJiAoXG4gICAgICAgICAgPEJvZHlUaHJlZVRleHQgY2xhc3NOYW1lPXtzdHlsZS5lcnJvck1lc3NhZ2V9PlxuICAgICAgICAgICAge2kxOG4uemlwSW52YWxpZE1lc3NhZ2UoKX1cbiAgICAgICAgICA8L0JvZHlUaHJlZVRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L2xhYmVsPlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5TY2hvb2xaaXBTZWFyY2gucHJvcFR5cGVzID0ge1xuICBmaWVsZE5hbWVzOiBQcm9wVHlwZXMub2JqZWN0LFxuICBzY2hvb2xaaXA6IFByb3BUeXBlcy5zdHJpbmcsXG4gIHNldFNjaG9vbFppcDogUHJvcFR5cGVzLmZ1bmMsXG59O1xuIiwiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuVXBmYnVxemNBaEt6TEtkWWVDU097dGV4dC1hbGlnbjpjZW50ZXI7ZGlzcGxheTpncmlkfS5VcGZidXF6Y0FoS3pMS2RZZUNTTyBoMnttYXJnaW4tYm90dG9tOi4yNXJlbX0uVXBmYnVxemNBaEt6TEtkWWVDU08gcHttYXJnaW4tYm90dG9tOi4zNzVyZW19LlVwZmJ1cXpjQWhLekxLZFllQ1NPIGxhYmVse3dpZHRoOjEwMCU7bWFyZ2luLWJvdHRvbTowfS5VcGZidXF6Y0FoS3pMS2RZZUNTTyBsYWJlbCBzcGFuOjphZnRlcntjb250ZW50OlxcXCIqXFxcIn0uVXBmYnVxemNBaEt6TEtkWWVDU08gaW5wdXQsLlVwZmJ1cXpjQWhLekxLZFllQ1NPIC5vNnJDSVdFbHZRQ3BHY2JoQjNfOT5kaXZ7d2lkdGg6MTAwJX0uVXBmYnVxemNBaEt6TEtkWWVDU08gYnV0dG9ue2JvcmRlcjowO3BhZGRpbmctaW5saW5lOjB9LlVwZmJ1cXpjQWhLekxLZFllQ1NPIGJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOm5vbmUgIWltcG9ydGFudDt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lICFpbXBvcnRhbnR9LlVwZmJ1cXpjQWhLekxLZFllQ1NPIC5jMjJCcndra0NiRmRDb3hBcDAyTnttYXJnaW4tYmxvY2s6LjQzNzVyZW0gMDtjb2xvcjojZTUzMTFhfS5SY1pmaGFPNnJUQV9PYmJLMmk5VnttYXJnaW4tYm90dG9tOjEuNzVyZW19LmRPbFdsVW5xaW5BZFNBWDlXa19We2p1c3RpZnktc2VsZjpjZW50ZXI7dGV4dC1hbGlnbjpzdGFydDt3aWR0aDo0MDBweDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxLjEyNXJlbX0uWWJTeVVad1NPc0o4ekNqSWFJYzYgc3Bhbntjb2xvcjojYmVjMmM3ICFpbXBvcnRhbnR9XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL3RlbXBsYXRlcy9zY2hvb2wtYXNzb2NpYXRpb24ubW9kdWxlLnNjc3NcIixcIndlYnBhY2s6Ly8uLy4uL3NoYXJlZC9jc3MvY29sb3Iuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFHQSxzQkFDRSxpQkFBQSxDQUNBLFlBQUEsQ0FFQSx5QkFDRSxvQkFBQSxDQUdGLHdCQUNFLHFCQUFBLENBR0YsNEJBQ0UsVUFBQSxDQUNBLGVBQUEsQ0FFQSx3Q0FDRSxXQUFBLENBSUosNEVBRUUsVUFBQSxDQUdGLDZCQUNFLFFBQUEsQ0FDQSxnQkFBQSxDQUVBLG1DQUNFLDBCQUFBLENBQ0Esb0NBQUEsQ0FJSiw0Q0FDRSx1QkFBQSxDQUNBLGFDK0tpQixDRDNLckIsc0JBQ0UscUJBQUEsQ0FHRixzQkFDRSxtQkFBQSxDQUNBLGdCQUFBLENBQ0EsV0FBQSxDQUNBLFlBQUEsQ0FDQSxxQkFBQSxDQUNBLFlBQUEsQ0FJQSwyQkFDRSx3QkFBQVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJAaW1wb3J0ICdjb2xvci5zY3NzJztcXG5AaW1wb3J0ICdmb250LnNjc3MnO1xcblxcbi5zY2hvb2xBc3NvY2lhdGlvbldyYXBwZXIge1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgZGlzcGxheTogZ3JpZDtcXG5cXG4gIGgyIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIHAge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjM3NXJlbTtcXG4gIH1cXG5cXG4gIGxhYmVsIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7XFxuXFxuICAgIHNwYW46OmFmdGVyIHtcXG4gICAgICBjb250ZW50OiAnKic7XFxuICAgIH1cXG4gIH1cXG5cXG4gIGlucHV0LFxcbiAgLmRyb3Bkb3duID4gZGl2IHtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICBidXR0b24ge1xcbiAgICBib3JkZXI6IDA7XFxuICAgIHBhZGRpbmctaW5saW5lOiAwO1xcblxcbiAgICAmOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcXG4gICAgfVxcbiAgfVxcblxcbiAgLmVycm9yTWVzc2FnZSB7XFxuICAgIG1hcmdpbi1ibG9jazogMC40Mzc1cmVtIDA7XFxuICAgIGNvbG9yOiAkbGlnaHRfbmVnYXRpdmVfNTAwO1xcbiAgfVxcbn1cXG5cXG4uaGVhZGVyQ29udGFpbmVyIHtcXG4gIG1hcmdpbi1ib3R0b206IDEuNzVyZW07XFxufVxcblxcbi5pbnB1dENvbnRhaW5lciB7XFxuICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xcbiAgd2lkdGg6IDQwMHB4O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBnYXA6IDEuMTI1cmVtO1xcbn1cXG5cXG4uZGlzYWJsZWRMYWJlbCB7XFxuICBzcGFuIHtcXG4gICAgY29sb3I6ICRsaWdodF9ncmF5XzMwMCAhaW1wb3J0YW50O1xcbiAgfVxcbn1cXG5cIixcIi8vIGNvbG9ycyBmcm9tIGh0dHBzOi8vd3d3LmRyb3Bib3guY29tL3MveWNqaXd0OHZ4bG12MmloL0NvZGUub3JnX3N0eWxlc2hlZXRfdjJfMDkuMDUuMTMucGRmXFxuXFxuLy8gUGxlYXNlIGtlZXAgdGhpcyBmaWxlIHNpbXBsZTsgaXQgc2hvdWxkIG9ubHkgY29udGFpbiBjb2xvciBkZWZpbml0aW9uc1xcbi8vICAgYW5kIGFsaWFzZXMuICBWYXJpYWJsZXMgZGVmaW5lZCBpbiB0aGlzIGZpbGUgYXJlIGV4cG9ydGVkIHRvXFxuLy8gICBhcHBzL3NyYy91dGlsL2NvbG9yLmpzIGR1cmluZyB0aGUgYXBwcyBidWlsZCBwcm9jZXNzLlxcblxcbiRibGFjazogIzAwMDtcXG4kYmFja2dyb3VuZF9ibGFjazogIzEyMTQxNjtcXG4kZGFya19ncmF5OiAjMkQzMTM5O1xcbiRkYXJrZXN0X2dyYXk6ICMyOTJGMzY7XFxuJGRhcmtfc2xhdGVfZ3JheTogIzI4MmMzNDtcXG4kZGFya2VzdF9zbGF0ZV9ncmF5OiAjMjUyOTJkO1xcbiRkYXJrX2NoYXJjb2FsOiAjNGQ1NzVmO1xcbiRjaGFyY29hbDogIzViNjc3MDtcXG4kbGlnaHRfZ3JheTogIzk0OWNhMjtcXG4kbGlnaHRlcl9ncmF5OiAjYzZjYWNkO1xcbiRsaWdodGVzdF9ncmF5OiAjZTdlOGVhO1xcbiRiYWNrZ3JvdW5kX2dyYXk6ICNmMmYyZjI7XFxuJGRpbWdyYXk6ICM2OTY5Njk7XFxuJHdoaXRlOiAjZmZmO1xcbiRkZWZhdWx0X2JsdWU6ICMzNjcwYjM7XFxuXFxuJGRhcmtfdGVhbDogIzAwOTRhMztcXG4kdGVhbDogIzAwOTNhNDtcXG4kYXBwbGFiX2J1dHRvbl90ZWFsOiAjMWFiYzljO1xcbiRsaWdodF90ZWFsOiAjNTljYWQzO1xcbiRsaWdodGlzaF90ZWFsOiAjODBkNmRlO1xcbiRsaWdodGVyX3RlYWw6ICNhNmUzZTg7XFxuJGxpZ2h0ZXN0X3RlYWw6ICNkOWYzZjU7XFxuJGFpX3J1YnJpY19jeWFuOiAjM2NmZmY4O1xcblxcbiRwdXJwbGU6ICM4YzUyYmE7XFxuJGxpZ2h0X3B1cnBsZTogI2E2OWJjMTtcXG4kbGlnaHRlcl9wdXJwbGU6ICNjZmM5ZGU7XFxuJGxpZ2h0ZXN0X3B1cnBsZTogI2ViZThmMTtcXG5cXG4kY3lhbjogIzAwOTRjYTtcXG4kbGlnaHRfY3lhbjogIzU5YjlkYztcXG4kbGlnaHRlcl9jeWFuOiAjYTZkYWVkO1xcbiRsaWdodGVzdF9jeWFuOiAjZDllZmY3O1xcbiRhbG1vc3Rfd2hpdGVfY3lhbjogI2Y1ZmNmZjtcXG5cXG4kb3JhbmdlOiAjZmZhNDAwO1xcbiRsaWdodF9vcmFuZ2U6ICNmZmM0NTk7XFxuJGxpZ2h0ZXJfb3JhbmdlOiAjZmZlMGE2O1xcbiRsaWdodGVzdF9vcmFuZ2U6ICNmZmYyZDk7XFxuJGRhcmtfb3JhbmdlOiAjZmY4NjAwO1xcblxcbiRncmVlbjogI2I5YmYxNTtcXG4kbGlnaHRfZ3JlZW46ICNkMWQ1Njc7XFxuJGxpZ2h0ZXJfZ3JlZW46ICNlN2U5YWQ7XFxuJGxpZ2h0ZXN0X2dyZWVuOiAjZjVmNWRjO1xcbiRoaWdobGlnaHRfZ3JlZW46ICM4YWZjOWI7XFxuXFxuJHllbGxvdzogI2ZmYjgxZDtcXG4kbGlnaHRfeWVsbG93OiAjZmZkYjc0O1xcbiRsaWdodGVyX3llbGxvdzogI2ZmZWJiNTtcXG4kbGlnaHRlc3RfeWVsbG93OiAjZmZmN2RmO1xcblxcbiRnb2xkZW5yb2Q6ICNkYWE1MjA7XFxuXFxuJGhlYWRlcl90ZXh0OiAkd2hpdGU7XFxuJGJrZ25kX2NvbG9yOiAkdGVhbDtcXG4kaW5zZXRfY29sb3I6ICRsaWdodGVyX2dyYXk7XFxuJGRhcmtfY29sb3I6ICRwdXJwbGU7XFxuJGhkcl9jb2xvcjogJHB1cnBsZTtcXG5cXG4vLyBTb21lIGV4dHJhIGNvbG9ycy5cXG4kcmVkOiAjYzAwO1xcbiRsaWdodGVzdF9yZWQ6ICNmY2M7XFxuJGRhcmtfcmVkOiAjZDYyOTExO1xcbiRyZWFsZ3JlZW46ICMwMDgwMDA7XFxuJHJlYWx5ZWxsb3c6ICNmZjA7XFxuJG11c3RhcmR5ZWxsb3c6ICNlZmNkMWM7XFxuJHR3aXR0ZXJfYmx1ZTogIzAwYWNlZDtcXG4kZmFjZWJvb2tfYmx1ZTogIzNiNTk5ODtcXG4kbGlua2VkaW5fYmx1ZTogIzAwNzdCNTtcXG4kZGFya19ibHVlOiAjMDA2NDdmO1xcbiRibG9ja2x5X2ZseW91dF9ncmF5OiAjZGRkO1xcbiRkZWZhdWx0X3RleHQ6ICMzMzM7XFxuJGJvcmRlcl9ncmF5OiAjYmJiO1xcbiRib3JkZXJfbGlnaHRfZ3JheTogI2Q4ZDhkODtcXG4kdGFibGVfaGVhZGVyOiAjZWNlY2VjO1xcbiR0YWJsZV9saWdodF9yb3c6ICNmY2ZjZmM7XFxuJHRhYmxlX2Rhcmtfcm93OiAjZjRmNGY0O1xcblxcbi8vIFByb2dyZXNzIGNvbG9ycy5cXG4kbGV2ZWxfc3VibWl0dGVkOiAkcHVycGxlO1xcbiRsZXZlbF9wZXJmZWN0OiByZ2IoMTQsIDE5MCwgMTQpO1xcbiRsZXZlbF9wYXNzZWQ6IHJnYigxNTksIDIxMiwgMTU5KTtcXG4kbGV2ZWxfYXR0ZW1wdGVkOiAkcmVhbHllbGxvdztcXG4kbGV2ZWxfbm90X3RyaWVkOiAjZmVmZWZlO1xcbiRsZXZlbF9jdXJyZW50OiAkb3JhbmdlO1xcbiRsZXZlbF9yZXZpZXdfcmVqZWN0ZWQ6ICRyZWQ7XFxuJGxldmVsX3Jldmlld19hY2NlcHRlZDogcmdiKDExLCAxNDIsIDExKTsgLy8gVE9ETzogJGxldmVsX3Bhc3NlZDtcXG4kYXNzZXNzbWVudDogJGN5YW47XFxuJHdvcmtzcGFjZV9ydW5uaW5nX2JhY2tncm91bmQ6ICNlNWU1ZTU7XFxuXFxuLy8gRXhwZXJpbWVudGFsIFNwcml0ZSBMYWIgdmFsaWRhdGlvbiBjb2xvcnMuXFxuJGRhcmtfcHVycGxlOiAjNjgyQTc3O1xcbiRicmlnaHRfZ3JlZW46ICMwZWJlMGU7XFxuJG5lb25fcGluazogI2U5MTE4ZjtcXG5cXG4vLyBMaW5rcyAodXNlZCBpbiBhcHBzKS5cXG4kbGlua19jb2xvcjogIzA1OTZjZTtcXG5cXG4vLyBTaGFkb3cuXFxuJHNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjMpO1xcblxcbi8vIENvbG9ycyB0aGF0IGFyZSB0YWtlbiBmcm9tIGJvb3RzdHJhcCwgYW5kIG5vdCBuZWNlc3NhcmlseSBwYXJ0IG9mIG91ciBjb3JlIHRoZW1lLlxcbiRib290c3RyYXBfYnV0dG9uX2JsdWU6ICMzMzdhYjc7XFxuJGJvb3RzdHJhcF9idXR0b25fcmVkOiAjZDk1MzRmO1xcbiRib290c3RyYXBfZXJyb3JfYmFja2dyb3VuZDogI2YyZGVkZTtcXG4kYm9vdHN0cmFwX2Vycm9yX3RleHQ6ICNiOTRhNDg7XFxuJGJvb3RzdHJhcF92M19lcnJvcl90ZXh0OiAjYTk0NDQyO1xcbiRib290c3RyYXBfZXJyb3JfYm9yZGVyOiAjZWJjY2QxO1xcbiRib290c3RyYXBfd2FybmluZ19iYWNrZ3JvdW5kOiAjZmNmOGUzO1xcbiRib290c3RyYXBfd2FybmluZ190ZXh0OiAjYzA5ODUzO1xcbiRib290c3RyYXBfd2FybmluZ19ib3JkZXI6ICNmYWViY2M7XFxuJGJvb3RzdHJhcF9ib3JkZXJfY29sb3I6ICNjY2NjY2M7XFxuJGJvb3RzdHJhcF9zdWNjZXNzX2JhY2tncm91bmQ6ICNkZmYwZDg7XFxuJGJvb3RzdHJhcF9zdWNjZXNzX3RleHQ6ICM0Njg4NDc7XFxuJGJvb3RzdHJhcF9zdWNjZXNzX2JvcmRlcjogI2Q2ZTljNjtcXG5cXG4vLyBDb2xvcnMgdGFrZW4gZnJvbSBkcm9wbGV0LCBub3QgcGFydCBvZiBvdXIgY29yZSB0aGVtZS5cXG4kZHJvcGxldF9saWdodF9ncmVlbjogI2QzZTk2NTtcXG4kZHJvcGxldF9ibHVlOiAjNjRiNWY2O1xcbiRkcm9wbGV0X2JyaWdodF9ibHVlOiAjMTljM2UxO1xcbiRkcm9wbGV0X3llbGxvdzogI2ZmZjE3NjtcXG4kZHJvcGxldF9vcmFuZ2U6ICNmZmI3NGQ7XFxuJGRyb3BsZXRfcmVkOiAjZjc4MTgzO1xcbiRkcm9wbGV0X2N5YW46ICM0ZGQwZTE7XFxuJGRyb3BsZXRfcGluazogI2Y1N2FjNjtcXG4kZHJvcGxldF9wdXJwbGU6ICNiYjc3Yzc7XFxuJGRyb3BsZXRfZ3JlZW46ICM2OGQ5OTU7XFxuJGRyb3BsZXRfd2hpdGU6ICR3aGl0ZTtcXG5cXG4vLyBPY2VhbnM6IGRlZXAgYmx1ZSBiYWNrZ3JvdW5kLlxcbiRvY2VhbnNfZGVlcF9ibHVlOiByZ2IoMiwgMCwgMjgpO1xcblxcbi8vIERhcmsgdGhlbWUgYmFja2dyb3VuZCAodXNlZCBieSBkZWZhdWx0IGluIE11c2ljIExhYilcXG4kZGFya19ibGFjazogIzEyMTIxMjtcXG5cXG4vLyA9PT0tLS0tPT09LS0tLT09PS0tLS0gUGhhc2UgMSBDb2xvcnM6IC0tLS09PT0tLS0tPT09LS0tLT09PVxcbi8vIEJyYW5kXFxuJGJyYW5kX3ByaW1hcnlfbGlnaHQ6ICNFMEY4Rjk7XFxuJGJyYW5kX3ByaW1hcnlfZGVmYXVsdDogIzAwOUVCMDtcXG4kYnJhbmRfcHJpbWFyeV9kYXJrOiAjMDA3Nzg1O1xcblxcbiRicmFuZF9zZWNvbmRhcnlfbGlnaHQ6ICNFMEQxRUM7XFxuJGJyYW5kX3NlY29uZGFyeV9kZWZhdWx0OiAjOEM1MkJBO1xcbiRicmFuZF9zZWNvbmRhcnlfZGFyazogIzZDNDY4QTtcXG5cXG4kYnJhbmRfYWNjZW50X2RlZmF1bHQ6ICNFRDYwNjA7XFxuXFxuJGJyYW5kX3RlYWxfNTogI0RGRjJGNDtcXG5cXG4vL1Byb2R1Y3RcXG4kcHJvZHVjdF9hZmZpcm1hdGl2ZV9kZWZhdWx0OiAjM0VBMzNFO1xcblxcbiRwcm9kdWN0X25lZ2F0aXZlX2xpZ2h0OiAjRkRFQkU5O1xcbiRwcm9kdWN0X25lZ2F0aXZlX2RlZmF1bHQ6ICNFNTMxMUE7XFxuJHByb2R1Y3RfbmVnYXRpdmVfZGFyazogI0FBMjUxMztcXG5cXG4kcHJvZHVjdF9jYXV0aW9uX2RlZmF1bHQ6ICNGOUNCMjg7XFxuXFxuJHByb2R1Y3RfaW5mb3JtYXRpb25fZGVmYXVsdDogIzAwN0FDQztcXG5cXG4vLyBOZXV0cmFsXFxuJG5ldXRyYWxfd2hpdGU6ICNGRkZGRkY7XFxuJG5ldXRyYWxfbGlnaHQ6ICNGN0Y4RkE7XFxuJG5ldXRyYWxfZ3JheTEwOiAjRUFFQkVCO1xcbiRuZXV0cmFsX2RhcmsxMDogI0VBRUNFRjtcXG4kbmV1dHJhbF9kYXJrMjA6ICNEMUQ0RDg7XFxuJG5ldXRyYWxfZGFyazMwOiAjQkVDMkM3O1xcbiRuZXV0cmFsX2Rhcms0MDogI0FCQjBCNjtcXG4kbmV1dHJhbF9kYXJrNTA6ICM5ODlFQTU7XFxuJG5ldXRyYWxfZGFyazYwOiAjODU4Qzk0O1xcbiRuZXV0cmFsX2Rhcms3MDogIzcyN0E4MztcXG4kbmV1dHJhbF9kYXJrODA6ICM1RjY4NzI7XFxuJG5ldXRyYWxfZGFyazkwOiAjNEM1NjYxO1xcbiRuZXV0cmFsX2Rhcms6ICMyOTJGMzY7XFxuXFxuLy9CcmFuZHNcXG4kZ29vZ2xlX2JyYW5kX2NvbG9yOiAjMEY5RDU4O1xcbiRtaWNyb3NvZnRfYnJhbmRfY29sb3I6ICNGRkI5MDA7XFxuJGZhY2Vib29rX2JyYW5kX2NvbG9yOiAjM0I1OTk4O1xcbiRjbGV2ZXJfYnJhbmRfY29sb3I6ICMxNDY0RkY7XFxuXFxuLy8gPT09LS0tLT09PS0tLS09PT0tLS0tIERlc2lnbiBzeXN0ZW0gY29sb3JzOiAtLS0tPT09LS0tLT09PS0tLS09PT1cXG5cXG4kbGlnaHRfcHJpbWFyeV8xMDA6ICNCRkU0RTg7XFxuJGxpZ2h0X3ByaW1hcnlfNTAwOiAjMDA5M0E0O1xcbiRsaWdodF9wcmltYXJ5XzcwMDogIzAwNzc4NTtcXG5cXG4kbGlnaHRfc2Vjb25kYXJ5XzEwMDogI0UyRDRFRTtcXG4kbGlnaHRfc2Vjb25kYXJ5XzUwMDogIzhDNTJCQTtcXG4kbGlnaHRfc2Vjb25kYXJ5XzcwMDogIzZDNDY4QTtcXG5cXG4kbGlnaHRfZ3JheV81MDogI0Y3RjhGQTtcXG4kbGlnaHRfZ3JheV8xMDA6ICNFQUVDRUY7XFxuJGxpZ2h0X2dyYXlfMjAwOiAjRDFENEQ4O1xcbiRsaWdodF9ncmF5XzMwMDogI0JFQzJDNztcXG4kbGlnaHRfZ3JheV80MDA6ICNBQkIwQjY7XFxuJGxpZ2h0X2dyYXlfNTAwOiAjOTg5RUE1O1xcbiRsaWdodF9ncmF5XzYwMDogIzg1OEM5NDtcXG4kbGlnaHRfZ3JheV83MDA6ICM3MjdBODM7XFxuJGxpZ2h0X2dyYXlfODAwOiAjNUY2ODcyO1xcbiRsaWdodF9ncmF5XzkwMDogIzRDNTY2MTtcXG4kbGlnaHRfZ3JheV85NTA6ICMzOTQ0NTA7XFxuXFxuJGxpZ2h0X2FmZmlybWF0aXZlXzEwMDogI0UyRjFFMjtcXG4kbGlnaHRfYWZmaXJtYXRpdmVfNTAwOiAjM0VBMzNFO1xcbiRsaWdodF9hZmZpcm1hdGl2ZV83MDA6ICMyRDc0MkQ7XFxuXFxuJGxpZ2h0X25lZ2F0aXZlXzEwMDogI0ZCRTBERDtcXG4kbGlnaHRfbmVnYXRpdmVfNTAwOiAjRTUzMTFBO1xcbiRsaWdodF9uZWdhdGl2ZV83MDA6ICNCMjQ5NDk7XFxuXFxuJGxpZ2h0X2NhdXRpb25fMTAwOiAjRkVGN0RGO1xcbiRsaWdodF9jYXV0aW9uXzUwMDogI0Y5Q0IyODtcXG4kbGlnaHRfY2F1dGlvbl83MDA6ICNDN0EyMjA7XFxuXFxuJGxpZ2h0X2FjY2VudF8xMDA6ICNGQUQ3RDc7XFxuJGxpZ2h0X2FjY2VudF81MDA6ICNFRDYwNjA7XFxuJGxpZ2h0X2FjY2VudF83MDA6ICNEODRDNEM7XFxuXFxuJGxpZ2h0X2FxdWFfMTAwOiAjQ0VGRkZEO1xcbiRsaWdodF9hcXVhXzUwMDogIzNDRkZGODtcXG4kbGlnaHRfYXF1YV83MDA6ICMzMENDQzY7XFxuXFxuJGxpZ2h0X29yYW5nZV8xMDA6ICNGRkVEQ0M7XFxuJGxpZ2h0X29yYW5nZV81MDA6ICNGRkE0MDA7XFxuJGxpZ2h0X29yYW5nZV83MDA6ICNDQzgzMDA7XFxuXFxuJGxpZ2h0X2luZm9fMTAwOiAjRENFRkZCO1xcbiRsaWdodF9pbmZvXzUwMDogIzE4OTJFMztcXG4kbGlnaHRfaW5mb183MDA6ICMxMzc1QjY7XFxuXFxuJGxpZ2h0X3doaXRlOiAjRkZGRkZGO1xcblxcbiRsaWdodF9ibGFjazogIzI5MkYzNjtcXG5cXG4kbGlnaHRfYmxhY2tfb3BhY2l0eV85MDogcmdiYSg0MSwgNDcsIDU0LCAwLjkwKTtcXG4kbGlnaHRfYmxhY2tfb3BhY2l0eS04MDogcmdiYSg0MSwgNDcsIDU0LCAwLjgwKTtcXG4kbGlnaHRfYmxhY2tfb3BhY2l0eS03MDogcmdiYSg0MSwgNDcsIDU0LCAwLjcwKTtcXG4kbGlnaHRfYmxhY2tfb3BhY2l0eS02MDogcmdiYSg0MSwgNDcsIDU0LCAwLjYwKTtcXG4kbGlnaHRfYmxhY2tfb3BhY2l0eS01MDogcmdiYSg0MSwgNDcsIDU0LCAwLjUwKTtcXG4kbGlnaHRfYmxhY2tfb3BhY2l0eS00MDogcmdiYSg0MSwgNDcsIDU0LCAwLjQwKTtcXG4kbGlnaHRfYmxhY2tfb3BhY2l0eS0zMDogcmdiYSg0MSwgNDcsIDU0LCAwLjMwKTtcXG4kbGlnaHRfYmxhY2tfb3BhY2l0eS0yMDogcmdiYSg0MSwgNDcsIDU0LCAwLjIwKTtcXG4kbGlnaHRfYmxhY2tfb3BhY2l0eS0xMDogcmdiYSg0MSwgNDcsIDU0LCAwLjEwKTtcXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLmxvY2FscyA9IHtcblx0XCJzY2hvb2xBc3NvY2lhdGlvbldyYXBwZXJcIjogXCJVcGZidXF6Y0FoS3pMS2RZZUNTT1wiLFxuXHRcImRyb3Bkb3duXCI6IFwibzZyQ0lXRWx2UUNwR2NiaEIzXzlcIixcblx0XCJlcnJvck1lc3NhZ2VcIjogXCJjMjJCcndra0NiRmRDb3hBcDAyTlwiLFxuXHRcImhlYWRlckNvbnRhaW5lclwiOiBcIlJjWmZoYU82clRBX09iYksyaTlWXCIsXG5cdFwiaW5wdXRDb250YWluZXJcIjogXCJkT2xXbFVucWluQWRTQVg5V2tfVlwiLFxuXHRcImRpc2FibGVkTGFiZWxcIjogXCJZYlN5VVp3U09zSjh6Q2pJYUljNlwiXG59O1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iLCJcbiAgICAgIGltcG9ydCBBUEkgZnJvbSBcIiEuLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2Rpc3QvcnVudGltZS9pbmplY3RTdHlsZXNJbnRvU3R5bGVUYWcuanNcIjtcbiAgICAgIGltcG9ydCBkb21BUEkgZnJvbSBcIiEuLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2Rpc3QvcnVudGltZS9zdHlsZURvbUFQSS5qc1wiO1xuICAgICAgaW1wb3J0IGluc2VydEZuIGZyb20gXCIhLi4vLi4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9kaXN0L3J1bnRpbWUvaW5zZXJ0QnlTZWxlY3Rvci5qc1wiO1xuICAgICAgaW1wb3J0IHNldEF0dHJpYnV0ZXMgZnJvbSBcIiEuLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2Rpc3QvcnVudGltZS9zZXRBdHRyaWJ1dGVzV2l0aG91dEF0dHJpYnV0ZXMuanNcIjtcbiAgICAgIGltcG9ydCBpbnNlcnRTdHlsZUVsZW1lbnQgZnJvbSBcIiEuLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2Rpc3QvcnVudGltZS9pbnNlcnRTdHlsZUVsZW1lbnQuanNcIjtcbiAgICAgIGltcG9ydCBzdHlsZVRhZ1RyYW5zZm9ybUZuIGZyb20gXCIhLi4vLi4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9kaXN0L3J1bnRpbWUvc3R5bGVUYWdUcmFuc2Zvcm0uanNcIjtcbiAgICAgIGltcG9ydCBjb250ZW50LCAqIGFzIG5hbWVkRXhwb3J0IGZyb20gXCIhIS4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzRdLnVzZVsxXSEuLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbNF0udXNlWzJdIS4vc2Nob29sLWFzc29jaWF0aW9uLm1vZHVsZS5zY3NzXCI7XG4gICAgICBcbiAgICAgIFxuXG52YXIgb3B0aW9ucyA9IHt9O1xuXG5vcHRpb25zLnN0eWxlVGFnVHJhbnNmb3JtID0gc3R5bGVUYWdUcmFuc2Zvcm1Gbjtcbm9wdGlvbnMuc2V0QXR0cmlidXRlcyA9IHNldEF0dHJpYnV0ZXM7XG5cbiAgICAgIG9wdGlvbnMuaW5zZXJ0ID0gaW5zZXJ0Rm4uYmluZChudWxsLCBcImhlYWRcIik7XG4gICAgXG5vcHRpb25zLmRvbUFQSSA9IGRvbUFQSTtcbm9wdGlvbnMuaW5zZXJ0U3R5bGVFbGVtZW50ID0gaW5zZXJ0U3R5bGVFbGVtZW50O1xuXG52YXIgdXBkYXRlID0gQVBJKGNvbnRlbnQsIG9wdGlvbnMpO1xuXG5cblxuZXhwb3J0ICogZnJvbSBcIiEhLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbNF0udXNlWzFdIS4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1s0XS51c2VbMl0hLi9zY2hvb2wtYXNzb2NpYXRpb24ubW9kdWxlLnNjc3NcIjtcbiAgICAgICBleHBvcnQgZGVmYXVsdCBjb250ZW50ICYmIGNvbnRlbnQubG9jYWxzID8gY29udGVudC5sb2NhbHMgOiB1bmRlZmluZWQ7XG4iLCJpbXBvcnQge3VzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHtFVkVOVFMsIFBMQVRGT1JNU30gZnJvbSAnQGNkby9hcHBzL21ldHJpY3MvQW5hbHl0aWNzQ29uc3RhbnRzJztcbmltcG9ydCBhbmFseXRpY3NSZXBvcnRlciBmcm9tICdAY2RvL2FwcHMvbWV0cmljcy9BbmFseXRpY3NSZXBvcnRlcic7XG5pbXBvcnQge1xuICBTQ0hPT0xfQ09VTlRSWV9TRVNTSU9OX0tFWSxcbiAgU0NIT09MX0lEX1NFU1NJT05fS0VZLFxuICBTQ0hPT0xfTkFNRV9TRVNTSU9OX0tFWSxcbiAgU0NIT09MX1pJUF9TRVNTSU9OX0tFWSxcbiAgU0VMRUNUX0NPVU5UUlksXG4gIFVTX0NPVU5UUllfQ09ERSxcbiAgWklQX1JFR0VYLFxufSBmcm9tICdAY2RvL2FwcHMvc2lnblVwRmxvdy9zaWduVXBGbG93Q29uc3RhbnRzJztcbmltcG9ydCB7Tm9uU2Nob29sT3B0aW9uc30gZnJvbSAnQGNkby9nZW5lcmF0ZWQtc2NyaXB0cy9zaGFyZWRDb25zdGFudHMnO1xuXG5pbXBvcnQge1NjaG9vbERyb3Bkb3duT3B0aW9uLCBTY2hvb2xJbmZvSW5pdGlhbFN0YXRlfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQge2NvbnN0cnVjdFNjaG9vbE9wdGlvbn0gZnJvbSAnLi4vdXRpbHMvY29uc3RydWN0U2Nob29sT3B0aW9uJztcbmltcG9ydCB7ZmV0Y2hTY2hvb2xzIGFzIGZldGNoU2Nob29sc0FQSX0gZnJvbSAnLi4vdXRpbHMvZmV0Y2hTY2hvb2xzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZVNjaG9vbEluZm8oaW5pdGlhbFN0YXRlOiBTY2hvb2xJbmZvSW5pdGlhbFN0YXRlKSB7XG4gIGNvbnN0IG1vdW50ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIC8vIE1lbW9pemVkIGluaXRpYWwgdmFsdWVzXG4gIGNvbnN0IGRldGVjdGVkQ291bnRyeSA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGluaXRpYWxTdGF0ZS5jb3VudHJ5IHx8XG4gICAgICBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKFNDSE9PTF9DT1VOVFJZX1NFU1NJT05fS0VZKSB8fFxuICAgICAgKGluaXRpYWxTdGF0ZS51c0lwID8gVVNfQ09VTlRSWV9DT0RFIDogU0VMRUNUX0NPVU5UUlkpLFxuICAgIFtpbml0aWFsU3RhdGUuY291bnRyeSwgaW5pdGlhbFN0YXRlLnVzSXBdXG4gICk7XG5cbiAgY29uc3QgZGV0ZWN0ZWRTY2hvb2xJZCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChpbml0aWFsU3RhdGUuc2Nob29sVHlwZSA9PT0gTm9uU2Nob29sT3B0aW9ucy5OT19TQ0hPT0xfU0VUVElORykge1xuICAgICAgcmV0dXJuIE5vblNjaG9vbE9wdGlvbnMuTk9fU0NIT09MX1NFVFRJTkc7XG4gICAgfVxuICAgIGlmIChcbiAgICAgICFpbml0aWFsU3RhdGUuc2Nob29sSWQgJiZcbiAgICAgIGluaXRpYWxTdGF0ZS5zY2hvb2xOYW1lICYmXG4gICAgICBpbml0aWFsU3RhdGUuc2Nob29sWmlwXG4gICAgKSB7XG4gICAgICByZXR1cm4gTm9uU2Nob29sT3B0aW9ucy5DTElDS19UT19BREQ7XG4gICAgfVxuICAgIHJldHVybiAoXG4gICAgICBpbml0aWFsU3RhdGUuc2Nob29sSWQgfHxcbiAgICAgIHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oU0NIT09MX0lEX1NFU1NJT05fS0VZKSB8fFxuICAgICAgTm9uU2Nob29sT3B0aW9ucy5TRUxFQ1RfQV9TQ0hPT0xcbiAgICApO1xuICB9LCBbXG4gICAgaW5pdGlhbFN0YXRlLnNjaG9vbElkLFxuICAgIGluaXRpYWxTdGF0ZS5zY2hvb2xUeXBlLFxuICAgIGluaXRpYWxTdGF0ZS5zY2hvb2xOYW1lLFxuICAgIGluaXRpYWxTdGF0ZS5zY2hvb2xaaXAsXG4gIF0pO1xuXG4gIGNvbnN0IGRldGVjdGVkWmlwID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgaW5pdGlhbFN0YXRlLnNjaG9vbFppcCB8fFxuICAgICAgc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShTQ0hPT0xfWklQX1NFU1NJT05fS0VZKSB8fFxuICAgICAgJycsXG4gICAgW2luaXRpYWxTdGF0ZS5zY2hvb2xaaXBdXG4gICk7XG5cbiAgY29uc3QgZGV0ZWN0ZWRTY2hvb2xOYW1lID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgaW5pdGlhbFN0YXRlLnNjaG9vbElkXG4gICAgICAgID8gJydcbiAgICAgICAgOiBpbml0aWFsU3RhdGUuc2Nob29sTmFtZSB8fFxuICAgICAgICAgIHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oU0NIT09MX05BTUVfU0VTU0lPTl9LRVkpIHx8XG4gICAgICAgICAgJycsXG4gICAgW2luaXRpYWxTdGF0ZS5zY2hvb2xOYW1lLCBpbml0aWFsU3RhdGUuc2Nob29sSWRdXG4gICk7XG5cbiAgY29uc3QgW3N0YXRlLCBzZXRTdGF0ZV0gPSB1c2VTdGF0ZTx7XG4gICAgY291bnRyeTogc3RyaW5nO1xuICAgIHNjaG9vbElkOiBzdHJpbmc7XG4gICAgc2Nob29sWmlwOiBzdHJpbmc7XG4gICAgc2Nob29sTmFtZTogc3RyaW5nO1xuICB9Pih7XG4gICAgY291bnRyeTogZGV0ZWN0ZWRDb3VudHJ5LFxuICAgIHNjaG9vbElkOiBkZXRlY3RlZFNjaG9vbElkLFxuICAgIHNjaG9vbFppcDogZGV0ZWN0ZWRaaXAsXG4gICAgc2Nob29sTmFtZTogZGV0ZWN0ZWRTY2hvb2xOYW1lLFxuICB9KTtcbiAgY29uc3QgW3NjaG9vbHNMaXN0LCBzZXRTY2hvb2xzTGlzdF0gPSB1c2VTdGF0ZTxTY2hvb2xEcm9wZG93bk9wdGlvbltdPihbXSk7XG5cbiAgLy8gU3RhdGUgaG9va3NcbiAgY29uc3Qgc2V0Q291bnRyeSA9ICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgYW5hbHl0aWNzUmVwb3J0ZXIuc2VuZEV2ZW50KFxuICAgICAgRVZFTlRTLkNPVU5UUllfU0VMRUNURUQsXG4gICAgICB7Y291bnRyeTogdmFsdWV9LFxuICAgICAgUExBVEZPUk1TLkJPVEhcbiAgICApO1xuICAgIHNldFN0YXRlKHByZXZTdGF0ZSA9PiAoe1xuICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgY291bnRyeTogdmFsdWUsXG4gICAgfSkpO1xuICB9O1xuXG4gIGNvbnN0IHNldFNjaG9vbElkID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICBpZiAodmFsdWUgPT09IE5vblNjaG9vbE9wdGlvbnMuTk9fU0NIT09MX1NFVFRJTkcpIHtcbiAgICAgIGFuYWx5dGljc1JlcG9ydGVyLnNlbmRFdmVudChcbiAgICAgICAgRVZFTlRTLkRPX05PVF9URUFDSF9BVF9TQ0hPT0xfQ0xJQ0tFRCxcbiAgICAgICAge2NvdW50cnk6IGNvdW50cnl9LFxuICAgICAgICBQTEFURk9STVMuQk9USFxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKHZhbHVlID09PSBOb25TY2hvb2xPcHRpb25zLkNMSUNLX1RPX0FERCkge1xuICAgICAgYW5hbHl0aWNzUmVwb3J0ZXIuc2VuZEV2ZW50KFxuICAgICAgICBFVkVOVFMuQUREX01BTlVBTExZX0NMSUNLRUQsXG4gICAgICAgIHtjb3VudHJ5OiBjb3VudHJ5fSxcbiAgICAgICAgUExBVEZPUk1TLkJPVEhcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFuYWx5dGljc1JlcG9ydGVyLnNlbmRFdmVudChcbiAgICAgICAgRVZFTlRTLlNDSE9PTF9TRUxFQ1RFRF9GUk9NX0xJU1QsXG4gICAgICAgIHtcbiAgICAgICAgICAnbmNlcyBJZCc6IHZhbHVlLFxuICAgICAgICAgIGNvdW50cnk6IGNvdW50cnksXG4gICAgICAgIH0sXG4gICAgICAgIFBMQVRGT1JNUy5CT1RIXG4gICAgICApO1xuICAgIH1cbiAgICBzZXRTdGF0ZShwcmV2U3RhdGUgPT4gKHtcbiAgICAgIC4uLnByZXZTdGF0ZSxcbiAgICAgIHNjaG9vbElkOiB2YWx1ZSxcbiAgICB9KSk7XG4gIH07XG5cbiAgY29uc3Qgc2V0U2Nob29sWmlwID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICBpZiAoWklQX1JFR0VYLnRlc3QodmFsdWUpKSB7XG4gICAgICBhbmFseXRpY3NSZXBvcnRlci5zZW5kRXZlbnQoXG4gICAgICAgIEVWRU5UUy5aSVBfQ09ERV9FTlRFUkVELFxuICAgICAgICB7emlwOiB2YWx1ZSwgY291bnRyeTogY291bnRyeX0sXG4gICAgICAgIFBMQVRGT1JNUy5CT1RIXG4gICAgICApO1xuICAgIH1cblxuICAgIHNldFN0YXRlKHByZXZTdGF0ZSA9PiAoe1xuICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgc2Nob29sWmlwOiB2YWx1ZSxcbiAgICB9KSk7XG4gIH07XG5cbiAgY29uc3Qgc2V0U2Nob29sTmFtZSA9ICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgc2V0U3RhdGUocHJldlN0YXRlID0+ICh7XG4gICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICBzY2hvb2xOYW1lOiB2YWx1ZSxcbiAgICB9KSk7XG4gIH07XG5cbiAgY29uc3QgcmVzZXQgPSAoKSA9PiB7XG4gICAgc2V0U3RhdGUoe1xuICAgICAgY291bnRyeTogZGV0ZWN0ZWRDb3VudHJ5LFxuICAgICAgc2Nob29sSWQ6IGRldGVjdGVkU2Nob29sSWQsXG4gICAgICBzY2hvb2xaaXA6IGRldGVjdGVkWmlwLFxuICAgICAgc2Nob29sTmFtZTogZGV0ZWN0ZWRTY2hvb2xOYW1lLFxuICAgIH0pO1xuICB9O1xuXG4gIC8vIE1lbW9pemVkIGZldGNoU2Nob29scyBmdW5jdGlvbiB1c2luZyB1c2VDYWxsYmFja1xuICBjb25zdCBmZXRjaFNjaG9vbHMgPSB1c2VDYWxsYmFjayhcbiAgICAoXG4gICAgICB6aXA6IHN0cmluZyxcbiAgICAgIGNhbGxiYWNrOiAoZGF0YToge25jZXNfaWQ6IG51bWJlcjsgbmFtZTogc3RyaW5nfVtdKSA9PiB2b2lkXG4gICAgKSA9PiB7XG4gICAgICBmZXRjaFNjaG9vbHNBUEkoemlwLCBjYWxsYmFjayk7XG4gICAgfSxcbiAgICBbXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZVNlc3Npb25TdG9yYWdlID0gKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgaWYgKHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oa2V5KSAhPT0gdmFsdWUpIHtcbiAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oa2V5LCB2YWx1ZSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IHtjb3VudHJ5LCBzY2hvb2xJZCwgc2Nob29sWmlwLCBzY2hvb2xOYW1lfSA9IHN0YXRlO1xuXG4gIC8vIEhhbmRsZSBjb3VudHJ5IGNoYW5nZXNcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBoYW5kbGVTZXNzaW9uU3RvcmFnZShTQ0hPT0xfQ09VTlRSWV9TRVNTSU9OX0tFWSwgY291bnRyeSk7XG4gIH0sIFtjb3VudHJ5XSk7XG5cbiAgLy8gSGFuZGxlIHNjaG9vbFppcCBjaGFuZ2VzXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFaSVBfUkVHRVgudGVzdChzY2hvb2xaaXApKSB7XG4gICAgICBoYW5kbGVTZXNzaW9uU3RvcmFnZShTQ0hPT0xfWklQX1NFU1NJT05fS0VZLCAnJyk7XG4gICAgICBzZXRTY2hvb2xzTGlzdChbXSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaGFuZGxlU2Vzc2lvblN0b3JhZ2UoU0NIT09MX1pJUF9TRVNTSU9OX0tFWSwgc2Nob29sWmlwKTtcblxuICAgIGZldGNoU2Nob29scyhzY2hvb2xaaXAsIGRhdGEgPT4ge1xuICAgICAgaWYgKCFtb3VudGVkLmN1cnJlbnQpIHJldHVybjtcblxuICAgICAgY29uc3Qgc2Nob29scyA9IGRhdGFcbiAgICAgICAgLm1hcChjb25zdHJ1Y3RTY2hvb2xPcHRpb24pXG4gICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLnRleHQubG9jYWxlQ29tcGFyZShiLnRleHQpKTtcblxuICAgICAgc2V0U2Nob29sc0xpc3Qoc2Nob29scyk7XG4gICAgfSk7XG4gIH0sIFtzY2hvb2xaaXAsIGZldGNoU2Nob29sc10pO1xuXG4gIC8vIEhhbmRsZSBzY2hvb2xJZCBjaGFuZ2VzXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaGFuZGxlU2Vzc2lvblN0b3JhZ2UoU0NIT09MX0lEX1NFU1NJT05fS0VZLCBzY2hvb2xJZCk7XG4gIH0sIFtzY2hvb2xJZF0pO1xuXG4gIC8vIEhhbmRsZSBzY2hvb2xOYW1lIGNoYW5nZXNcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBoYW5kbGVTZXNzaW9uU3RvcmFnZShTQ0hPT0xfTkFNRV9TRVNTSU9OX0tFWSwgc2Nob29sTmFtZSk7XG4gIH0sIFtzY2hvb2xOYW1lXSk7XG5cbiAgLy8gTWFuYWdlIG1vdW50ZWQgc3RhdGVcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBtb3VudGVkLmN1cnJlbnQgPSB0cnVlO1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBtb3VudGVkLmN1cnJlbnQgPSBmYWxzZTtcbiAgICB9O1xuICB9LCBbXSk7XG5cbiAgcmV0dXJuIHtcbiAgICBzY2hvb2xJZCxcbiAgICBjb3VudHJ5LFxuICAgIHNjaG9vbE5hbWUsXG4gICAgc2Nob29sWmlwLFxuICAgIHNjaG9vbHNMaXN0LFxuICAgIHVzSXA6IGluaXRpYWxTdGF0ZS51c0lwLFxuICAgIHNldFNjaG9vbElkLFxuICAgIHNldENvdW50cnksXG4gICAgc2V0U2Nob29sTmFtZSxcbiAgICBzZXRTY2hvb2xaaXAsXG4gICAgcmVzZXQsXG4gIH07XG59XG4iLCJpbXBvcnQge1xuICBTRUxFQ1RfQ09VTlRSWSxcbiAgVVNfQ09VTlRSWV9DT0RFLFxufSBmcm9tICdAY2RvL2FwcHMvc2lnblVwRmxvdy9zaWduVXBGbG93Q29uc3RhbnRzJztcbmltcG9ydCB7Tm9uU2Nob29sT3B0aW9uc30gZnJvbSAnQGNkby9nZW5lcmF0ZWQtc2NyaXB0cy9zaGFyZWRDb25zdGFudHMnO1xuXG5pbXBvcnQge1NjaG9vbEluZm9SZXF1ZXN0fSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFNjaG9vbERhdGEoe1xuICBzY2hvb2xJZCxcbiAgY291bnRyeSxcbiAgc2Nob29sTmFtZSxcbiAgc2Nob29sWmlwLFxufToge1xuICBzY2hvb2xJZDogc3RyaW5nO1xuICBjb3VudHJ5OiBzdHJpbmc7XG4gIHNjaG9vbE5hbWU6IHN0cmluZztcbiAgc2Nob29sWmlwOiBzdHJpbmc7XG59KTogU2Nob29sSW5mb1JlcXVlc3QgfCB1bmRlZmluZWQge1xuICAvLyBJZiB3ZSBoYXZlIGFuIE5DRVMgaWQsIF9vbmx5XyBzZW5kIHRoYXQgLSBldmVyeXRoaW5nIGVsc2Ugd2lsbCBiZVxuICAvLyBiYWNrZmlsbGVkIGJ5IHJlY29yZHMgb24gdGhlIHNlcnZlci5cbiAgaWYgKFxuICAgIGNvdW50cnkgPT09IFVTX0NPVU5UUllfQ09ERSAmJlxuICAgIHNjaG9vbElkICYmXG4gICAgIU9iamVjdC52YWx1ZXMoTm9uU2Nob29sT3B0aW9ucykuc29tZShvcHRpb24gPT4gc2Nob29sSWQgPT09IG9wdGlvbilcbiAgKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHNjaG9vbF9pZDogc2Nob29sSWQsXG4gICAgfTtcbiAgfVxuXG4gIGlmIChcbiAgICBjb3VudHJ5ID09PSBVU19DT1VOVFJZX0NPREUgJiZcbiAgICBzY2hvb2xJZCA9PT0gTm9uU2Nob29sT3B0aW9ucy5OT19TQ0hPT0xfU0VUVElOR1xuICApIHtcbiAgICBpZiAoIXNjaG9vbFppcCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgY291bnRyeSxcbiAgICAgIHNjaG9vbF90eXBlOiBOb25TY2hvb2xPcHRpb25zLk5PX1NDSE9PTF9TRVRUSU5HLFxuICAgICAgemlwOiBzY2hvb2xaaXAsXG4gICAgfTtcbiAgfVxuXG4gIGlmIChjb3VudHJ5ICYmIGNvdW50cnkgIT09IFNFTEVDVF9DT1VOVFJZICYmIHNjaG9vbE5hbWUpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY291bnRyeSxcbiAgICAgIHNjaG9vbF9uYW1lOiBzY2hvb2xOYW1lLFxuICAgICAgemlwOiBjb3VudHJ5ID09PSBVU19DT1VOVFJZX0NPREUgPyBzY2hvb2xaaXAgOiB1bmRlZmluZWQsXG4gICAgfTtcbiAgfVxufVxuIiwiaW1wb3J0IHtTY2hvb2xEcm9wZG93bk9wdGlvbn0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gY29uc3RydWN0U2Nob29sT3B0aW9uKHNjaG9vbDoge1xuICBuY2VzX2lkOiBudW1iZXI7XG4gIG5hbWU6IHN0cmluZztcbn0pOiBTY2hvb2xEcm9wZG93bk9wdGlvbiB7XG4gIHJldHVybiB7XG4gICAgdmFsdWU6IHNjaG9vbC5uY2VzX2lkLnRvU3RyaW5nKCksXG4gICAgdGV4dDogc2Nob29sLm5hbWUsXG4gIH07XG59XG4iLCJpbXBvcnQge1NDSE9PTF9aSVBfU0VBUkNIX1VSTH0gZnJvbSAnQGNkby9hcHBzL3NpZ25VcEZsb3cvc2lnblVwRmxvd0NvbnN0YW50cyc7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmZXRjaFNjaG9vbHMoXG4gIHppcDogc3RyaW5nLFxuICBjYWxsYmFjazogKGRhdGE6IHtuY2VzX2lkOiBudW1iZXI7IG5hbWU6IHN0cmluZ31bXSkgPT4gdm9pZFxuKSB7XG4gIGNvbnN0IHNlYXJjaFVybCA9IGAke1NDSE9PTF9aSVBfU0VBUkNIX1VSTH0ke3ppcH1gO1xuICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKHNlYXJjaFVybCwge1xuICAgIGhlYWRlcnM6IHsnWC1SZXF1ZXN0ZWQtV2l0aCc6ICdYTUxIdHRwUmVxdWVzdCd9LFxuICB9KTtcbiAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgIHRocm93IG5ldyBFcnJvcignWmlwIGNvZGUgc2VhcmNoIGZvciBzY2hvb2xzIGZhaWxlZCcpO1xuICB9XG4gIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG5cbiAgY2FsbGJhY2soZGF0YSk7XG59XG4iLCJpbXBvcnQge0NPVU5UUklFU30gZnJvbSAnQGNkby9hcHBzL2dlb2dyYXBoeUNvbnN0YW50cyc7XG5pbXBvcnQge1xuICBTRUxFQ1RfQ09VTlRSWSxcbiAgVVNfQ09VTlRSWV9DT0RFLFxufSBmcm9tICdAY2RvL2FwcHMvc2lnblVwRmxvdy9zaWduVXBGbG93Q29uc3RhbnRzJztcbmltcG9ydCBpMThuIGZyb20gJ0BjZG8vbG9jYWxlJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldENvdW50cmllc1VzRmlyc3QoKSB7XG4gIC8vIEFkZCAnU2VsZWN0IGEgY291bnRyeScgYW5kICdVbml0ZWQgU3RhdGVzJyB0byB0aGUgdG9wIG9mIHRoZSBjb3VudHJ5IGxpc3RcbiAgY29uc3QgY291bnRyaWVzID0gW1xuICAgIHt2YWx1ZTogU0VMRUNUX0NPVU5UUlksIHRleHQ6IGkxOG4uc2VsZWN0Q291bnRyeSgpfSxcbiAgICB7dmFsdWU6IFVTX0NPVU5UUllfQ09ERSwgdGV4dDogaTE4bi51bml0ZWRTdGF0ZXMoKX0sXG4gIF07XG5cbiAgLy8gUHVsbCBpbiB0aGUgcmVzdCBvZiB0aGUgY291bnRyaWVzIGFmdGVyL2JlbG93XG4gIGNvbnN0IG5vblVzQ291bnRyaWVzID0gQ09VTlRSSUVTLmZpbHRlcihcbiAgICBpdGVtID0+IGl0ZW0ubGFiZWwgIT09IFVTX0NPVU5UUllfQ09ERVxuICApO1xuXG4gIGZvciAoY29uc3Qgbm9uVXNDb3VudHJ5IG9mIG5vblVzQ291bnRyaWVzKSB7XG4gICAgY291bnRyaWVzLnB1c2goe3ZhbHVlOiBub25Vc0NvdW50cnkubGFiZWwsIHRleHQ6IG5vblVzQ291bnRyeS52YWx1ZX0pO1xuICB9XG4gIHJldHVybiBjb3VudHJpZXM7XG59XG4iLCJpbXBvcnQge1xuICBTRUxFQ1RfQ09VTlRSWSxcbiAgVVNfQ09VTlRSWV9DT0RFLFxufSBmcm9tICdAY2RvL2FwcHMvc2lnblVwRmxvdy9zaWduVXBGbG93Q29uc3RhbnRzJztcbmltcG9ydCB7Tm9uU2Nob29sT3B0aW9uc30gZnJvbSAnQGNkby9nZW5lcmF0ZWQtc2NyaXB0cy9zaGFyZWRDb25zdGFudHMnO1xuXG5pbXBvcnQge1NjaG9vbERyb3Bkb3duT3B0aW9ufSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzY2hvb2xJbmZvSW52YWxpZCh7XG4gIGNvdW50cnksXG4gIHNjaG9vbE5hbWUsXG4gIHNjaG9vbFppcCxcbiAgc2Nob29sSWQsXG4gIHNjaG9vbHNMaXN0LFxufToge1xuICBzY2hvb2xJZDogc3RyaW5nO1xuICBjb3VudHJ5OiBzdHJpbmc7XG4gIHNjaG9vbE5hbWU6IHN0cmluZztcbiAgc2Nob29sWmlwOiBzdHJpbmc7XG4gIHNjaG9vbHNMaXN0OiBTY2hvb2xEcm9wZG93bk9wdGlvbltdO1xufSk6IGJvb2xlYW4ge1xuICBjb25zdCBjb3VudHJ5RXhpc3RzID0gY291bnRyeSAmJiBjb3VudHJ5ICE9PSBTRUxFQ1RfQ09VTlRSWTtcblxuICBpZiAoIWNvdW50cnlFeGlzdHMpIHtcbiAgICAvLyBkaXNhYmxlZCBpZiBjb3VudHJ5IGlzIG5vdCBzZWxlY3RlZFxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLy8gZm9yIG5vbi1VUyBjb3VudHJpZXNcbiAgaWYgKGNvdW50cnkgIT09IFVTX0NPVU5UUllfQ09ERSkge1xuICAgIC8vIGRpc2FibGUgdHJ1ZSBpZiBubyBzY2hvb2wvb3JnYW5pemF0aW9uIG5hbWVcbiAgICByZXR1cm4gIXNjaG9vbE5hbWU7XG4gIH1cblxuICAvLyBmb3IgVVMgY291bnRyeVxuICAvLyBtdXN0IGhhdmUgemlwIGNvZGUgdG8gZW5hYmxlIHNjaG9vbCBsaXN0IGRyb3Bkb3duIHdoZXJlIGNsaWNrIHRvIGFkZCBhbmQgbm9uIHNjaG9vbCBzZXR0aW5nIGFyZSBzZWxlY3RhYmxlXG4gIGNvbnN0IGhhc1ppcCA9IEJvb2xlYW4oc2Nob29sWmlwKTtcbiAgaWYgKCFoYXNaaXApIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICAvLyBkaXNhYmxlIHRydWUgaWYgc2Nob29sIGlzIG5vdCBzZWxlY3RlZFxuICBpZiAoc2Nob29sSWQgPT09IE5vblNjaG9vbE9wdGlvbnMuU0VMRUNUX0FfU0NIT09MKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbiAgLy8gZm9yIG5vbiBzY2hvb2wgc2V0dGluZ3MsIGRvbid0IGRpc2FibGVcbiAgaWYgKHNjaG9vbElkID09PSBOb25TY2hvb2xPcHRpb25zLk5PX1NDSE9PTF9TRVRUSU5HKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIC8vIGlmIHNjaG9vbCBub3QgaW4gbGlzdCwgZGlzYWJsZSB0cnVlIGlmIG5vIG5hbWVcbiAgaWYgKHNjaG9vbElkID09PSBOb25TY2hvb2xPcHRpb25zLkNMSUNLX1RPX0FERCkge1xuICAgIHJldHVybiAhc2Nob29sTmFtZTtcbiAgfVxuXG4gIC8vIGlmIHNjaG9vbElkIGV4aXN0cywgZG9uJ3QgZGlzYWJsZSB1bmxlc3Mgc2VsZWN0ZWQgc2Nob29sIGlzIG5vdCBpbiB0aGUgc2Nob29scyBsaXN0XG4gIGlmIChzY2hvb2xJZCAmJiBzY2hvb2xzTGlzdC5zb21lKCh7dmFsdWV9KSA9PiBzY2hvb2xJZCA9PT0gdmFsdWUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIC8vIGRpc2FibGUgYnkgZGVmYXVsdFxuICByZXR1cm4gdHJ1ZTtcbn1cbiIsImltcG9ydCB7Z2V0QXV0aGVudGljaXR5VG9rZW59IGZyb20gJ0BjZG8vYXBwcy91dGlsL0F1dGhlbnRpY2l0eVRva2VuU3RvcmUnO1xuXG5pbXBvcnQge2J1aWxkU2Nob29sRGF0YX0gZnJvbSAnLi9idWlsZFNjaG9vbERhdGEnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXBkYXRlU2Nob29sSW5mbyh7XG4gIHNjaG9vbElkLFxuICBjb3VudHJ5LFxuICBzY2hvb2xOYW1lLFxuICBzY2hvb2xaaXAsXG59OiB7XG4gIHNjaG9vbElkOiBzdHJpbmc7XG4gIGNvdW50cnk6IHN0cmluZztcbiAgc2Nob29sTmFtZTogc3RyaW5nO1xuICBzY2hvb2xaaXA6IHN0cmluZztcbn0pIHtcbiAgY29uc3Qgc2Nob29sRGF0YSA9IGJ1aWxkU2Nob29sRGF0YSh7XG4gICAgc2Nob29sSWQsXG4gICAgY291bnRyeSxcbiAgICBzY2hvb2xOYW1lLFxuICAgIHNjaG9vbFppcCxcbiAgfSk7XG4gIGlmICghc2Nob29sRGF0YSkge1xuICAgIHJldHVybjtcbiAgfVxuICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKCcvYXBpL3YxL3VzZXJfc2Nob29sX2luZm9zJywge1xuICAgIG1ldGhvZDogJ1BBVENIJyxcbiAgICBoZWFkZXJzOiB7XG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgJ1gtQ1NSRi1Ub2tlbic6IGF3YWl0IGdldEF1dGhlbnRpY2l0eVRva2VuKCksXG4gICAgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICB1c2VyOiB7XG4gICAgICAgIHNjaG9vbF9pbmZvX2F0dHJpYnV0ZXM6IHNjaG9vbERhdGEsXG4gICAgICB9LFxuICAgIH0pLFxuICB9KTtcblxuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdTY2hvb2wgaW5mbyB1cGRhdGUgZmFpbGVkJyk7XG4gIH1cbn1cbiIsImltcG9ydCB7cXVlcnlQYXJhbXN9IGZyb20gJ0BjZG8vYXBwcy9jb2RlLXN0dWRpby91dGlscyc7XG5cbi8vIHNlc3Npb24gc3RvcmFnZSBrZXlzXG5leHBvcnQgY29uc3QgQUNDT1VOVF9UWVBFX1NFU1NJT05fS0VZID0gJ2FjY291bnRUeXBlJztcbmV4cG9ydCBjb25zdCBTQ0hPT0xfSURfU0VTU0lPTl9LRVkgPSAnc2Nob29sSWQnO1xuZXhwb3J0IGNvbnN0IFNDSE9PTF9aSVBfU0VTU0lPTl9LRVkgPSAnc2Nob29sWmlwJztcbmV4cG9ydCBjb25zdCBTQ0hPT0xfTkFNRV9TRVNTSU9OX0tFWSA9ICdzY2hvb2xOYW1lJztcbmV4cG9ydCBjb25zdCBTQ0hPT0xfQ09VTlRSWV9TRVNTSU9OX0tFWSA9ICdzY2hvb2xDb3VudHJ5JztcbmV4cG9ydCBjb25zdCBFTUFJTF9TRVNTSU9OX0tFWSA9ICdlbWFpbCc7XG5leHBvcnQgY29uc3QgT0FVVEhfTE9HSU5fVFlQRV9TRVNTSU9OX0tFWSA9ICdvYXV0aFR5cGUnO1xuZXhwb3J0IGNvbnN0IFVTRVJfUkVUVVJOX1RPX1NFU1NJT05fS0VZID0gJ3VzZXJSZXR1cm5Ubyc7XG5cbmV4cG9ydCBjb25zdCBzZXRVc2VyUmV0dXJuVG9VcmwgPSAoKSA9PiB7XG4gIGNvbnN0IHVzZXJSZXR1cm5UbyA9IHF1ZXJ5UGFyYW1zKCd1c2VyX3JldHVybl90bycpO1xuICBpZiAodXNlclJldHVyblRvKSB7XG4gICAgc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShVU0VSX1JFVFVSTl9UT19TRVNTSU9OX0tFWSwgdXNlclJldHVyblRvIGFzIHN0cmluZyk7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBjbGVhclNpZ25VcFNlc3Npb25TdG9yYWdlID0gKGlzVGVhY2hlcjogYm9vbGVhbikgPT4ge1xuICBjb25zdCBmaWVsZHNUb0NsZWFyID0gW1xuICAgIEFDQ09VTlRfVFlQRV9TRVNTSU9OX0tFWSxcbiAgICBFTUFJTF9TRVNTSU9OX0tFWSxcbiAgICBPQVVUSF9MT0dJTl9UWVBFX1NFU1NJT05fS0VZLFxuICAgIFVTRVJfUkVUVVJOX1RPX1NFU1NJT05fS0VZLFxuICBdO1xuICBpZiAoaXNUZWFjaGVyKSB7XG4gICAgY29uc3Qgc2Nob29sRmllbGRzID0gW1xuICAgICAgU0NIT09MX0lEX1NFU1NJT05fS0VZLFxuICAgICAgU0NIT09MX1pJUF9TRVNTSU9OX0tFWSxcbiAgICAgIFNDSE9PTF9OQU1FX1NFU1NJT05fS0VZLFxuICAgICAgU0NIT09MX0NPVU5UUllfU0VTU0lPTl9LRVksXG4gICAgXTtcbiAgICBmaWVsZHNUb0NsZWFyLnB1c2goLi4uc2Nob29sRmllbGRzKTtcbiAgfVxuXG4gIGZpZWxkc1RvQ2xlYXIuZm9yRWFjaChmaWVsZCA9PiB7XG4gICAgc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShmaWVsZCk7XG4gIH0pO1xufTtcblxuLy8gdXNlciB0eXBlIGNvb2tpZVxuZXhwb3J0IGNvbnN0IFNJR05fVVBfVVNFUl9UWVBFID0gJ3NpZ25fdXBfdXNlcl90eXBlJztcblxuLy8gc2Nob29sIGFzc29jaWF0aW9uXG5leHBvcnQgY29uc3QgVVNfQ09VTlRSWV9DT0RFID0gJ1VTJztcbmV4cG9ydCBjb25zdCBaSVBfUkVHRVggPSBuZXcgUmVnRXhwKC8oXig/ITAwMDAwKVxcZHs1fSQpLyk7XG5leHBvcnQgY29uc3QgU0VMRUNUX0NPVU5UUlkgPSAnc2VsZWN0Q291bnRyeSc7XG5leHBvcnQgY29uc3QgU0NIT09MX1pJUF9TRUFSQ0hfVVJMID0gJy9kYXNoYm9hcmRhcGkvdjEvc2Nob29semlwc2VhcmNoLyc7XG5cbmV4cG9ydCBjb25zdCBNQVhfRElTUExBWV9OQU1FX0xFTkdUSCA9IDcwO1xuIl0sIm5hbWVzIjpbImVudmlyb25tZW50U3BlY2lmaWNDb29raWVOYW1lIiwibmFtZSIsInJhY2tfZW52Iiwid2luZG93IiwiZGFzaGJvYXJkIiwiY29uY2F0IiwiZ2V0Um9vdERvbWFpbkZyb21Ib3N0bmFtZSIsImhvc3RuYW1lIiwic3BsaXQiLCJzbGljZSIsImpvaW4iLCJoYXNRdWVyeVBhcmFtIiwicGFyc2VkUGFyYW1zIiwicXVlcnlQYXJhbXMiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJyZXNldFdpbmRvd0xvY2F0aW9uIiwid2luZG93TG9jYXRpb24iLCJsb2NhdGlvbiIsInNldFdpbmRvd0xvY2F0aW9uIiwiZmFrZUxvY2F0aW9uIiwidXBkYXRlUXVlcnlQYXJhbSIsInBhcmFtIiwidmFsdWUiLCJ1c2VSZXBsYWNlU3RhdGUiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJuZXdTdHJpbmciLCJxdWVyeVN0cmluZyIsInN0cmluZ2lmeSIsIl9vYmplY3RTcHJlYWQiLCJwYXJzZSIsInNlYXJjaCIsIl9kZWZpbmVQcm9wZXJ0eSIsIm5ld0xvY2F0aW9uIiwicGF0aG5hbWUiLCJtZXRob2QiLCJoaXN0b3J5IiwiZG9jdW1lbnQiLCJ0aXRsZSIsIl9xdWVyeVN0cmluZyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJlIiwiX19lc01vZHVsZSIsInJlcXVpcmUiLCJfdHlwZW9mIiwibyIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiY29uc3RydWN0b3IiLCJvd25LZXlzIiwiciIsInQiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsImZvckVhY2giLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiX3RvUHJvcGVydHlLZXkiLCJpIiwiX3RvUHJpbWl0aXZlIiwidG9QcmltaXRpdmUiLCJUeXBlRXJyb3IiLCJTdHJpbmciLCJOdW1iZXIiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsInBhcnNlZCIsIl9zaGFyZWRDb25zdGFudHMiLCJleHBvcnRzIiwiVXNTdGF0ZXMiLCJzb3J0IiwibGFiZWwiLCJhIiwiYiIsImxvY2FsZUNvbXBhcmUiLCJfYnV0dG9uIiwiX2Ryb3Bkb3duIiwiX3R5cG9ncmFwaHkiLCJfY2xhc3NuYW1lcyIsIl9wcm9wVHlwZXMiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJ1Iiwic2V0IiwiX3NpZ25VcEZsb3dDb25zdGFudHMiLCJfU2Nob29sTmFtZUlucHV0IiwiX1NjaG9vbFppcFNlYXJjaCIsIl9sb2NhbGUiLCJfZ2V0Q291bnRyaWVzVXNGaXJzdCIsIl9zY2hvb2xBc3NvY2lhdGlvbk1vZHVsZSIsIldlYWtNYXAiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJfYXJyYXlXaXRob3V0SG9sZXMiLCJBcnJheSIsImlzQXJyYXkiLCJfYXJyYXlMaWtlVG9BcnJheSIsIl9pdGVyYWJsZVRvQXJyYXkiLCJmcm9tIiwiX3Vuc3VwcG9ydGVkSXRlcmFibGVUb0FycmF5IiwidG9TdHJpbmciLCJ0ZXN0IiwiX25vbkl0ZXJhYmxlU3ByZWFkIiwiU0VBUkNIX0RFRkFVTFRTIiwiTm9uU2Nob29sT3B0aW9ucyIsIkNMSUNLX1RPX0FERCIsInRleHQiLCJpMThuIiwic2Nob29sQ2xpY2tUb0FkZCIsIk5PX1NDSE9PTF9TRVRUSU5HIiwibm9TY2hvb2xTZXR0aW5nIiwiQ09VTlRSSUVTX1VTX0ZJUlNUIiwiZ2V0Q291bnRyaWVzVXNGaXJzdCIsIlNDSE9PTF9JTkZPX0lEIiwiU2Nob29sRGF0YUlucHV0cyIsIl9yZWYiLCJzY2hvb2xJZCIsImNvdW50cnkiLCJzY2hvb2xOYW1lIiwic2Nob29sWmlwIiwic2Nob29sc0xpc3QiLCJzZXRTY2hvb2xJZCIsInNldENvdW50cnkiLCJzZXRTY2hvb2xOYW1lIiwic2V0U2Nob29sWmlwIiwidXNJcCIsImNvbnRhaW5lckNsYXNzTmFtZSIsIl9yZWYkaW5jbHVkZUhlYWRlcnMiLCJpbmNsdWRlSGVhZGVycyIsIl9yZWYkZmllbGROYW1lcyIsImZpZWxkTmFtZXMiLCJuY2VzU2Nob29sSWQiLCJzY2hvb2xUeXBlIiwiY291bnRyeUlzVVMiLCJ1c2VNZW1vIiwiVVNfQ09VTlRSWV9DT0RFIiwiY291bnRyeUlzU2VsZWN0ZWRPclVzSXBGYWxzZSIsIlNFTEVDVF9DT1VOVFJZIiwiaW5wdXRNYW51YWxseSIsInNob3dOb1NjaG9vbFNldHRpbmdCdXR0b24iLCJzY2hvb2xaaXBJc1ZhbGlkIiwiWklQX1JFR0VYIiwic2Nob29sU2VsZWN0T3B0aW9ucyIsIlNFTEVDVF9BX1NDSE9PTCIsInNlbGVjdEFTY2hvb2wiLCJoYW5kbGVTY2hvb2xDaGFuZ2UiLCJpZCIsImxhYmVsQ2xhc3NOYW1lIiwic3R5bGUiLCJkaXNhYmxlZExhYmVsIiwiY29tcHV0ZWRTdHlsZUNsYXNzIiwiY2xhc3NOYW1lcyIsInNjaG9vbEFzc29jaWF0aW9uV3JhcHBlciIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJoZWFkZXJDb250YWluZXIiLCJIZWFkaW5nMiIsImNlbnN1c0hlYWRpbmciLCJCb2R5VHdvVGV4dCIsInNjaG9vbEluZm9JbnRlcnN0aXRpYWxUaXRsZSIsImlucHV0Q29udGFpbmVyIiwiU2ltcGxlRHJvcGRvd24iLCJkcm9wZG93biIsImxhYmVsVGV4dCIsIndoYXRDb3VudHJ5IiwiaXRlbXMiLCJzZWxlY3RlZFZhbHVlIiwib25DaGFuZ2UiLCJoYW5kbGVDb3VudHJ5Q2hhbmdlIiwiYyIsInRhcmdldCIsImRyb3Bkb3duVGV4dFRoaWNrbmVzcyIsImRpc2FibGVkIiwic2VsZWN0WW91clNjaG9vbCIsIml0ZW1Hcm91cHMiLCJzY2hvb2xzIiwiZ3JvdXBJdGVtcyIsImFkZGl0aW9uYWxPcHRpb25zIiwiQnV0dG9uIiwiY29sb3IiLCJ0eXBlIiwic2l6ZSIsIm9uQ2xpY2siLCJwcmV2ZW50RGVmYXVsdCIsInJldHVyblRvUmVzdWx0cyIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsImJvb2wiLCJvYmplY3QiLCJzdHJpbmciLCJpc1JlcXVpcmVkIiwiYXJyYXlPZiIsInNoYXBlIiwiZnVuYyIsIl90ZXh0RmllbGQiLCJTY2hvb2xOYW1lSW5wdXQiLCJzY2hvb2xPcmdhbml6YXRpb25RdWVzdGlvbiIsImhhbmRsZVNjaG9vbE5hbWVDaGFuZ2UiLCJtb2R1bGUiLCJkZWZhdWx0IiwiU2Nob29sWmlwU2VhcmNoIiwiZW50ZXJZb3VyU2Nob29sWmlwIiwiaGFuZGxlWmlwQ2hhbmdlIiwiemlwIiwiQm9keVRocmVlVGV4dCIsImVycm9yTWVzc2FnZSIsInppcEludmFsaWRNZXNzYWdlIiwiX19fQ1NTX0xPQURFUl9FWFBPUlRfX18iLCJsb2NhbHMiLCJvcHRpb25zIiwic3R5bGVUYWdUcmFuc2Zvcm0iLCJzZXRBdHRyaWJ1dGVzIiwiaW5zZXJ0IiwiZG9tQVBJIiwiaW5zZXJ0U3R5bGVFbGVtZW50IiwidXNlU2Nob29sSW5mbyIsImluaXRpYWxTdGF0ZSIsIm1vdW50ZWQiLCJ1c2VSZWYiLCJkZXRlY3RlZENvdW50cnkiLCJzZXNzaW9uU3RvcmFnZSIsImdldEl0ZW0iLCJTQ0hPT0xfQ09VTlRSWV9TRVNTSU9OX0tFWSIsImRldGVjdGVkU2Nob29sSWQiLCJTQ0hPT0xfSURfU0VTU0lPTl9LRVkiLCJkZXRlY3RlZFppcCIsIlNDSE9PTF9aSVBfU0VTU0lPTl9LRVkiLCJkZXRlY3RlZFNjaG9vbE5hbWUiLCJTQ0hPT0xfTkFNRV9TRVNTSU9OX0tFWSIsInVzZVN0YXRlIiwic3RhdGUiLCJzZXRTdGF0ZSIsInNldFNjaG9vbHNMaXN0IiwiZmV0Y2hTY2hvb2xzIiwidXNlQ2FsbGJhY2siLCJjYWxsYmFjayIsImhhbmRsZVNlc3Npb25TdG9yYWdlIiwia2V5Iiwic2V0SXRlbSIsInVzZUVmZmVjdCIsImRhdGEiLCJjdXJyZW50IiwibWFwIiwiY29uc3RydWN0U2Nob29sT3B0aW9uIiwic2VuZEV2ZW50IiwiRVZFTlRTIiwiRE9fTk9UX1RFQUNIX0FUX1NDSE9PTF9DTElDS0VEIiwiUExBVEZPUk1TIiwiQk9USCIsIkFERF9NQU5VQUxMWV9DTElDS0VEIiwiU0NIT09MX1NFTEVDVEVEX0ZST01fTElTVCIsInByZXZTdGF0ZSIsIkNPVU5UUllfU0VMRUNURUQiLCJaSVBfQ09ERV9FTlRFUkVEIiwicmVzZXQiLCJidWlsZFNjaG9vbERhdGEiLCJ2YWx1ZXMiLCJzb21lIiwib3B0aW9uIiwic2Nob29sX2lkIiwic2Nob29sX3R5cGUiLCJzY2hvb2xfbmFtZSIsInNjaG9vbCIsIm5jZXNfaWQiLCJzZWFyY2hVcmwiLCJTQ0hPT0xfWklQX1NFQVJDSF9VUkwiLCJmZXRjaCIsImhlYWRlcnMiLCJyZXNwb25zZSIsIm9rIiwiRXJyb3IiLCJqc29uIiwiY291bnRyaWVzIiwic2VsZWN0Q291bnRyeSIsInVuaXRlZFN0YXRlcyIsIm5vblVzQ291bnRyaWVzIiwiQ09VTlRSSUVTIiwiaXRlbSIsIm5vblVzQ291bnRyeSIsInNjaG9vbEluZm9JbnZhbGlkIiwiQm9vbGVhbiIsInVwZGF0ZVNjaG9vbEluZm8iLCJzY2hvb2xEYXRhIiwiZ2V0QXV0aGVudGljaXR5VG9rZW4iLCJib2R5IiwiSlNPTiIsInVzZXIiLCJzY2hvb2xfaW5mb19hdHRyaWJ1dGVzIiwiQUNDT1VOVF9UWVBFX1NFU1NJT05fS0VZIiwiRU1BSUxfU0VTU0lPTl9LRVkiLCJPQVVUSF9MT0dJTl9UWVBFX1NFU1NJT05fS0VZIiwiVVNFUl9SRVRVUk5fVE9fU0VTU0lPTl9LRVkiLCJzZXRVc2VyUmV0dXJuVG9VcmwiLCJ1c2VyUmV0dXJuVG8iLCJjbGVhclNpZ25VcFNlc3Npb25TdG9yYWdlIiwiaXNUZWFjaGVyIiwiZmllbGRzVG9DbGVhciIsInNjaG9vbEZpZWxkcyIsImZpZWxkIiwicmVtb3ZlSXRlbSIsIlNJR05fVVBfVVNFUl9UWVBFIiwiUmVnRXhwIiwiTUFYX0RJU1BMQVlfTkFNRV9MRU5HVEgiXSwic291cmNlUm9vdCI6IiJ9